diff --git a/docs/api/implementors/bytemuck/pod/trait.Pod.js b/docs/api/implementors/bytemuck/pod/trait.Pod.js index 0ff58dc8..1f4abd89 100644 --- a/docs/api/implementors/bytemuck/pod/trait.Pod.js +++ b/docs/api/implementors/bytemuck/pod/trait.Pod.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"maplibre":[["impl Pod for ZoomLevel"],["impl Pod for ShaderLayerMetadata"],["impl Pod for ShaderFeatureStyle"],["impl Pod for ShaderTileMetadata"],["impl Pod for ShaderTextureVertex"],["impl Pod for ShaderVertex"],["impl Pod for ShaderGlobals"],["impl Pod for ShaderCamera"]] +"maplibre":[["impl Pod for ShaderCamera"],["impl Pod for ShaderLayerMetadata"],["impl Pod for ZoomLevel"],["impl Pod for ShaderGlobals"],["impl Pod for ShaderVertex"],["impl Pod for ShaderFeatureStyle"],["impl Pod for ShaderTileMetadata"],["impl Pod for ShaderTextureVertex"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/docs/api/implementors/bytemuck/zeroable/trait.Zeroable.js b/docs/api/implementors/bytemuck/zeroable/trait.Zeroable.js index ab82e18b..b84fcd17 100644 --- a/docs/api/implementors/bytemuck/zeroable/trait.Zeroable.js +++ b/docs/api/implementors/bytemuck/zeroable/trait.Zeroable.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"maplibre":[["impl Zeroable for ShaderCamera"],["impl Zeroable for ShaderLayerMetadata"],["impl Zeroable for ShaderTextureVertex"],["impl Zeroable for ShaderFeatureStyle"],["impl Zeroable for WorldTileCoords"],["impl Zeroable for ShaderGlobals"],["impl Zeroable for ShaderTileMetadata"],["impl Zeroable for ShaderVertex"],["impl Zeroable for ZoomLevel"]] +"maplibre":[["impl Zeroable for ShaderGlobals"],["impl Zeroable for ShaderCamera"],["impl Zeroable for WorldTileCoords"],["impl Zeroable for ZoomLevel"],["impl Zeroable for ShaderLayerMetadata"],["impl Zeroable for ShaderTextureVertex"],["impl Zeroable for ShaderTileMetadata"],["impl Zeroable for ShaderFeatureStyle"],["impl Zeroable for ShaderVertex"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/docs/api/implementors/core/clone/trait.Clone.js b/docs/api/implementors/core/clone/trait.Clone.js index c341d2d0..c6e03457 100644 --- a/docs/api/implementors/core/clone/trait.Clone.js +++ b/docs/api/implementors/core/clone/trait.Clone.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"maplibre":[["impl Clone for RasterLayer"],["impl Clone for RendererBuilder"],["impl Clone for ZoomLevel"],["impl Clone for Style"],["impl Clone for Camera"],["impl Clone for LatLon"],["impl Clone for ShaderVertex"],["impl Clone for RenderStageLabel"],["impl Clone for FloatOrd"],["impl Clone for SlotValue"],["impl Clone for SchedulerContext"],["impl Clone for TileCoords"],["impl Clone for DefaultLayerTesselated"],["impl Clone for Box<dyn StageLabel>"],["impl Clone for BackgroundPaint"],["impl Clone for FillPaint"],["impl Clone for Quadkey"],["impl Clone for DefaultRasterTransferables"],["impl Clone for SurfaceType"],["impl Clone for RasterResampling"],["impl Clone for NodeId"],["impl Clone for Box<dyn MessageTag>"],["impl Clone for ShaderTileMetadata"],["impl Clone for ShaderGlobals"],["impl Clone for SlotLabel"],["impl Clone for Input"],["impl Clone for RasterMessageTag"],["impl Clone for SlotType"],["impl Clone for Tile"],["impl Clone for Edge"],["impl<V: Clone, I: Clone> Clone for OverAlignedVertexBuffer<V, I>"],["impl Clone for VertexState"],["impl Clone for Source"],["impl Clone for SourceType"],["impl Clone for ShaderTextureVertex"],["impl Clone for LinePaint"],["impl Clone for VectorMessageTag"],["impl Clone for VectorSource"],["impl Clone for SlotInfo"],["impl Clone for BackingBufferType"],["impl Clone for WindowSize"],["impl<HC> Clone for SourceClient<HC>where\n HC: HttpClient + Clone,"],["impl<T> Clone for ExactGeometry<T>where\n T: CoordFloat + Bounded + Signed + Clone,"],["impl Clone for RasterSource"],["impl Clone for ShaderFeatureStyle"],["impl Clone for VertexBufferLayout"],["impl Clone for ViewTile"],["impl Clone for ReqwestHttpClient"],["impl Clone for WorldCoords"],["impl Clone for RendererSettings"],["impl Clone for WgpuSettings"],["impl<T> Clone for IndexedGeometry<T>where\n T: CoordFloat + Bounded + Signed + Clone,"],["impl Clone for TileAddressingScheme"],["impl Clone for LayerPaint"],["impl Clone for FragmentState"],["impl Clone for SourceShapes"],["impl Clone for WorldTileCoords"],["impl Clone for NodeLabel"],["impl Clone for Zoom"],["impl Clone for InnerCoords"],["impl Clone for Msaa"],["impl Clone for TessellateSource"],["impl Clone for DefaultVectorTransferables"],["impl Clone for TileShape"],["impl Clone for StyleLayer"],["impl Clone for ShaderLayerMetadata"],["impl Clone for IndexEntry"],["impl Clone for ShaderCamera"],["impl<HC> Clone for HttpSourceClient<HC>where\n HC: HttpClient + Clone,"]] +"maplibre":[["impl Clone for DefaultRasterTransferables"],["impl Clone for ZoomLevel"],["impl Clone for ReqwestHttpClient"],["impl Clone for SurfaceType"],["impl Clone for VectorMessageTag"],["impl Clone for NodeId"],["impl Clone for Input"],["impl Clone for ShaderGlobals"],["impl Clone for RendererSettings"],["impl Clone for ShaderTileMetadata"],["impl Clone for Box<dyn StageLabel>"],["impl Clone for RasterMessageTag"],["impl Clone for WorldCoords"],["impl Clone for Source"],["impl Clone for BackgroundPaint"],["impl Clone for StyleLayer"],["impl Clone for TileCoords"],["impl<HC> Clone for HttpSourceClient<HC>where\n HC: HttpClient + Clone,"],["impl Clone for TessellateSource"],["impl Clone for ShaderTextureVertex"],["impl Clone for Edge"],["impl Clone for RasterSource"],["impl<V: Clone, I: Clone> Clone for OverAlignedVertexBuffer<V, I>"],["impl Clone for FloatOrd"],["impl Clone for Quadkey"],["impl<T> Clone for IndexedGeometry<T>where\n T: CoordFloat + Bounded + Signed + Clone,"],["impl Clone for LatLon"],["impl Clone for SlotType"],["impl Clone for Zoom"],["impl Clone for Box<dyn MessageTag>"],["impl Clone for RenderStageLabel"],["impl Clone for TileShape"],["impl Clone for ShaderVertex"],["impl Clone for SlotInfo"],["impl Clone for WgpuSettings"],["impl Clone for WindowSize"],["impl Clone for ViewTile"],["impl Clone for EdgeInsets"],["impl Clone for Msaa"],["impl Clone for SchedulerContext"],["impl Clone for ViewProjection"],["impl Clone for Style"],["impl Clone for Tile"],["impl Clone for RasterResampling"],["impl Clone for ShaderCamera"],["impl<HC> Clone for SourceClient<HC>where\n HC: HttpClient + Clone,"],["impl Clone for SourceType"],["impl Clone for LinePaint"],["impl Clone for WorldTileCoords"],["impl Clone for ShaderLayerMetadata"],["impl Clone for FragmentState"],["impl Clone for NodeLabel"],["impl Clone for BackingBufferType"],["impl Clone for DefaultLayerTesselated"],["impl Clone for ShaderFeatureStyle"],["impl Clone for VertexState"],["impl Clone for InnerCoords"],["impl Clone for SlotValue"],["impl Clone for RasterLayer"],["impl Clone for Camera"],["impl Clone for RendererBuilder"],["impl Clone for SlotLabel"],["impl<T> Clone for ExactGeometry<T>where\n T: CoordFloat + Bounded + Signed + Clone,"],["impl Clone for FillPaint"],["impl Clone for SourceShapes"],["impl Clone for LayerPaint"],["impl Clone for VertexBufferLayout"],["impl Clone for IndexEntry"],["impl Clone for DefaultVectorTransferables"],["impl Clone for VectorSource"],["impl Clone for TileAddressingScheme"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/docs/api/implementors/core/cmp/trait.Eq.js b/docs/api/implementors/core/cmp/trait.Eq.js index c587fb0a..74a1eab0 100644 --- a/docs/api/implementors/core/cmp/trait.Eq.js +++ b/docs/api/implementors/core/cmp/trait.Eq.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"maplibre":[["impl Eq for dyn StageLabel"],["impl Eq for NodeLabel"],["impl Eq for RenderGraphError"],["impl Eq for dyn MessageTag"],["impl Eq for VectorMessageTag"],["impl Eq for RunSubGraphError"],["impl Eq for SlotType"],["impl Eq for Quadkey"],["impl Eq for FragmentState"],["impl Eq for Edge"],["impl Eq for NodeId"],["impl Eq for OutputSlotError"],["impl Eq for EdgeExistence"],["impl Eq for FloatOrd"],["impl Eq for ZoomLevel"],["impl Eq for RasterMessageTag"],["impl Eq for RenderStageLabel"],["impl Eq for SlotLabel"],["impl Eq for TileCoords"],["impl Eq for WindowSize"],["impl Eq for WorldTileCoords"],["impl Eq for InputSlotError"],["impl Eq for NodeRunError"]] +"maplibre":[["impl Eq for EdgeExistence"],["impl Eq for FloatOrd"],["impl Eq for SlotType"],["impl Eq for VectorMessageTag"],["impl Eq for ZoomLevel"],["impl Eq for Quadkey"],["impl Eq for InputSlotError"],["impl Eq for TileCoords"],["impl Eq for RenderStageLabel"],["impl Eq for dyn StageLabel"],["impl Eq for WorldTileCoords"],["impl Eq for RenderGraphError"],["impl Eq for NodeRunError"],["impl Eq for FragmentState"],["impl Eq for RasterMessageTag"],["impl Eq for RunSubGraphError"],["impl Eq for NodeLabel"],["impl Eq for NodeId"],["impl Eq for OutputSlotError"],["impl Eq for Edge"],["impl Eq for dyn MessageTag"],["impl Eq for SlotLabel"],["impl Eq for WindowSize"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/docs/api/implementors/core/cmp/trait.Ord.js b/docs/api/implementors/core/cmp/trait.Ord.js index f2b7e3d3..b1237f3e 100644 --- a/docs/api/implementors/core/cmp/trait.Ord.js +++ b/docs/api/implementors/core/cmp/trait.Ord.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"maplibre":[["impl Ord for NodeId"],["impl Ord for ZoomLevel"],["impl Ord for FloatOrd"],["impl Ord for Quadkey"],["impl Ord for WorldTileCoords"]] +"maplibre":[["impl Ord for FloatOrd"],["impl Ord for Quadkey"],["impl Ord for ZoomLevel"],["impl Ord for WorldTileCoords"],["impl Ord for NodeId"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/docs/api/implementors/core/cmp/trait.PartialEq.js b/docs/api/implementors/core/cmp/trait.PartialEq.js index 2d1e7607..5888a689 100644 --- a/docs/api/implementors/core/cmp/trait.PartialEq.js +++ b/docs/api/implementors/core/cmp/trait.PartialEq.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"maplibre":[["impl PartialEq<dyn StageLabel> for dyn StageLabel"],["impl PartialEq<WindowSize> for WindowSize"],["impl PartialEq<SlotLabel> for SlotLabel"],["impl PartialEq<SlotType> for SlotType"],["impl PartialEq<VectorMessageTag> for VectorMessageTag"],["impl PartialEq<RenderGraphError> for RenderGraphError"],["impl PartialEq<InputSlotError> for InputSlotError"],["impl PartialEq<OutputSlotError> for OutputSlotError"],["impl PartialEq<dyn MessageTag> for dyn MessageTag"],["impl PartialEq<WorldTileCoords> for WorldTileCoords"],["impl PartialEq<FloatOrd> for FloatOrd"],["impl PartialEq<RasterMessageTag> for RasterMessageTag"],["impl PartialEq<FragmentState> for FragmentState"],["impl PartialEq<EdgeExistence> for EdgeExistence"],["impl PartialEq<Quadkey> for Quadkey"],["impl PartialEq<WorldCoords> for WorldCoords"],["impl PartialEq<RunSubGraphError> for RunSubGraphError"],["impl PartialEq<TileCoords> for TileCoords"],["impl PartialEq<NodeLabel> for NodeLabel"],["impl PartialEq<ZoomLevel> for ZoomLevel"],["impl PartialEq<InnerCoords> for InnerCoords"],["impl PartialEq<NodeRunError> for NodeRunError"],["impl PartialEq<NodeId> for NodeId"],["impl PartialEq<RenderStageLabel> for RenderStageLabel"],["impl PartialEq<Edge> for Edge"]] +"maplibre":[["impl PartialEq<RunSubGraphError> for RunSubGraphError"],["impl PartialEq<EdgeExistence> for EdgeExistence"],["impl PartialEq<RenderGraphError> for RenderGraphError"],["impl PartialEq<RasterMessageTag> for RasterMessageTag"],["impl PartialEq<NodeRunError> for NodeRunError"],["impl PartialEq<FragmentState> for FragmentState"],["impl PartialEq<Quadkey> for Quadkey"],["impl PartialEq<ZoomLevel> for ZoomLevel"],["impl PartialEq<SlotLabel> for SlotLabel"],["impl PartialEq<Edge> for Edge"],["impl PartialEq<NodeId> for NodeId"],["impl PartialEq<OutputSlotError> for OutputSlotError"],["impl PartialEq<dyn StageLabel> for dyn StageLabel"],["impl PartialEq<InnerCoords> for InnerCoords"],["impl PartialEq<FloatOrd> for FloatOrd"],["impl PartialEq<WorldTileCoords> for WorldTileCoords"],["impl PartialEq<WindowSize> for WindowSize"],["impl PartialEq<InputSlotError> for InputSlotError"],["impl PartialEq<VectorMessageTag> for VectorMessageTag"],["impl PartialEq<WorldCoords> for WorldCoords"],["impl PartialEq<RenderStageLabel> for RenderStageLabel"],["impl PartialEq<SlotType> for SlotType"],["impl PartialEq<EdgeInsets> for EdgeInsets"],["impl PartialEq<TileCoords> for TileCoords"],["impl PartialEq<NodeLabel> for NodeLabel"],["impl PartialEq<dyn MessageTag> for dyn MessageTag"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/docs/api/implementors/core/cmp/trait.PartialOrd.js b/docs/api/implementors/core/cmp/trait.PartialOrd.js index 01617676..1ce6e4d4 100644 --- a/docs/api/implementors/core/cmp/trait.PartialOrd.js +++ b/docs/api/implementors/core/cmp/trait.PartialOrd.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"maplibre":[["impl PartialOrd<WorldTileCoords> for WorldTileCoords"],["impl PartialOrd<FloatOrd> for FloatOrd"],["impl PartialOrd<ZoomLevel> for ZoomLevel"],["impl PartialOrd<NodeId> for NodeId"],["impl PartialOrd<Quadkey> for Quadkey"]] +"maplibre":[["impl PartialOrd<ZoomLevel> for ZoomLevel"],["impl PartialOrd<WorldTileCoords> for WorldTileCoords"],["impl PartialOrd<FloatOrd> for FloatOrd"],["impl PartialOrd<NodeId> for NodeId"],["impl PartialOrd<Quadkey> for Quadkey"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/docs/api/implementors/core/convert/trait.From.js b/docs/api/implementors/core/convert/trait.From.js index 04431904..2e13d790 100644 --- a/docs/api/implementors/core/convert/trait.From.js +++ b/docs/api/implementors/core/convert/trait.From.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"maplibre":[["impl From<(u32, u32, ZoomLevel)> for TileCoords"],["impl From<TextureView> for SlotValue"],["impl From<(f32, f32)> for WorldCoords"],["impl From<&'static str> for NodeLabel"],["impl From<SurfaceError> for RenderError"],["impl From<String> for NodeLabel"],["impl From<RequestDeviceError> for RenderError"],["impl From<NodeRunError> for RenderGraphRunnerError"],["impl<V: Pod, I: Pod> From<VertexBuffers<V, I>> for OverAlignedVertexBuffer<V, I>"],["impl From<ZoomLevel> for u8"],["impl From<Point3<f64>> for WorldCoords"],["impl From<Cow<'static, str>> for SlotLabel"],["impl From<Error> for SourceFetchError"],["impl From<&'static str> for SlotLabel"],["impl From<RunSubGraphError> for NodeRunError"],["impl From<CreateSurfaceError> for RenderError"],["impl From<OutputSlotError> for NodeRunError"],["impl From<usize> for SlotLabel"],["impl From<InputSlotError> for NodeRunError"],["impl<T: IntoIterator<Item = SlotInfo>> From<T> for SlotInfos"],["impl From<Buffer> for SlotValue"],["impl From<&NodeLabel> for NodeLabel"],["impl From<NodeId> for NodeLabel"],["impl From<u8> for ZoomLevel"],["impl From<Error> for SourceFetchError"],["impl From<(i32, i32, ZoomLevel)> for WorldTileCoords"],["impl From<String> for SlotLabel"],["impl From<TextureView> for TextureView"],["impl From<Sampler> for SlotValue"],["impl From<WorldCoords> for Vec3f32"],["impl From<(f64, f64)> for WorldCoords"],["impl From<SurfaceTexture> for TextureView"],["impl From<&SlotLabel> for SlotLabel"],["impl From<RenderGraphError> for RenderError"]] +"maplibre":[["impl From<Sampler> for SlotValue"],["impl From<WorldCoords> for Vec3f32"],["impl From<(f32, f32)> for WorldCoords"],["impl From<&'static str> for SlotLabel"],["impl From<RequestDeviceError> for RenderError"],["impl From<&'static str> for NodeLabel"],["impl From<(f64, f64)> for WorldCoords"],["impl From<usize> for SlotLabel"],["impl From<RenderGraphError> for RenderError"],["impl From<ZoomLevel> for u8"],["impl<V: Pod, I: Pod> From<VertexBuffers<V, I>> for OverAlignedVertexBuffer<V, I>"],["impl From<TextureView> for SlotValue"],["impl From<SurfaceError> for RenderError"],["impl From<String> for SlotLabel"],["impl From<Point3<f64>> for WorldCoords"],["impl From<CreateSurfaceError> for RenderError"],["impl From<&NodeLabel> for NodeLabel"],["impl From<&SlotLabel> for SlotLabel"],["impl From<NodeRunError> for RenderGraphRunnerError"],["impl From<SurfaceTexture> for TextureView"],["impl From<(i32, i32, ZoomLevel)> for WorldTileCoords"],["impl From<Buffer> for SlotValue"],["impl From<Error> for SourceFetchError"],["impl From<TextureView> for TextureView"],["impl From<(u32, u32, ZoomLevel)> for TileCoords"],["impl<T: IntoIterator<Item = SlotInfo>> From<T> for SlotInfos"],["impl From<String> for NodeLabel"],["impl From<NodeId> for NodeLabel"],["impl From<OutputSlotError> for NodeRunError"],["impl From<u8> for ZoomLevel"],["impl From<Cow<'static, str>> for SlotLabel"],["impl From<InputSlotError> for NodeRunError"],["impl From<RunSubGraphError> for NodeRunError"],["impl From<Error> for SourceFetchError"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/docs/api/implementors/core/default/trait.Default.js b/docs/api/implementors/core/default/trait.Default.js index e16b637d..c58e785c 100644 --- a/docs/api/implementors/core/default/trait.Default.js +++ b/docs/api/implementors/core/default/trait.Default.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"maplibre":[["impl Default for RenderPlugin"],["impl Default for TileAddressingScheme"],["impl Default for VectorTilesDone"],["impl<I: Add + From<VertexId> + MaxIndex> Default for ZeroTessellator<I>"],["impl Default for GeometryIndex"],["impl<T: RasterTransferables> Default for RasterPlugin<T>"],["impl Default for ResourceSystem"],["impl Default for SystemStage"],["impl Default for InnerCoords"],["impl Default for TokioScheduler"],["impl Default for Style"],["impl<E: Environment> Default for KernelBuilder<E>"],["impl Default for ShaderCamera"],["impl Default for DebugPlugin"],["impl Default for RasterSource"],["impl<T> Default for Eventually<T>"],["impl<Q: ResourceQuery> Default for QueryHasTile<Q>"],["impl Default for WgpuSettings"],["impl Default for Resources"],["impl Default for Zoom"],["impl Default for World"],["impl Default for LatLon"],["impl Default for RendererSettings"],["impl<T> Default for ChangeObserver<T>where\n T: Default,"],["impl Default for IndexProcessor"],["impl Default for ViewTileSources"],["impl<I: PhaseItem> Default for RenderPhase<I>"],["impl Default for ShaderTextureVertex"],["impl Default for ShaderVertex"],["impl<T: VectorTransferables> Default for VectorPlugin<T>"],["impl Default for RendererBuilder"],["impl Default for WorldCoords"],["impl Default for ZoomLevel"],["impl Default for Msaa"],["impl Default for GraphRunnerSystem"],["impl Default for FPSMeter"],["impl Default for RenderGraph"],["impl Default for GlobalQueryState"],["impl Default for Tiles"],["impl Default for StyleLayer"],["impl Default for Schedule"],["impl Default for VectorLayersDataComponent"],["impl Default for InitializationResult"],["impl Default for WorldTileCoords"],["impl Default for GlobalQueryState"],["impl Default for SlotInfos"],["impl Default for RasterLayer"],["impl Default for TessellateSource"],["impl Default for RasterLayersDataComponent"],["impl Default for RingIndex"],["impl Default for TileCoords"]] +"maplibre":[["impl Default for DebugPlugin"],["impl Default for Msaa"],["impl Default for RendererSettings"],["impl Default for RasterLayer"],["impl Default for ZoomLevel"],["impl Default for RendererBuilder"],["impl Default for FPSMeter"],["impl Default for TessellateSource"],["impl Default for TileCoords"],["impl Default for GlobalQueryState"],["impl Default for SystemStage"],["impl Default for InnerCoords"],["impl Default for ShaderTextureVertex"],["impl Default for WorldTileCoords"],["impl Default for Zoom"],["impl Default for Resources"],["impl Default for WgpuSettings"],["impl Default for Tiles"],["impl Default for GraphRunnerSystem"],["impl<T: RasterTransferables> Default for RasterPlugin<T>"],["impl Default for TokioScheduler"],["impl Default for WorldCoords"],["impl<Q: ResourceQuery> Default for QueryHasTile<Q>"],["impl Default for ShaderCamera"],["impl Default for RasterSource"],["impl Default for EdgeInsets"],["impl Default for ShaderVertex"],["impl Default for StyleLayer"],["impl Default for RenderPlugin"],["impl Default for InitializationResult"],["impl Default for VectorLayersDataComponent"],["impl Default for IndexProcessor"],["impl Default for RasterLayersDataComponent"],["impl<I: Add + From<VertexId> + MaxIndex> Default for ZeroTessellator<I>"],["impl Default for GeometryIndex"],["impl<T: VectorTransferables> Default for VectorPlugin<T>"],["impl Default for ResourceSystem"],["impl<T> Default for ChangeObserver<T>where\n T: Default,"],["impl<E: Environment> Default for KernelBuilder<E>"],["impl Default for VectorTilesDone"],["impl Default for TileAddressingScheme"],["impl Default for ViewTileSources"],["impl<T> Default for Eventually<T>"],["impl Default for RingIndex"],["impl Default for RenderGraph"],["impl Default for Style"],["impl Default for Schedule"],["impl Default for GlobalQueryState"],["impl Default for LatLon"],["impl<I: PhaseItem> Default for RenderPhase<I>"],["impl Default for SlotInfos"],["impl Default for World"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/docs/api/implementors/core/error/trait.Error.js b/docs/api/implementors/core/error/trait.Error.js index 10a81119..a1e1aba9 100644 --- a/docs/api/implementors/core/error/trait.Error.js +++ b/docs/api/implementors/core/error/trait.Error.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"maplibre":[["impl Error for MessageError"],["impl Error for RenderGraphRunnerError"],["impl Error for RenderGraphError"],["impl Error for MapError"],["impl Error for SourceFetchError"],["impl Error for ProcedureError"],["impl Error for ScheduleError"],["impl Error for OutputSlotError"],["impl Error for SendError"],["impl Error for RunSubGraphError"],["impl Error for RenderError"],["impl Error for NodeRunError"],["impl Error for InputSlotError"],["impl Error for ProcessVectorError"],["impl Error for ProcessRasterError"],["impl Error for CallError"],["impl Error for SendEventError"]] +"maplibre":[["impl Error for OutputSlotError"],["impl Error for NodeRunError"],["impl Error for ProcessRasterError"],["impl Error for ScheduleError"],["impl Error for CallError"],["impl Error for MessageError"],["impl Error for RenderError"],["impl Error for SendError"],["impl Error for RenderGraphError"],["impl Error for ProcessVectorError"],["impl Error for RunSubGraphError"],["impl Error for SourceFetchError"],["impl Error for InputSlotError"],["impl Error for SendEventError"],["impl Error for ProcedureError"],["impl Error for MapError"],["impl Error for RenderGraphRunnerError"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/docs/api/implementors/core/fmt/trait.Debug.js b/docs/api/implementors/core/fmt/trait.Debug.js index 30e8c536..58dfe9fa 100644 --- a/docs/api/implementors/core/fmt/trait.Debug.js +++ b/docs/api/implementors/core/fmt/trait.Debug.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"maplibre":[["impl Debug for DefaultLayerIndexed"],["impl Debug for Source"],["impl Debug for SourceFetchError"],["impl Debug for SendEventError"],["impl Debug for VectorMessageTag"],["impl<B: Debug> Debug for BackingBuffer<B>"],["impl Debug for Style"],["impl Debug for ZoomLevel"],["impl Debug for TextureView"],["impl Debug for ProcessVectorError"],["impl Debug for BackgroundPaint"],["impl Debug for VertexBufferLayout"],["impl Debug for DefaultLayerRaster"],["impl Debug for Camera"],["impl<B: Debug> Debug for BackingBuffer<B>"],["impl Debug for WorldCoords"],["impl Debug for MapError"],["impl Debug for DefaultLayerTesselated"],["impl Debug for FillPaint"],["impl<Q: Debug, B: Debug, V: Debug, I: Debug, TM: Debug, FM: Debug> Debug for BufferPool<Q, B, V, I, TM, FM>"],["impl<T> Debug for ExactGeometry<T>where\n T: CoordFloat + Bounded + Signed + Debug,"],["impl Debug for ViewTile"],["impl Debug for SlotInfos"],["impl Debug for SourceShapes"],["impl Debug for SendError"],["impl Debug for TileShape"],["impl Debug for Edge"],["impl Debug for ViewProjection"],["impl Debug for SlotValue"],["impl Debug for NodeState"],["impl Debug for OutputSlotError"],["impl Debug for LatLon"],["impl Debug for RenderGraphRunnerError"],["impl Debug for RasterMessageTag"],["impl<S: BaseFloat> Debug for Plane<S>"],["impl Debug for RingIndexEntry"],["impl Debug for RasterLayer"],["impl Debug for TileAddressingScheme"],["impl Debug for ProcessRasterError"],["impl Debug for SlotInfo"],["impl Debug for NodeLabel"],["impl Debug for BackingBufferType"],["impl Debug for Zoom"],["impl Debug for RasterResampling"],["impl Debug for MessageError"],["impl Debug for InputSlotError"],["impl Debug for WorldTileCoords"],["impl Debug for Tile"],["impl Debug for RenderGraphError"],["impl Debug for SlotType"],["impl Debug for LayerPaint"],["impl Debug for CallError"],["impl Debug for StyleLayer"],["impl Debug for DefaultLayerMissing"],["impl Debug for VertexState"],["impl Debug for IndexEntry"],["impl Debug for ProcedureError"],["impl Debug for NodeRunError"],["impl Debug for RenderError"],["impl Debug for ShaderFeatureStyle"],["impl Debug for NodeId"],["impl Debug for TileCoords"],["impl Debug for InnerCoords"],["impl Debug for RenderGraph"],["impl Debug for FragmentState"],["impl Debug for ViewRegion"],["impl Debug for VectorSource"],["impl Debug for RenderStageLabel"],["impl<S: BaseNum> Debug for Aabb3<S>"],["impl Debug for FloatOrd"],["impl Debug for RunSubGraphError"],["impl Debug for SlotLabel"],["impl Debug for RingIndex"],["impl<S: BaseNum> Debug for Aabb2<S>"],["impl Debug for Quadkey"],["impl<T> Debug for IndexedGeometry<T>where\n T: CoordFloat + Bounded + Signed + Debug,"],["impl Debug for Message"],["impl Debug for LinePaint"],["impl Debug for DefaultLayerRasterMissing"],["impl Debug for Edges"],["impl Debug for ScheduleError"],["impl Debug for DefaultTileTessellated"]] +"maplibre":[["impl Debug for IndexEntry"],["impl Debug for ProcessVectorError"],["impl<S: BaseFloat> Debug for Plane<S>"],["impl Debug for DefaultLayerRasterMissing"],["impl Debug for NodeRunError"],["impl Debug for Style"],["impl Debug for NodeLabel"],["impl Debug for DefaultLayerRaster"],["impl Debug for Source"],["impl Debug for VertexState"],["impl Debug for LayerPaint"],["impl Debug for RingIndex"],["impl Debug for ZoomLevel"],["impl Debug for Tile"],["impl Debug for ViewTile"],["impl Debug for Edges"],["impl Debug for DefaultLayerMissing"],["impl Debug for SourceShapes"],["impl<B: Debug> Debug for BackingBuffer<B>"],["impl Debug for SlotLabel"],["impl Debug for RunSubGraphError"],["impl Debug for TileAddressingScheme"],["impl Debug for InnerCoords"],["impl Debug for SlotType"],["impl Debug for SlotInfos"],["impl Debug for FragmentState"],["impl Debug for InputSlotError"],["impl<T> Debug for IndexedGeometry<T>where\n T: CoordFloat + Bounded + Signed + Debug,"],["impl<T> Debug for ExactGeometry<T>where\n T: CoordFloat + Bounded + Signed + Debug,"],["impl Debug for ScheduleError"],["impl<B: Debug> Debug for BackingBuffer<B>"],["impl<Q: Debug, B: Debug, V: Debug, I: Debug, TM: Debug, FM: Debug> Debug for BufferPool<Q, B, V, I, TM, FM>"],["impl Debug for BackingBufferType"],["impl Debug for RasterLayer"],["impl Debug for TileCoords"],["impl Debug for Camera"],["impl Debug for LinePaint"],["impl Debug for VectorSource"],["impl Debug for ShaderFeatureStyle"],["impl Debug for VertexBufferLayout"],["impl Debug for DefaultLayerIndexed"],["impl Debug for SendEventError"],["impl Debug for ViewRegion"],["impl Debug for RenderGraph"],["impl Debug for DefaultTileTessellated"],["impl Debug for RenderError"],["impl Debug for MapError"],["impl Debug for FillPaint"],["impl Debug for RasterMessageTag"],["impl Debug for FloatOrd"],["impl Debug for Quadkey"],["impl Debug for RenderGraphError"],["impl Debug for RenderStageLabel"],["impl Debug for SendError"],["impl Debug for RingIndexEntry"],["impl Debug for Message"],["impl Debug for NodeId"],["impl Debug for BackgroundPaint"],["impl Debug for Zoom"],["impl Debug for ViewProjection"],["impl Debug for ProcedureError"],["impl Debug for WorldCoords"],["impl Debug for CallError"],["impl Debug for OutputSlotError"],["impl Debug for Edge"],["impl Debug for TextureView"],["impl Debug for RasterResampling"],["impl Debug for LatLon"],["impl Debug for VectorMessageTag"],["impl Debug for RenderGraphRunnerError"],["impl Debug for DefaultLayerTesselated"],["impl Debug for MessageError"],["impl Debug for WorldTileCoords"],["impl Debug for NodeState"],["impl<S: BaseNum> Debug for Aabb3<S>"],["impl Debug for ProcessRasterError"],["impl Debug for StyleLayer"],["impl Debug for SlotValue"],["impl Debug for TileShape"],["impl Debug for SourceFetchError"],["impl<S: BaseNum> Debug for Aabb2<S>"],["impl Debug for SlotInfo"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/docs/api/implementors/core/fmt/trait.Display.js b/docs/api/implementors/core/fmt/trait.Display.js index a03de0a2..a6f3860b 100644 --- a/docs/api/implementors/core/fmt/trait.Display.js +++ b/docs/api/implementors/core/fmt/trait.Display.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"maplibre":[["impl Display for OutputSlotError"],["impl Display for WorldTileCoords"],["impl Display for WorldCoords"],["impl Display for CallError"],["impl Display for ZoomLevel"],["impl Display for Zoom"],["impl Display for MapError"],["impl Display for SourceFetchError"],["impl Display for TileCoords"],["impl Display for RenderGraphRunnerError"],["impl Display for ScheduleError"],["impl Display for ProcessRasterError"],["impl Display for SendError"],["impl Display for RenderError"],["impl Display for SendEventError"],["impl Display for InputSlotError"],["impl Display for MessageError"],["impl Display for ProcessVectorError"],["impl Display for RenderGraphError"],["impl Display for LatLon"],["impl Display for ProcedureError"],["impl Display for SlotType"],["impl Display for NodeRunError"],["impl Display for RunSubGraphError"]] +"maplibre":[["impl Display for SourceFetchError"],["impl Display for SlotType"],["impl Display for ProcessRasterError"],["impl Display for ProcessVectorError"],["impl Display for Zoom"],["impl Display for ScheduleError"],["impl Display for TileCoords"],["impl Display for WorldCoords"],["impl Display for OutputSlotError"],["impl Display for InputSlotError"],["impl Display for RunSubGraphError"],["impl Display for SendError"],["impl Display for NodeRunError"],["impl Display for CallError"],["impl Display for ZoomLevel"],["impl Display for WorldTileCoords"],["impl Display for RenderGraphError"],["impl Display for ProcedureError"],["impl Display for RenderError"],["impl Display for MessageError"],["impl Display for LatLon"],["impl Display for MapError"],["impl Display for RenderGraphRunnerError"],["impl Display for SendEventError"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/docs/api/implementors/core/hash/trait.Hash.js b/docs/api/implementors/core/hash/trait.Hash.js index 52bd6a31..5aca3aeb 100644 --- a/docs/api/implementors/core/hash/trait.Hash.js +++ b/docs/api/implementors/core/hash/trait.Hash.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"maplibre":[["impl Hash for NodeId"],["impl Hash for ZoomLevel"],["impl Hash for WorldTileCoords"],["impl Hash for dyn StageLabel"],["impl Hash for RenderStageLabel"],["impl Hash for RasterMessageTag"],["impl Hash for TileCoords"],["impl Hash for VectorMessageTag"],["impl Hash for dyn MessageTag"]] +"maplibre":[["impl Hash for ZoomLevel"],["impl Hash for VectorMessageTag"],["impl Hash for dyn StageLabel"],["impl Hash for NodeId"],["impl Hash for RenderStageLabel"],["impl Hash for dyn MessageTag"],["impl Hash for TileCoords"],["impl Hash for RasterMessageTag"],["impl Hash for WorldTileCoords"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/docs/api/implementors/core/marker/trait.Copy.js b/docs/api/implementors/core/marker/trait.Copy.js index e0ad4cce..8ac40495 100644 --- a/docs/api/implementors/core/marker/trait.Copy.js +++ b/docs/api/implementors/core/marker/trait.Copy.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"maplibre":[["impl Copy for ZoomLevel"],["impl Copy for WorldCoords"],["impl Copy for SlotType"],["impl Copy for NodeId"],["impl Copy for WorldTileCoords"],["impl Copy for RendererSettings"],["impl Copy for ShaderLayerMetadata"],["impl Copy for DefaultRasterTransferables"],["impl Copy for DefaultVectorTransferables"],["impl Copy for InnerCoords"],["impl Copy for RasterMessageTag"],["impl Copy for ShaderTextureVertex"],["impl Copy for ShaderTileMetadata"],["impl Copy for ShaderCamera"],["impl Copy for Quadkey"],["impl Copy for VectorMessageTag"],["impl Copy for Zoom"],["impl Copy for LatLon"],["impl Copy for ShaderFeatureStyle"],["impl Copy for TileCoords"],["impl Copy for ShaderGlobals"],["impl Copy for WindowSize"],["impl Copy for ShaderVertex"],["impl Copy for FloatOrd"],["impl Copy for Msaa"],["impl Copy for BackingBufferType"],["impl Copy for Tile"]] +"maplibre":[["impl Copy for WindowSize"],["impl Copy for ViewProjection"],["impl Copy for NodeId"],["impl Copy for WorldTileCoords"],["impl Copy for WorldCoords"],["impl Copy for ShaderCamera"],["impl Copy for DefaultVectorTransferables"],["impl Copy for ShaderFeatureStyle"],["impl Copy for ShaderTextureVertex"],["impl Copy for ShaderGlobals"],["impl Copy for RasterMessageTag"],["impl Copy for FloatOrd"],["impl Copy for SlotType"],["impl Copy for Msaa"],["impl Copy for ShaderLayerMetadata"],["impl Copy for DefaultRasterTransferables"],["impl Copy for LatLon"],["impl Copy for ShaderTileMetadata"],["impl Copy for ZoomLevel"],["impl Copy for ShaderVertex"],["impl Copy for EdgeInsets"],["impl Copy for BackingBufferType"],["impl Copy for InnerCoords"],["impl Copy for VectorMessageTag"],["impl Copy for Quadkey"],["impl Copy for RendererSettings"],["impl Copy for Tile"],["impl Copy for TileCoords"],["impl Copy for Zoom"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/docs/api/implementors/core/marker/trait.Freeze.js b/docs/api/implementors/core/marker/trait.Freeze.js index 13a71044..375f72b5 100644 --- a/docs/api/implementors/core/marker/trait.Freeze.js +++ b/docs/api/implementors/core/marker/trait.Freeze.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"maplibre":[["impl<I> !Freeze for ZeroTessellator<I>",1,["maplibre::tessellation::zero_tessellator::ZeroTessellator"]],["impl Freeze for VertexConstructor",1,["maplibre::tessellation::VertexConstructor"]],["impl<V, I> Freeze for OverAlignedVertexBuffer<V, I>",1,["maplibre::tessellation::OverAlignedVertexBuffer"]],["impl !Freeze for MapContext",1,["maplibre::context::MapContext"]],["impl Freeze for Quadkey",1,["maplibre::coords::Quadkey"]],["impl Freeze for ZoomLevel",1,["maplibre::coords::ZoomLevel"]],["impl Freeze for LatLon",1,["maplibre::coords::LatLon"]],["impl Freeze for Zoom",1,["maplibre::coords::Zoom"]],["impl Freeze for InnerCoords",1,["maplibre::coords::InnerCoords"]],["impl Freeze for TileCoords",1,["maplibre::coords::TileCoords"]],["impl Freeze for WorldTileCoords",1,["maplibre::coords::WorldTileCoords"]],["impl Freeze for AlignedWorldTileCoords",1,["maplibre::coords::AlignedWorldTileCoords"]],["impl Freeze for WorldCoords",1,["maplibre::coords::WorldCoords"]],["impl Freeze for ViewRegion",1,["maplibre::coords::ViewRegion"]],["impl Freeze for MessageError",1,["maplibre::io::apc::MessageError"]],["impl Freeze for Message",1,["maplibre::io::apc::Message"]],["impl Freeze for Input",1,["maplibre::io::apc::Input"]],["impl Freeze for SendError",1,["maplibre::io::apc::SendError"]],["impl Freeze for ProcedureError",1,["maplibre::io::apc::ProcedureError"]],["impl Freeze for CallError",1,["maplibre::io::apc::CallError"]],["impl Freeze for SchedulerContext",1,["maplibre::io::apc::SchedulerContext"]],["impl<K, S> !Freeze for SchedulerAsyncProcedureCall<K, S>",1,["maplibre::io::apc::SchedulerAsyncProcedureCall"]],["impl Freeze for GeometryIndex",1,["maplibre::io::geometry_index::GeometryIndex"]],["impl Freeze for TileIndex",1,["maplibre::io::geometry_index::TileIndex"]],["impl<T> Freeze for IndexedGeometry<T>where\n T: Freeze,",1,["maplibre::io::geometry_index::IndexedGeometry"]],["impl<T> Freeze for ExactGeometry<T>",1,["maplibre::io::geometry_index::ExactGeometry"]],["impl Freeze for IndexProcessor",1,["maplibre::io::geometry_index::IndexProcessor"]],["impl Freeze for ScheduleError",1,["maplibre::io::scheduler::ScheduleError"]],["impl Freeze for NopScheduler",1,["maplibre::io::scheduler::NopScheduler"]],["impl<HC> Freeze for HttpSourceClient<HC>where\n HC: Freeze,",1,["maplibre::io::source_client::HttpSourceClient"]],["impl Freeze for SourceFetchError",1,["maplibre::io::source_client::SourceFetchError"]],["impl<HC> Freeze for SourceClient<HC>where\n HC: Freeze,",1,["maplibre::io::source_client::SourceClient"]],["impl Freeze for TessellateSource",1,["maplibre::io::source_type::TessellateSource"]],["impl Freeze for RasterSource",1,["maplibre::io::source_type::RasterSource"]],["impl Freeze for SourceType",1,["maplibre::io::source_type::SourceType"]],["impl Freeze for ReqwestHttpClient",1,["maplibre::platform::noweb::http_client::ReqwestHttpClient"]],["impl Freeze for TokioScheduler",1,["maplibre::platform::noweb::scheduler::TokioScheduler"]],["impl Freeze for ReqwestOffscreenKernelEnvironment",1,["maplibre::platform::noweb::ReqwestOffscreenKernelEnvironment"]],["impl Freeze for RunSubGraph",1,["maplibre::render::graph::context::RunSubGraph"]],["impl<'a> Freeze for RenderGraphContext<'a>",1,["maplibre::render::graph::context::RenderGraphContext"]],["impl Freeze for RunSubGraphError",1,["maplibre::render::graph::context::RunSubGraphError"]],["impl Freeze for OutputSlotError",1,["maplibre::render::graph::context::OutputSlotError"]],["impl Freeze for InputSlotError",1,["maplibre::render::graph::context::InputSlotError"]],["impl Freeze for Edge",1,["maplibre::render::graph::edge::Edge"]],["impl Freeze for EdgeExistence",1,["maplibre::render::graph::edge::EdgeExistence"]],["impl Freeze for RenderGraph",1,["maplibre::render::graph::graph::RenderGraph"]],["impl Freeze for GraphInputNode",1,["maplibre::render::graph::graph::GraphInputNode"]],["impl<'d> Freeze for RenderContext<'d>",1,["maplibre::render::graph::node::RenderContext"]],["impl Freeze for NodeId",1,["maplibre::render::graph::node::NodeId"]],["impl Freeze for NodeRunError",1,["maplibre::render::graph::node::NodeRunError"]],["impl Freeze for Edges",1,["maplibre::render::graph::node::Edges"]],["impl Freeze for NodeState",1,["maplibre::render::graph::node::NodeState"]],["impl Freeze for NodeLabel",1,["maplibre::render::graph::node::NodeLabel"]],["impl Freeze for EmptyNode",1,["maplibre::render::graph::node::EmptyNode"]],["impl Freeze for SlotValue",1,["maplibre::render::graph::node_slot::SlotValue"]],["impl Freeze for SlotType",1,["maplibre::render::graph::node_slot::SlotType"]],["impl Freeze for SlotLabel",1,["maplibre::render::graph::node_slot::SlotLabel"]],["impl Freeze for SlotInfo",1,["maplibre::render::graph::node_slot::SlotInfo"]],["impl Freeze for SlotInfos",1,["maplibre::render::graph::node_slot::SlotInfos"]],["impl Freeze for RenderGraphError",1,["maplibre::render::graph::RenderGraphError"]],["impl<B> Freeze for BackingBufferDescriptor<B>where\n B: Freeze,",1,["maplibre::render::resource::buffer::BackingBufferDescriptor"]],["impl Freeze for RenderPipelineDescriptor",1,["maplibre::render::resource::pipeline::RenderPipelineDescriptor"]],["impl Freeze for VertexBufferLayout",1,["maplibre::render::resource::shader::VertexBufferLayout"]],["impl Freeze for FragmentState",1,["maplibre::render::resource::shader::FragmentState"]],["impl Freeze for VertexState",1,["maplibre::render::resource::shader::VertexState"]],["impl Freeze for BufferDimensions",1,["maplibre::render::resource::surface::BufferDimensions"]],["impl !Freeze for WindowHead",1,["maplibre::render::resource::surface::WindowHead"]],["impl !Freeze for BufferedTextureHead",1,["maplibre::render::resource::surface::BufferedTextureHead"]],["impl !Freeze for Head",1,["maplibre::render::resource::surface::Head"]],["impl !Freeze for Surface",1,["maplibre::render::resource::surface::Surface"]],["impl Freeze for TextureView",1,["maplibre::render::resource::texture::TextureView"]],["impl Freeze for Texture",1,["maplibre::render::resource::texture::Texture"]],["impl Freeze for TilePipeline",1,["maplibre::render::resource::tile_pipeline::TilePipeline"]],["impl<'a> Freeze for TrackedRenderPass<'a>",1,["maplibre::render::resource::tracked_render_pass::TrackedRenderPass"]],["impl Freeze for GraphRunnerSystem",1,["maplibre::render::systems::graph_runner_system::GraphRunnerSystem"]],["impl Freeze for ResourceSystem",1,["maplibre::render::systems::resource_system::ResourceSystem"]],["impl Freeze for RenderGraphRunner",1,["maplibre::render::graph_runner::RenderGraphRunner"]],["impl Freeze for RenderGraphRunnerError",1,["maplibre::render::graph_runner::RenderGraphRunnerError"]],["impl Freeze for MainPassNode",1,["maplibre::render::main_pass::MainPassNode"]],["impl Freeze for MainPassDriverNode",1,["maplibre::render::main_pass::MainPassDriverNode"]],["impl Freeze for TileMaskShader",1,["maplibre::render::shaders::TileMaskShader"]],["impl Freeze for VectorTileShader",1,["maplibre::render::shaders::VectorTileShader"]],["impl Freeze for ShaderCamera",1,["maplibre::render::shaders::ShaderCamera"]],["impl Freeze for ShaderGlobals",1,["maplibre::render::shaders::ShaderGlobals"]],["impl Freeze for ShaderVertex",1,["maplibre::render::shaders::ShaderVertex"]],["impl Freeze for ShaderFeatureStyle",1,["maplibre::render::shaders::ShaderFeatureStyle"]],["impl Freeze for ShaderLayerMetadata",1,["maplibre::render::shaders::ShaderLayerMetadata"]],["impl Freeze for ShaderTileMetadata",1,["maplibre::render::shaders::ShaderTileMetadata"]],["impl Freeze for ShaderTextureVertex",1,["maplibre::render::shaders::ShaderTextureVertex"]],["impl Freeze for RasterTileShader",1,["maplibre::render::shaders::RasterTileShader"]],["impl Freeze for RendererBuilder",1,["maplibre::render::builder::RendererBuilder"]],["impl !Freeze for InitializationResult",1,["maplibre::render::builder::InitializationResult"]],["impl Freeze for UninitializedRenderer",1,["maplibre::render::builder::UninitializedRenderer"]],["impl !Freeze for InitializedRenderer",1,["maplibre::render::builder::InitializedRenderer"]],["impl Freeze for ViewProjection",1,["maplibre::render::camera::ViewProjection"]],["impl Freeze for InvertedViewProjection",1,["maplibre::render::camera::InvertedViewProjection"]],["impl Freeze for ModelViewProjection",1,["maplibre::render::camera::ModelViewProjection"]],["impl Freeze for Camera",1,["maplibre::render::camera::Camera"]],["impl Freeze for Perspective",1,["maplibre::render::camera::Perspective"]],["impl Freeze for RenderError",1,["maplibre::render::error::RenderError"]],["impl<T> Freeze for Eventually<T>where\n T: Freeze,",1,["maplibre::render::eventually::Eventually"]],["impl Freeze for SetMaskPipeline",1,["maplibre::render::render_commands::SetMaskPipeline"]],["impl Freeze for DrawMask",1,["maplibre::render::render_commands::DrawMask"]],["impl Freeze for RenderCommandResult",1,["maplibre::render::render_phase::draw::RenderCommandResult"]],["impl<C, P> Freeze for DrawState<C, P>",1,["maplibre::render::render_phase::draw::DrawState"]],["impl<I> Freeze for RenderPhase<I>",1,["maplibre::render::render_phase::RenderPhase"]],["impl Freeze for LayerItem",1,["maplibre::render::render_phase::LayerItem"]],["impl Freeze for TileMaskItem",1,["maplibre::render::render_phase::TileMaskItem"]],["impl Freeze for WgpuSettings",1,["maplibre::render::settings::WgpuSettings"]],["impl Freeze for SurfaceType",1,["maplibre::render::settings::SurfaceType"]],["impl Freeze for Msaa",1,["maplibre::render::settings::Msaa"]],["impl Freeze for RendererSettings",1,["maplibre::render::settings::RendererSettings"]],["impl<B> Freeze for BackingBuffer<B>where\n B: Freeze,",1,["maplibre::render::tile_view_pattern::pattern::BackingBuffer"]],["impl<Q, B> Freeze for TileViewPattern<Q, B>where\n B: Freeze,",1,["maplibre::render::tile_view_pattern::pattern::TileViewPattern"]],["impl Freeze for SourceShapes",1,["maplibre::render::tile_view_pattern::SourceShapes"]],["impl Freeze for ViewTile",1,["maplibre::render::tile_view_pattern::ViewTile"]],["impl Freeze for TileShape",1,["maplibre::render::tile_view_pattern::TileShape"]],["impl<Q> Freeze for QueryHasTile<Q>",1,["maplibre::render::tile_view_pattern::QueryHasTile"]],["impl Freeze for ViewTileSources",1,["maplibre::render::tile_view_pattern::ViewTileSources"]],["impl Freeze for RenderStageLabel",1,["maplibre::render::RenderStageLabel"]],["impl !Freeze for RenderResources",1,["maplibre::render::RenderResources"]],["impl !Freeze for Renderer",1,["maplibre::render::Renderer"]],["impl Freeze for MaskPipeline",1,["maplibre::render::MaskPipeline"]],["impl Freeze for RenderPlugin",1,["maplibre::render::RenderPlugin"]],["impl Freeze for BackgroundPaint",1,["maplibre::style::layer::BackgroundPaint"]],["impl Freeze for FillPaint",1,["maplibre::style::layer::FillPaint"]],["impl Freeze for LinePaint",1,["maplibre::style::layer::LinePaint"]],["impl Freeze for LayerPaint",1,["maplibre::style::layer::LayerPaint"]],["impl Freeze for StyleLayer",1,["maplibre::style::layer::StyleLayer"]],["impl Freeze for RasterResampling",1,["maplibre::style::raster::RasterResampling"]],["impl Freeze for RasterLayer",1,["maplibre::style::raster::RasterLayer"]],["impl Freeze for TileAddressingScheme",1,["maplibre::style::source::TileAddressingScheme"]],["impl Freeze for VectorSource",1,["maplibre::style::source::VectorSource"]],["impl Freeze for Source",1,["maplibre::style::source::Source"]],["impl Freeze for Style",1,["maplibre::style::style::Style"]],["impl Freeze for FPSMeter",1,["maplibre::util::fps_meter::FPSMeter"]],["impl<S> Freeze for Plane<S>where\n S: Freeze,",1,["maplibre::util::math::Plane"]],["impl<S> Freeze for Aabb2<S>where\n S: Freeze,",1,["maplibre::util::math::Aabb2"]],["impl<S> Freeze for Aabb3<S>where\n S: Freeze,",1,["maplibre::util::math::Aabb3"]],["impl Freeze for FloatOrd",1,["maplibre::util::math::FloatOrd"]],["impl<T> Freeze for ChangeObserver<T>where\n T: Freeze,",1,["maplibre::util::ChangeObserver"]],["impl Freeze for WindowSize",1,["maplibre::window::WindowSize"]],["impl Freeze for NopStage",1,["maplibre::schedule::NopStage"]],["impl<const I: usize, S> Freeze for MultiStage<I, S>where\n S: Freeze,",1,["maplibre::schedule::MultiStage"]],["impl Freeze for Schedule",1,["maplibre::schedule::Schedule"]],["impl Freeze for SendEventError",1,["maplibre::event_loop::SendEventError"]],["impl<E> Freeze for Kernel<E>where\n <E as Environment>::AsyncProcedureCall: Freeze,\n <E as Environment>::HttpClient: Freeze,\n <E as Environment>::MapWindowConfig: Freeze,\n <E as Environment>::Scheduler: Freeze,",1,["maplibre::kernel::Kernel"]],["impl<E> Freeze for KernelBuilder<E>where\n <E as Environment>::AsyncProcedureCall: Freeze,\n <E as Environment>::HttpClient: Freeze,\n <E as Environment>::MapWindowConfig: Freeze,\n <E as Environment>::Scheduler: Freeze,",1,["maplibre::kernel::KernelBuilder"]],["impl Freeze for MapError",1,["maplibre::map::MapError"]],["impl !Freeze for CurrentMapContext",1,["maplibre::map::CurrentMapContext"]],["impl<E> !Freeze for Map<E>",1,["maplibre::map::Map"]],["impl Freeze for Resources",1,["maplibre::tcs::resources::Resources"]],["impl<F> Freeze for FunctionSystem<F>where\n F: Freeze,",1,["maplibre::tcs::system::function::FunctionSystem"]],["impl Freeze for SystemStage",1,["maplibre::tcs::system::stage::SystemStage"]],["impl Freeze for SystemContainer",1,["maplibre::tcs::system::SystemContainer"]],["impl Freeze for Tile",1,["maplibre::tcs::tiles::Tile"]],["impl Freeze for Tiles",1,["maplibre::tcs::tiles::Tiles"]],["impl<'t> Freeze for TileSpawnResult<'t>",1,["maplibre::tcs::tiles::TileSpawnResult"]],["impl Freeze for GlobalQueryState",1,["maplibre::tcs::tiles::GlobalQueryState"]],["impl<'s> Freeze for EphemeralQueryState<'s>",1,["maplibre::tcs::tiles::EphemeralQueryState"]],["impl Freeze for World",1,["maplibre::tcs::world::World"]],["impl Freeze for GlobalQueryState",1,["maplibre::tcs::GlobalQueryState"]],["impl<'s> Freeze for EphemeralQueryState<'s>",1,["maplibre::tcs::EphemeralQueryState"]],["impl Freeze for ViewState",1,["maplibre::view_state::ViewState"]],["impl Freeze for DebugPassNode",1,["maplibre::debug::debug_pass::DebugPassNode"]],["impl Freeze for SetDebugPipeline",1,["maplibre::debug::render_commands::SetDebugPipeline"]],["impl Freeze for DrawDebugOutline",1,["maplibre::debug::render_commands::DrawDebugOutline"]],["impl Freeze for DebugPipeline",1,["maplibre::debug::DebugPipeline"]],["impl Freeze for TileDebugItem",1,["maplibre::debug::TileDebugItem"]],["impl Freeze for DebugPlugin",1,["maplibre::debug::DebugPlugin"]],["impl<E, T> Freeze for PopulateWorldSystem<E, T>",1,["maplibre::raster::populate_world_system::PopulateWorldSystem"]],["impl Freeze for ProcessRasterError",1,["maplibre::raster::process_raster::ProcessRasterError"]],["impl Freeze for RasterTileRequest",1,["maplibre::raster::process_raster::RasterTileRequest"]],["impl<T, C> Freeze for ProcessRasterContext<T, C>where\n C: Freeze,",1,["maplibre::raster::process_raster::ProcessRasterContext"]],["impl Freeze for SetRasterTilePipeline",1,["maplibre::raster::render_commands::SetRasterTilePipeline"]],["impl<const I: usize> Freeze for SetRasterViewBindGroup<I>",1,["maplibre::raster::render_commands::SetRasterViewBindGroup"]],["impl Freeze for DrawRasterTile",1,["maplibre::raster::render_commands::DrawRasterTile"]],["impl<E, T> Freeze for RequestSystem<E, T>",1,["maplibre::raster::request_system::RequestSystem"]],["impl Freeze for RasterResources",1,["maplibre::raster::resource::raster::RasterResources"]],["impl Freeze for RasterMessageTag",1,["maplibre::raster::transferables::RasterMessageTag"]],["impl Freeze for DefaultLayerRaster",1,["maplibre::raster::transferables::DefaultLayerRaster"]],["impl Freeze for DefaultLayerRasterMissing",1,["maplibre::raster::transferables::DefaultLayerRasterMissing"]],["impl Freeze for DefaultRasterTransferables",1,["maplibre::raster::transferables::DefaultRasterTransferables"]],["impl<T> Freeze for RasterPlugin<T>",1,["maplibre::raster::RasterPlugin"]],["impl Freeze for AvailableRasterLayerData",1,["maplibre::raster::AvailableRasterLayerData"]],["impl Freeze for MissingRasterLayerData",1,["maplibre::raster::MissingRasterLayerData"]],["impl Freeze for RasterLayerData",1,["maplibre::raster::RasterLayerData"]],["impl Freeze for RasterLayersDataComponent",1,["maplibre::raster::RasterLayersDataComponent"]],["impl<E, T> Freeze for PopulateWorldSystem<E, T>",1,["maplibre::vector::populate_world_system::PopulateWorldSystem"]],["impl Freeze for ProcessVectorError",1,["maplibre::vector::process_vector::ProcessVectorError"]],["impl Freeze for VectorTileRequest",1,["maplibre::vector::process_vector::VectorTileRequest"]],["impl<T, C> Freeze for ProcessVectorContext<T, C>where\n C: Freeze,",1,["maplibre::vector::process_vector::ProcessVectorContext"]],["impl Freeze for SetVectorTilePipeline",1,["maplibre::vector::render_commands::SetVectorTilePipeline"]],["impl Freeze for DrawVectorTile",1,["maplibre::vector::render_commands::DrawVectorTile"]],["impl<E, T> Freeze for RequestSystem<E, T>",1,["maplibre::vector::request_system::RequestSystem"]],["impl<Q, B, V, I, TM, FM> Freeze for BufferPool<Q, B, V, I, TM, FM>where\n B: Freeze,",1,["maplibre::vector::resource::buffer_pool::BufferPool"]],["impl Freeze for BackingBufferType",1,["maplibre::vector::resource::buffer_pool::BackingBufferType"]],["impl<B> Freeze for BackingBuffer<B>where\n B: Freeze,",1,["maplibre::vector::resource::buffer_pool::BackingBuffer"]],["impl Freeze for IndexEntry",1,["maplibre::vector::resource::buffer_pool::IndexEntry"]],["impl Freeze for RingIndexEntry",1,["maplibre::vector::resource::buffer_pool::RingIndexEntry"]],["impl Freeze for RingIndex",1,["maplibre::vector::resource::buffer_pool::RingIndex"]],["impl Freeze for VectorMessageTag",1,["maplibre::vector::transferables::VectorMessageTag"]],["impl Freeze for DefaultTileTessellated",1,["maplibre::vector::transferables::DefaultTileTessellated"]],["impl Freeze for DefaultLayerMissing",1,["maplibre::vector::transferables::DefaultLayerMissing"]],["impl Freeze for DefaultLayerTesselated",1,["maplibre::vector::transferables::DefaultLayerTesselated"]],["impl Freeze for DefaultLayerIndexed",1,["maplibre::vector::transferables::DefaultLayerIndexed"]],["impl Freeze for DefaultVectorTransferables",1,["maplibre::vector::transferables::DefaultVectorTransferables"]],["impl Freeze for VectorPipeline",1,["maplibre::vector::VectorPipeline"]],["impl<T> Freeze for VectorPlugin<T>",1,["maplibre::vector::VectorPlugin"]],["impl Freeze for VectorTilesDone",1,["maplibre::vector::VectorTilesDone"]],["impl Freeze for AvailableVectorLayerData",1,["maplibre::vector::AvailableVectorLayerData"]],["impl Freeze for MissingVectorLayerData",1,["maplibre::vector::MissingVectorLayerData"]],["impl Freeze for VectorLayerData",1,["maplibre::vector::VectorLayerData"]],["impl Freeze for VectorLayersDataComponent",1,["maplibre::vector::VectorLayersDataComponent"]]] +"maplibre":[["impl<I> !Freeze for ZeroTessellator<I>",1,["maplibre::tessellation::zero_tessellator::ZeroTessellator"]],["impl Freeze for VertexConstructor",1,["maplibre::tessellation::VertexConstructor"]],["impl<V, I> Freeze for OverAlignedVertexBuffer<V, I>",1,["maplibre::tessellation::OverAlignedVertexBuffer"]],["impl !Freeze for MapContext",1,["maplibre::context::MapContext"]],["impl Freeze for Quadkey",1,["maplibre::coords::Quadkey"]],["impl Freeze for ZoomLevel",1,["maplibre::coords::ZoomLevel"]],["impl Freeze for LatLon",1,["maplibre::coords::LatLon"]],["impl Freeze for Zoom",1,["maplibre::coords::Zoom"]],["impl Freeze for InnerCoords",1,["maplibre::coords::InnerCoords"]],["impl Freeze for TileCoords",1,["maplibre::coords::TileCoords"]],["impl Freeze for WorldTileCoords",1,["maplibre::coords::WorldTileCoords"]],["impl Freeze for AlignedWorldTileCoords",1,["maplibre::coords::AlignedWorldTileCoords"]],["impl Freeze for WorldCoords",1,["maplibre::coords::WorldCoords"]],["impl Freeze for ViewRegion",1,["maplibre::coords::ViewRegion"]],["impl Freeze for MessageError",1,["maplibre::io::apc::MessageError"]],["impl Freeze for Message",1,["maplibre::io::apc::Message"]],["impl Freeze for Input",1,["maplibre::io::apc::Input"]],["impl Freeze for SendError",1,["maplibre::io::apc::SendError"]],["impl Freeze for ProcedureError",1,["maplibre::io::apc::ProcedureError"]],["impl Freeze for CallError",1,["maplibre::io::apc::CallError"]],["impl Freeze for SchedulerContext",1,["maplibre::io::apc::SchedulerContext"]],["impl<K, S> !Freeze for SchedulerAsyncProcedureCall<K, S>",1,["maplibre::io::apc::SchedulerAsyncProcedureCall"]],["impl Freeze for GeometryIndex",1,["maplibre::io::geometry_index::GeometryIndex"]],["impl Freeze for TileIndex",1,["maplibre::io::geometry_index::TileIndex"]],["impl<T> Freeze for IndexedGeometry<T>where\n T: Freeze,",1,["maplibre::io::geometry_index::IndexedGeometry"]],["impl<T> Freeze for ExactGeometry<T>",1,["maplibre::io::geometry_index::ExactGeometry"]],["impl Freeze for IndexProcessor",1,["maplibre::io::geometry_index::IndexProcessor"]],["impl Freeze for ScheduleError",1,["maplibre::io::scheduler::ScheduleError"]],["impl Freeze for NopScheduler",1,["maplibre::io::scheduler::NopScheduler"]],["impl<HC> Freeze for HttpSourceClient<HC>where\n HC: Freeze,",1,["maplibre::io::source_client::HttpSourceClient"]],["impl Freeze for SourceFetchError",1,["maplibre::io::source_client::SourceFetchError"]],["impl<HC> Freeze for SourceClient<HC>where\n HC: Freeze,",1,["maplibre::io::source_client::SourceClient"]],["impl Freeze for TessellateSource",1,["maplibre::io::source_type::TessellateSource"]],["impl Freeze for RasterSource",1,["maplibre::io::source_type::RasterSource"]],["impl Freeze for SourceType",1,["maplibre::io::source_type::SourceType"]],["impl Freeze for ReqwestHttpClient",1,["maplibre::platform::noweb::http_client::ReqwestHttpClient"]],["impl Freeze for TokioScheduler",1,["maplibre::platform::noweb::scheduler::TokioScheduler"]],["impl Freeze for ReqwestOffscreenKernelEnvironment",1,["maplibre::platform::noweb::ReqwestOffscreenKernelEnvironment"]],["impl Freeze for RunSubGraph",1,["maplibre::render::graph::context::RunSubGraph"]],["impl<'a> Freeze for RenderGraphContext<'a>",1,["maplibre::render::graph::context::RenderGraphContext"]],["impl Freeze for RunSubGraphError",1,["maplibre::render::graph::context::RunSubGraphError"]],["impl Freeze for OutputSlotError",1,["maplibre::render::graph::context::OutputSlotError"]],["impl Freeze for InputSlotError",1,["maplibre::render::graph::context::InputSlotError"]],["impl Freeze for Edge",1,["maplibre::render::graph::edge::Edge"]],["impl Freeze for EdgeExistence",1,["maplibre::render::graph::edge::EdgeExistence"]],["impl Freeze for RenderGraph",1,["maplibre::render::graph::graph::RenderGraph"]],["impl Freeze for GraphInputNode",1,["maplibre::render::graph::graph::GraphInputNode"]],["impl<'d> Freeze for RenderContext<'d>",1,["maplibre::render::graph::node::RenderContext"]],["impl Freeze for NodeId",1,["maplibre::render::graph::node::NodeId"]],["impl Freeze for NodeRunError",1,["maplibre::render::graph::node::NodeRunError"]],["impl Freeze for Edges",1,["maplibre::render::graph::node::Edges"]],["impl Freeze for NodeState",1,["maplibre::render::graph::node::NodeState"]],["impl Freeze for NodeLabel",1,["maplibre::render::graph::node::NodeLabel"]],["impl Freeze for EmptyNode",1,["maplibre::render::graph::node::EmptyNode"]],["impl Freeze for SlotValue",1,["maplibre::render::graph::node_slot::SlotValue"]],["impl Freeze for SlotType",1,["maplibre::render::graph::node_slot::SlotType"]],["impl Freeze for SlotLabel",1,["maplibre::render::graph::node_slot::SlotLabel"]],["impl Freeze for SlotInfo",1,["maplibre::render::graph::node_slot::SlotInfo"]],["impl Freeze for SlotInfos",1,["maplibre::render::graph::node_slot::SlotInfos"]],["impl Freeze for RenderGraphError",1,["maplibre::render::graph::RenderGraphError"]],["impl<B> Freeze for BackingBufferDescriptor<B>where\n B: Freeze,",1,["maplibre::render::resource::buffer::BackingBufferDescriptor"]],["impl Freeze for RenderPipelineDescriptor",1,["maplibre::render::resource::pipeline::RenderPipelineDescriptor"]],["impl Freeze for VertexBufferLayout",1,["maplibre::render::resource::shader::VertexBufferLayout"]],["impl Freeze for FragmentState",1,["maplibre::render::resource::shader::FragmentState"]],["impl Freeze for VertexState",1,["maplibre::render::resource::shader::VertexState"]],["impl Freeze for BufferDimensions",1,["maplibre::render::resource::surface::BufferDimensions"]],["impl !Freeze for WindowHead",1,["maplibre::render::resource::surface::WindowHead"]],["impl !Freeze for BufferedTextureHead",1,["maplibre::render::resource::surface::BufferedTextureHead"]],["impl !Freeze for Head",1,["maplibre::render::resource::surface::Head"]],["impl !Freeze for Surface",1,["maplibre::render::resource::surface::Surface"]],["impl Freeze for TextureView",1,["maplibre::render::resource::texture::TextureView"]],["impl Freeze for Texture",1,["maplibre::render::resource::texture::Texture"]],["impl Freeze for TilePipeline",1,["maplibre::render::resource::tile_pipeline::TilePipeline"]],["impl<'a> Freeze for TrackedRenderPass<'a>",1,["maplibre::render::resource::tracked_render_pass::TrackedRenderPass"]],["impl Freeze for GraphRunnerSystem",1,["maplibre::render::systems::graph_runner_system::GraphRunnerSystem"]],["impl Freeze for ResourceSystem",1,["maplibre::render::systems::resource_system::ResourceSystem"]],["impl Freeze for RenderGraphRunner",1,["maplibre::render::graph_runner::RenderGraphRunner"]],["impl Freeze for RenderGraphRunnerError",1,["maplibre::render::graph_runner::RenderGraphRunnerError"]],["impl Freeze for MainPassNode",1,["maplibre::render::main_pass::MainPassNode"]],["impl Freeze for MainPassDriverNode",1,["maplibre::render::main_pass::MainPassDriverNode"]],["impl Freeze for TileMaskShader",1,["maplibre::render::shaders::TileMaskShader"]],["impl Freeze for VectorTileShader",1,["maplibre::render::shaders::VectorTileShader"]],["impl Freeze for ShaderCamera",1,["maplibre::render::shaders::ShaderCamera"]],["impl Freeze for ShaderGlobals",1,["maplibre::render::shaders::ShaderGlobals"]],["impl Freeze for ShaderVertex",1,["maplibre::render::shaders::ShaderVertex"]],["impl Freeze for ShaderFeatureStyle",1,["maplibre::render::shaders::ShaderFeatureStyle"]],["impl Freeze for ShaderLayerMetadata",1,["maplibre::render::shaders::ShaderLayerMetadata"]],["impl Freeze for ShaderTileMetadata",1,["maplibre::render::shaders::ShaderTileMetadata"]],["impl Freeze for ShaderTextureVertex",1,["maplibre::render::shaders::ShaderTextureVertex"]],["impl Freeze for RasterTileShader",1,["maplibre::render::shaders::RasterTileShader"]],["impl Freeze for RendererBuilder",1,["maplibre::render::builder::RendererBuilder"]],["impl !Freeze for InitializationResult",1,["maplibre::render::builder::InitializationResult"]],["impl Freeze for UninitializedRenderer",1,["maplibre::render::builder::UninitializedRenderer"]],["impl !Freeze for InitializedRenderer",1,["maplibre::render::builder::InitializedRenderer"]],["impl Freeze for ViewProjection",1,["maplibre::render::camera::ViewProjection"]],["impl Freeze for InvertedViewProjection",1,["maplibre::render::camera::InvertedViewProjection"]],["impl Freeze for ModelViewProjection",1,["maplibre::render::camera::ModelViewProjection"]],["impl Freeze for Camera",1,["maplibre::render::camera::Camera"]],["impl Freeze for EdgeInsets",1,["maplibre::render::camera::EdgeInsets"]],["impl Freeze for Perspective",1,["maplibre::render::camera::Perspective"]],["impl Freeze for RenderError",1,["maplibre::render::error::RenderError"]],["impl<T> Freeze for Eventually<T>where\n T: Freeze,",1,["maplibre::render::eventually::Eventually"]],["impl Freeze for SetMaskPipeline",1,["maplibre::render::render_commands::SetMaskPipeline"]],["impl Freeze for DrawMask",1,["maplibre::render::render_commands::DrawMask"]],["impl Freeze for RenderCommandResult",1,["maplibre::render::render_phase::draw::RenderCommandResult"]],["impl<C, P> Freeze for DrawState<C, P>",1,["maplibre::render::render_phase::draw::DrawState"]],["impl<I> Freeze for RenderPhase<I>",1,["maplibre::render::render_phase::RenderPhase"]],["impl Freeze for LayerItem",1,["maplibre::render::render_phase::LayerItem"]],["impl Freeze for TileMaskItem",1,["maplibre::render::render_phase::TileMaskItem"]],["impl Freeze for WgpuSettings",1,["maplibre::render::settings::WgpuSettings"]],["impl Freeze for SurfaceType",1,["maplibre::render::settings::SurfaceType"]],["impl Freeze for Msaa",1,["maplibre::render::settings::Msaa"]],["impl Freeze for RendererSettings",1,["maplibre::render::settings::RendererSettings"]],["impl<B> Freeze for BackingBuffer<B>where\n B: Freeze,",1,["maplibre::render::tile_view_pattern::pattern::BackingBuffer"]],["impl<Q, B> Freeze for TileViewPattern<Q, B>where\n B: Freeze,",1,["maplibre::render::tile_view_pattern::pattern::TileViewPattern"]],["impl Freeze for SourceShapes",1,["maplibre::render::tile_view_pattern::SourceShapes"]],["impl Freeze for ViewTile",1,["maplibre::render::tile_view_pattern::ViewTile"]],["impl Freeze for TileShape",1,["maplibre::render::tile_view_pattern::TileShape"]],["impl<Q> Freeze for QueryHasTile<Q>",1,["maplibre::render::tile_view_pattern::QueryHasTile"]],["impl Freeze for ViewTileSources",1,["maplibre::render::tile_view_pattern::ViewTileSources"]],["impl Freeze for ViewState",1,["maplibre::render::view_state::ViewState"]],["impl Freeze for RenderStageLabel",1,["maplibre::render::RenderStageLabel"]],["impl !Freeze for RenderResources",1,["maplibre::render::RenderResources"]],["impl !Freeze for Renderer",1,["maplibre::render::Renderer"]],["impl Freeze for MaskPipeline",1,["maplibre::render::MaskPipeline"]],["impl Freeze for RenderPlugin",1,["maplibre::render::RenderPlugin"]],["impl Freeze for BackgroundPaint",1,["maplibre::style::layer::BackgroundPaint"]],["impl Freeze for FillPaint",1,["maplibre::style::layer::FillPaint"]],["impl Freeze for LinePaint",1,["maplibre::style::layer::LinePaint"]],["impl Freeze for LayerPaint",1,["maplibre::style::layer::LayerPaint"]],["impl Freeze for StyleLayer",1,["maplibre::style::layer::StyleLayer"]],["impl Freeze for RasterResampling",1,["maplibre::style::raster::RasterResampling"]],["impl Freeze for RasterLayer",1,["maplibre::style::raster::RasterLayer"]],["impl Freeze for TileAddressingScheme",1,["maplibre::style::source::TileAddressingScheme"]],["impl Freeze for VectorSource",1,["maplibre::style::source::VectorSource"]],["impl Freeze for Source",1,["maplibre::style::source::Source"]],["impl Freeze for Style",1,["maplibre::style::style::Style"]],["impl Freeze for FPSMeter",1,["maplibre::util::fps_meter::FPSMeter"]],["impl<S> Freeze for Plane<S>where\n S: Freeze,",1,["maplibre::util::math::Plane"]],["impl<S> Freeze for Aabb2<S>where\n S: Freeze,",1,["maplibre::util::math::Aabb2"]],["impl<S> Freeze for Aabb3<S>where\n S: Freeze,",1,["maplibre::util::math::Aabb3"]],["impl Freeze for FloatOrd",1,["maplibre::util::math::FloatOrd"]],["impl<T> Freeze for ChangeObserver<T>where\n T: Freeze,",1,["maplibre::util::ChangeObserver"]],["impl Freeze for WindowSize",1,["maplibre::window::WindowSize"]],["impl Freeze for NopStage",1,["maplibre::schedule::NopStage"]],["impl<const I: usize, S> Freeze for MultiStage<I, S>where\n S: Freeze,",1,["maplibre::schedule::MultiStage"]],["impl Freeze for Schedule",1,["maplibre::schedule::Schedule"]],["impl Freeze for SendEventError",1,["maplibre::event_loop::SendEventError"]],["impl<E> Freeze for Kernel<E>where\n <E as Environment>::AsyncProcedureCall: Freeze,\n <E as Environment>::HttpClient: Freeze,\n <E as Environment>::MapWindowConfig: Freeze,\n <E as Environment>::Scheduler: Freeze,",1,["maplibre::kernel::Kernel"]],["impl<E> Freeze for KernelBuilder<E>where\n <E as Environment>::AsyncProcedureCall: Freeze,\n <E as Environment>::HttpClient: Freeze,\n <E as Environment>::MapWindowConfig: Freeze,\n <E as Environment>::Scheduler: Freeze,",1,["maplibre::kernel::KernelBuilder"]],["impl Freeze for MapError",1,["maplibre::map::MapError"]],["impl !Freeze for CurrentMapContext",1,["maplibre::map::CurrentMapContext"]],["impl<E> !Freeze for Map<E>",1,["maplibre::map::Map"]],["impl Freeze for Resources",1,["maplibre::tcs::resources::Resources"]],["impl<F> Freeze for FunctionSystem<F>where\n F: Freeze,",1,["maplibre::tcs::system::function::FunctionSystem"]],["impl Freeze for SystemStage",1,["maplibre::tcs::system::stage::SystemStage"]],["impl Freeze for SystemContainer",1,["maplibre::tcs::system::SystemContainer"]],["impl Freeze for Tile",1,["maplibre::tcs::tiles::Tile"]],["impl Freeze for Tiles",1,["maplibre::tcs::tiles::Tiles"]],["impl<'t> Freeze for TileSpawnResult<'t>",1,["maplibre::tcs::tiles::TileSpawnResult"]],["impl Freeze for GlobalQueryState",1,["maplibre::tcs::tiles::GlobalQueryState"]],["impl<'s> Freeze for EphemeralQueryState<'s>",1,["maplibre::tcs::tiles::EphemeralQueryState"]],["impl Freeze for World",1,["maplibre::tcs::world::World"]],["impl Freeze for GlobalQueryState",1,["maplibre::tcs::GlobalQueryState"]],["impl<'s> Freeze for EphemeralQueryState<'s>",1,["maplibre::tcs::EphemeralQueryState"]],["impl Freeze for DebugPassNode",1,["maplibre::debug::debug_pass::DebugPassNode"]],["impl Freeze for SetDebugPipeline",1,["maplibre::debug::render_commands::SetDebugPipeline"]],["impl Freeze for DrawDebugOutline",1,["maplibre::debug::render_commands::DrawDebugOutline"]],["impl Freeze for DebugPipeline",1,["maplibre::debug::DebugPipeline"]],["impl Freeze for TileDebugItem",1,["maplibre::debug::TileDebugItem"]],["impl Freeze for DebugPlugin",1,["maplibre::debug::DebugPlugin"]],["impl<E, T> Freeze for PopulateWorldSystem<E, T>",1,["maplibre::raster::populate_world_system::PopulateWorldSystem"]],["impl Freeze for ProcessRasterError",1,["maplibre::raster::process_raster::ProcessRasterError"]],["impl Freeze for RasterTileRequest",1,["maplibre::raster::process_raster::RasterTileRequest"]],["impl<T, C> Freeze for ProcessRasterContext<T, C>where\n C: Freeze,",1,["maplibre::raster::process_raster::ProcessRasterContext"]],["impl Freeze for SetRasterTilePipeline",1,["maplibre::raster::render_commands::SetRasterTilePipeline"]],["impl<const I: usize> Freeze for SetRasterViewBindGroup<I>",1,["maplibre::raster::render_commands::SetRasterViewBindGroup"]],["impl Freeze for DrawRasterTile",1,["maplibre::raster::render_commands::DrawRasterTile"]],["impl<E, T> Freeze for RequestSystem<E, T>",1,["maplibre::raster::request_system::RequestSystem"]],["impl Freeze for RasterResources",1,["maplibre::raster::resource::raster::RasterResources"]],["impl Freeze for RasterMessageTag",1,["maplibre::raster::transferables::RasterMessageTag"]],["impl Freeze for DefaultLayerRaster",1,["maplibre::raster::transferables::DefaultLayerRaster"]],["impl Freeze for DefaultLayerRasterMissing",1,["maplibre::raster::transferables::DefaultLayerRasterMissing"]],["impl Freeze for DefaultRasterTransferables",1,["maplibre::raster::transferables::DefaultRasterTransferables"]],["impl<T> Freeze for RasterPlugin<T>",1,["maplibre::raster::RasterPlugin"]],["impl Freeze for AvailableRasterLayerData",1,["maplibre::raster::AvailableRasterLayerData"]],["impl Freeze for MissingRasterLayerData",1,["maplibre::raster::MissingRasterLayerData"]],["impl Freeze for RasterLayerData",1,["maplibre::raster::RasterLayerData"]],["impl Freeze for RasterLayersDataComponent",1,["maplibre::raster::RasterLayersDataComponent"]],["impl<E, T> Freeze for PopulateWorldSystem<E, T>",1,["maplibre::vector::populate_world_system::PopulateWorldSystem"]],["impl Freeze for ProcessVectorError",1,["maplibre::vector::process_vector::ProcessVectorError"]],["impl Freeze for VectorTileRequest",1,["maplibre::vector::process_vector::VectorTileRequest"]],["impl<T, C> Freeze for ProcessVectorContext<T, C>where\n C: Freeze,",1,["maplibre::vector::process_vector::ProcessVectorContext"]],["impl Freeze for SetVectorTilePipeline",1,["maplibre::vector::render_commands::SetVectorTilePipeline"]],["impl Freeze for DrawVectorTile",1,["maplibre::vector::render_commands::DrawVectorTile"]],["impl<E, T> Freeze for RequestSystem<E, T>",1,["maplibre::vector::request_system::RequestSystem"]],["impl<Q, B, V, I, TM, FM> Freeze for BufferPool<Q, B, V, I, TM, FM>where\n B: Freeze,",1,["maplibre::vector::resource::buffer_pool::BufferPool"]],["impl Freeze for BackingBufferType",1,["maplibre::vector::resource::buffer_pool::BackingBufferType"]],["impl<B> Freeze for BackingBuffer<B>where\n B: Freeze,",1,["maplibre::vector::resource::buffer_pool::BackingBuffer"]],["impl Freeze for IndexEntry",1,["maplibre::vector::resource::buffer_pool::IndexEntry"]],["impl Freeze for RingIndexEntry",1,["maplibre::vector::resource::buffer_pool::RingIndexEntry"]],["impl Freeze for RingIndex",1,["maplibre::vector::resource::buffer_pool::RingIndex"]],["impl Freeze for VectorMessageTag",1,["maplibre::vector::transferables::VectorMessageTag"]],["impl Freeze for DefaultTileTessellated",1,["maplibre::vector::transferables::DefaultTileTessellated"]],["impl Freeze for DefaultLayerMissing",1,["maplibre::vector::transferables::DefaultLayerMissing"]],["impl Freeze for DefaultLayerTesselated",1,["maplibre::vector::transferables::DefaultLayerTesselated"]],["impl Freeze for DefaultLayerIndexed",1,["maplibre::vector::transferables::DefaultLayerIndexed"]],["impl Freeze for DefaultVectorTransferables",1,["maplibre::vector::transferables::DefaultVectorTransferables"]],["impl Freeze for VectorPipeline",1,["maplibre::vector::VectorPipeline"]],["impl<T> Freeze for VectorPlugin<T>",1,["maplibre::vector::VectorPlugin"]],["impl Freeze for VectorTilesDone",1,["maplibre::vector::VectorTilesDone"]],["impl Freeze for AvailableVectorLayerData",1,["maplibre::vector::AvailableVectorLayerData"]],["impl Freeze for MissingVectorLayerData",1,["maplibre::vector::MissingVectorLayerData"]],["impl Freeze for VectorLayerData",1,["maplibre::vector::VectorLayerData"]],["impl Freeze for VectorLayersDataComponent",1,["maplibre::vector::VectorLayersDataComponent"]]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/docs/api/implementors/core/marker/trait.Send.js b/docs/api/implementors/core/marker/trait.Send.js index 8cb1a701..687cd9f0 100644 --- a/docs/api/implementors/core/marker/trait.Send.js +++ b/docs/api/implementors/core/marker/trait.Send.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"maplibre":[["impl<I> Send for ZeroTessellator<I>where\n I: Send,",1,["maplibre::tessellation::zero_tessellator::ZeroTessellator"]],["impl Send for VertexConstructor",1,["maplibre::tessellation::VertexConstructor"]],["impl<V, I> Send for OverAlignedVertexBuffer<V, I>where\n I: Send,\n V: Send,",1,["maplibre::tessellation::OverAlignedVertexBuffer"]],["impl !Send for MapContext",1,["maplibre::context::MapContext"]],["impl Send for Quadkey",1,["maplibre::coords::Quadkey"]],["impl Send for ZoomLevel",1,["maplibre::coords::ZoomLevel"]],["impl Send for LatLon",1,["maplibre::coords::LatLon"]],["impl Send for Zoom",1,["maplibre::coords::Zoom"]],["impl Send for InnerCoords",1,["maplibre::coords::InnerCoords"]],["impl Send for TileCoords",1,["maplibre::coords::TileCoords"]],["impl Send for WorldTileCoords",1,["maplibre::coords::WorldTileCoords"]],["impl Send for AlignedWorldTileCoords",1,["maplibre::coords::AlignedWorldTileCoords"]],["impl Send for WorldCoords",1,["maplibre::coords::WorldCoords"]],["impl Send for ViewRegion",1,["maplibre::coords::ViewRegion"]],["impl !Send for MessageError",1,["maplibre::io::apc::MessageError"]],["impl Send for Message",1,["maplibre::io::apc::Message"]],["impl Send for Input",1,["maplibre::io::apc::Input"]],["impl Send for SendError",1,["maplibre::io::apc::SendError"]],["impl !Send for ProcedureError",1,["maplibre::io::apc::ProcedureError"]],["impl !Send for CallError",1,["maplibre::io::apc::CallError"]],["impl Send for SchedulerContext",1,["maplibre::io::apc::SchedulerContext"]],["impl<K, S> Send for SchedulerAsyncProcedureCall<K, S>where\n S: Send,",1,["maplibre::io::apc::SchedulerAsyncProcedureCall"]],["impl Send for GeometryIndex",1,["maplibre::io::geometry_index::GeometryIndex"]],["impl Send for TileIndex",1,["maplibre::io::geometry_index::TileIndex"]],["impl<T> Send for IndexedGeometry<T>where\n T: Send,",1,["maplibre::io::geometry_index::IndexedGeometry"]],["impl<T> Send for ExactGeometry<T>where\n T: Send,",1,["maplibre::io::geometry_index::ExactGeometry"]],["impl Send for IndexProcessor",1,["maplibre::io::geometry_index::IndexProcessor"]],["impl !Send for ScheduleError",1,["maplibre::io::scheduler::ScheduleError"]],["impl Send for NopScheduler",1,["maplibre::io::scheduler::NopScheduler"]],["impl<HC> Send for HttpSourceClient<HC>",1,["maplibre::io::source_client::HttpSourceClient"]],["impl !Send for SourceFetchError",1,["maplibre::io::source_client::SourceFetchError"]],["impl<HC> Send for SourceClient<HC>",1,["maplibre::io::source_client::SourceClient"]],["impl Send for TessellateSource",1,["maplibre::io::source_type::TessellateSource"]],["impl Send for RasterSource",1,["maplibre::io::source_type::RasterSource"]],["impl Send for SourceType",1,["maplibre::io::source_type::SourceType"]],["impl Send for ReqwestHttpClient",1,["maplibre::platform::noweb::http_client::ReqwestHttpClient"]],["impl Send for TokioScheduler",1,["maplibre::platform::noweb::scheduler::TokioScheduler"]],["impl Send for ReqwestOffscreenKernelEnvironment",1,["maplibre::platform::noweb::ReqwestOffscreenKernelEnvironment"]],["impl !Send for RunSubGraph",1,["maplibre::render::graph::context::RunSubGraph"]],["impl<'a> !Send for RenderGraphContext<'a>",1,["maplibre::render::graph::context::RenderGraphContext"]],["impl Send for RunSubGraphError",1,["maplibre::render::graph::context::RunSubGraphError"]],["impl Send for OutputSlotError",1,["maplibre::render::graph::context::OutputSlotError"]],["impl Send for InputSlotError",1,["maplibre::render::graph::context::InputSlotError"]],["impl Send for Edge",1,["maplibre::render::graph::edge::Edge"]],["impl Send for EdgeExistence",1,["maplibre::render::graph::edge::EdgeExistence"]],["impl Send for RenderGraph",1,["maplibre::render::graph::graph::RenderGraph"]],["impl Send for GraphInputNode",1,["maplibre::render::graph::graph::GraphInputNode"]],["impl<'d> Send for RenderContext<'d>",1,["maplibre::render::graph::node::RenderContext"]],["impl Send for NodeId",1,["maplibre::render::graph::node::NodeId"]],["impl Send for NodeRunError",1,["maplibre::render::graph::node::NodeRunError"]],["impl Send for Edges",1,["maplibre::render::graph::node::Edges"]],["impl Send for NodeState",1,["maplibre::render::graph::node::NodeState"]],["impl Send for NodeLabel",1,["maplibre::render::graph::node::NodeLabel"]],["impl Send for EmptyNode",1,["maplibre::render::graph::node::EmptyNode"]],["impl !Send for SlotValue",1,["maplibre::render::graph::node_slot::SlotValue"]],["impl Send for SlotType",1,["maplibre::render::graph::node_slot::SlotType"]],["impl Send for SlotLabel",1,["maplibre::render::graph::node_slot::SlotLabel"]],["impl Send for SlotInfo",1,["maplibre::render::graph::node_slot::SlotInfo"]],["impl Send for SlotInfos",1,["maplibre::render::graph::node_slot::SlotInfos"]],["impl Send for RenderGraphError",1,["maplibre::render::graph::RenderGraphError"]],["impl<B> Send for BackingBufferDescriptor<B>where\n B: Send,",1,["maplibre::render::resource::buffer::BackingBufferDescriptor"]],["impl Send for RenderPipelineDescriptor",1,["maplibre::render::resource::pipeline::RenderPipelineDescriptor"]],["impl Send for VertexBufferLayout",1,["maplibre::render::resource::shader::VertexBufferLayout"]],["impl Send for FragmentState",1,["maplibre::render::resource::shader::FragmentState"]],["impl Send for VertexState",1,["maplibre::render::resource::shader::VertexState"]],["impl Send for BufferDimensions",1,["maplibre::render::resource::surface::BufferDimensions"]],["impl Send for WindowHead",1,["maplibre::render::resource::surface::WindowHead"]],["impl Send for BufferedTextureHead",1,["maplibre::render::resource::surface::BufferedTextureHead"]],["impl Send for Head",1,["maplibre::render::resource::surface::Head"]],["impl Send for Surface",1,["maplibre::render::resource::surface::Surface"]],["impl Send for TextureView",1,["maplibre::render::resource::texture::TextureView"]],["impl Send for Texture",1,["maplibre::render::resource::texture::Texture"]],["impl Send for TilePipeline",1,["maplibre::render::resource::tile_pipeline::TilePipeline"]],["impl<'a> Send for TrackedRenderPass<'a>",1,["maplibre::render::resource::tracked_render_pass::TrackedRenderPass"]],["impl Send for GraphRunnerSystem",1,["maplibre::render::systems::graph_runner_system::GraphRunnerSystem"]],["impl Send for ResourceSystem",1,["maplibre::render::systems::resource_system::ResourceSystem"]],["impl Send for RenderGraphRunner",1,["maplibre::render::graph_runner::RenderGraphRunner"]],["impl Send for RenderGraphRunnerError",1,["maplibre::render::graph_runner::RenderGraphRunnerError"]],["impl Send for MainPassNode",1,["maplibre::render::main_pass::MainPassNode"]],["impl Send for MainPassDriverNode",1,["maplibre::render::main_pass::MainPassDriverNode"]],["impl Send for TileMaskShader",1,["maplibre::render::shaders::TileMaskShader"]],["impl Send for VectorTileShader",1,["maplibre::render::shaders::VectorTileShader"]],["impl Send for ShaderCamera",1,["maplibre::render::shaders::ShaderCamera"]],["impl Send for ShaderGlobals",1,["maplibre::render::shaders::ShaderGlobals"]],["impl Send for ShaderVertex",1,["maplibre::render::shaders::ShaderVertex"]],["impl Send for ShaderFeatureStyle",1,["maplibre::render::shaders::ShaderFeatureStyle"]],["impl Send for ShaderLayerMetadata",1,["maplibre::render::shaders::ShaderLayerMetadata"]],["impl Send for ShaderTileMetadata",1,["maplibre::render::shaders::ShaderTileMetadata"]],["impl Send for ShaderTextureVertex",1,["maplibre::render::shaders::ShaderTextureVertex"]],["impl Send for RasterTileShader",1,["maplibre::render::shaders::RasterTileShader"]],["impl Send for RendererBuilder",1,["maplibre::render::builder::RendererBuilder"]],["impl Send for InitializationResult",1,["maplibre::render::builder::InitializationResult"]],["impl Send for UninitializedRenderer",1,["maplibre::render::builder::UninitializedRenderer"]],["impl Send for InitializedRenderer",1,["maplibre::render::builder::InitializedRenderer"]],["impl Send for ViewProjection",1,["maplibre::render::camera::ViewProjection"]],["impl Send for InvertedViewProjection",1,["maplibre::render::camera::InvertedViewProjection"]],["impl Send for ModelViewProjection",1,["maplibre::render::camera::ModelViewProjection"]],["impl Send for Camera",1,["maplibre::render::camera::Camera"]],["impl Send for Perspective",1,["maplibre::render::camera::Perspective"]],["impl Send for RenderError",1,["maplibre::render::error::RenderError"]],["impl<T> Send for Eventually<T>where\n T: Send,",1,["maplibre::render::eventually::Eventually"]],["impl Send for SetMaskPipeline",1,["maplibre::render::render_commands::SetMaskPipeline"]],["impl Send for DrawMask",1,["maplibre::render::render_commands::DrawMask"]],["impl Send for RenderCommandResult",1,["maplibre::render::render_phase::draw::RenderCommandResult"]],["impl<C, P> Send for DrawState<C, P>where\n C: Send,\n P: Send,",1,["maplibre::render::render_phase::draw::DrawState"]],["impl<I> Send for RenderPhase<I>where\n I: Send,",1,["maplibre::render::render_phase::RenderPhase"]],["impl !Send for LayerItem",1,["maplibre::render::render_phase::LayerItem"]],["impl !Send for TileMaskItem",1,["maplibre::render::render_phase::TileMaskItem"]],["impl Send for WgpuSettings",1,["maplibre::render::settings::WgpuSettings"]],["impl Send for SurfaceType",1,["maplibre::render::settings::SurfaceType"]],["impl Send for Msaa",1,["maplibre::render::settings::Msaa"]],["impl Send for RendererSettings",1,["maplibre::render::settings::RendererSettings"]],["impl<B> Send for BackingBuffer<B>where\n B: Send,",1,["maplibre::render::tile_view_pattern::pattern::BackingBuffer"]],["impl<Q, B> Send for TileViewPattern<Q, B>where\n B: Send,\n Q: Send,",1,["maplibre::render::tile_view_pattern::pattern::TileViewPattern"]],["impl Send for SourceShapes",1,["maplibre::render::tile_view_pattern::SourceShapes"]],["impl Send for ViewTile",1,["maplibre::render::tile_view_pattern::ViewTile"]],["impl Send for TileShape",1,["maplibre::render::tile_view_pattern::TileShape"]],["impl<Q> Send for QueryHasTile<Q>where\n Q: Send,",1,["maplibre::render::tile_view_pattern::QueryHasTile"]],["impl !Send for ViewTileSources",1,["maplibre::render::tile_view_pattern::ViewTileSources"]],["impl Send for RenderStageLabel",1,["maplibre::render::RenderStageLabel"]],["impl Send for RenderResources",1,["maplibre::render::RenderResources"]],["impl Send for Renderer",1,["maplibre::render::Renderer"]],["impl Send for MaskPipeline",1,["maplibre::render::MaskPipeline"]],["impl Send for RenderPlugin",1,["maplibre::render::RenderPlugin"]],["impl Send for BackgroundPaint",1,["maplibre::style::layer::BackgroundPaint"]],["impl Send for FillPaint",1,["maplibre::style::layer::FillPaint"]],["impl Send for LinePaint",1,["maplibre::style::layer::LinePaint"]],["impl Send for LayerPaint",1,["maplibre::style::layer::LayerPaint"]],["impl Send for StyleLayer",1,["maplibre::style::layer::StyleLayer"]],["impl Send for RasterResampling",1,["maplibre::style::raster::RasterResampling"]],["impl Send for RasterLayer",1,["maplibre::style::raster::RasterLayer"]],["impl Send for TileAddressingScheme",1,["maplibre::style::source::TileAddressingScheme"]],["impl Send for VectorSource",1,["maplibre::style::source::VectorSource"]],["impl Send for Source",1,["maplibre::style::source::Source"]],["impl Send for Style",1,["maplibre::style::style::Style"]],["impl Send for FPSMeter",1,["maplibre::util::fps_meter::FPSMeter"]],["impl<S> Send for Plane<S>where\n S: Send,",1,["maplibre::util::math::Plane"]],["impl<S> Send for Aabb2<S>where\n S: Send,",1,["maplibre::util::math::Aabb2"]],["impl<S> Send for Aabb3<S>where\n S: Send,",1,["maplibre::util::math::Aabb3"]],["impl Send for FloatOrd",1,["maplibre::util::math::FloatOrd"]],["impl<T> Send for ChangeObserver<T>where\n T: Send,",1,["maplibre::util::ChangeObserver"]],["impl Send for WindowSize",1,["maplibre::window::WindowSize"]],["impl Send for NopStage",1,["maplibre::schedule::NopStage"]],["impl<const I: usize, S> Send for MultiStage<I, S>where\n S: Send,",1,["maplibre::schedule::MultiStage"]],["impl !Send for Schedule",1,["maplibre::schedule::Schedule"]],["impl Send for SendEventError",1,["maplibre::event_loop::SendEventError"]],["impl<E> Send for Kernel<E>where\n <E as Environment>::AsyncProcedureCall: Send,\n <E as Environment>::MapWindowConfig: Send,\n <E as Environment>::Scheduler: Send,",1,["maplibre::kernel::Kernel"]],["impl<E> Send for KernelBuilder<E>where\n <E as Environment>::AsyncProcedureCall: Send,\n <E as Environment>::MapWindowConfig: Send,\n <E as Environment>::Scheduler: Send,",1,["maplibre::kernel::KernelBuilder"]],["impl Send for MapError",1,["maplibre::map::MapError"]],["impl !Send for CurrentMapContext",1,["maplibre::map::CurrentMapContext"]],["impl<E> !Send for Map<E>",1,["maplibre::map::Map"]],["impl !Send for Resources",1,["maplibre::tcs::resources::Resources"]],["impl<F> Send for FunctionSystem<F>where\n F: Send,",1,["maplibre::tcs::system::function::FunctionSystem"]],["impl !Send for SystemStage",1,["maplibre::tcs::system::stage::SystemStage"]],["impl !Send for SystemContainer",1,["maplibre::tcs::system::SystemContainer"]],["impl Send for Tile",1,["maplibre::tcs::tiles::Tile"]],["impl !Send for Tiles",1,["maplibre::tcs::tiles::Tiles"]],["impl<'t> !Send for TileSpawnResult<'t>",1,["maplibre::tcs::tiles::TileSpawnResult"]],["impl Send for GlobalQueryState",1,["maplibre::tcs::tiles::GlobalQueryState"]],["impl<'s> Send for EphemeralQueryState<'s>",1,["maplibre::tcs::tiles::EphemeralQueryState"]],["impl !Send for World",1,["maplibre::tcs::world::World"]],["impl Send for GlobalQueryState",1,["maplibre::tcs::GlobalQueryState"]],["impl<'s> Send for EphemeralQueryState<'s>",1,["maplibre::tcs::EphemeralQueryState"]],["impl Send for ViewState",1,["maplibre::view_state::ViewState"]],["impl Send for DebugPassNode",1,["maplibre::debug::debug_pass::DebugPassNode"]],["impl Send for SetDebugPipeline",1,["maplibre::debug::render_commands::SetDebugPipeline"]],["impl Send for DrawDebugOutline",1,["maplibre::debug::render_commands::DrawDebugOutline"]],["impl Send for DebugPipeline",1,["maplibre::debug::DebugPipeline"]],["impl !Send for TileDebugItem",1,["maplibre::debug::TileDebugItem"]],["impl Send for DebugPlugin",1,["maplibre::debug::DebugPlugin"]],["impl<E, T> !Send for PopulateWorldSystem<E, T>",1,["maplibre::raster::populate_world_system::PopulateWorldSystem"]],["impl !Send for ProcessRasterError",1,["maplibre::raster::process_raster::ProcessRasterError"]],["impl Send for RasterTileRequest",1,["maplibre::raster::process_raster::RasterTileRequest"]],["impl<T, C> Send for ProcessRasterContext<T, C>where\n C: Send,\n T: Send,",1,["maplibre::raster::process_raster::ProcessRasterContext"]],["impl Send for SetRasterTilePipeline",1,["maplibre::raster::render_commands::SetRasterTilePipeline"]],["impl<const I: usize> Send for SetRasterViewBindGroup<I>",1,["maplibre::raster::render_commands::SetRasterViewBindGroup"]],["impl Send for DrawRasterTile",1,["maplibre::raster::render_commands::DrawRasterTile"]],["impl<E, T> !Send for RequestSystem<E, T>",1,["maplibre::raster::request_system::RequestSystem"]],["impl Send for RasterResources",1,["maplibre::raster::resource::raster::RasterResources"]],["impl Send for RasterMessageTag",1,["maplibre::raster::transferables::RasterMessageTag"]],["impl Send for DefaultLayerRaster",1,["maplibre::raster::transferables::DefaultLayerRaster"]],["impl Send for DefaultLayerRasterMissing",1,["maplibre::raster::transferables::DefaultLayerRasterMissing"]],["impl Send for DefaultRasterTransferables",1,["maplibre::raster::transferables::DefaultRasterTransferables"]],["impl<T> Send for RasterPlugin<T>where\n T: Send,",1,["maplibre::raster::RasterPlugin"]],["impl Send for AvailableRasterLayerData",1,["maplibre::raster::AvailableRasterLayerData"]],["impl Send for MissingRasterLayerData",1,["maplibre::raster::MissingRasterLayerData"]],["impl Send for RasterLayerData",1,["maplibre::raster::RasterLayerData"]],["impl Send for RasterLayersDataComponent",1,["maplibre::raster::RasterLayersDataComponent"]],["impl<E, T> !Send for PopulateWorldSystem<E, T>",1,["maplibre::vector::populate_world_system::PopulateWorldSystem"]],["impl !Send for ProcessVectorError",1,["maplibre::vector::process_vector::ProcessVectorError"]],["impl Send for VectorTileRequest",1,["maplibre::vector::process_vector::VectorTileRequest"]],["impl<T, C> Send for ProcessVectorContext<T, C>where\n C: Send,\n T: Send,",1,["maplibre::vector::process_vector::ProcessVectorContext"]],["impl Send for SetVectorTilePipeline",1,["maplibre::vector::render_commands::SetVectorTilePipeline"]],["impl Send for DrawVectorTile",1,["maplibre::vector::render_commands::DrawVectorTile"]],["impl<E, T> !Send for RequestSystem<E, T>",1,["maplibre::vector::request_system::RequestSystem"]],["impl<Q, B, V, I, TM, FM> Send for BufferPool<Q, B, V, I, TM, FM>where\n B: Send,\n FM: Send,\n I: Send,\n Q: Send,\n TM: Send,\n V: Send,",1,["maplibre::vector::resource::buffer_pool::BufferPool"]],["impl Send for BackingBufferType",1,["maplibre::vector::resource::buffer_pool::BackingBufferType"]],["impl<B> Send for BackingBuffer<B>where\n B: Send,",1,["maplibre::vector::resource::buffer_pool::BackingBuffer"]],["impl Send for IndexEntry",1,["maplibre::vector::resource::buffer_pool::IndexEntry"]],["impl Send for RingIndexEntry",1,["maplibre::vector::resource::buffer_pool::RingIndexEntry"]],["impl Send for RingIndex",1,["maplibre::vector::resource::buffer_pool::RingIndex"]],["impl Send for VectorMessageTag",1,["maplibre::vector::transferables::VectorMessageTag"]],["impl Send for DefaultTileTessellated",1,["maplibre::vector::transferables::DefaultTileTessellated"]],["impl Send for DefaultLayerMissing",1,["maplibre::vector::transferables::DefaultLayerMissing"]],["impl Send for DefaultLayerTesselated",1,["maplibre::vector::transferables::DefaultLayerTesselated"]],["impl Send for DefaultLayerIndexed",1,["maplibre::vector::transferables::DefaultLayerIndexed"]],["impl Send for DefaultVectorTransferables",1,["maplibre::vector::transferables::DefaultVectorTransferables"]],["impl Send for VectorPipeline",1,["maplibre::vector::VectorPipeline"]],["impl<T> Send for VectorPlugin<T>where\n T: Send,",1,["maplibre::vector::VectorPlugin"]],["impl Send for VectorTilesDone",1,["maplibre::vector::VectorTilesDone"]],["impl Send for AvailableVectorLayerData",1,["maplibre::vector::AvailableVectorLayerData"]],["impl Send for MissingVectorLayerData",1,["maplibre::vector::MissingVectorLayerData"]],["impl Send for VectorLayerData",1,["maplibre::vector::VectorLayerData"]],["impl Send for VectorLayersDataComponent",1,["maplibre::vector::VectorLayersDataComponent"]]] +"maplibre":[["impl<I> Send for ZeroTessellator<I>where\n I: Send,",1,["maplibre::tessellation::zero_tessellator::ZeroTessellator"]],["impl Send for VertexConstructor",1,["maplibre::tessellation::VertexConstructor"]],["impl<V, I> Send for OverAlignedVertexBuffer<V, I>where\n I: Send,\n V: Send,",1,["maplibre::tessellation::OverAlignedVertexBuffer"]],["impl !Send for MapContext",1,["maplibre::context::MapContext"]],["impl Send for Quadkey",1,["maplibre::coords::Quadkey"]],["impl Send for ZoomLevel",1,["maplibre::coords::ZoomLevel"]],["impl Send for LatLon",1,["maplibre::coords::LatLon"]],["impl Send for Zoom",1,["maplibre::coords::Zoom"]],["impl Send for InnerCoords",1,["maplibre::coords::InnerCoords"]],["impl Send for TileCoords",1,["maplibre::coords::TileCoords"]],["impl Send for WorldTileCoords",1,["maplibre::coords::WorldTileCoords"]],["impl Send for AlignedWorldTileCoords",1,["maplibre::coords::AlignedWorldTileCoords"]],["impl Send for WorldCoords",1,["maplibre::coords::WorldCoords"]],["impl Send for ViewRegion",1,["maplibre::coords::ViewRegion"]],["impl !Send for MessageError",1,["maplibre::io::apc::MessageError"]],["impl Send for Message",1,["maplibre::io::apc::Message"]],["impl Send for Input",1,["maplibre::io::apc::Input"]],["impl Send for SendError",1,["maplibre::io::apc::SendError"]],["impl !Send for ProcedureError",1,["maplibre::io::apc::ProcedureError"]],["impl !Send for CallError",1,["maplibre::io::apc::CallError"]],["impl Send for SchedulerContext",1,["maplibre::io::apc::SchedulerContext"]],["impl<K, S> Send for SchedulerAsyncProcedureCall<K, S>where\n S: Send,",1,["maplibre::io::apc::SchedulerAsyncProcedureCall"]],["impl Send for GeometryIndex",1,["maplibre::io::geometry_index::GeometryIndex"]],["impl Send for TileIndex",1,["maplibre::io::geometry_index::TileIndex"]],["impl<T> Send for IndexedGeometry<T>where\n T: Send,",1,["maplibre::io::geometry_index::IndexedGeometry"]],["impl<T> Send for ExactGeometry<T>where\n T: Send,",1,["maplibre::io::geometry_index::ExactGeometry"]],["impl Send for IndexProcessor",1,["maplibre::io::geometry_index::IndexProcessor"]],["impl !Send for ScheduleError",1,["maplibre::io::scheduler::ScheduleError"]],["impl Send for NopScheduler",1,["maplibre::io::scheduler::NopScheduler"]],["impl<HC> Send for HttpSourceClient<HC>",1,["maplibre::io::source_client::HttpSourceClient"]],["impl !Send for SourceFetchError",1,["maplibre::io::source_client::SourceFetchError"]],["impl<HC> Send for SourceClient<HC>",1,["maplibre::io::source_client::SourceClient"]],["impl Send for TessellateSource",1,["maplibre::io::source_type::TessellateSource"]],["impl Send for RasterSource",1,["maplibre::io::source_type::RasterSource"]],["impl Send for SourceType",1,["maplibre::io::source_type::SourceType"]],["impl Send for ReqwestHttpClient",1,["maplibre::platform::noweb::http_client::ReqwestHttpClient"]],["impl Send for TokioScheduler",1,["maplibre::platform::noweb::scheduler::TokioScheduler"]],["impl Send for ReqwestOffscreenKernelEnvironment",1,["maplibre::platform::noweb::ReqwestOffscreenKernelEnvironment"]],["impl !Send for RunSubGraph",1,["maplibre::render::graph::context::RunSubGraph"]],["impl<'a> !Send for RenderGraphContext<'a>",1,["maplibre::render::graph::context::RenderGraphContext"]],["impl Send for RunSubGraphError",1,["maplibre::render::graph::context::RunSubGraphError"]],["impl Send for OutputSlotError",1,["maplibre::render::graph::context::OutputSlotError"]],["impl Send for InputSlotError",1,["maplibre::render::graph::context::InputSlotError"]],["impl Send for Edge",1,["maplibre::render::graph::edge::Edge"]],["impl Send for EdgeExistence",1,["maplibre::render::graph::edge::EdgeExistence"]],["impl Send for RenderGraph",1,["maplibre::render::graph::graph::RenderGraph"]],["impl Send for GraphInputNode",1,["maplibre::render::graph::graph::GraphInputNode"]],["impl<'d> Send for RenderContext<'d>",1,["maplibre::render::graph::node::RenderContext"]],["impl Send for NodeId",1,["maplibre::render::graph::node::NodeId"]],["impl Send for NodeRunError",1,["maplibre::render::graph::node::NodeRunError"]],["impl Send for Edges",1,["maplibre::render::graph::node::Edges"]],["impl Send for NodeState",1,["maplibre::render::graph::node::NodeState"]],["impl Send for NodeLabel",1,["maplibre::render::graph::node::NodeLabel"]],["impl Send for EmptyNode",1,["maplibre::render::graph::node::EmptyNode"]],["impl !Send for SlotValue",1,["maplibre::render::graph::node_slot::SlotValue"]],["impl Send for SlotType",1,["maplibre::render::graph::node_slot::SlotType"]],["impl Send for SlotLabel",1,["maplibre::render::graph::node_slot::SlotLabel"]],["impl Send for SlotInfo",1,["maplibre::render::graph::node_slot::SlotInfo"]],["impl Send for SlotInfos",1,["maplibre::render::graph::node_slot::SlotInfos"]],["impl Send for RenderGraphError",1,["maplibre::render::graph::RenderGraphError"]],["impl<B> Send for BackingBufferDescriptor<B>where\n B: Send,",1,["maplibre::render::resource::buffer::BackingBufferDescriptor"]],["impl Send for RenderPipelineDescriptor",1,["maplibre::render::resource::pipeline::RenderPipelineDescriptor"]],["impl Send for VertexBufferLayout",1,["maplibre::render::resource::shader::VertexBufferLayout"]],["impl Send for FragmentState",1,["maplibre::render::resource::shader::FragmentState"]],["impl Send for VertexState",1,["maplibre::render::resource::shader::VertexState"]],["impl Send for BufferDimensions",1,["maplibre::render::resource::surface::BufferDimensions"]],["impl Send for WindowHead",1,["maplibre::render::resource::surface::WindowHead"]],["impl Send for BufferedTextureHead",1,["maplibre::render::resource::surface::BufferedTextureHead"]],["impl Send for Head",1,["maplibre::render::resource::surface::Head"]],["impl Send for Surface",1,["maplibre::render::resource::surface::Surface"]],["impl Send for TextureView",1,["maplibre::render::resource::texture::TextureView"]],["impl Send for Texture",1,["maplibre::render::resource::texture::Texture"]],["impl Send for TilePipeline",1,["maplibre::render::resource::tile_pipeline::TilePipeline"]],["impl<'a> Send for TrackedRenderPass<'a>",1,["maplibre::render::resource::tracked_render_pass::TrackedRenderPass"]],["impl Send for GraphRunnerSystem",1,["maplibre::render::systems::graph_runner_system::GraphRunnerSystem"]],["impl Send for ResourceSystem",1,["maplibre::render::systems::resource_system::ResourceSystem"]],["impl Send for RenderGraphRunner",1,["maplibre::render::graph_runner::RenderGraphRunner"]],["impl Send for RenderGraphRunnerError",1,["maplibre::render::graph_runner::RenderGraphRunnerError"]],["impl Send for MainPassNode",1,["maplibre::render::main_pass::MainPassNode"]],["impl Send for MainPassDriverNode",1,["maplibre::render::main_pass::MainPassDriverNode"]],["impl Send for TileMaskShader",1,["maplibre::render::shaders::TileMaskShader"]],["impl Send for VectorTileShader",1,["maplibre::render::shaders::VectorTileShader"]],["impl Send for ShaderCamera",1,["maplibre::render::shaders::ShaderCamera"]],["impl Send for ShaderGlobals",1,["maplibre::render::shaders::ShaderGlobals"]],["impl Send for ShaderVertex",1,["maplibre::render::shaders::ShaderVertex"]],["impl Send for ShaderFeatureStyle",1,["maplibre::render::shaders::ShaderFeatureStyle"]],["impl Send for ShaderLayerMetadata",1,["maplibre::render::shaders::ShaderLayerMetadata"]],["impl Send for ShaderTileMetadata",1,["maplibre::render::shaders::ShaderTileMetadata"]],["impl Send for ShaderTextureVertex",1,["maplibre::render::shaders::ShaderTextureVertex"]],["impl Send for RasterTileShader",1,["maplibre::render::shaders::RasterTileShader"]],["impl Send for RendererBuilder",1,["maplibre::render::builder::RendererBuilder"]],["impl Send for InitializationResult",1,["maplibre::render::builder::InitializationResult"]],["impl Send for UninitializedRenderer",1,["maplibre::render::builder::UninitializedRenderer"]],["impl Send for InitializedRenderer",1,["maplibre::render::builder::InitializedRenderer"]],["impl Send for ViewProjection",1,["maplibre::render::camera::ViewProjection"]],["impl Send for InvertedViewProjection",1,["maplibre::render::camera::InvertedViewProjection"]],["impl Send for ModelViewProjection",1,["maplibre::render::camera::ModelViewProjection"]],["impl Send for Camera",1,["maplibre::render::camera::Camera"]],["impl Send for EdgeInsets",1,["maplibre::render::camera::EdgeInsets"]],["impl Send for Perspective",1,["maplibre::render::camera::Perspective"]],["impl Send for RenderError",1,["maplibre::render::error::RenderError"]],["impl<T> Send for Eventually<T>where\n T: Send,",1,["maplibre::render::eventually::Eventually"]],["impl Send for SetMaskPipeline",1,["maplibre::render::render_commands::SetMaskPipeline"]],["impl Send for DrawMask",1,["maplibre::render::render_commands::DrawMask"]],["impl Send for RenderCommandResult",1,["maplibre::render::render_phase::draw::RenderCommandResult"]],["impl<C, P> Send for DrawState<C, P>where\n C: Send,\n P: Send,",1,["maplibre::render::render_phase::draw::DrawState"]],["impl<I> Send for RenderPhase<I>where\n I: Send,",1,["maplibre::render::render_phase::RenderPhase"]],["impl !Send for LayerItem",1,["maplibre::render::render_phase::LayerItem"]],["impl !Send for TileMaskItem",1,["maplibre::render::render_phase::TileMaskItem"]],["impl Send for WgpuSettings",1,["maplibre::render::settings::WgpuSettings"]],["impl Send for SurfaceType",1,["maplibre::render::settings::SurfaceType"]],["impl Send for Msaa",1,["maplibre::render::settings::Msaa"]],["impl Send for RendererSettings",1,["maplibre::render::settings::RendererSettings"]],["impl<B> Send for BackingBuffer<B>where\n B: Send,",1,["maplibre::render::tile_view_pattern::pattern::BackingBuffer"]],["impl<Q, B> Send for TileViewPattern<Q, B>where\n B: Send,\n Q: Send,",1,["maplibre::render::tile_view_pattern::pattern::TileViewPattern"]],["impl Send for SourceShapes",1,["maplibre::render::tile_view_pattern::SourceShapes"]],["impl Send for ViewTile",1,["maplibre::render::tile_view_pattern::ViewTile"]],["impl Send for TileShape",1,["maplibre::render::tile_view_pattern::TileShape"]],["impl<Q> Send for QueryHasTile<Q>where\n Q: Send,",1,["maplibre::render::tile_view_pattern::QueryHasTile"]],["impl !Send for ViewTileSources",1,["maplibre::render::tile_view_pattern::ViewTileSources"]],["impl Send for ViewState",1,["maplibre::render::view_state::ViewState"]],["impl Send for RenderStageLabel",1,["maplibre::render::RenderStageLabel"]],["impl Send for RenderResources",1,["maplibre::render::RenderResources"]],["impl Send for Renderer",1,["maplibre::render::Renderer"]],["impl Send for MaskPipeline",1,["maplibre::render::MaskPipeline"]],["impl Send for RenderPlugin",1,["maplibre::render::RenderPlugin"]],["impl Send for BackgroundPaint",1,["maplibre::style::layer::BackgroundPaint"]],["impl Send for FillPaint",1,["maplibre::style::layer::FillPaint"]],["impl Send for LinePaint",1,["maplibre::style::layer::LinePaint"]],["impl Send for LayerPaint",1,["maplibre::style::layer::LayerPaint"]],["impl Send for StyleLayer",1,["maplibre::style::layer::StyleLayer"]],["impl Send for RasterResampling",1,["maplibre::style::raster::RasterResampling"]],["impl Send for RasterLayer",1,["maplibre::style::raster::RasterLayer"]],["impl Send for TileAddressingScheme",1,["maplibre::style::source::TileAddressingScheme"]],["impl Send for VectorSource",1,["maplibre::style::source::VectorSource"]],["impl Send for Source",1,["maplibre::style::source::Source"]],["impl Send for Style",1,["maplibre::style::style::Style"]],["impl Send for FPSMeter",1,["maplibre::util::fps_meter::FPSMeter"]],["impl<S> Send for Plane<S>where\n S: Send,",1,["maplibre::util::math::Plane"]],["impl<S> Send for Aabb2<S>where\n S: Send,",1,["maplibre::util::math::Aabb2"]],["impl<S> Send for Aabb3<S>where\n S: Send,",1,["maplibre::util::math::Aabb3"]],["impl Send for FloatOrd",1,["maplibre::util::math::FloatOrd"]],["impl<T> Send for ChangeObserver<T>where\n T: Send,",1,["maplibre::util::ChangeObserver"]],["impl Send for WindowSize",1,["maplibre::window::WindowSize"]],["impl Send for NopStage",1,["maplibre::schedule::NopStage"]],["impl<const I: usize, S> Send for MultiStage<I, S>where\n S: Send,",1,["maplibre::schedule::MultiStage"]],["impl !Send for Schedule",1,["maplibre::schedule::Schedule"]],["impl Send for SendEventError",1,["maplibre::event_loop::SendEventError"]],["impl<E> Send for Kernel<E>where\n <E as Environment>::AsyncProcedureCall: Send,\n <E as Environment>::MapWindowConfig: Send,\n <E as Environment>::Scheduler: Send,",1,["maplibre::kernel::Kernel"]],["impl<E> Send for KernelBuilder<E>where\n <E as Environment>::AsyncProcedureCall: Send,\n <E as Environment>::MapWindowConfig: Send,\n <E as Environment>::Scheduler: Send,",1,["maplibre::kernel::KernelBuilder"]],["impl Send for MapError",1,["maplibre::map::MapError"]],["impl !Send for CurrentMapContext",1,["maplibre::map::CurrentMapContext"]],["impl<E> !Send for Map<E>",1,["maplibre::map::Map"]],["impl !Send for Resources",1,["maplibre::tcs::resources::Resources"]],["impl<F> Send for FunctionSystem<F>where\n F: Send,",1,["maplibre::tcs::system::function::FunctionSystem"]],["impl !Send for SystemStage",1,["maplibre::tcs::system::stage::SystemStage"]],["impl !Send for SystemContainer",1,["maplibre::tcs::system::SystemContainer"]],["impl Send for Tile",1,["maplibre::tcs::tiles::Tile"]],["impl !Send for Tiles",1,["maplibre::tcs::tiles::Tiles"]],["impl<'t> !Send for TileSpawnResult<'t>",1,["maplibre::tcs::tiles::TileSpawnResult"]],["impl Send for GlobalQueryState",1,["maplibre::tcs::tiles::GlobalQueryState"]],["impl<'s> Send for EphemeralQueryState<'s>",1,["maplibre::tcs::tiles::EphemeralQueryState"]],["impl !Send for World",1,["maplibre::tcs::world::World"]],["impl Send for GlobalQueryState",1,["maplibre::tcs::GlobalQueryState"]],["impl<'s> Send for EphemeralQueryState<'s>",1,["maplibre::tcs::EphemeralQueryState"]],["impl Send for DebugPassNode",1,["maplibre::debug::debug_pass::DebugPassNode"]],["impl Send for SetDebugPipeline",1,["maplibre::debug::render_commands::SetDebugPipeline"]],["impl Send for DrawDebugOutline",1,["maplibre::debug::render_commands::DrawDebugOutline"]],["impl Send for DebugPipeline",1,["maplibre::debug::DebugPipeline"]],["impl !Send for TileDebugItem",1,["maplibre::debug::TileDebugItem"]],["impl Send for DebugPlugin",1,["maplibre::debug::DebugPlugin"]],["impl<E, T> !Send for PopulateWorldSystem<E, T>",1,["maplibre::raster::populate_world_system::PopulateWorldSystem"]],["impl !Send for ProcessRasterError",1,["maplibre::raster::process_raster::ProcessRasterError"]],["impl Send for RasterTileRequest",1,["maplibre::raster::process_raster::RasterTileRequest"]],["impl<T, C> Send for ProcessRasterContext<T, C>where\n C: Send,\n T: Send,",1,["maplibre::raster::process_raster::ProcessRasterContext"]],["impl Send for SetRasterTilePipeline",1,["maplibre::raster::render_commands::SetRasterTilePipeline"]],["impl<const I: usize> Send for SetRasterViewBindGroup<I>",1,["maplibre::raster::render_commands::SetRasterViewBindGroup"]],["impl Send for DrawRasterTile",1,["maplibre::raster::render_commands::DrawRasterTile"]],["impl<E, T> !Send for RequestSystem<E, T>",1,["maplibre::raster::request_system::RequestSystem"]],["impl Send for RasterResources",1,["maplibre::raster::resource::raster::RasterResources"]],["impl Send for RasterMessageTag",1,["maplibre::raster::transferables::RasterMessageTag"]],["impl Send for DefaultLayerRaster",1,["maplibre::raster::transferables::DefaultLayerRaster"]],["impl Send for DefaultLayerRasterMissing",1,["maplibre::raster::transferables::DefaultLayerRasterMissing"]],["impl Send for DefaultRasterTransferables",1,["maplibre::raster::transferables::DefaultRasterTransferables"]],["impl<T> Send for RasterPlugin<T>where\n T: Send,",1,["maplibre::raster::RasterPlugin"]],["impl Send for AvailableRasterLayerData",1,["maplibre::raster::AvailableRasterLayerData"]],["impl Send for MissingRasterLayerData",1,["maplibre::raster::MissingRasterLayerData"]],["impl Send for RasterLayerData",1,["maplibre::raster::RasterLayerData"]],["impl Send for RasterLayersDataComponent",1,["maplibre::raster::RasterLayersDataComponent"]],["impl<E, T> !Send for PopulateWorldSystem<E, T>",1,["maplibre::vector::populate_world_system::PopulateWorldSystem"]],["impl !Send for ProcessVectorError",1,["maplibre::vector::process_vector::ProcessVectorError"]],["impl Send for VectorTileRequest",1,["maplibre::vector::process_vector::VectorTileRequest"]],["impl<T, C> Send for ProcessVectorContext<T, C>where\n C: Send,\n T: Send,",1,["maplibre::vector::process_vector::ProcessVectorContext"]],["impl Send for SetVectorTilePipeline",1,["maplibre::vector::render_commands::SetVectorTilePipeline"]],["impl Send for DrawVectorTile",1,["maplibre::vector::render_commands::DrawVectorTile"]],["impl<E, T> !Send for RequestSystem<E, T>",1,["maplibre::vector::request_system::RequestSystem"]],["impl<Q, B, V, I, TM, FM> Send for BufferPool<Q, B, V, I, TM, FM>where\n B: Send,\n FM: Send,\n I: Send,\n Q: Send,\n TM: Send,\n V: Send,",1,["maplibre::vector::resource::buffer_pool::BufferPool"]],["impl Send for BackingBufferType",1,["maplibre::vector::resource::buffer_pool::BackingBufferType"]],["impl<B> Send for BackingBuffer<B>where\n B: Send,",1,["maplibre::vector::resource::buffer_pool::BackingBuffer"]],["impl Send for IndexEntry",1,["maplibre::vector::resource::buffer_pool::IndexEntry"]],["impl Send for RingIndexEntry",1,["maplibre::vector::resource::buffer_pool::RingIndexEntry"]],["impl Send for RingIndex",1,["maplibre::vector::resource::buffer_pool::RingIndex"]],["impl Send for VectorMessageTag",1,["maplibre::vector::transferables::VectorMessageTag"]],["impl Send for DefaultTileTessellated",1,["maplibre::vector::transferables::DefaultTileTessellated"]],["impl Send for DefaultLayerMissing",1,["maplibre::vector::transferables::DefaultLayerMissing"]],["impl Send for DefaultLayerTesselated",1,["maplibre::vector::transferables::DefaultLayerTesselated"]],["impl Send for DefaultLayerIndexed",1,["maplibre::vector::transferables::DefaultLayerIndexed"]],["impl Send for DefaultVectorTransferables",1,["maplibre::vector::transferables::DefaultVectorTransferables"]],["impl Send for VectorPipeline",1,["maplibre::vector::VectorPipeline"]],["impl<T> Send for VectorPlugin<T>where\n T: Send,",1,["maplibre::vector::VectorPlugin"]],["impl Send for VectorTilesDone",1,["maplibre::vector::VectorTilesDone"]],["impl Send for AvailableVectorLayerData",1,["maplibre::vector::AvailableVectorLayerData"]],["impl Send for MissingVectorLayerData",1,["maplibre::vector::MissingVectorLayerData"]],["impl Send for VectorLayerData",1,["maplibre::vector::VectorLayerData"]],["impl Send for VectorLayersDataComponent",1,["maplibre::vector::VectorLayersDataComponent"]]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/docs/api/implementors/core/marker/trait.StructuralEq.js b/docs/api/implementors/core/marker/trait.StructuralEq.js index d3ebb024..e5198cce 100644 --- a/docs/api/implementors/core/marker/trait.StructuralEq.js +++ b/docs/api/implementors/core/marker/trait.StructuralEq.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"maplibre":[["impl StructuralEq for RenderStageLabel"],["impl StructuralEq for InputSlotError"],["impl StructuralEq for FragmentState"],["impl StructuralEq for RunSubGraphError"],["impl StructuralEq for NodeLabel"],["impl StructuralEq for Edge"],["impl StructuralEq for TileCoords"],["impl StructuralEq for VectorMessageTag"],["impl StructuralEq for Quadkey"],["impl StructuralEq for WindowSize"],["impl StructuralEq for SlotType"],["impl StructuralEq for SlotLabel"],["impl StructuralEq for NodeRunError"],["impl StructuralEq for EdgeExistence"],["impl StructuralEq for NodeId"],["impl StructuralEq for OutputSlotError"],["impl StructuralEq for WorldTileCoords"],["impl StructuralEq for RenderGraphError"],["impl StructuralEq for RasterMessageTag"],["impl StructuralEq for ZoomLevel"]] +"maplibre":[["impl StructuralEq for WorldTileCoords"],["impl StructuralEq for Edge"],["impl StructuralEq for RunSubGraphError"],["impl StructuralEq for TileCoords"],["impl StructuralEq for FragmentState"],["impl StructuralEq for SlotLabel"],["impl StructuralEq for VectorMessageTag"],["impl StructuralEq for SlotType"],["impl StructuralEq for WindowSize"],["impl StructuralEq for RenderStageLabel"],["impl StructuralEq for EdgeExistence"],["impl StructuralEq for NodeLabel"],["impl StructuralEq for NodeRunError"],["impl StructuralEq for RasterMessageTag"],["impl StructuralEq for InputSlotError"],["impl StructuralEq for NodeId"],["impl StructuralEq for RenderGraphError"],["impl StructuralEq for Quadkey"],["impl StructuralEq for ZoomLevel"],["impl StructuralEq for OutputSlotError"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/docs/api/implementors/core/marker/trait.StructuralPartialEq.js b/docs/api/implementors/core/marker/trait.StructuralPartialEq.js index b7294562..55cb3ed2 100644 --- a/docs/api/implementors/core/marker/trait.StructuralPartialEq.js +++ b/docs/api/implementors/core/marker/trait.StructuralPartialEq.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"maplibre":[["impl StructuralPartialEq for NodeLabel"],["impl StructuralPartialEq for NodeRunError"],["impl StructuralPartialEq for OutputSlotError"],["impl StructuralPartialEq for RenderGraphError"],["impl StructuralPartialEq for TileCoords"],["impl StructuralPartialEq for EdgeExistence"],["impl StructuralPartialEq for WorldCoords"],["impl StructuralPartialEq for NodeId"],["impl StructuralPartialEq for Edge"],["impl StructuralPartialEq for VectorMessageTag"],["impl StructuralPartialEq for InputSlotError"],["impl StructuralPartialEq for RunSubGraphError"],["impl StructuralPartialEq for SlotLabel"],["impl StructuralPartialEq for Quadkey"],["impl StructuralPartialEq for InnerCoords"],["impl StructuralPartialEq for ZoomLevel"],["impl StructuralPartialEq for WorldTileCoords"],["impl StructuralPartialEq for WindowSize"],["impl StructuralPartialEq for RenderStageLabel"],["impl StructuralPartialEq for SlotType"],["impl StructuralPartialEq for FragmentState"],["impl StructuralPartialEq for RasterMessageTag"]] +"maplibre":[["impl StructuralPartialEq for NodeLabel"],["impl StructuralPartialEq for EdgeExistence"],["impl StructuralPartialEq for NodeId"],["impl StructuralPartialEq for ZoomLevel"],["impl StructuralPartialEq for NodeRunError"],["impl StructuralPartialEq for Edge"],["impl StructuralPartialEq for InputSlotError"],["impl StructuralPartialEq for EdgeInsets"],["impl StructuralPartialEq for RenderStageLabel"],["impl StructuralPartialEq for RunSubGraphError"],["impl StructuralPartialEq for VectorMessageTag"],["impl StructuralPartialEq for TileCoords"],["impl StructuralPartialEq for WorldTileCoords"],["impl StructuralPartialEq for OutputSlotError"],["impl StructuralPartialEq for RenderGraphError"],["impl StructuralPartialEq for InnerCoords"],["impl StructuralPartialEq for WindowSize"],["impl StructuralPartialEq for SlotLabel"],["impl StructuralPartialEq for FragmentState"],["impl StructuralPartialEq for RasterMessageTag"],["impl StructuralPartialEq for SlotType"],["impl StructuralPartialEq for WorldCoords"],["impl StructuralPartialEq for Quadkey"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/docs/api/implementors/core/marker/trait.Sync.js b/docs/api/implementors/core/marker/trait.Sync.js index 25243488..8696c76d 100644 --- a/docs/api/implementors/core/marker/trait.Sync.js +++ b/docs/api/implementors/core/marker/trait.Sync.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"maplibre":[["impl<I> !Sync for ZeroTessellator<I>",1,["maplibre::tessellation::zero_tessellator::ZeroTessellator"]],["impl Sync for VertexConstructor",1,["maplibre::tessellation::VertexConstructor"]],["impl<V, I> Sync for OverAlignedVertexBuffer<V, I>where\n I: Sync,\n V: Sync,",1,["maplibre::tessellation::OverAlignedVertexBuffer"]],["impl !Sync for MapContext",1,["maplibre::context::MapContext"]],["impl Sync for Quadkey",1,["maplibre::coords::Quadkey"]],["impl Sync for ZoomLevel",1,["maplibre::coords::ZoomLevel"]],["impl Sync for LatLon",1,["maplibre::coords::LatLon"]],["impl Sync for Zoom",1,["maplibre::coords::Zoom"]],["impl Sync for InnerCoords",1,["maplibre::coords::InnerCoords"]],["impl Sync for TileCoords",1,["maplibre::coords::TileCoords"]],["impl Sync for WorldTileCoords",1,["maplibre::coords::WorldTileCoords"]],["impl Sync for AlignedWorldTileCoords",1,["maplibre::coords::AlignedWorldTileCoords"]],["impl Sync for WorldCoords",1,["maplibre::coords::WorldCoords"]],["impl Sync for ViewRegion",1,["maplibre::coords::ViewRegion"]],["impl !Sync for MessageError",1,["maplibre::io::apc::MessageError"]],["impl !Sync for Message",1,["maplibre::io::apc::Message"]],["impl Sync for Input",1,["maplibre::io::apc::Input"]],["impl Sync for SendError",1,["maplibre::io::apc::SendError"]],["impl !Sync for ProcedureError",1,["maplibre::io::apc::ProcedureError"]],["impl !Sync for CallError",1,["maplibre::io::apc::CallError"]],["impl Sync for SchedulerContext",1,["maplibre::io::apc::SchedulerContext"]],["impl<K, S> !Sync for SchedulerAsyncProcedureCall<K, S>",1,["maplibre::io::apc::SchedulerAsyncProcedureCall"]],["impl Sync for GeometryIndex",1,["maplibre::io::geometry_index::GeometryIndex"]],["impl Sync for TileIndex",1,["maplibre::io::geometry_index::TileIndex"]],["impl<T> Sync for IndexedGeometry<T>where\n T: Sync,",1,["maplibre::io::geometry_index::IndexedGeometry"]],["impl<T> Sync for ExactGeometry<T>where\n T: Sync,",1,["maplibre::io::geometry_index::ExactGeometry"]],["impl Sync for IndexProcessor",1,["maplibre::io::geometry_index::IndexProcessor"]],["impl !Sync for ScheduleError",1,["maplibre::io::scheduler::ScheduleError"]],["impl Sync for NopScheduler",1,["maplibre::io::scheduler::NopScheduler"]],["impl<HC> Sync for HttpSourceClient<HC>",1,["maplibre::io::source_client::HttpSourceClient"]],["impl !Sync for SourceFetchError",1,["maplibre::io::source_client::SourceFetchError"]],["impl<HC> Sync for SourceClient<HC>",1,["maplibre::io::source_client::SourceClient"]],["impl Sync for TessellateSource",1,["maplibre::io::source_type::TessellateSource"]],["impl Sync for RasterSource",1,["maplibre::io::source_type::RasterSource"]],["impl Sync for SourceType",1,["maplibre::io::source_type::SourceType"]],["impl Sync for ReqwestHttpClient",1,["maplibre::platform::noweb::http_client::ReqwestHttpClient"]],["impl Sync for TokioScheduler",1,["maplibre::platform::noweb::scheduler::TokioScheduler"]],["impl Sync for ReqwestOffscreenKernelEnvironment",1,["maplibre::platform::noweb::ReqwestOffscreenKernelEnvironment"]],["impl !Sync for RunSubGraph",1,["maplibre::render::graph::context::RunSubGraph"]],["impl<'a> !Sync for RenderGraphContext<'a>",1,["maplibre::render::graph::context::RenderGraphContext"]],["impl Sync for RunSubGraphError",1,["maplibre::render::graph::context::RunSubGraphError"]],["impl Sync for OutputSlotError",1,["maplibre::render::graph::context::OutputSlotError"]],["impl Sync for InputSlotError",1,["maplibre::render::graph::context::InputSlotError"]],["impl Sync for Edge",1,["maplibre::render::graph::edge::Edge"]],["impl Sync for EdgeExistence",1,["maplibre::render::graph::edge::EdgeExistence"]],["impl Sync for RenderGraph",1,["maplibre::render::graph::graph::RenderGraph"]],["impl Sync for GraphInputNode",1,["maplibre::render::graph::graph::GraphInputNode"]],["impl<'d> Sync for RenderContext<'d>",1,["maplibre::render::graph::node::RenderContext"]],["impl Sync for NodeId",1,["maplibre::render::graph::node::NodeId"]],["impl Sync for NodeRunError",1,["maplibre::render::graph::node::NodeRunError"]],["impl Sync for Edges",1,["maplibre::render::graph::node::Edges"]],["impl Sync for NodeState",1,["maplibre::render::graph::node::NodeState"]],["impl Sync for NodeLabel",1,["maplibre::render::graph::node::NodeLabel"]],["impl Sync for EmptyNode",1,["maplibre::render::graph::node::EmptyNode"]],["impl !Sync for SlotValue",1,["maplibre::render::graph::node_slot::SlotValue"]],["impl Sync for SlotType",1,["maplibre::render::graph::node_slot::SlotType"]],["impl Sync for SlotLabel",1,["maplibre::render::graph::node_slot::SlotLabel"]],["impl Sync for SlotInfo",1,["maplibre::render::graph::node_slot::SlotInfo"]],["impl Sync for SlotInfos",1,["maplibre::render::graph::node_slot::SlotInfos"]],["impl Sync for RenderGraphError",1,["maplibre::render::graph::RenderGraphError"]],["impl<B> Sync for BackingBufferDescriptor<B>where\n B: Sync,",1,["maplibre::render::resource::buffer::BackingBufferDescriptor"]],["impl Sync for RenderPipelineDescriptor",1,["maplibre::render::resource::pipeline::RenderPipelineDescriptor"]],["impl Sync for VertexBufferLayout",1,["maplibre::render::resource::shader::VertexBufferLayout"]],["impl Sync for FragmentState",1,["maplibre::render::resource::shader::FragmentState"]],["impl Sync for VertexState",1,["maplibre::render::resource::shader::VertexState"]],["impl Sync for BufferDimensions",1,["maplibre::render::resource::surface::BufferDimensions"]],["impl Sync for WindowHead",1,["maplibre::render::resource::surface::WindowHead"]],["impl Sync for BufferedTextureHead",1,["maplibre::render::resource::surface::BufferedTextureHead"]],["impl Sync for Head",1,["maplibre::render::resource::surface::Head"]],["impl Sync for Surface",1,["maplibre::render::resource::surface::Surface"]],["impl Sync for TextureView",1,["maplibre::render::resource::texture::TextureView"]],["impl Sync for Texture",1,["maplibre::render::resource::texture::Texture"]],["impl Sync for TilePipeline",1,["maplibre::render::resource::tile_pipeline::TilePipeline"]],["impl<'a> Sync for TrackedRenderPass<'a>",1,["maplibre::render::resource::tracked_render_pass::TrackedRenderPass"]],["impl Sync for GraphRunnerSystem",1,["maplibre::render::systems::graph_runner_system::GraphRunnerSystem"]],["impl Sync for ResourceSystem",1,["maplibre::render::systems::resource_system::ResourceSystem"]],["impl Sync for RenderGraphRunner",1,["maplibre::render::graph_runner::RenderGraphRunner"]],["impl Sync for RenderGraphRunnerError",1,["maplibre::render::graph_runner::RenderGraphRunnerError"]],["impl Sync for MainPassNode",1,["maplibre::render::main_pass::MainPassNode"]],["impl Sync for MainPassDriverNode",1,["maplibre::render::main_pass::MainPassDriverNode"]],["impl Sync for TileMaskShader",1,["maplibre::render::shaders::TileMaskShader"]],["impl Sync for VectorTileShader",1,["maplibre::render::shaders::VectorTileShader"]],["impl Sync for ShaderCamera",1,["maplibre::render::shaders::ShaderCamera"]],["impl Sync for ShaderGlobals",1,["maplibre::render::shaders::ShaderGlobals"]],["impl Sync for ShaderVertex",1,["maplibre::render::shaders::ShaderVertex"]],["impl Sync for ShaderFeatureStyle",1,["maplibre::render::shaders::ShaderFeatureStyle"]],["impl Sync for ShaderLayerMetadata",1,["maplibre::render::shaders::ShaderLayerMetadata"]],["impl Sync for ShaderTileMetadata",1,["maplibre::render::shaders::ShaderTileMetadata"]],["impl Sync for ShaderTextureVertex",1,["maplibre::render::shaders::ShaderTextureVertex"]],["impl Sync for RasterTileShader",1,["maplibre::render::shaders::RasterTileShader"]],["impl Sync for RendererBuilder",1,["maplibre::render::builder::RendererBuilder"]],["impl Sync for InitializationResult",1,["maplibre::render::builder::InitializationResult"]],["impl Sync for UninitializedRenderer",1,["maplibre::render::builder::UninitializedRenderer"]],["impl Sync for InitializedRenderer",1,["maplibre::render::builder::InitializedRenderer"]],["impl Sync for ViewProjection",1,["maplibre::render::camera::ViewProjection"]],["impl Sync for InvertedViewProjection",1,["maplibre::render::camera::InvertedViewProjection"]],["impl Sync for ModelViewProjection",1,["maplibre::render::camera::ModelViewProjection"]],["impl Sync for Camera",1,["maplibre::render::camera::Camera"]],["impl Sync for Perspective",1,["maplibre::render::camera::Perspective"]],["impl Sync for RenderError",1,["maplibre::render::error::RenderError"]],["impl<T> Sync for Eventually<T>where\n T: Sync,",1,["maplibre::render::eventually::Eventually"]],["impl Sync for SetMaskPipeline",1,["maplibre::render::render_commands::SetMaskPipeline"]],["impl Sync for DrawMask",1,["maplibre::render::render_commands::DrawMask"]],["impl Sync for RenderCommandResult",1,["maplibre::render::render_phase::draw::RenderCommandResult"]],["impl<C, P> Sync for DrawState<C, P>where\n C: Sync,\n P: Sync,",1,["maplibre::render::render_phase::draw::DrawState"]],["impl<I> Sync for RenderPhase<I>where\n I: Sync,",1,["maplibre::render::render_phase::RenderPhase"]],["impl !Sync for LayerItem",1,["maplibre::render::render_phase::LayerItem"]],["impl !Sync for TileMaskItem",1,["maplibre::render::render_phase::TileMaskItem"]],["impl Sync for WgpuSettings",1,["maplibre::render::settings::WgpuSettings"]],["impl Sync for SurfaceType",1,["maplibre::render::settings::SurfaceType"]],["impl Sync for Msaa",1,["maplibre::render::settings::Msaa"]],["impl Sync for RendererSettings",1,["maplibre::render::settings::RendererSettings"]],["impl<B> Sync for BackingBuffer<B>where\n B: Sync,",1,["maplibre::render::tile_view_pattern::pattern::BackingBuffer"]],["impl<Q, B> Sync for TileViewPattern<Q, B>where\n B: Sync,\n Q: Sync,",1,["maplibre::render::tile_view_pattern::pattern::TileViewPattern"]],["impl Sync for SourceShapes",1,["maplibre::render::tile_view_pattern::SourceShapes"]],["impl Sync for ViewTile",1,["maplibre::render::tile_view_pattern::ViewTile"]],["impl Sync for TileShape",1,["maplibre::render::tile_view_pattern::TileShape"]],["impl<Q> Sync for QueryHasTile<Q>where\n Q: Sync,",1,["maplibre::render::tile_view_pattern::QueryHasTile"]],["impl !Sync for ViewTileSources",1,["maplibre::render::tile_view_pattern::ViewTileSources"]],["impl Sync for RenderStageLabel",1,["maplibre::render::RenderStageLabel"]],["impl Sync for RenderResources",1,["maplibre::render::RenderResources"]],["impl Sync for Renderer",1,["maplibre::render::Renderer"]],["impl Sync for MaskPipeline",1,["maplibre::render::MaskPipeline"]],["impl Sync for RenderPlugin",1,["maplibre::render::RenderPlugin"]],["impl Sync for BackgroundPaint",1,["maplibre::style::layer::BackgroundPaint"]],["impl Sync for FillPaint",1,["maplibre::style::layer::FillPaint"]],["impl Sync for LinePaint",1,["maplibre::style::layer::LinePaint"]],["impl Sync for LayerPaint",1,["maplibre::style::layer::LayerPaint"]],["impl Sync for StyleLayer",1,["maplibre::style::layer::StyleLayer"]],["impl Sync for RasterResampling",1,["maplibre::style::raster::RasterResampling"]],["impl Sync for RasterLayer",1,["maplibre::style::raster::RasterLayer"]],["impl Sync for TileAddressingScheme",1,["maplibre::style::source::TileAddressingScheme"]],["impl Sync for VectorSource",1,["maplibre::style::source::VectorSource"]],["impl Sync for Source",1,["maplibre::style::source::Source"]],["impl Sync for Style",1,["maplibre::style::style::Style"]],["impl Sync for FPSMeter",1,["maplibre::util::fps_meter::FPSMeter"]],["impl<S> Sync for Plane<S>where\n S: Sync,",1,["maplibre::util::math::Plane"]],["impl<S> Sync for Aabb2<S>where\n S: Sync,",1,["maplibre::util::math::Aabb2"]],["impl<S> Sync for Aabb3<S>where\n S: Sync,",1,["maplibre::util::math::Aabb3"]],["impl Sync for FloatOrd",1,["maplibre::util::math::FloatOrd"]],["impl<T> Sync for ChangeObserver<T>where\n T: Sync,",1,["maplibre::util::ChangeObserver"]],["impl Sync for WindowSize",1,["maplibre::window::WindowSize"]],["impl Sync for NopStage",1,["maplibre::schedule::NopStage"]],["impl<const I: usize, S> Sync for MultiStage<I, S>where\n S: Sync,",1,["maplibre::schedule::MultiStage"]],["impl !Sync for Schedule",1,["maplibre::schedule::Schedule"]],["impl Sync for SendEventError",1,["maplibre::event_loop::SendEventError"]],["impl<E> Sync for Kernel<E>where\n <E as Environment>::AsyncProcedureCall: Sync,\n <E as Environment>::MapWindowConfig: Sync,\n <E as Environment>::Scheduler: Sync,",1,["maplibre::kernel::Kernel"]],["impl<E> Sync for KernelBuilder<E>where\n <E as Environment>::AsyncProcedureCall: Sync,\n <E as Environment>::MapWindowConfig: Sync,\n <E as Environment>::Scheduler: Sync,",1,["maplibre::kernel::KernelBuilder"]],["impl Sync for MapError",1,["maplibre::map::MapError"]],["impl !Sync for CurrentMapContext",1,["maplibre::map::CurrentMapContext"]],["impl<E> !Sync for Map<E>",1,["maplibre::map::Map"]],["impl !Sync for Resources",1,["maplibre::tcs::resources::Resources"]],["impl<F> Sync for FunctionSystem<F>where\n F: Sync,",1,["maplibre::tcs::system::function::FunctionSystem"]],["impl !Sync for SystemStage",1,["maplibre::tcs::system::stage::SystemStage"]],["impl !Sync for SystemContainer",1,["maplibre::tcs::system::SystemContainer"]],["impl Sync for Tile",1,["maplibre::tcs::tiles::Tile"]],["impl !Sync for Tiles",1,["maplibre::tcs::tiles::Tiles"]],["impl<'t> !Sync for TileSpawnResult<'t>",1,["maplibre::tcs::tiles::TileSpawnResult"]],["impl Sync for GlobalQueryState",1,["maplibre::tcs::tiles::GlobalQueryState"]],["impl<'s> Sync for EphemeralQueryState<'s>",1,["maplibre::tcs::tiles::EphemeralQueryState"]],["impl !Sync for World",1,["maplibre::tcs::world::World"]],["impl Sync for GlobalQueryState",1,["maplibre::tcs::GlobalQueryState"]],["impl<'s> Sync for EphemeralQueryState<'s>",1,["maplibre::tcs::EphemeralQueryState"]],["impl Sync for ViewState",1,["maplibre::view_state::ViewState"]],["impl Sync for DebugPassNode",1,["maplibre::debug::debug_pass::DebugPassNode"]],["impl Sync for SetDebugPipeline",1,["maplibre::debug::render_commands::SetDebugPipeline"]],["impl Sync for DrawDebugOutline",1,["maplibre::debug::render_commands::DrawDebugOutline"]],["impl Sync for DebugPipeline",1,["maplibre::debug::DebugPipeline"]],["impl !Sync for TileDebugItem",1,["maplibre::debug::TileDebugItem"]],["impl Sync for DebugPlugin",1,["maplibre::debug::DebugPlugin"]],["impl<E, T> !Sync for PopulateWorldSystem<E, T>",1,["maplibre::raster::populate_world_system::PopulateWorldSystem"]],["impl !Sync for ProcessRasterError",1,["maplibre::raster::process_raster::ProcessRasterError"]],["impl Sync for RasterTileRequest",1,["maplibre::raster::process_raster::RasterTileRequest"]],["impl<T, C> Sync for ProcessRasterContext<T, C>where\n C: Sync,\n T: Sync,",1,["maplibre::raster::process_raster::ProcessRasterContext"]],["impl Sync for SetRasterTilePipeline",1,["maplibre::raster::render_commands::SetRasterTilePipeline"]],["impl<const I: usize> Sync for SetRasterViewBindGroup<I>",1,["maplibre::raster::render_commands::SetRasterViewBindGroup"]],["impl Sync for DrawRasterTile",1,["maplibre::raster::render_commands::DrawRasterTile"]],["impl<E, T> !Sync for RequestSystem<E, T>",1,["maplibre::raster::request_system::RequestSystem"]],["impl Sync for RasterResources",1,["maplibre::raster::resource::raster::RasterResources"]],["impl Sync for RasterMessageTag",1,["maplibre::raster::transferables::RasterMessageTag"]],["impl Sync for DefaultLayerRaster",1,["maplibre::raster::transferables::DefaultLayerRaster"]],["impl Sync for DefaultLayerRasterMissing",1,["maplibre::raster::transferables::DefaultLayerRasterMissing"]],["impl Sync for DefaultRasterTransferables",1,["maplibre::raster::transferables::DefaultRasterTransferables"]],["impl<T> Sync for RasterPlugin<T>where\n T: Sync,",1,["maplibre::raster::RasterPlugin"]],["impl Sync for AvailableRasterLayerData",1,["maplibre::raster::AvailableRasterLayerData"]],["impl Sync for MissingRasterLayerData",1,["maplibre::raster::MissingRasterLayerData"]],["impl Sync for RasterLayerData",1,["maplibre::raster::RasterLayerData"]],["impl Sync for RasterLayersDataComponent",1,["maplibre::raster::RasterLayersDataComponent"]],["impl<E, T> !Sync for PopulateWorldSystem<E, T>",1,["maplibre::vector::populate_world_system::PopulateWorldSystem"]],["impl !Sync for ProcessVectorError",1,["maplibre::vector::process_vector::ProcessVectorError"]],["impl Sync for VectorTileRequest",1,["maplibre::vector::process_vector::VectorTileRequest"]],["impl<T, C> Sync for ProcessVectorContext<T, C>where\n C: Sync,\n T: Sync,",1,["maplibre::vector::process_vector::ProcessVectorContext"]],["impl Sync for SetVectorTilePipeline",1,["maplibre::vector::render_commands::SetVectorTilePipeline"]],["impl Sync for DrawVectorTile",1,["maplibre::vector::render_commands::DrawVectorTile"]],["impl<E, T> !Sync for RequestSystem<E, T>",1,["maplibre::vector::request_system::RequestSystem"]],["impl<Q, B, V, I, TM, FM> Sync for BufferPool<Q, B, V, I, TM, FM>where\n B: Sync,\n FM: Sync,\n I: Sync,\n Q: Sync,\n TM: Sync,\n V: Sync,",1,["maplibre::vector::resource::buffer_pool::BufferPool"]],["impl Sync for BackingBufferType",1,["maplibre::vector::resource::buffer_pool::BackingBufferType"]],["impl<B> Sync for BackingBuffer<B>where\n B: Sync,",1,["maplibre::vector::resource::buffer_pool::BackingBuffer"]],["impl Sync for IndexEntry",1,["maplibre::vector::resource::buffer_pool::IndexEntry"]],["impl Sync for RingIndexEntry",1,["maplibre::vector::resource::buffer_pool::RingIndexEntry"]],["impl Sync for RingIndex",1,["maplibre::vector::resource::buffer_pool::RingIndex"]],["impl Sync for VectorMessageTag",1,["maplibre::vector::transferables::VectorMessageTag"]],["impl Sync for DefaultTileTessellated",1,["maplibre::vector::transferables::DefaultTileTessellated"]],["impl Sync for DefaultLayerMissing",1,["maplibre::vector::transferables::DefaultLayerMissing"]],["impl Sync for DefaultLayerTesselated",1,["maplibre::vector::transferables::DefaultLayerTesselated"]],["impl Sync for DefaultLayerIndexed",1,["maplibre::vector::transferables::DefaultLayerIndexed"]],["impl Sync for DefaultVectorTransferables",1,["maplibre::vector::transferables::DefaultVectorTransferables"]],["impl Sync for VectorPipeline",1,["maplibre::vector::VectorPipeline"]],["impl<T> Sync for VectorPlugin<T>where\n T: Sync,",1,["maplibre::vector::VectorPlugin"]],["impl Sync for VectorTilesDone",1,["maplibre::vector::VectorTilesDone"]],["impl Sync for AvailableVectorLayerData",1,["maplibre::vector::AvailableVectorLayerData"]],["impl Sync for MissingVectorLayerData",1,["maplibre::vector::MissingVectorLayerData"]],["impl Sync for VectorLayerData",1,["maplibre::vector::VectorLayerData"]],["impl Sync for VectorLayersDataComponent",1,["maplibre::vector::VectorLayersDataComponent"]]] +"maplibre":[["impl<I> !Sync for ZeroTessellator<I>",1,["maplibre::tessellation::zero_tessellator::ZeroTessellator"]],["impl Sync for VertexConstructor",1,["maplibre::tessellation::VertexConstructor"]],["impl<V, I> Sync for OverAlignedVertexBuffer<V, I>where\n I: Sync,\n V: Sync,",1,["maplibre::tessellation::OverAlignedVertexBuffer"]],["impl !Sync for MapContext",1,["maplibre::context::MapContext"]],["impl Sync for Quadkey",1,["maplibre::coords::Quadkey"]],["impl Sync for ZoomLevel",1,["maplibre::coords::ZoomLevel"]],["impl Sync for LatLon",1,["maplibre::coords::LatLon"]],["impl Sync for Zoom",1,["maplibre::coords::Zoom"]],["impl Sync for InnerCoords",1,["maplibre::coords::InnerCoords"]],["impl Sync for TileCoords",1,["maplibre::coords::TileCoords"]],["impl Sync for WorldTileCoords",1,["maplibre::coords::WorldTileCoords"]],["impl Sync for AlignedWorldTileCoords",1,["maplibre::coords::AlignedWorldTileCoords"]],["impl Sync for WorldCoords",1,["maplibre::coords::WorldCoords"]],["impl Sync for ViewRegion",1,["maplibre::coords::ViewRegion"]],["impl !Sync for MessageError",1,["maplibre::io::apc::MessageError"]],["impl !Sync for Message",1,["maplibre::io::apc::Message"]],["impl Sync for Input",1,["maplibre::io::apc::Input"]],["impl Sync for SendError",1,["maplibre::io::apc::SendError"]],["impl !Sync for ProcedureError",1,["maplibre::io::apc::ProcedureError"]],["impl !Sync for CallError",1,["maplibre::io::apc::CallError"]],["impl Sync for SchedulerContext",1,["maplibre::io::apc::SchedulerContext"]],["impl<K, S> !Sync for SchedulerAsyncProcedureCall<K, S>",1,["maplibre::io::apc::SchedulerAsyncProcedureCall"]],["impl Sync for GeometryIndex",1,["maplibre::io::geometry_index::GeometryIndex"]],["impl Sync for TileIndex",1,["maplibre::io::geometry_index::TileIndex"]],["impl<T> Sync for IndexedGeometry<T>where\n T: Sync,",1,["maplibre::io::geometry_index::IndexedGeometry"]],["impl<T> Sync for ExactGeometry<T>where\n T: Sync,",1,["maplibre::io::geometry_index::ExactGeometry"]],["impl Sync for IndexProcessor",1,["maplibre::io::geometry_index::IndexProcessor"]],["impl !Sync for ScheduleError",1,["maplibre::io::scheduler::ScheduleError"]],["impl Sync for NopScheduler",1,["maplibre::io::scheduler::NopScheduler"]],["impl<HC> Sync for HttpSourceClient<HC>",1,["maplibre::io::source_client::HttpSourceClient"]],["impl !Sync for SourceFetchError",1,["maplibre::io::source_client::SourceFetchError"]],["impl<HC> Sync for SourceClient<HC>",1,["maplibre::io::source_client::SourceClient"]],["impl Sync for TessellateSource",1,["maplibre::io::source_type::TessellateSource"]],["impl Sync for RasterSource",1,["maplibre::io::source_type::RasterSource"]],["impl Sync for SourceType",1,["maplibre::io::source_type::SourceType"]],["impl Sync for ReqwestHttpClient",1,["maplibre::platform::noweb::http_client::ReqwestHttpClient"]],["impl Sync for TokioScheduler",1,["maplibre::platform::noweb::scheduler::TokioScheduler"]],["impl Sync for ReqwestOffscreenKernelEnvironment",1,["maplibre::platform::noweb::ReqwestOffscreenKernelEnvironment"]],["impl !Sync for RunSubGraph",1,["maplibre::render::graph::context::RunSubGraph"]],["impl<'a> !Sync for RenderGraphContext<'a>",1,["maplibre::render::graph::context::RenderGraphContext"]],["impl Sync for RunSubGraphError",1,["maplibre::render::graph::context::RunSubGraphError"]],["impl Sync for OutputSlotError",1,["maplibre::render::graph::context::OutputSlotError"]],["impl Sync for InputSlotError",1,["maplibre::render::graph::context::InputSlotError"]],["impl Sync for Edge",1,["maplibre::render::graph::edge::Edge"]],["impl Sync for EdgeExistence",1,["maplibre::render::graph::edge::EdgeExistence"]],["impl Sync for RenderGraph",1,["maplibre::render::graph::graph::RenderGraph"]],["impl Sync for GraphInputNode",1,["maplibre::render::graph::graph::GraphInputNode"]],["impl<'d> Sync for RenderContext<'d>",1,["maplibre::render::graph::node::RenderContext"]],["impl Sync for NodeId",1,["maplibre::render::graph::node::NodeId"]],["impl Sync for NodeRunError",1,["maplibre::render::graph::node::NodeRunError"]],["impl Sync for Edges",1,["maplibre::render::graph::node::Edges"]],["impl Sync for NodeState",1,["maplibre::render::graph::node::NodeState"]],["impl Sync for NodeLabel",1,["maplibre::render::graph::node::NodeLabel"]],["impl Sync for EmptyNode",1,["maplibre::render::graph::node::EmptyNode"]],["impl !Sync for SlotValue",1,["maplibre::render::graph::node_slot::SlotValue"]],["impl Sync for SlotType",1,["maplibre::render::graph::node_slot::SlotType"]],["impl Sync for SlotLabel",1,["maplibre::render::graph::node_slot::SlotLabel"]],["impl Sync for SlotInfo",1,["maplibre::render::graph::node_slot::SlotInfo"]],["impl Sync for SlotInfos",1,["maplibre::render::graph::node_slot::SlotInfos"]],["impl Sync for RenderGraphError",1,["maplibre::render::graph::RenderGraphError"]],["impl<B> Sync for BackingBufferDescriptor<B>where\n B: Sync,",1,["maplibre::render::resource::buffer::BackingBufferDescriptor"]],["impl Sync for RenderPipelineDescriptor",1,["maplibre::render::resource::pipeline::RenderPipelineDescriptor"]],["impl Sync for VertexBufferLayout",1,["maplibre::render::resource::shader::VertexBufferLayout"]],["impl Sync for FragmentState",1,["maplibre::render::resource::shader::FragmentState"]],["impl Sync for VertexState",1,["maplibre::render::resource::shader::VertexState"]],["impl Sync for BufferDimensions",1,["maplibre::render::resource::surface::BufferDimensions"]],["impl Sync for WindowHead",1,["maplibre::render::resource::surface::WindowHead"]],["impl Sync for BufferedTextureHead",1,["maplibre::render::resource::surface::BufferedTextureHead"]],["impl Sync for Head",1,["maplibre::render::resource::surface::Head"]],["impl Sync for Surface",1,["maplibre::render::resource::surface::Surface"]],["impl Sync for TextureView",1,["maplibre::render::resource::texture::TextureView"]],["impl Sync for Texture",1,["maplibre::render::resource::texture::Texture"]],["impl Sync for TilePipeline",1,["maplibre::render::resource::tile_pipeline::TilePipeline"]],["impl<'a> Sync for TrackedRenderPass<'a>",1,["maplibre::render::resource::tracked_render_pass::TrackedRenderPass"]],["impl Sync for GraphRunnerSystem",1,["maplibre::render::systems::graph_runner_system::GraphRunnerSystem"]],["impl Sync for ResourceSystem",1,["maplibre::render::systems::resource_system::ResourceSystem"]],["impl Sync for RenderGraphRunner",1,["maplibre::render::graph_runner::RenderGraphRunner"]],["impl Sync for RenderGraphRunnerError",1,["maplibre::render::graph_runner::RenderGraphRunnerError"]],["impl Sync for MainPassNode",1,["maplibre::render::main_pass::MainPassNode"]],["impl Sync for MainPassDriverNode",1,["maplibre::render::main_pass::MainPassDriverNode"]],["impl Sync for TileMaskShader",1,["maplibre::render::shaders::TileMaskShader"]],["impl Sync for VectorTileShader",1,["maplibre::render::shaders::VectorTileShader"]],["impl Sync for ShaderCamera",1,["maplibre::render::shaders::ShaderCamera"]],["impl Sync for ShaderGlobals",1,["maplibre::render::shaders::ShaderGlobals"]],["impl Sync for ShaderVertex",1,["maplibre::render::shaders::ShaderVertex"]],["impl Sync for ShaderFeatureStyle",1,["maplibre::render::shaders::ShaderFeatureStyle"]],["impl Sync for ShaderLayerMetadata",1,["maplibre::render::shaders::ShaderLayerMetadata"]],["impl Sync for ShaderTileMetadata",1,["maplibre::render::shaders::ShaderTileMetadata"]],["impl Sync for ShaderTextureVertex",1,["maplibre::render::shaders::ShaderTextureVertex"]],["impl Sync for RasterTileShader",1,["maplibre::render::shaders::RasterTileShader"]],["impl Sync for RendererBuilder",1,["maplibre::render::builder::RendererBuilder"]],["impl Sync for InitializationResult",1,["maplibre::render::builder::InitializationResult"]],["impl Sync for UninitializedRenderer",1,["maplibre::render::builder::UninitializedRenderer"]],["impl Sync for InitializedRenderer",1,["maplibre::render::builder::InitializedRenderer"]],["impl Sync for ViewProjection",1,["maplibre::render::camera::ViewProjection"]],["impl Sync for InvertedViewProjection",1,["maplibre::render::camera::InvertedViewProjection"]],["impl Sync for ModelViewProjection",1,["maplibre::render::camera::ModelViewProjection"]],["impl Sync for Camera",1,["maplibre::render::camera::Camera"]],["impl Sync for EdgeInsets",1,["maplibre::render::camera::EdgeInsets"]],["impl Sync for Perspective",1,["maplibre::render::camera::Perspective"]],["impl Sync for RenderError",1,["maplibre::render::error::RenderError"]],["impl<T> Sync for Eventually<T>where\n T: Sync,",1,["maplibre::render::eventually::Eventually"]],["impl Sync for SetMaskPipeline",1,["maplibre::render::render_commands::SetMaskPipeline"]],["impl Sync for DrawMask",1,["maplibre::render::render_commands::DrawMask"]],["impl Sync for RenderCommandResult",1,["maplibre::render::render_phase::draw::RenderCommandResult"]],["impl<C, P> Sync for DrawState<C, P>where\n C: Sync,\n P: Sync,",1,["maplibre::render::render_phase::draw::DrawState"]],["impl<I> Sync for RenderPhase<I>where\n I: Sync,",1,["maplibre::render::render_phase::RenderPhase"]],["impl !Sync for LayerItem",1,["maplibre::render::render_phase::LayerItem"]],["impl !Sync for TileMaskItem",1,["maplibre::render::render_phase::TileMaskItem"]],["impl Sync for WgpuSettings",1,["maplibre::render::settings::WgpuSettings"]],["impl Sync for SurfaceType",1,["maplibre::render::settings::SurfaceType"]],["impl Sync for Msaa",1,["maplibre::render::settings::Msaa"]],["impl Sync for RendererSettings",1,["maplibre::render::settings::RendererSettings"]],["impl<B> Sync for BackingBuffer<B>where\n B: Sync,",1,["maplibre::render::tile_view_pattern::pattern::BackingBuffer"]],["impl<Q, B> Sync for TileViewPattern<Q, B>where\n B: Sync,\n Q: Sync,",1,["maplibre::render::tile_view_pattern::pattern::TileViewPattern"]],["impl Sync for SourceShapes",1,["maplibre::render::tile_view_pattern::SourceShapes"]],["impl Sync for ViewTile",1,["maplibre::render::tile_view_pattern::ViewTile"]],["impl Sync for TileShape",1,["maplibre::render::tile_view_pattern::TileShape"]],["impl<Q> Sync for QueryHasTile<Q>where\n Q: Sync,",1,["maplibre::render::tile_view_pattern::QueryHasTile"]],["impl !Sync for ViewTileSources",1,["maplibre::render::tile_view_pattern::ViewTileSources"]],["impl Sync for ViewState",1,["maplibre::render::view_state::ViewState"]],["impl Sync for RenderStageLabel",1,["maplibre::render::RenderStageLabel"]],["impl Sync for RenderResources",1,["maplibre::render::RenderResources"]],["impl Sync for Renderer",1,["maplibre::render::Renderer"]],["impl Sync for MaskPipeline",1,["maplibre::render::MaskPipeline"]],["impl Sync for RenderPlugin",1,["maplibre::render::RenderPlugin"]],["impl Sync for BackgroundPaint",1,["maplibre::style::layer::BackgroundPaint"]],["impl Sync for FillPaint",1,["maplibre::style::layer::FillPaint"]],["impl Sync for LinePaint",1,["maplibre::style::layer::LinePaint"]],["impl Sync for LayerPaint",1,["maplibre::style::layer::LayerPaint"]],["impl Sync for StyleLayer",1,["maplibre::style::layer::StyleLayer"]],["impl Sync for RasterResampling",1,["maplibre::style::raster::RasterResampling"]],["impl Sync for RasterLayer",1,["maplibre::style::raster::RasterLayer"]],["impl Sync for TileAddressingScheme",1,["maplibre::style::source::TileAddressingScheme"]],["impl Sync for VectorSource",1,["maplibre::style::source::VectorSource"]],["impl Sync for Source",1,["maplibre::style::source::Source"]],["impl Sync for Style",1,["maplibre::style::style::Style"]],["impl Sync for FPSMeter",1,["maplibre::util::fps_meter::FPSMeter"]],["impl<S> Sync for Plane<S>where\n S: Sync,",1,["maplibre::util::math::Plane"]],["impl<S> Sync for Aabb2<S>where\n S: Sync,",1,["maplibre::util::math::Aabb2"]],["impl<S> Sync for Aabb3<S>where\n S: Sync,",1,["maplibre::util::math::Aabb3"]],["impl Sync for FloatOrd",1,["maplibre::util::math::FloatOrd"]],["impl<T> Sync for ChangeObserver<T>where\n T: Sync,",1,["maplibre::util::ChangeObserver"]],["impl Sync for WindowSize",1,["maplibre::window::WindowSize"]],["impl Sync for NopStage",1,["maplibre::schedule::NopStage"]],["impl<const I: usize, S> Sync for MultiStage<I, S>where\n S: Sync,",1,["maplibre::schedule::MultiStage"]],["impl !Sync for Schedule",1,["maplibre::schedule::Schedule"]],["impl Sync for SendEventError",1,["maplibre::event_loop::SendEventError"]],["impl<E> Sync for Kernel<E>where\n <E as Environment>::AsyncProcedureCall: Sync,\n <E as Environment>::MapWindowConfig: Sync,\n <E as Environment>::Scheduler: Sync,",1,["maplibre::kernel::Kernel"]],["impl<E> Sync for KernelBuilder<E>where\n <E as Environment>::AsyncProcedureCall: Sync,\n <E as Environment>::MapWindowConfig: Sync,\n <E as Environment>::Scheduler: Sync,",1,["maplibre::kernel::KernelBuilder"]],["impl Sync for MapError",1,["maplibre::map::MapError"]],["impl !Sync for CurrentMapContext",1,["maplibre::map::CurrentMapContext"]],["impl<E> !Sync for Map<E>",1,["maplibre::map::Map"]],["impl !Sync for Resources",1,["maplibre::tcs::resources::Resources"]],["impl<F> Sync for FunctionSystem<F>where\n F: Sync,",1,["maplibre::tcs::system::function::FunctionSystem"]],["impl !Sync for SystemStage",1,["maplibre::tcs::system::stage::SystemStage"]],["impl !Sync for SystemContainer",1,["maplibre::tcs::system::SystemContainer"]],["impl Sync for Tile",1,["maplibre::tcs::tiles::Tile"]],["impl !Sync for Tiles",1,["maplibre::tcs::tiles::Tiles"]],["impl<'t> !Sync for TileSpawnResult<'t>",1,["maplibre::tcs::tiles::TileSpawnResult"]],["impl Sync for GlobalQueryState",1,["maplibre::tcs::tiles::GlobalQueryState"]],["impl<'s> Sync for EphemeralQueryState<'s>",1,["maplibre::tcs::tiles::EphemeralQueryState"]],["impl !Sync for World",1,["maplibre::tcs::world::World"]],["impl Sync for GlobalQueryState",1,["maplibre::tcs::GlobalQueryState"]],["impl<'s> Sync for EphemeralQueryState<'s>",1,["maplibre::tcs::EphemeralQueryState"]],["impl Sync for DebugPassNode",1,["maplibre::debug::debug_pass::DebugPassNode"]],["impl Sync for SetDebugPipeline",1,["maplibre::debug::render_commands::SetDebugPipeline"]],["impl Sync for DrawDebugOutline",1,["maplibre::debug::render_commands::DrawDebugOutline"]],["impl Sync for DebugPipeline",1,["maplibre::debug::DebugPipeline"]],["impl !Sync for TileDebugItem",1,["maplibre::debug::TileDebugItem"]],["impl Sync for DebugPlugin",1,["maplibre::debug::DebugPlugin"]],["impl<E, T> !Sync for PopulateWorldSystem<E, T>",1,["maplibre::raster::populate_world_system::PopulateWorldSystem"]],["impl !Sync for ProcessRasterError",1,["maplibre::raster::process_raster::ProcessRasterError"]],["impl Sync for RasterTileRequest",1,["maplibre::raster::process_raster::RasterTileRequest"]],["impl<T, C> Sync for ProcessRasterContext<T, C>where\n C: Sync,\n T: Sync,",1,["maplibre::raster::process_raster::ProcessRasterContext"]],["impl Sync for SetRasterTilePipeline",1,["maplibre::raster::render_commands::SetRasterTilePipeline"]],["impl<const I: usize> Sync for SetRasterViewBindGroup<I>",1,["maplibre::raster::render_commands::SetRasterViewBindGroup"]],["impl Sync for DrawRasterTile",1,["maplibre::raster::render_commands::DrawRasterTile"]],["impl<E, T> !Sync for RequestSystem<E, T>",1,["maplibre::raster::request_system::RequestSystem"]],["impl Sync for RasterResources",1,["maplibre::raster::resource::raster::RasterResources"]],["impl Sync for RasterMessageTag",1,["maplibre::raster::transferables::RasterMessageTag"]],["impl Sync for DefaultLayerRaster",1,["maplibre::raster::transferables::DefaultLayerRaster"]],["impl Sync for DefaultLayerRasterMissing",1,["maplibre::raster::transferables::DefaultLayerRasterMissing"]],["impl Sync for DefaultRasterTransferables",1,["maplibre::raster::transferables::DefaultRasterTransferables"]],["impl<T> Sync for RasterPlugin<T>where\n T: Sync,",1,["maplibre::raster::RasterPlugin"]],["impl Sync for AvailableRasterLayerData",1,["maplibre::raster::AvailableRasterLayerData"]],["impl Sync for MissingRasterLayerData",1,["maplibre::raster::MissingRasterLayerData"]],["impl Sync for RasterLayerData",1,["maplibre::raster::RasterLayerData"]],["impl Sync for RasterLayersDataComponent",1,["maplibre::raster::RasterLayersDataComponent"]],["impl<E, T> !Sync for PopulateWorldSystem<E, T>",1,["maplibre::vector::populate_world_system::PopulateWorldSystem"]],["impl !Sync for ProcessVectorError",1,["maplibre::vector::process_vector::ProcessVectorError"]],["impl Sync for VectorTileRequest",1,["maplibre::vector::process_vector::VectorTileRequest"]],["impl<T, C> Sync for ProcessVectorContext<T, C>where\n C: Sync,\n T: Sync,",1,["maplibre::vector::process_vector::ProcessVectorContext"]],["impl Sync for SetVectorTilePipeline",1,["maplibre::vector::render_commands::SetVectorTilePipeline"]],["impl Sync for DrawVectorTile",1,["maplibre::vector::render_commands::DrawVectorTile"]],["impl<E, T> !Sync for RequestSystem<E, T>",1,["maplibre::vector::request_system::RequestSystem"]],["impl<Q, B, V, I, TM, FM> Sync for BufferPool<Q, B, V, I, TM, FM>where\n B: Sync,\n FM: Sync,\n I: Sync,\n Q: Sync,\n TM: Sync,\n V: Sync,",1,["maplibre::vector::resource::buffer_pool::BufferPool"]],["impl Sync for BackingBufferType",1,["maplibre::vector::resource::buffer_pool::BackingBufferType"]],["impl<B> Sync for BackingBuffer<B>where\n B: Sync,",1,["maplibre::vector::resource::buffer_pool::BackingBuffer"]],["impl Sync for IndexEntry",1,["maplibre::vector::resource::buffer_pool::IndexEntry"]],["impl Sync for RingIndexEntry",1,["maplibre::vector::resource::buffer_pool::RingIndexEntry"]],["impl Sync for RingIndex",1,["maplibre::vector::resource::buffer_pool::RingIndex"]],["impl Sync for VectorMessageTag",1,["maplibre::vector::transferables::VectorMessageTag"]],["impl Sync for DefaultTileTessellated",1,["maplibre::vector::transferables::DefaultTileTessellated"]],["impl Sync for DefaultLayerMissing",1,["maplibre::vector::transferables::DefaultLayerMissing"]],["impl Sync for DefaultLayerTesselated",1,["maplibre::vector::transferables::DefaultLayerTesselated"]],["impl Sync for DefaultLayerIndexed",1,["maplibre::vector::transferables::DefaultLayerIndexed"]],["impl Sync for DefaultVectorTransferables",1,["maplibre::vector::transferables::DefaultVectorTransferables"]],["impl Sync for VectorPipeline",1,["maplibre::vector::VectorPipeline"]],["impl<T> Sync for VectorPlugin<T>where\n T: Sync,",1,["maplibre::vector::VectorPlugin"]],["impl Sync for VectorTilesDone",1,["maplibre::vector::VectorTilesDone"]],["impl Sync for AvailableVectorLayerData",1,["maplibre::vector::AvailableVectorLayerData"]],["impl Sync for MissingVectorLayerData",1,["maplibre::vector::MissingVectorLayerData"]],["impl Sync for VectorLayerData",1,["maplibre::vector::VectorLayerData"]],["impl Sync for VectorLayersDataComponent",1,["maplibre::vector::VectorLayersDataComponent"]]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/docs/api/implementors/core/marker/trait.Unpin.js b/docs/api/implementors/core/marker/trait.Unpin.js index 171806f9..bd6a8ab5 100644 --- a/docs/api/implementors/core/marker/trait.Unpin.js +++ b/docs/api/implementors/core/marker/trait.Unpin.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"maplibre":[["impl<I> Unpin for ZeroTessellator<I>where\n I: Unpin,",1,["maplibre::tessellation::zero_tessellator::ZeroTessellator"]],["impl Unpin for VertexConstructor",1,["maplibre::tessellation::VertexConstructor"]],["impl<V, I> Unpin for OverAlignedVertexBuffer<V, I>where\n I: Unpin,\n V: Unpin,",1,["maplibre::tessellation::OverAlignedVertexBuffer"]],["impl Unpin for MapContext",1,["maplibre::context::MapContext"]],["impl Unpin for Quadkey",1,["maplibre::coords::Quadkey"]],["impl Unpin for ZoomLevel",1,["maplibre::coords::ZoomLevel"]],["impl Unpin for LatLon",1,["maplibre::coords::LatLon"]],["impl Unpin for Zoom",1,["maplibre::coords::Zoom"]],["impl Unpin for InnerCoords",1,["maplibre::coords::InnerCoords"]],["impl Unpin for TileCoords",1,["maplibre::coords::TileCoords"]],["impl Unpin for WorldTileCoords",1,["maplibre::coords::WorldTileCoords"]],["impl Unpin for AlignedWorldTileCoords",1,["maplibre::coords::AlignedWorldTileCoords"]],["impl Unpin for WorldCoords",1,["maplibre::coords::WorldCoords"]],["impl Unpin for ViewRegion",1,["maplibre::coords::ViewRegion"]],["impl Unpin for MessageError",1,["maplibre::io::apc::MessageError"]],["impl Unpin for Message",1,["maplibre::io::apc::Message"]],["impl Unpin for Input",1,["maplibre::io::apc::Input"]],["impl Unpin for SendError",1,["maplibre::io::apc::SendError"]],["impl Unpin for ProcedureError",1,["maplibre::io::apc::ProcedureError"]],["impl Unpin for CallError",1,["maplibre::io::apc::CallError"]],["impl Unpin for SchedulerContext",1,["maplibre::io::apc::SchedulerContext"]],["impl<K, S> Unpin for SchedulerAsyncProcedureCall<K, S>where\n K: Unpin,\n S: Unpin,",1,["maplibre::io::apc::SchedulerAsyncProcedureCall"]],["impl Unpin for GeometryIndex",1,["maplibre::io::geometry_index::GeometryIndex"]],["impl Unpin for TileIndex",1,["maplibre::io::geometry_index::TileIndex"]],["impl<T> Unpin for IndexedGeometry<T>where\n T: Unpin,",1,["maplibre::io::geometry_index::IndexedGeometry"]],["impl<T> Unpin for ExactGeometry<T>where\n T: Unpin,",1,["maplibre::io::geometry_index::ExactGeometry"]],["impl Unpin for IndexProcessor",1,["maplibre::io::geometry_index::IndexProcessor"]],["impl Unpin for ScheduleError",1,["maplibre::io::scheduler::ScheduleError"]],["impl Unpin for NopScheduler",1,["maplibre::io::scheduler::NopScheduler"]],["impl<HC> Unpin for HttpSourceClient<HC>where\n HC: Unpin,",1,["maplibre::io::source_client::HttpSourceClient"]],["impl Unpin for SourceFetchError",1,["maplibre::io::source_client::SourceFetchError"]],["impl<HC> Unpin for SourceClient<HC>where\n HC: Unpin,",1,["maplibre::io::source_client::SourceClient"]],["impl Unpin for TessellateSource",1,["maplibre::io::source_type::TessellateSource"]],["impl Unpin for RasterSource",1,["maplibre::io::source_type::RasterSource"]],["impl Unpin for SourceType",1,["maplibre::io::source_type::SourceType"]],["impl Unpin for ReqwestHttpClient",1,["maplibre::platform::noweb::http_client::ReqwestHttpClient"]],["impl Unpin for TokioScheduler",1,["maplibre::platform::noweb::scheduler::TokioScheduler"]],["impl Unpin for ReqwestOffscreenKernelEnvironment",1,["maplibre::platform::noweb::ReqwestOffscreenKernelEnvironment"]],["impl Unpin for RunSubGraph",1,["maplibre::render::graph::context::RunSubGraph"]],["impl<'a> Unpin for RenderGraphContext<'a>",1,["maplibre::render::graph::context::RenderGraphContext"]],["impl Unpin for RunSubGraphError",1,["maplibre::render::graph::context::RunSubGraphError"]],["impl Unpin for OutputSlotError",1,["maplibre::render::graph::context::OutputSlotError"]],["impl Unpin for InputSlotError",1,["maplibre::render::graph::context::InputSlotError"]],["impl Unpin for Edge",1,["maplibre::render::graph::edge::Edge"]],["impl Unpin for EdgeExistence",1,["maplibre::render::graph::edge::EdgeExistence"]],["impl Unpin for RenderGraph",1,["maplibre::render::graph::graph::RenderGraph"]],["impl Unpin for GraphInputNode",1,["maplibre::render::graph::graph::GraphInputNode"]],["impl<'d> Unpin for RenderContext<'d>",1,["maplibre::render::graph::node::RenderContext"]],["impl Unpin for NodeId",1,["maplibre::render::graph::node::NodeId"]],["impl Unpin for NodeRunError",1,["maplibre::render::graph::node::NodeRunError"]],["impl Unpin for Edges",1,["maplibre::render::graph::node::Edges"]],["impl Unpin for NodeState",1,["maplibre::render::graph::node::NodeState"]],["impl Unpin for NodeLabel",1,["maplibre::render::graph::node::NodeLabel"]],["impl Unpin for EmptyNode",1,["maplibre::render::graph::node::EmptyNode"]],["impl Unpin for SlotValue",1,["maplibre::render::graph::node_slot::SlotValue"]],["impl Unpin for SlotType",1,["maplibre::render::graph::node_slot::SlotType"]],["impl Unpin for SlotLabel",1,["maplibre::render::graph::node_slot::SlotLabel"]],["impl Unpin for SlotInfo",1,["maplibre::render::graph::node_slot::SlotInfo"]],["impl Unpin for SlotInfos",1,["maplibre::render::graph::node_slot::SlotInfos"]],["impl Unpin for RenderGraphError",1,["maplibre::render::graph::RenderGraphError"]],["impl<B> Unpin for BackingBufferDescriptor<B>where\n B: Unpin,",1,["maplibre::render::resource::buffer::BackingBufferDescriptor"]],["impl Unpin for RenderPipelineDescriptor",1,["maplibre::render::resource::pipeline::RenderPipelineDescriptor"]],["impl Unpin for VertexBufferLayout",1,["maplibre::render::resource::shader::VertexBufferLayout"]],["impl Unpin for FragmentState",1,["maplibre::render::resource::shader::FragmentState"]],["impl Unpin for VertexState",1,["maplibre::render::resource::shader::VertexState"]],["impl Unpin for BufferDimensions",1,["maplibre::render::resource::surface::BufferDimensions"]],["impl Unpin for WindowHead",1,["maplibre::render::resource::surface::WindowHead"]],["impl Unpin for BufferedTextureHead",1,["maplibre::render::resource::surface::BufferedTextureHead"]],["impl Unpin for Head",1,["maplibre::render::resource::surface::Head"]],["impl Unpin for Surface",1,["maplibre::render::resource::surface::Surface"]],["impl Unpin for TextureView",1,["maplibre::render::resource::texture::TextureView"]],["impl Unpin for Texture",1,["maplibre::render::resource::texture::Texture"]],["impl Unpin for TilePipeline",1,["maplibre::render::resource::tile_pipeline::TilePipeline"]],["impl<'a> Unpin for TrackedRenderPass<'a>",1,["maplibre::render::resource::tracked_render_pass::TrackedRenderPass"]],["impl Unpin for GraphRunnerSystem",1,["maplibre::render::systems::graph_runner_system::GraphRunnerSystem"]],["impl Unpin for ResourceSystem",1,["maplibre::render::systems::resource_system::ResourceSystem"]],["impl Unpin for RenderGraphRunner",1,["maplibre::render::graph_runner::RenderGraphRunner"]],["impl Unpin for RenderGraphRunnerError",1,["maplibre::render::graph_runner::RenderGraphRunnerError"]],["impl Unpin for MainPassNode",1,["maplibre::render::main_pass::MainPassNode"]],["impl Unpin for MainPassDriverNode",1,["maplibre::render::main_pass::MainPassDriverNode"]],["impl Unpin for TileMaskShader",1,["maplibre::render::shaders::TileMaskShader"]],["impl Unpin for VectorTileShader",1,["maplibre::render::shaders::VectorTileShader"]],["impl Unpin for ShaderCamera",1,["maplibre::render::shaders::ShaderCamera"]],["impl Unpin for ShaderGlobals",1,["maplibre::render::shaders::ShaderGlobals"]],["impl Unpin for ShaderVertex",1,["maplibre::render::shaders::ShaderVertex"]],["impl Unpin for ShaderFeatureStyle",1,["maplibre::render::shaders::ShaderFeatureStyle"]],["impl Unpin for ShaderLayerMetadata",1,["maplibre::render::shaders::ShaderLayerMetadata"]],["impl Unpin for ShaderTileMetadata",1,["maplibre::render::shaders::ShaderTileMetadata"]],["impl Unpin for ShaderTextureVertex",1,["maplibre::render::shaders::ShaderTextureVertex"]],["impl Unpin for RasterTileShader",1,["maplibre::render::shaders::RasterTileShader"]],["impl Unpin for RendererBuilder",1,["maplibre::render::builder::RendererBuilder"]],["impl Unpin for InitializationResult",1,["maplibre::render::builder::InitializationResult"]],["impl Unpin for UninitializedRenderer",1,["maplibre::render::builder::UninitializedRenderer"]],["impl Unpin for InitializedRenderer",1,["maplibre::render::builder::InitializedRenderer"]],["impl Unpin for ViewProjection",1,["maplibre::render::camera::ViewProjection"]],["impl Unpin for InvertedViewProjection",1,["maplibre::render::camera::InvertedViewProjection"]],["impl Unpin for ModelViewProjection",1,["maplibre::render::camera::ModelViewProjection"]],["impl Unpin for Camera",1,["maplibre::render::camera::Camera"]],["impl Unpin for Perspective",1,["maplibre::render::camera::Perspective"]],["impl Unpin for RenderError",1,["maplibre::render::error::RenderError"]],["impl<T> Unpin for Eventually<T>where\n T: Unpin,",1,["maplibre::render::eventually::Eventually"]],["impl Unpin for SetMaskPipeline",1,["maplibre::render::render_commands::SetMaskPipeline"]],["impl Unpin for DrawMask",1,["maplibre::render::render_commands::DrawMask"]],["impl Unpin for RenderCommandResult",1,["maplibre::render::render_phase::draw::RenderCommandResult"]],["impl<C, P> Unpin for DrawState<C, P>where\n C: Unpin,\n P: Unpin,",1,["maplibre::render::render_phase::draw::DrawState"]],["impl<I> Unpin for RenderPhase<I>where\n I: Unpin,",1,["maplibre::render::render_phase::RenderPhase"]],["impl Unpin for LayerItem",1,["maplibre::render::render_phase::LayerItem"]],["impl Unpin for TileMaskItem",1,["maplibre::render::render_phase::TileMaskItem"]],["impl Unpin for WgpuSettings",1,["maplibre::render::settings::WgpuSettings"]],["impl Unpin for SurfaceType",1,["maplibre::render::settings::SurfaceType"]],["impl Unpin for Msaa",1,["maplibre::render::settings::Msaa"]],["impl Unpin for RendererSettings",1,["maplibre::render::settings::RendererSettings"]],["impl<B> Unpin for BackingBuffer<B>where\n B: Unpin,",1,["maplibre::render::tile_view_pattern::pattern::BackingBuffer"]],["impl<Q, B> Unpin for TileViewPattern<Q, B>where\n B: Unpin,\n Q: Unpin,",1,["maplibre::render::tile_view_pattern::pattern::TileViewPattern"]],["impl Unpin for SourceShapes",1,["maplibre::render::tile_view_pattern::SourceShapes"]],["impl Unpin for ViewTile",1,["maplibre::render::tile_view_pattern::ViewTile"]],["impl Unpin for TileShape",1,["maplibre::render::tile_view_pattern::TileShape"]],["impl<Q> Unpin for QueryHasTile<Q>where\n Q: Unpin,",1,["maplibre::render::tile_view_pattern::QueryHasTile"]],["impl Unpin for ViewTileSources",1,["maplibre::render::tile_view_pattern::ViewTileSources"]],["impl Unpin for RenderStageLabel",1,["maplibre::render::RenderStageLabel"]],["impl Unpin for RenderResources",1,["maplibre::render::RenderResources"]],["impl Unpin for Renderer",1,["maplibre::render::Renderer"]],["impl Unpin for MaskPipeline",1,["maplibre::render::MaskPipeline"]],["impl Unpin for RenderPlugin",1,["maplibre::render::RenderPlugin"]],["impl Unpin for BackgroundPaint",1,["maplibre::style::layer::BackgroundPaint"]],["impl Unpin for FillPaint",1,["maplibre::style::layer::FillPaint"]],["impl Unpin for LinePaint",1,["maplibre::style::layer::LinePaint"]],["impl Unpin for LayerPaint",1,["maplibre::style::layer::LayerPaint"]],["impl Unpin for StyleLayer",1,["maplibre::style::layer::StyleLayer"]],["impl Unpin for RasterResampling",1,["maplibre::style::raster::RasterResampling"]],["impl Unpin for RasterLayer",1,["maplibre::style::raster::RasterLayer"]],["impl Unpin for TileAddressingScheme",1,["maplibre::style::source::TileAddressingScheme"]],["impl Unpin for VectorSource",1,["maplibre::style::source::VectorSource"]],["impl Unpin for Source",1,["maplibre::style::source::Source"]],["impl Unpin for Style",1,["maplibre::style::style::Style"]],["impl Unpin for FPSMeter",1,["maplibre::util::fps_meter::FPSMeter"]],["impl<S> Unpin for Plane<S>where\n S: Unpin,",1,["maplibre::util::math::Plane"]],["impl<S> Unpin for Aabb2<S>where\n S: Unpin,",1,["maplibre::util::math::Aabb2"]],["impl<S> Unpin for Aabb3<S>where\n S: Unpin,",1,["maplibre::util::math::Aabb3"]],["impl Unpin for FloatOrd",1,["maplibre::util::math::FloatOrd"]],["impl<T> Unpin for ChangeObserver<T>where\n T: Unpin,",1,["maplibre::util::ChangeObserver"]],["impl Unpin for WindowSize",1,["maplibre::window::WindowSize"]],["impl Unpin for NopStage",1,["maplibre::schedule::NopStage"]],["impl<const I: usize, S> Unpin for MultiStage<I, S>where\n S: Unpin,",1,["maplibre::schedule::MultiStage"]],["impl Unpin for Schedule",1,["maplibre::schedule::Schedule"]],["impl Unpin for SendEventError",1,["maplibre::event_loop::SendEventError"]],["impl<E> Unpin for Kernel<E>where\n <E as Environment>::AsyncProcedureCall: Unpin,\n <E as Environment>::HttpClient: Unpin,\n <E as Environment>::MapWindowConfig: Unpin,\n <E as Environment>::Scheduler: Unpin,",1,["maplibre::kernel::Kernel"]],["impl<E> Unpin for KernelBuilder<E>where\n <E as Environment>::AsyncProcedureCall: Unpin,\n <E as Environment>::HttpClient: Unpin,\n <E as Environment>::MapWindowConfig: Unpin,\n <E as Environment>::Scheduler: Unpin,",1,["maplibre::kernel::KernelBuilder"]],["impl Unpin for MapError",1,["maplibre::map::MapError"]],["impl Unpin for CurrentMapContext",1,["maplibre::map::CurrentMapContext"]],["impl<E> Unpin for Map<E>where\n <<E as Environment>::MapWindowConfig as MapWindowConfig>::MapWindow: Unpin,",1,["maplibre::map::Map"]],["impl Unpin for Resources",1,["maplibre::tcs::resources::Resources"]],["impl<F> Unpin for FunctionSystem<F>where\n F: Unpin,",1,["maplibre::tcs::system::function::FunctionSystem"]],["impl Unpin for SystemStage",1,["maplibre::tcs::system::stage::SystemStage"]],["impl Unpin for SystemContainer",1,["maplibre::tcs::system::SystemContainer"]],["impl Unpin for Tile",1,["maplibre::tcs::tiles::Tile"]],["impl Unpin for Tiles",1,["maplibre::tcs::tiles::Tiles"]],["impl<'t> Unpin for TileSpawnResult<'t>",1,["maplibre::tcs::tiles::TileSpawnResult"]],["impl Unpin for GlobalQueryState",1,["maplibre::tcs::tiles::GlobalQueryState"]],["impl<'s> Unpin for EphemeralQueryState<'s>",1,["maplibre::tcs::tiles::EphemeralQueryState"]],["impl Unpin for World",1,["maplibre::tcs::world::World"]],["impl Unpin for GlobalQueryState",1,["maplibre::tcs::GlobalQueryState"]],["impl<'s> Unpin for EphemeralQueryState<'s>",1,["maplibre::tcs::EphemeralQueryState"]],["impl Unpin for ViewState",1,["maplibre::view_state::ViewState"]],["impl Unpin for DebugPassNode",1,["maplibre::debug::debug_pass::DebugPassNode"]],["impl Unpin for SetDebugPipeline",1,["maplibre::debug::render_commands::SetDebugPipeline"]],["impl Unpin for DrawDebugOutline",1,["maplibre::debug::render_commands::DrawDebugOutline"]],["impl Unpin for DebugPipeline",1,["maplibre::debug::DebugPipeline"]],["impl Unpin for TileDebugItem",1,["maplibre::debug::TileDebugItem"]],["impl Unpin for DebugPlugin",1,["maplibre::debug::DebugPlugin"]],["impl<E, T> Unpin for PopulateWorldSystem<E, T>where\n T: Unpin,",1,["maplibre::raster::populate_world_system::PopulateWorldSystem"]],["impl Unpin for ProcessRasterError",1,["maplibre::raster::process_raster::ProcessRasterError"]],["impl Unpin for RasterTileRequest",1,["maplibre::raster::process_raster::RasterTileRequest"]],["impl<T, C> Unpin for ProcessRasterContext<T, C>where\n C: Unpin,\n T: Unpin,",1,["maplibre::raster::process_raster::ProcessRasterContext"]],["impl Unpin for SetRasterTilePipeline",1,["maplibre::raster::render_commands::SetRasterTilePipeline"]],["impl<const I: usize> Unpin for SetRasterViewBindGroup<I>",1,["maplibre::raster::render_commands::SetRasterViewBindGroup"]],["impl Unpin for DrawRasterTile",1,["maplibre::raster::render_commands::DrawRasterTile"]],["impl<E, T> Unpin for RequestSystem<E, T>where\n T: Unpin,",1,["maplibre::raster::request_system::RequestSystem"]],["impl Unpin for RasterResources",1,["maplibre::raster::resource::raster::RasterResources"]],["impl Unpin for RasterMessageTag",1,["maplibre::raster::transferables::RasterMessageTag"]],["impl Unpin for DefaultLayerRaster",1,["maplibre::raster::transferables::DefaultLayerRaster"]],["impl Unpin for DefaultLayerRasterMissing",1,["maplibre::raster::transferables::DefaultLayerRasterMissing"]],["impl Unpin for DefaultRasterTransferables",1,["maplibre::raster::transferables::DefaultRasterTransferables"]],["impl<T> Unpin for RasterPlugin<T>where\n T: Unpin,",1,["maplibre::raster::RasterPlugin"]],["impl Unpin for AvailableRasterLayerData",1,["maplibre::raster::AvailableRasterLayerData"]],["impl Unpin for MissingRasterLayerData",1,["maplibre::raster::MissingRasterLayerData"]],["impl Unpin for RasterLayerData",1,["maplibre::raster::RasterLayerData"]],["impl Unpin for RasterLayersDataComponent",1,["maplibre::raster::RasterLayersDataComponent"]],["impl<E, T> Unpin for PopulateWorldSystem<E, T>where\n T: Unpin,",1,["maplibre::vector::populate_world_system::PopulateWorldSystem"]],["impl Unpin for ProcessVectorError",1,["maplibre::vector::process_vector::ProcessVectorError"]],["impl Unpin for VectorTileRequest",1,["maplibre::vector::process_vector::VectorTileRequest"]],["impl<T, C> Unpin for ProcessVectorContext<T, C>where\n C: Unpin,\n T: Unpin,",1,["maplibre::vector::process_vector::ProcessVectorContext"]],["impl Unpin for SetVectorTilePipeline",1,["maplibre::vector::render_commands::SetVectorTilePipeline"]],["impl Unpin for DrawVectorTile",1,["maplibre::vector::render_commands::DrawVectorTile"]],["impl<E, T> Unpin for RequestSystem<E, T>where\n T: Unpin,",1,["maplibre::vector::request_system::RequestSystem"]],["impl<Q, B, V, I, TM, FM> Unpin for BufferPool<Q, B, V, I, TM, FM>where\n B: Unpin,\n FM: Unpin,\n I: Unpin,\n Q: Unpin,\n TM: Unpin,\n V: Unpin,",1,["maplibre::vector::resource::buffer_pool::BufferPool"]],["impl Unpin for BackingBufferType",1,["maplibre::vector::resource::buffer_pool::BackingBufferType"]],["impl<B> Unpin for BackingBuffer<B>where\n B: Unpin,",1,["maplibre::vector::resource::buffer_pool::BackingBuffer"]],["impl Unpin for IndexEntry",1,["maplibre::vector::resource::buffer_pool::IndexEntry"]],["impl Unpin for RingIndexEntry",1,["maplibre::vector::resource::buffer_pool::RingIndexEntry"]],["impl Unpin for RingIndex",1,["maplibre::vector::resource::buffer_pool::RingIndex"]],["impl Unpin for VectorMessageTag",1,["maplibre::vector::transferables::VectorMessageTag"]],["impl Unpin for DefaultTileTessellated",1,["maplibre::vector::transferables::DefaultTileTessellated"]],["impl Unpin for DefaultLayerMissing",1,["maplibre::vector::transferables::DefaultLayerMissing"]],["impl Unpin for DefaultLayerTesselated",1,["maplibre::vector::transferables::DefaultLayerTesselated"]],["impl Unpin for DefaultLayerIndexed",1,["maplibre::vector::transferables::DefaultLayerIndexed"]],["impl Unpin for DefaultVectorTransferables",1,["maplibre::vector::transferables::DefaultVectorTransferables"]],["impl Unpin for VectorPipeline",1,["maplibre::vector::VectorPipeline"]],["impl<T> Unpin for VectorPlugin<T>where\n T: Unpin,",1,["maplibre::vector::VectorPlugin"]],["impl Unpin for VectorTilesDone",1,["maplibre::vector::VectorTilesDone"]],["impl Unpin for AvailableVectorLayerData",1,["maplibre::vector::AvailableVectorLayerData"]],["impl Unpin for MissingVectorLayerData",1,["maplibre::vector::MissingVectorLayerData"]],["impl Unpin for VectorLayerData",1,["maplibre::vector::VectorLayerData"]],["impl Unpin for VectorLayersDataComponent",1,["maplibre::vector::VectorLayersDataComponent"]]] +"maplibre":[["impl<I> Unpin for ZeroTessellator<I>where\n I: Unpin,",1,["maplibre::tessellation::zero_tessellator::ZeroTessellator"]],["impl Unpin for VertexConstructor",1,["maplibre::tessellation::VertexConstructor"]],["impl<V, I> Unpin for OverAlignedVertexBuffer<V, I>where\n I: Unpin,\n V: Unpin,",1,["maplibre::tessellation::OverAlignedVertexBuffer"]],["impl Unpin for MapContext",1,["maplibre::context::MapContext"]],["impl Unpin for Quadkey",1,["maplibre::coords::Quadkey"]],["impl Unpin for ZoomLevel",1,["maplibre::coords::ZoomLevel"]],["impl Unpin for LatLon",1,["maplibre::coords::LatLon"]],["impl Unpin for Zoom",1,["maplibre::coords::Zoom"]],["impl Unpin for InnerCoords",1,["maplibre::coords::InnerCoords"]],["impl Unpin for TileCoords",1,["maplibre::coords::TileCoords"]],["impl Unpin for WorldTileCoords",1,["maplibre::coords::WorldTileCoords"]],["impl Unpin for AlignedWorldTileCoords",1,["maplibre::coords::AlignedWorldTileCoords"]],["impl Unpin for WorldCoords",1,["maplibre::coords::WorldCoords"]],["impl Unpin for ViewRegion",1,["maplibre::coords::ViewRegion"]],["impl Unpin for MessageError",1,["maplibre::io::apc::MessageError"]],["impl Unpin for Message",1,["maplibre::io::apc::Message"]],["impl Unpin for Input",1,["maplibre::io::apc::Input"]],["impl Unpin for SendError",1,["maplibre::io::apc::SendError"]],["impl Unpin for ProcedureError",1,["maplibre::io::apc::ProcedureError"]],["impl Unpin for CallError",1,["maplibre::io::apc::CallError"]],["impl Unpin for SchedulerContext",1,["maplibre::io::apc::SchedulerContext"]],["impl<K, S> Unpin for SchedulerAsyncProcedureCall<K, S>where\n K: Unpin,\n S: Unpin,",1,["maplibre::io::apc::SchedulerAsyncProcedureCall"]],["impl Unpin for GeometryIndex",1,["maplibre::io::geometry_index::GeometryIndex"]],["impl Unpin for TileIndex",1,["maplibre::io::geometry_index::TileIndex"]],["impl<T> Unpin for IndexedGeometry<T>where\n T: Unpin,",1,["maplibre::io::geometry_index::IndexedGeometry"]],["impl<T> Unpin for ExactGeometry<T>where\n T: Unpin,",1,["maplibre::io::geometry_index::ExactGeometry"]],["impl Unpin for IndexProcessor",1,["maplibre::io::geometry_index::IndexProcessor"]],["impl Unpin for ScheduleError",1,["maplibre::io::scheduler::ScheduleError"]],["impl Unpin for NopScheduler",1,["maplibre::io::scheduler::NopScheduler"]],["impl<HC> Unpin for HttpSourceClient<HC>where\n HC: Unpin,",1,["maplibre::io::source_client::HttpSourceClient"]],["impl Unpin for SourceFetchError",1,["maplibre::io::source_client::SourceFetchError"]],["impl<HC> Unpin for SourceClient<HC>where\n HC: Unpin,",1,["maplibre::io::source_client::SourceClient"]],["impl Unpin for TessellateSource",1,["maplibre::io::source_type::TessellateSource"]],["impl Unpin for RasterSource",1,["maplibre::io::source_type::RasterSource"]],["impl Unpin for SourceType",1,["maplibre::io::source_type::SourceType"]],["impl Unpin for ReqwestHttpClient",1,["maplibre::platform::noweb::http_client::ReqwestHttpClient"]],["impl Unpin for TokioScheduler",1,["maplibre::platform::noweb::scheduler::TokioScheduler"]],["impl Unpin for ReqwestOffscreenKernelEnvironment",1,["maplibre::platform::noweb::ReqwestOffscreenKernelEnvironment"]],["impl Unpin for RunSubGraph",1,["maplibre::render::graph::context::RunSubGraph"]],["impl<'a> Unpin for RenderGraphContext<'a>",1,["maplibre::render::graph::context::RenderGraphContext"]],["impl Unpin for RunSubGraphError",1,["maplibre::render::graph::context::RunSubGraphError"]],["impl Unpin for OutputSlotError",1,["maplibre::render::graph::context::OutputSlotError"]],["impl Unpin for InputSlotError",1,["maplibre::render::graph::context::InputSlotError"]],["impl Unpin for Edge",1,["maplibre::render::graph::edge::Edge"]],["impl Unpin for EdgeExistence",1,["maplibre::render::graph::edge::EdgeExistence"]],["impl Unpin for RenderGraph",1,["maplibre::render::graph::graph::RenderGraph"]],["impl Unpin for GraphInputNode",1,["maplibre::render::graph::graph::GraphInputNode"]],["impl<'d> Unpin for RenderContext<'d>",1,["maplibre::render::graph::node::RenderContext"]],["impl Unpin for NodeId",1,["maplibre::render::graph::node::NodeId"]],["impl Unpin for NodeRunError",1,["maplibre::render::graph::node::NodeRunError"]],["impl Unpin for Edges",1,["maplibre::render::graph::node::Edges"]],["impl Unpin for NodeState",1,["maplibre::render::graph::node::NodeState"]],["impl Unpin for NodeLabel",1,["maplibre::render::graph::node::NodeLabel"]],["impl Unpin for EmptyNode",1,["maplibre::render::graph::node::EmptyNode"]],["impl Unpin for SlotValue",1,["maplibre::render::graph::node_slot::SlotValue"]],["impl Unpin for SlotType",1,["maplibre::render::graph::node_slot::SlotType"]],["impl Unpin for SlotLabel",1,["maplibre::render::graph::node_slot::SlotLabel"]],["impl Unpin for SlotInfo",1,["maplibre::render::graph::node_slot::SlotInfo"]],["impl Unpin for SlotInfos",1,["maplibre::render::graph::node_slot::SlotInfos"]],["impl Unpin for RenderGraphError",1,["maplibre::render::graph::RenderGraphError"]],["impl<B> Unpin for BackingBufferDescriptor<B>where\n B: Unpin,",1,["maplibre::render::resource::buffer::BackingBufferDescriptor"]],["impl Unpin for RenderPipelineDescriptor",1,["maplibre::render::resource::pipeline::RenderPipelineDescriptor"]],["impl Unpin for VertexBufferLayout",1,["maplibre::render::resource::shader::VertexBufferLayout"]],["impl Unpin for FragmentState",1,["maplibre::render::resource::shader::FragmentState"]],["impl Unpin for VertexState",1,["maplibre::render::resource::shader::VertexState"]],["impl Unpin for BufferDimensions",1,["maplibre::render::resource::surface::BufferDimensions"]],["impl Unpin for WindowHead",1,["maplibre::render::resource::surface::WindowHead"]],["impl Unpin for BufferedTextureHead",1,["maplibre::render::resource::surface::BufferedTextureHead"]],["impl Unpin for Head",1,["maplibre::render::resource::surface::Head"]],["impl Unpin for Surface",1,["maplibre::render::resource::surface::Surface"]],["impl Unpin for TextureView",1,["maplibre::render::resource::texture::TextureView"]],["impl Unpin for Texture",1,["maplibre::render::resource::texture::Texture"]],["impl Unpin for TilePipeline",1,["maplibre::render::resource::tile_pipeline::TilePipeline"]],["impl<'a> Unpin for TrackedRenderPass<'a>",1,["maplibre::render::resource::tracked_render_pass::TrackedRenderPass"]],["impl Unpin for GraphRunnerSystem",1,["maplibre::render::systems::graph_runner_system::GraphRunnerSystem"]],["impl Unpin for ResourceSystem",1,["maplibre::render::systems::resource_system::ResourceSystem"]],["impl Unpin for RenderGraphRunner",1,["maplibre::render::graph_runner::RenderGraphRunner"]],["impl Unpin for RenderGraphRunnerError",1,["maplibre::render::graph_runner::RenderGraphRunnerError"]],["impl Unpin for MainPassNode",1,["maplibre::render::main_pass::MainPassNode"]],["impl Unpin for MainPassDriverNode",1,["maplibre::render::main_pass::MainPassDriverNode"]],["impl Unpin for TileMaskShader",1,["maplibre::render::shaders::TileMaskShader"]],["impl Unpin for VectorTileShader",1,["maplibre::render::shaders::VectorTileShader"]],["impl Unpin for ShaderCamera",1,["maplibre::render::shaders::ShaderCamera"]],["impl Unpin for ShaderGlobals",1,["maplibre::render::shaders::ShaderGlobals"]],["impl Unpin for ShaderVertex",1,["maplibre::render::shaders::ShaderVertex"]],["impl Unpin for ShaderFeatureStyle",1,["maplibre::render::shaders::ShaderFeatureStyle"]],["impl Unpin for ShaderLayerMetadata",1,["maplibre::render::shaders::ShaderLayerMetadata"]],["impl Unpin for ShaderTileMetadata",1,["maplibre::render::shaders::ShaderTileMetadata"]],["impl Unpin for ShaderTextureVertex",1,["maplibre::render::shaders::ShaderTextureVertex"]],["impl Unpin for RasterTileShader",1,["maplibre::render::shaders::RasterTileShader"]],["impl Unpin for RendererBuilder",1,["maplibre::render::builder::RendererBuilder"]],["impl Unpin for InitializationResult",1,["maplibre::render::builder::InitializationResult"]],["impl Unpin for UninitializedRenderer",1,["maplibre::render::builder::UninitializedRenderer"]],["impl Unpin for InitializedRenderer",1,["maplibre::render::builder::InitializedRenderer"]],["impl Unpin for ViewProjection",1,["maplibre::render::camera::ViewProjection"]],["impl Unpin for InvertedViewProjection",1,["maplibre::render::camera::InvertedViewProjection"]],["impl Unpin for ModelViewProjection",1,["maplibre::render::camera::ModelViewProjection"]],["impl Unpin for Camera",1,["maplibre::render::camera::Camera"]],["impl Unpin for EdgeInsets",1,["maplibre::render::camera::EdgeInsets"]],["impl Unpin for Perspective",1,["maplibre::render::camera::Perspective"]],["impl Unpin for RenderError",1,["maplibre::render::error::RenderError"]],["impl<T> Unpin for Eventually<T>where\n T: Unpin,",1,["maplibre::render::eventually::Eventually"]],["impl Unpin for SetMaskPipeline",1,["maplibre::render::render_commands::SetMaskPipeline"]],["impl Unpin for DrawMask",1,["maplibre::render::render_commands::DrawMask"]],["impl Unpin for RenderCommandResult",1,["maplibre::render::render_phase::draw::RenderCommandResult"]],["impl<C, P> Unpin for DrawState<C, P>where\n C: Unpin,\n P: Unpin,",1,["maplibre::render::render_phase::draw::DrawState"]],["impl<I> Unpin for RenderPhase<I>where\n I: Unpin,",1,["maplibre::render::render_phase::RenderPhase"]],["impl Unpin for LayerItem",1,["maplibre::render::render_phase::LayerItem"]],["impl Unpin for TileMaskItem",1,["maplibre::render::render_phase::TileMaskItem"]],["impl Unpin for WgpuSettings",1,["maplibre::render::settings::WgpuSettings"]],["impl Unpin for SurfaceType",1,["maplibre::render::settings::SurfaceType"]],["impl Unpin for Msaa",1,["maplibre::render::settings::Msaa"]],["impl Unpin for RendererSettings",1,["maplibre::render::settings::RendererSettings"]],["impl<B> Unpin for BackingBuffer<B>where\n B: Unpin,",1,["maplibre::render::tile_view_pattern::pattern::BackingBuffer"]],["impl<Q, B> Unpin for TileViewPattern<Q, B>where\n B: Unpin,\n Q: Unpin,",1,["maplibre::render::tile_view_pattern::pattern::TileViewPattern"]],["impl Unpin for SourceShapes",1,["maplibre::render::tile_view_pattern::SourceShapes"]],["impl Unpin for ViewTile",1,["maplibre::render::tile_view_pattern::ViewTile"]],["impl Unpin for TileShape",1,["maplibre::render::tile_view_pattern::TileShape"]],["impl<Q> Unpin for QueryHasTile<Q>where\n Q: Unpin,",1,["maplibre::render::tile_view_pattern::QueryHasTile"]],["impl Unpin for ViewTileSources",1,["maplibre::render::tile_view_pattern::ViewTileSources"]],["impl Unpin for ViewState",1,["maplibre::render::view_state::ViewState"]],["impl Unpin for RenderStageLabel",1,["maplibre::render::RenderStageLabel"]],["impl Unpin for RenderResources",1,["maplibre::render::RenderResources"]],["impl Unpin for Renderer",1,["maplibre::render::Renderer"]],["impl Unpin for MaskPipeline",1,["maplibre::render::MaskPipeline"]],["impl Unpin for RenderPlugin",1,["maplibre::render::RenderPlugin"]],["impl Unpin for BackgroundPaint",1,["maplibre::style::layer::BackgroundPaint"]],["impl Unpin for FillPaint",1,["maplibre::style::layer::FillPaint"]],["impl Unpin for LinePaint",1,["maplibre::style::layer::LinePaint"]],["impl Unpin for LayerPaint",1,["maplibre::style::layer::LayerPaint"]],["impl Unpin for StyleLayer",1,["maplibre::style::layer::StyleLayer"]],["impl Unpin for RasterResampling",1,["maplibre::style::raster::RasterResampling"]],["impl Unpin for RasterLayer",1,["maplibre::style::raster::RasterLayer"]],["impl Unpin for TileAddressingScheme",1,["maplibre::style::source::TileAddressingScheme"]],["impl Unpin for VectorSource",1,["maplibre::style::source::VectorSource"]],["impl Unpin for Source",1,["maplibre::style::source::Source"]],["impl Unpin for Style",1,["maplibre::style::style::Style"]],["impl Unpin for FPSMeter",1,["maplibre::util::fps_meter::FPSMeter"]],["impl<S> Unpin for Plane<S>where\n S: Unpin,",1,["maplibre::util::math::Plane"]],["impl<S> Unpin for Aabb2<S>where\n S: Unpin,",1,["maplibre::util::math::Aabb2"]],["impl<S> Unpin for Aabb3<S>where\n S: Unpin,",1,["maplibre::util::math::Aabb3"]],["impl Unpin for FloatOrd",1,["maplibre::util::math::FloatOrd"]],["impl<T> Unpin for ChangeObserver<T>where\n T: Unpin,",1,["maplibre::util::ChangeObserver"]],["impl Unpin for WindowSize",1,["maplibre::window::WindowSize"]],["impl Unpin for NopStage",1,["maplibre::schedule::NopStage"]],["impl<const I: usize, S> Unpin for MultiStage<I, S>where\n S: Unpin,",1,["maplibre::schedule::MultiStage"]],["impl Unpin for Schedule",1,["maplibre::schedule::Schedule"]],["impl Unpin for SendEventError",1,["maplibre::event_loop::SendEventError"]],["impl<E> Unpin for Kernel<E>where\n <E as Environment>::AsyncProcedureCall: Unpin,\n <E as Environment>::HttpClient: Unpin,\n <E as Environment>::MapWindowConfig: Unpin,\n <E as Environment>::Scheduler: Unpin,",1,["maplibre::kernel::Kernel"]],["impl<E> Unpin for KernelBuilder<E>where\n <E as Environment>::AsyncProcedureCall: Unpin,\n <E as Environment>::HttpClient: Unpin,\n <E as Environment>::MapWindowConfig: Unpin,\n <E as Environment>::Scheduler: Unpin,",1,["maplibre::kernel::KernelBuilder"]],["impl Unpin for MapError",1,["maplibre::map::MapError"]],["impl Unpin for CurrentMapContext",1,["maplibre::map::CurrentMapContext"]],["impl<E> Unpin for Map<E>where\n <<E as Environment>::MapWindowConfig as MapWindowConfig>::MapWindow: Unpin,",1,["maplibre::map::Map"]],["impl Unpin for Resources",1,["maplibre::tcs::resources::Resources"]],["impl<F> Unpin for FunctionSystem<F>where\n F: Unpin,",1,["maplibre::tcs::system::function::FunctionSystem"]],["impl Unpin for SystemStage",1,["maplibre::tcs::system::stage::SystemStage"]],["impl Unpin for SystemContainer",1,["maplibre::tcs::system::SystemContainer"]],["impl Unpin for Tile",1,["maplibre::tcs::tiles::Tile"]],["impl Unpin for Tiles",1,["maplibre::tcs::tiles::Tiles"]],["impl<'t> Unpin for TileSpawnResult<'t>",1,["maplibre::tcs::tiles::TileSpawnResult"]],["impl Unpin for GlobalQueryState",1,["maplibre::tcs::tiles::GlobalQueryState"]],["impl<'s> Unpin for EphemeralQueryState<'s>",1,["maplibre::tcs::tiles::EphemeralQueryState"]],["impl Unpin for World",1,["maplibre::tcs::world::World"]],["impl Unpin for GlobalQueryState",1,["maplibre::tcs::GlobalQueryState"]],["impl<'s> Unpin for EphemeralQueryState<'s>",1,["maplibre::tcs::EphemeralQueryState"]],["impl Unpin for DebugPassNode",1,["maplibre::debug::debug_pass::DebugPassNode"]],["impl Unpin for SetDebugPipeline",1,["maplibre::debug::render_commands::SetDebugPipeline"]],["impl Unpin for DrawDebugOutline",1,["maplibre::debug::render_commands::DrawDebugOutline"]],["impl Unpin for DebugPipeline",1,["maplibre::debug::DebugPipeline"]],["impl Unpin for TileDebugItem",1,["maplibre::debug::TileDebugItem"]],["impl Unpin for DebugPlugin",1,["maplibre::debug::DebugPlugin"]],["impl<E, T> Unpin for PopulateWorldSystem<E, T>where\n T: Unpin,",1,["maplibre::raster::populate_world_system::PopulateWorldSystem"]],["impl Unpin for ProcessRasterError",1,["maplibre::raster::process_raster::ProcessRasterError"]],["impl Unpin for RasterTileRequest",1,["maplibre::raster::process_raster::RasterTileRequest"]],["impl<T, C> Unpin for ProcessRasterContext<T, C>where\n C: Unpin,\n T: Unpin,",1,["maplibre::raster::process_raster::ProcessRasterContext"]],["impl Unpin for SetRasterTilePipeline",1,["maplibre::raster::render_commands::SetRasterTilePipeline"]],["impl<const I: usize> Unpin for SetRasterViewBindGroup<I>",1,["maplibre::raster::render_commands::SetRasterViewBindGroup"]],["impl Unpin for DrawRasterTile",1,["maplibre::raster::render_commands::DrawRasterTile"]],["impl<E, T> Unpin for RequestSystem<E, T>where\n T: Unpin,",1,["maplibre::raster::request_system::RequestSystem"]],["impl Unpin for RasterResources",1,["maplibre::raster::resource::raster::RasterResources"]],["impl Unpin for RasterMessageTag",1,["maplibre::raster::transferables::RasterMessageTag"]],["impl Unpin for DefaultLayerRaster",1,["maplibre::raster::transferables::DefaultLayerRaster"]],["impl Unpin for DefaultLayerRasterMissing",1,["maplibre::raster::transferables::DefaultLayerRasterMissing"]],["impl Unpin for DefaultRasterTransferables",1,["maplibre::raster::transferables::DefaultRasterTransferables"]],["impl<T> Unpin for RasterPlugin<T>where\n T: Unpin,",1,["maplibre::raster::RasterPlugin"]],["impl Unpin for AvailableRasterLayerData",1,["maplibre::raster::AvailableRasterLayerData"]],["impl Unpin for MissingRasterLayerData",1,["maplibre::raster::MissingRasterLayerData"]],["impl Unpin for RasterLayerData",1,["maplibre::raster::RasterLayerData"]],["impl Unpin for RasterLayersDataComponent",1,["maplibre::raster::RasterLayersDataComponent"]],["impl<E, T> Unpin for PopulateWorldSystem<E, T>where\n T: Unpin,",1,["maplibre::vector::populate_world_system::PopulateWorldSystem"]],["impl Unpin for ProcessVectorError",1,["maplibre::vector::process_vector::ProcessVectorError"]],["impl Unpin for VectorTileRequest",1,["maplibre::vector::process_vector::VectorTileRequest"]],["impl<T, C> Unpin for ProcessVectorContext<T, C>where\n C: Unpin,\n T: Unpin,",1,["maplibre::vector::process_vector::ProcessVectorContext"]],["impl Unpin for SetVectorTilePipeline",1,["maplibre::vector::render_commands::SetVectorTilePipeline"]],["impl Unpin for DrawVectorTile",1,["maplibre::vector::render_commands::DrawVectorTile"]],["impl<E, T> Unpin for RequestSystem<E, T>where\n T: Unpin,",1,["maplibre::vector::request_system::RequestSystem"]],["impl<Q, B, V, I, TM, FM> Unpin for BufferPool<Q, B, V, I, TM, FM>where\n B: Unpin,\n FM: Unpin,\n I: Unpin,\n Q: Unpin,\n TM: Unpin,\n V: Unpin,",1,["maplibre::vector::resource::buffer_pool::BufferPool"]],["impl Unpin for BackingBufferType",1,["maplibre::vector::resource::buffer_pool::BackingBufferType"]],["impl<B> Unpin for BackingBuffer<B>where\n B: Unpin,",1,["maplibre::vector::resource::buffer_pool::BackingBuffer"]],["impl Unpin for IndexEntry",1,["maplibre::vector::resource::buffer_pool::IndexEntry"]],["impl Unpin for RingIndexEntry",1,["maplibre::vector::resource::buffer_pool::RingIndexEntry"]],["impl Unpin for RingIndex",1,["maplibre::vector::resource::buffer_pool::RingIndex"]],["impl Unpin for VectorMessageTag",1,["maplibre::vector::transferables::VectorMessageTag"]],["impl Unpin for DefaultTileTessellated",1,["maplibre::vector::transferables::DefaultTileTessellated"]],["impl Unpin for DefaultLayerMissing",1,["maplibre::vector::transferables::DefaultLayerMissing"]],["impl Unpin for DefaultLayerTesselated",1,["maplibre::vector::transferables::DefaultLayerTesselated"]],["impl Unpin for DefaultLayerIndexed",1,["maplibre::vector::transferables::DefaultLayerIndexed"]],["impl Unpin for DefaultVectorTransferables",1,["maplibre::vector::transferables::DefaultVectorTransferables"]],["impl Unpin for VectorPipeline",1,["maplibre::vector::VectorPipeline"]],["impl<T> Unpin for VectorPlugin<T>where\n T: Unpin,",1,["maplibre::vector::VectorPlugin"]],["impl Unpin for VectorTilesDone",1,["maplibre::vector::VectorTilesDone"]],["impl Unpin for AvailableVectorLayerData",1,["maplibre::vector::AvailableVectorLayerData"]],["impl Unpin for MissingVectorLayerData",1,["maplibre::vector::MissingVectorLayerData"]],["impl Unpin for VectorLayerData",1,["maplibre::vector::VectorLayerData"]],["impl Unpin for VectorLayersDataComponent",1,["maplibre::vector::VectorLayersDataComponent"]]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/docs/api/implementors/core/ops/deref/trait.Deref.js b/docs/api/implementors/core/ops/deref/trait.Deref.js index 1c03369e..ee6001b8 100644 --- a/docs/api/implementors/core/ops/deref/trait.Deref.js +++ b/docs/api/implementors/core/ops/deref/trait.Deref.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"maplibre":[["impl<T> Deref for ChangeObserver<T>"],["impl Deref for TextureView"],["impl Deref for MaskPipeline"],["impl Deref for VectorPipeline"],["impl Deref for DebugPipeline"]] +"maplibre":[["impl<T> Deref for ChangeObserver<T>"],["impl Deref for TextureView"],["impl Deref for VectorPipeline"],["impl Deref for MaskPipeline"],["impl Deref for DebugPipeline"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/docs/api/implementors/core/panic/unwind_safe/trait.RefUnwindSafe.js b/docs/api/implementors/core/panic/unwind_safe/trait.RefUnwindSafe.js index 0f45f7d2..56a14e8b 100644 --- a/docs/api/implementors/core/panic/unwind_safe/trait.RefUnwindSafe.js +++ b/docs/api/implementors/core/panic/unwind_safe/trait.RefUnwindSafe.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"maplibre":[["impl<I> !RefUnwindSafe for ZeroTessellator<I>",1,["maplibre::tessellation::zero_tessellator::ZeroTessellator"]],["impl RefUnwindSafe for VertexConstructor",1,["maplibre::tessellation::VertexConstructor"]],["impl<V, I> RefUnwindSafe for OverAlignedVertexBuffer<V, I>where\n I: RefUnwindSafe,\n V: RefUnwindSafe,",1,["maplibre::tessellation::OverAlignedVertexBuffer"]],["impl !RefUnwindSafe for MapContext",1,["maplibre::context::MapContext"]],["impl RefUnwindSafe for Quadkey",1,["maplibre::coords::Quadkey"]],["impl RefUnwindSafe for ZoomLevel",1,["maplibre::coords::ZoomLevel"]],["impl RefUnwindSafe for LatLon",1,["maplibre::coords::LatLon"]],["impl RefUnwindSafe for Zoom",1,["maplibre::coords::Zoom"]],["impl RefUnwindSafe for InnerCoords",1,["maplibre::coords::InnerCoords"]],["impl RefUnwindSafe for TileCoords",1,["maplibre::coords::TileCoords"]],["impl RefUnwindSafe for WorldTileCoords",1,["maplibre::coords::WorldTileCoords"]],["impl RefUnwindSafe for AlignedWorldTileCoords",1,["maplibre::coords::AlignedWorldTileCoords"]],["impl RefUnwindSafe for WorldCoords",1,["maplibre::coords::WorldCoords"]],["impl RefUnwindSafe for ViewRegion",1,["maplibre::coords::ViewRegion"]],["impl !RefUnwindSafe for MessageError",1,["maplibre::io::apc::MessageError"]],["impl !RefUnwindSafe for Message",1,["maplibre::io::apc::Message"]],["impl RefUnwindSafe for Input",1,["maplibre::io::apc::Input"]],["impl RefUnwindSafe for SendError",1,["maplibre::io::apc::SendError"]],["impl !RefUnwindSafe for ProcedureError",1,["maplibre::io::apc::ProcedureError"]],["impl !RefUnwindSafe for CallError",1,["maplibre::io::apc::CallError"]],["impl RefUnwindSafe for SchedulerContext",1,["maplibre::io::apc::SchedulerContext"]],["impl<K, S> !RefUnwindSafe for SchedulerAsyncProcedureCall<K, S>",1,["maplibre::io::apc::SchedulerAsyncProcedureCall"]],["impl RefUnwindSafe for GeometryIndex",1,["maplibre::io::geometry_index::GeometryIndex"]],["impl RefUnwindSafe for TileIndex",1,["maplibre::io::geometry_index::TileIndex"]],["impl<T> RefUnwindSafe for IndexedGeometry<T>where\n T: RefUnwindSafe,",1,["maplibre::io::geometry_index::IndexedGeometry"]],["impl<T> RefUnwindSafe for ExactGeometry<T>where\n T: RefUnwindSafe,",1,["maplibre::io::geometry_index::ExactGeometry"]],["impl RefUnwindSafe for IndexProcessor",1,["maplibre::io::geometry_index::IndexProcessor"]],["impl !RefUnwindSafe for ScheduleError",1,["maplibre::io::scheduler::ScheduleError"]],["impl RefUnwindSafe for NopScheduler",1,["maplibre::io::scheduler::NopScheduler"]],["impl<HC> RefUnwindSafe for HttpSourceClient<HC>where\n HC: RefUnwindSafe,",1,["maplibre::io::source_client::HttpSourceClient"]],["impl !RefUnwindSafe for SourceFetchError",1,["maplibre::io::source_client::SourceFetchError"]],["impl<HC> RefUnwindSafe for SourceClient<HC>where\n HC: RefUnwindSafe,",1,["maplibre::io::source_client::SourceClient"]],["impl RefUnwindSafe for TessellateSource",1,["maplibre::io::source_type::TessellateSource"]],["impl RefUnwindSafe for RasterSource",1,["maplibre::io::source_type::RasterSource"]],["impl RefUnwindSafe for SourceType",1,["maplibre::io::source_type::SourceType"]],["impl !RefUnwindSafe for ReqwestHttpClient",1,["maplibre::platform::noweb::http_client::ReqwestHttpClient"]],["impl RefUnwindSafe for TokioScheduler",1,["maplibre::platform::noweb::scheduler::TokioScheduler"]],["impl RefUnwindSafe for ReqwestOffscreenKernelEnvironment",1,["maplibre::platform::noweb::ReqwestOffscreenKernelEnvironment"]],["impl !RefUnwindSafe for RunSubGraph",1,["maplibre::render::graph::context::RunSubGraph"]],["impl<'a> !RefUnwindSafe for RenderGraphContext<'a>",1,["maplibre::render::graph::context::RenderGraphContext"]],["impl RefUnwindSafe for RunSubGraphError",1,["maplibre::render::graph::context::RunSubGraphError"]],["impl RefUnwindSafe for OutputSlotError",1,["maplibre::render::graph::context::OutputSlotError"]],["impl RefUnwindSafe for InputSlotError",1,["maplibre::render::graph::context::InputSlotError"]],["impl RefUnwindSafe for Edge",1,["maplibre::render::graph::edge::Edge"]],["impl RefUnwindSafe for EdgeExistence",1,["maplibre::render::graph::edge::EdgeExistence"]],["impl !RefUnwindSafe for RenderGraph",1,["maplibre::render::graph::graph::RenderGraph"]],["impl RefUnwindSafe for GraphInputNode",1,["maplibre::render::graph::graph::GraphInputNode"]],["impl<'d> !RefUnwindSafe for RenderContext<'d>",1,["maplibre::render::graph::node::RenderContext"]],["impl RefUnwindSafe for NodeId",1,["maplibre::render::graph::node::NodeId"]],["impl RefUnwindSafe for NodeRunError",1,["maplibre::render::graph::node::NodeRunError"]],["impl RefUnwindSafe for Edges",1,["maplibre::render::graph::node::Edges"]],["impl !RefUnwindSafe for NodeState",1,["maplibre::render::graph::node::NodeState"]],["impl RefUnwindSafe for NodeLabel",1,["maplibre::render::graph::node::NodeLabel"]],["impl RefUnwindSafe for EmptyNode",1,["maplibre::render::graph::node::EmptyNode"]],["impl !RefUnwindSafe for SlotValue",1,["maplibre::render::graph::node_slot::SlotValue"]],["impl RefUnwindSafe for SlotType",1,["maplibre::render::graph::node_slot::SlotType"]],["impl RefUnwindSafe for SlotLabel",1,["maplibre::render::graph::node_slot::SlotLabel"]],["impl RefUnwindSafe for SlotInfo",1,["maplibre::render::graph::node_slot::SlotInfo"]],["impl RefUnwindSafe for SlotInfos",1,["maplibre::render::graph::node_slot::SlotInfos"]],["impl RefUnwindSafe for RenderGraphError",1,["maplibre::render::graph::RenderGraphError"]],["impl<B> RefUnwindSafe for BackingBufferDescriptor<B>where\n B: RefUnwindSafe,",1,["maplibre::render::resource::buffer::BackingBufferDescriptor"]],["impl RefUnwindSafe for RenderPipelineDescriptor",1,["maplibre::render::resource::pipeline::RenderPipelineDescriptor"]],["impl RefUnwindSafe for VertexBufferLayout",1,["maplibre::render::resource::shader::VertexBufferLayout"]],["impl RefUnwindSafe for FragmentState",1,["maplibre::render::resource::shader::FragmentState"]],["impl RefUnwindSafe for VertexState",1,["maplibre::render::resource::shader::VertexState"]],["impl RefUnwindSafe for BufferDimensions",1,["maplibre::render::resource::surface::BufferDimensions"]],["impl !RefUnwindSafe for WindowHead",1,["maplibre::render::resource::surface::WindowHead"]],["impl !RefUnwindSafe for BufferedTextureHead",1,["maplibre::render::resource::surface::BufferedTextureHead"]],["impl !RefUnwindSafe for Head",1,["maplibre::render::resource::surface::Head"]],["impl !RefUnwindSafe for Surface",1,["maplibre::render::resource::surface::Surface"]],["impl !RefUnwindSafe for TextureView",1,["maplibre::render::resource::texture::TextureView"]],["impl !RefUnwindSafe for Texture",1,["maplibre::render::resource::texture::Texture"]],["impl RefUnwindSafe for TilePipeline",1,["maplibre::render::resource::tile_pipeline::TilePipeline"]],["impl<'a> !RefUnwindSafe for TrackedRenderPass<'a>",1,["maplibre::render::resource::tracked_render_pass::TrackedRenderPass"]],["impl RefUnwindSafe for GraphRunnerSystem",1,["maplibre::render::systems::graph_runner_system::GraphRunnerSystem"]],["impl RefUnwindSafe for ResourceSystem",1,["maplibre::render::systems::resource_system::ResourceSystem"]],["impl RefUnwindSafe for RenderGraphRunner",1,["maplibre::render::graph_runner::RenderGraphRunner"]],["impl RefUnwindSafe for RenderGraphRunnerError",1,["maplibre::render::graph_runner::RenderGraphRunnerError"]],["impl RefUnwindSafe for MainPassNode",1,["maplibre::render::main_pass::MainPassNode"]],["impl RefUnwindSafe for MainPassDriverNode",1,["maplibre::render::main_pass::MainPassDriverNode"]],["impl RefUnwindSafe for TileMaskShader",1,["maplibre::render::shaders::TileMaskShader"]],["impl RefUnwindSafe for VectorTileShader",1,["maplibre::render::shaders::VectorTileShader"]],["impl RefUnwindSafe for ShaderCamera",1,["maplibre::render::shaders::ShaderCamera"]],["impl RefUnwindSafe for ShaderGlobals",1,["maplibre::render::shaders::ShaderGlobals"]],["impl RefUnwindSafe for ShaderVertex",1,["maplibre::render::shaders::ShaderVertex"]],["impl RefUnwindSafe for ShaderFeatureStyle",1,["maplibre::render::shaders::ShaderFeatureStyle"]],["impl RefUnwindSafe for ShaderLayerMetadata",1,["maplibre::render::shaders::ShaderLayerMetadata"]],["impl RefUnwindSafe for ShaderTileMetadata",1,["maplibre::render::shaders::ShaderTileMetadata"]],["impl RefUnwindSafe for ShaderTextureVertex",1,["maplibre::render::shaders::ShaderTextureVertex"]],["impl RefUnwindSafe for RasterTileShader",1,["maplibre::render::shaders::RasterTileShader"]],["impl RefUnwindSafe for RendererBuilder",1,["maplibre::render::builder::RendererBuilder"]],["impl !RefUnwindSafe for InitializationResult",1,["maplibre::render::builder::InitializationResult"]],["impl RefUnwindSafe for UninitializedRenderer",1,["maplibre::render::builder::UninitializedRenderer"]],["impl !RefUnwindSafe for InitializedRenderer",1,["maplibre::render::builder::InitializedRenderer"]],["impl RefUnwindSafe for ViewProjection",1,["maplibre::render::camera::ViewProjection"]],["impl RefUnwindSafe for InvertedViewProjection",1,["maplibre::render::camera::InvertedViewProjection"]],["impl RefUnwindSafe for ModelViewProjection",1,["maplibre::render::camera::ModelViewProjection"]],["impl RefUnwindSafe for Camera",1,["maplibre::render::camera::Camera"]],["impl RefUnwindSafe for Perspective",1,["maplibre::render::camera::Perspective"]],["impl RefUnwindSafe for RenderError",1,["maplibre::render::error::RenderError"]],["impl<T> RefUnwindSafe for Eventually<T>where\n T: RefUnwindSafe,",1,["maplibre::render::eventually::Eventually"]],["impl RefUnwindSafe for SetMaskPipeline",1,["maplibre::render::render_commands::SetMaskPipeline"]],["impl RefUnwindSafe for DrawMask",1,["maplibre::render::render_commands::DrawMask"]],["impl RefUnwindSafe for RenderCommandResult",1,["maplibre::render::render_phase::draw::RenderCommandResult"]],["impl<C, P> RefUnwindSafe for DrawState<C, P>where\n C: RefUnwindSafe,\n P: RefUnwindSafe,",1,["maplibre::render::render_phase::draw::DrawState"]],["impl<I> RefUnwindSafe for RenderPhase<I>where\n I: RefUnwindSafe,",1,["maplibre::render::render_phase::RenderPhase"]],["impl !RefUnwindSafe for LayerItem",1,["maplibre::render::render_phase::LayerItem"]],["impl !RefUnwindSafe for TileMaskItem",1,["maplibre::render::render_phase::TileMaskItem"]],["impl RefUnwindSafe for WgpuSettings",1,["maplibre::render::settings::WgpuSettings"]],["impl RefUnwindSafe for SurfaceType",1,["maplibre::render::settings::SurfaceType"]],["impl RefUnwindSafe for Msaa",1,["maplibre::render::settings::Msaa"]],["impl RefUnwindSafe for RendererSettings",1,["maplibre::render::settings::RendererSettings"]],["impl<B> RefUnwindSafe for BackingBuffer<B>where\n B: RefUnwindSafe,",1,["maplibre::render::tile_view_pattern::pattern::BackingBuffer"]],["impl<Q, B> RefUnwindSafe for TileViewPattern<Q, B>where\n B: RefUnwindSafe,\n Q: RefUnwindSafe,",1,["maplibre::render::tile_view_pattern::pattern::TileViewPattern"]],["impl RefUnwindSafe for SourceShapes",1,["maplibre::render::tile_view_pattern::SourceShapes"]],["impl RefUnwindSafe for ViewTile",1,["maplibre::render::tile_view_pattern::ViewTile"]],["impl RefUnwindSafe for TileShape",1,["maplibre::render::tile_view_pattern::TileShape"]],["impl<Q> RefUnwindSafe for QueryHasTile<Q>where\n Q: RefUnwindSafe,",1,["maplibre::render::tile_view_pattern::QueryHasTile"]],["impl !RefUnwindSafe for ViewTileSources",1,["maplibre::render::tile_view_pattern::ViewTileSources"]],["impl RefUnwindSafe for RenderStageLabel",1,["maplibre::render::RenderStageLabel"]],["impl !RefUnwindSafe for RenderResources",1,["maplibre::render::RenderResources"]],["impl !RefUnwindSafe for Renderer",1,["maplibre::render::Renderer"]],["impl !RefUnwindSafe for MaskPipeline",1,["maplibre::render::MaskPipeline"]],["impl RefUnwindSafe for RenderPlugin",1,["maplibre::render::RenderPlugin"]],["impl RefUnwindSafe for BackgroundPaint",1,["maplibre::style::layer::BackgroundPaint"]],["impl RefUnwindSafe for FillPaint",1,["maplibre::style::layer::FillPaint"]],["impl RefUnwindSafe for LinePaint",1,["maplibre::style::layer::LinePaint"]],["impl RefUnwindSafe for LayerPaint",1,["maplibre::style::layer::LayerPaint"]],["impl RefUnwindSafe for StyleLayer",1,["maplibre::style::layer::StyleLayer"]],["impl RefUnwindSafe for RasterResampling",1,["maplibre::style::raster::RasterResampling"]],["impl RefUnwindSafe for RasterLayer",1,["maplibre::style::raster::RasterLayer"]],["impl RefUnwindSafe for TileAddressingScheme",1,["maplibre::style::source::TileAddressingScheme"]],["impl RefUnwindSafe for VectorSource",1,["maplibre::style::source::VectorSource"]],["impl RefUnwindSafe for Source",1,["maplibre::style::source::Source"]],["impl RefUnwindSafe for Style",1,["maplibre::style::style::Style"]],["impl RefUnwindSafe for FPSMeter",1,["maplibre::util::fps_meter::FPSMeter"]],["impl<S> RefUnwindSafe for Plane<S>where\n S: RefUnwindSafe,",1,["maplibre::util::math::Plane"]],["impl<S> RefUnwindSafe for Aabb2<S>where\n S: RefUnwindSafe,",1,["maplibre::util::math::Aabb2"]],["impl<S> RefUnwindSafe for Aabb3<S>where\n S: RefUnwindSafe,",1,["maplibre::util::math::Aabb3"]],["impl RefUnwindSafe for FloatOrd",1,["maplibre::util::math::FloatOrd"]],["impl<T> RefUnwindSafe for ChangeObserver<T>where\n T: RefUnwindSafe,",1,["maplibre::util::ChangeObserver"]],["impl RefUnwindSafe for WindowSize",1,["maplibre::window::WindowSize"]],["impl RefUnwindSafe for NopStage",1,["maplibre::schedule::NopStage"]],["impl<const I: usize, S> RefUnwindSafe for MultiStage<I, S>where\n S: RefUnwindSafe,",1,["maplibre::schedule::MultiStage"]],["impl !RefUnwindSafe for Schedule",1,["maplibre::schedule::Schedule"]],["impl RefUnwindSafe for SendEventError",1,["maplibre::event_loop::SendEventError"]],["impl<E> RefUnwindSafe for Kernel<E>where\n <E as Environment>::AsyncProcedureCall: RefUnwindSafe,\n <E as Environment>::HttpClient: RefUnwindSafe,\n <E as Environment>::MapWindowConfig: RefUnwindSafe,\n <E as Environment>::Scheduler: RefUnwindSafe,",1,["maplibre::kernel::Kernel"]],["impl<E> RefUnwindSafe for KernelBuilder<E>where\n <E as Environment>::AsyncProcedureCall: RefUnwindSafe,\n <E as Environment>::HttpClient: RefUnwindSafe,\n <E as Environment>::MapWindowConfig: RefUnwindSafe,\n <E as Environment>::Scheduler: RefUnwindSafe,",1,["maplibre::kernel::KernelBuilder"]],["impl RefUnwindSafe for MapError",1,["maplibre::map::MapError"]],["impl !RefUnwindSafe for CurrentMapContext",1,["maplibre::map::CurrentMapContext"]],["impl<E> !RefUnwindSafe for Map<E>",1,["maplibre::map::Map"]],["impl !RefUnwindSafe for Resources",1,["maplibre::tcs::resources::Resources"]],["impl<F> RefUnwindSafe for FunctionSystem<F>where\n F: RefUnwindSafe,",1,["maplibre::tcs::system::function::FunctionSystem"]],["impl !RefUnwindSafe for SystemStage",1,["maplibre::tcs::system::stage::SystemStage"]],["impl !RefUnwindSafe for SystemContainer",1,["maplibre::tcs::system::SystemContainer"]],["impl RefUnwindSafe for Tile",1,["maplibre::tcs::tiles::Tile"]],["impl !RefUnwindSafe for Tiles",1,["maplibre::tcs::tiles::Tiles"]],["impl<'t> !RefUnwindSafe for TileSpawnResult<'t>",1,["maplibre::tcs::tiles::TileSpawnResult"]],["impl RefUnwindSafe for GlobalQueryState",1,["maplibre::tcs::tiles::GlobalQueryState"]],["impl<'s> RefUnwindSafe for EphemeralQueryState<'s>",1,["maplibre::tcs::tiles::EphemeralQueryState"]],["impl !RefUnwindSafe for World",1,["maplibre::tcs::world::World"]],["impl RefUnwindSafe for GlobalQueryState",1,["maplibre::tcs::GlobalQueryState"]],["impl<'s> RefUnwindSafe for EphemeralQueryState<'s>",1,["maplibre::tcs::EphemeralQueryState"]],["impl RefUnwindSafe for ViewState",1,["maplibre::view_state::ViewState"]],["impl RefUnwindSafe for DebugPassNode",1,["maplibre::debug::debug_pass::DebugPassNode"]],["impl RefUnwindSafe for SetDebugPipeline",1,["maplibre::debug::render_commands::SetDebugPipeline"]],["impl RefUnwindSafe for DrawDebugOutline",1,["maplibre::debug::render_commands::DrawDebugOutline"]],["impl !RefUnwindSafe for DebugPipeline",1,["maplibre::debug::DebugPipeline"]],["impl !RefUnwindSafe for TileDebugItem",1,["maplibre::debug::TileDebugItem"]],["impl RefUnwindSafe for DebugPlugin",1,["maplibre::debug::DebugPlugin"]],["impl<E, T> RefUnwindSafe for PopulateWorldSystem<E, T>where\n T: RefUnwindSafe,\n <E as Environment>::AsyncProcedureCall: RefUnwindSafe,\n <E as Environment>::HttpClient: RefUnwindSafe,\n <E as Environment>::MapWindowConfig: RefUnwindSafe,\n <E as Environment>::Scheduler: RefUnwindSafe,",1,["maplibre::raster::populate_world_system::PopulateWorldSystem"]],["impl !RefUnwindSafe for ProcessRasterError",1,["maplibre::raster::process_raster::ProcessRasterError"]],["impl RefUnwindSafe for RasterTileRequest",1,["maplibre::raster::process_raster::RasterTileRequest"]],["impl<T, C> RefUnwindSafe for ProcessRasterContext<T, C>where\n C: RefUnwindSafe,\n T: RefUnwindSafe,",1,["maplibre::raster::process_raster::ProcessRasterContext"]],["impl RefUnwindSafe for SetRasterTilePipeline",1,["maplibre::raster::render_commands::SetRasterTilePipeline"]],["impl<const I: usize> RefUnwindSafe for SetRasterViewBindGroup<I>",1,["maplibre::raster::render_commands::SetRasterViewBindGroup"]],["impl RefUnwindSafe for DrawRasterTile",1,["maplibre::raster::render_commands::DrawRasterTile"]],["impl<E, T> RefUnwindSafe for RequestSystem<E, T>where\n T: RefUnwindSafe,\n <E as Environment>::AsyncProcedureCall: RefUnwindSafe,\n <E as Environment>::HttpClient: RefUnwindSafe,\n <E as Environment>::MapWindowConfig: RefUnwindSafe,\n <E as Environment>::Scheduler: RefUnwindSafe,",1,["maplibre::raster::request_system::RequestSystem"]],["impl !RefUnwindSafe for RasterResources",1,["maplibre::raster::resource::raster::RasterResources"]],["impl RefUnwindSafe for RasterMessageTag",1,["maplibre::raster::transferables::RasterMessageTag"]],["impl RefUnwindSafe for DefaultLayerRaster",1,["maplibre::raster::transferables::DefaultLayerRaster"]],["impl RefUnwindSafe for DefaultLayerRasterMissing",1,["maplibre::raster::transferables::DefaultLayerRasterMissing"]],["impl RefUnwindSafe for DefaultRasterTransferables",1,["maplibre::raster::transferables::DefaultRasterTransferables"]],["impl<T> RefUnwindSafe for RasterPlugin<T>where\n T: RefUnwindSafe,",1,["maplibre::raster::RasterPlugin"]],["impl RefUnwindSafe for AvailableRasterLayerData",1,["maplibre::raster::AvailableRasterLayerData"]],["impl RefUnwindSafe for MissingRasterLayerData",1,["maplibre::raster::MissingRasterLayerData"]],["impl RefUnwindSafe for RasterLayerData",1,["maplibre::raster::RasterLayerData"]],["impl RefUnwindSafe for RasterLayersDataComponent",1,["maplibre::raster::RasterLayersDataComponent"]],["impl<E, T> RefUnwindSafe for PopulateWorldSystem<E, T>where\n T: RefUnwindSafe,\n <E as Environment>::AsyncProcedureCall: RefUnwindSafe,\n <E as Environment>::HttpClient: RefUnwindSafe,\n <E as Environment>::MapWindowConfig: RefUnwindSafe,\n <E as Environment>::Scheduler: RefUnwindSafe,",1,["maplibre::vector::populate_world_system::PopulateWorldSystem"]],["impl !RefUnwindSafe for ProcessVectorError",1,["maplibre::vector::process_vector::ProcessVectorError"]],["impl RefUnwindSafe for VectorTileRequest",1,["maplibre::vector::process_vector::VectorTileRequest"]],["impl<T, C> RefUnwindSafe for ProcessVectorContext<T, C>where\n C: RefUnwindSafe,\n T: RefUnwindSafe,",1,["maplibre::vector::process_vector::ProcessVectorContext"]],["impl RefUnwindSafe for SetVectorTilePipeline",1,["maplibre::vector::render_commands::SetVectorTilePipeline"]],["impl RefUnwindSafe for DrawVectorTile",1,["maplibre::vector::render_commands::DrawVectorTile"]],["impl<E, T> RefUnwindSafe for RequestSystem<E, T>where\n T: RefUnwindSafe,\n <E as Environment>::AsyncProcedureCall: RefUnwindSafe,\n <E as Environment>::HttpClient: RefUnwindSafe,\n <E as Environment>::MapWindowConfig: RefUnwindSafe,\n <E as Environment>::Scheduler: RefUnwindSafe,",1,["maplibre::vector::request_system::RequestSystem"]],["impl<Q, B, V, I, TM, FM> RefUnwindSafe for BufferPool<Q, B, V, I, TM, FM>where\n B: RefUnwindSafe,\n FM: RefUnwindSafe,\n I: RefUnwindSafe,\n Q: RefUnwindSafe,\n TM: RefUnwindSafe,\n V: RefUnwindSafe,",1,["maplibre::vector::resource::buffer_pool::BufferPool"]],["impl RefUnwindSafe for BackingBufferType",1,["maplibre::vector::resource::buffer_pool::BackingBufferType"]],["impl<B> RefUnwindSafe for BackingBuffer<B>where\n B: RefUnwindSafe,",1,["maplibre::vector::resource::buffer_pool::BackingBuffer"]],["impl RefUnwindSafe for IndexEntry",1,["maplibre::vector::resource::buffer_pool::IndexEntry"]],["impl RefUnwindSafe for RingIndexEntry",1,["maplibre::vector::resource::buffer_pool::RingIndexEntry"]],["impl RefUnwindSafe for RingIndex",1,["maplibre::vector::resource::buffer_pool::RingIndex"]],["impl RefUnwindSafe for VectorMessageTag",1,["maplibre::vector::transferables::VectorMessageTag"]],["impl RefUnwindSafe for DefaultTileTessellated",1,["maplibre::vector::transferables::DefaultTileTessellated"]],["impl RefUnwindSafe for DefaultLayerMissing",1,["maplibre::vector::transferables::DefaultLayerMissing"]],["impl RefUnwindSafe for DefaultLayerTesselated",1,["maplibre::vector::transferables::DefaultLayerTesselated"]],["impl RefUnwindSafe for DefaultLayerIndexed",1,["maplibre::vector::transferables::DefaultLayerIndexed"]],["impl RefUnwindSafe for DefaultVectorTransferables",1,["maplibre::vector::transferables::DefaultVectorTransferables"]],["impl !RefUnwindSafe for VectorPipeline",1,["maplibre::vector::VectorPipeline"]],["impl<T> RefUnwindSafe for VectorPlugin<T>where\n T: RefUnwindSafe,",1,["maplibre::vector::VectorPlugin"]],["impl RefUnwindSafe for VectorTilesDone",1,["maplibre::vector::VectorTilesDone"]],["impl RefUnwindSafe for AvailableVectorLayerData",1,["maplibre::vector::AvailableVectorLayerData"]],["impl RefUnwindSafe for MissingVectorLayerData",1,["maplibre::vector::MissingVectorLayerData"]],["impl RefUnwindSafe for VectorLayerData",1,["maplibre::vector::VectorLayerData"]],["impl RefUnwindSafe for VectorLayersDataComponent",1,["maplibre::vector::VectorLayersDataComponent"]]] +"maplibre":[["impl<I> !RefUnwindSafe for ZeroTessellator<I>",1,["maplibre::tessellation::zero_tessellator::ZeroTessellator"]],["impl RefUnwindSafe for VertexConstructor",1,["maplibre::tessellation::VertexConstructor"]],["impl<V, I> RefUnwindSafe for OverAlignedVertexBuffer<V, I>where\n I: RefUnwindSafe,\n V: RefUnwindSafe,",1,["maplibre::tessellation::OverAlignedVertexBuffer"]],["impl !RefUnwindSafe for MapContext",1,["maplibre::context::MapContext"]],["impl RefUnwindSafe for Quadkey",1,["maplibre::coords::Quadkey"]],["impl RefUnwindSafe for ZoomLevel",1,["maplibre::coords::ZoomLevel"]],["impl RefUnwindSafe for LatLon",1,["maplibre::coords::LatLon"]],["impl RefUnwindSafe for Zoom",1,["maplibre::coords::Zoom"]],["impl RefUnwindSafe for InnerCoords",1,["maplibre::coords::InnerCoords"]],["impl RefUnwindSafe for TileCoords",1,["maplibre::coords::TileCoords"]],["impl RefUnwindSafe for WorldTileCoords",1,["maplibre::coords::WorldTileCoords"]],["impl RefUnwindSafe for AlignedWorldTileCoords",1,["maplibre::coords::AlignedWorldTileCoords"]],["impl RefUnwindSafe for WorldCoords",1,["maplibre::coords::WorldCoords"]],["impl RefUnwindSafe for ViewRegion",1,["maplibre::coords::ViewRegion"]],["impl !RefUnwindSafe for MessageError",1,["maplibre::io::apc::MessageError"]],["impl !RefUnwindSafe for Message",1,["maplibre::io::apc::Message"]],["impl RefUnwindSafe for Input",1,["maplibre::io::apc::Input"]],["impl RefUnwindSafe for SendError",1,["maplibre::io::apc::SendError"]],["impl !RefUnwindSafe for ProcedureError",1,["maplibre::io::apc::ProcedureError"]],["impl !RefUnwindSafe for CallError",1,["maplibre::io::apc::CallError"]],["impl RefUnwindSafe for SchedulerContext",1,["maplibre::io::apc::SchedulerContext"]],["impl<K, S> !RefUnwindSafe for SchedulerAsyncProcedureCall<K, S>",1,["maplibre::io::apc::SchedulerAsyncProcedureCall"]],["impl RefUnwindSafe for GeometryIndex",1,["maplibre::io::geometry_index::GeometryIndex"]],["impl RefUnwindSafe for TileIndex",1,["maplibre::io::geometry_index::TileIndex"]],["impl<T> RefUnwindSafe for IndexedGeometry<T>where\n T: RefUnwindSafe,",1,["maplibre::io::geometry_index::IndexedGeometry"]],["impl<T> RefUnwindSafe for ExactGeometry<T>where\n T: RefUnwindSafe,",1,["maplibre::io::geometry_index::ExactGeometry"]],["impl RefUnwindSafe for IndexProcessor",1,["maplibre::io::geometry_index::IndexProcessor"]],["impl !RefUnwindSafe for ScheduleError",1,["maplibre::io::scheduler::ScheduleError"]],["impl RefUnwindSafe for NopScheduler",1,["maplibre::io::scheduler::NopScheduler"]],["impl<HC> RefUnwindSafe for HttpSourceClient<HC>where\n HC: RefUnwindSafe,",1,["maplibre::io::source_client::HttpSourceClient"]],["impl !RefUnwindSafe for SourceFetchError",1,["maplibre::io::source_client::SourceFetchError"]],["impl<HC> RefUnwindSafe for SourceClient<HC>where\n HC: RefUnwindSafe,",1,["maplibre::io::source_client::SourceClient"]],["impl RefUnwindSafe for TessellateSource",1,["maplibre::io::source_type::TessellateSource"]],["impl RefUnwindSafe for RasterSource",1,["maplibre::io::source_type::RasterSource"]],["impl RefUnwindSafe for SourceType",1,["maplibre::io::source_type::SourceType"]],["impl !RefUnwindSafe for ReqwestHttpClient",1,["maplibre::platform::noweb::http_client::ReqwestHttpClient"]],["impl RefUnwindSafe for TokioScheduler",1,["maplibre::platform::noweb::scheduler::TokioScheduler"]],["impl RefUnwindSafe for ReqwestOffscreenKernelEnvironment",1,["maplibre::platform::noweb::ReqwestOffscreenKernelEnvironment"]],["impl !RefUnwindSafe for RunSubGraph",1,["maplibre::render::graph::context::RunSubGraph"]],["impl<'a> !RefUnwindSafe for RenderGraphContext<'a>",1,["maplibre::render::graph::context::RenderGraphContext"]],["impl RefUnwindSafe for RunSubGraphError",1,["maplibre::render::graph::context::RunSubGraphError"]],["impl RefUnwindSafe for OutputSlotError",1,["maplibre::render::graph::context::OutputSlotError"]],["impl RefUnwindSafe for InputSlotError",1,["maplibre::render::graph::context::InputSlotError"]],["impl RefUnwindSafe for Edge",1,["maplibre::render::graph::edge::Edge"]],["impl RefUnwindSafe for EdgeExistence",1,["maplibre::render::graph::edge::EdgeExistence"]],["impl !RefUnwindSafe for RenderGraph",1,["maplibre::render::graph::graph::RenderGraph"]],["impl RefUnwindSafe for GraphInputNode",1,["maplibre::render::graph::graph::GraphInputNode"]],["impl<'d> !RefUnwindSafe for RenderContext<'d>",1,["maplibre::render::graph::node::RenderContext"]],["impl RefUnwindSafe for NodeId",1,["maplibre::render::graph::node::NodeId"]],["impl RefUnwindSafe for NodeRunError",1,["maplibre::render::graph::node::NodeRunError"]],["impl RefUnwindSafe for Edges",1,["maplibre::render::graph::node::Edges"]],["impl !RefUnwindSafe for NodeState",1,["maplibre::render::graph::node::NodeState"]],["impl RefUnwindSafe for NodeLabel",1,["maplibre::render::graph::node::NodeLabel"]],["impl RefUnwindSafe for EmptyNode",1,["maplibre::render::graph::node::EmptyNode"]],["impl !RefUnwindSafe for SlotValue",1,["maplibre::render::graph::node_slot::SlotValue"]],["impl RefUnwindSafe for SlotType",1,["maplibre::render::graph::node_slot::SlotType"]],["impl RefUnwindSafe for SlotLabel",1,["maplibre::render::graph::node_slot::SlotLabel"]],["impl RefUnwindSafe for SlotInfo",1,["maplibre::render::graph::node_slot::SlotInfo"]],["impl RefUnwindSafe for SlotInfos",1,["maplibre::render::graph::node_slot::SlotInfos"]],["impl RefUnwindSafe for RenderGraphError",1,["maplibre::render::graph::RenderGraphError"]],["impl<B> RefUnwindSafe for BackingBufferDescriptor<B>where\n B: RefUnwindSafe,",1,["maplibre::render::resource::buffer::BackingBufferDescriptor"]],["impl RefUnwindSafe for RenderPipelineDescriptor",1,["maplibre::render::resource::pipeline::RenderPipelineDescriptor"]],["impl RefUnwindSafe for VertexBufferLayout",1,["maplibre::render::resource::shader::VertexBufferLayout"]],["impl RefUnwindSafe for FragmentState",1,["maplibre::render::resource::shader::FragmentState"]],["impl RefUnwindSafe for VertexState",1,["maplibre::render::resource::shader::VertexState"]],["impl RefUnwindSafe for BufferDimensions",1,["maplibre::render::resource::surface::BufferDimensions"]],["impl !RefUnwindSafe for WindowHead",1,["maplibre::render::resource::surface::WindowHead"]],["impl !RefUnwindSafe for BufferedTextureHead",1,["maplibre::render::resource::surface::BufferedTextureHead"]],["impl !RefUnwindSafe for Head",1,["maplibre::render::resource::surface::Head"]],["impl !RefUnwindSafe for Surface",1,["maplibre::render::resource::surface::Surface"]],["impl !RefUnwindSafe for TextureView",1,["maplibre::render::resource::texture::TextureView"]],["impl !RefUnwindSafe for Texture",1,["maplibre::render::resource::texture::Texture"]],["impl RefUnwindSafe for TilePipeline",1,["maplibre::render::resource::tile_pipeline::TilePipeline"]],["impl<'a> !RefUnwindSafe for TrackedRenderPass<'a>",1,["maplibre::render::resource::tracked_render_pass::TrackedRenderPass"]],["impl RefUnwindSafe for GraphRunnerSystem",1,["maplibre::render::systems::graph_runner_system::GraphRunnerSystem"]],["impl RefUnwindSafe for ResourceSystem",1,["maplibre::render::systems::resource_system::ResourceSystem"]],["impl RefUnwindSafe for RenderGraphRunner",1,["maplibre::render::graph_runner::RenderGraphRunner"]],["impl RefUnwindSafe for RenderGraphRunnerError",1,["maplibre::render::graph_runner::RenderGraphRunnerError"]],["impl RefUnwindSafe for MainPassNode",1,["maplibre::render::main_pass::MainPassNode"]],["impl RefUnwindSafe for MainPassDriverNode",1,["maplibre::render::main_pass::MainPassDriverNode"]],["impl RefUnwindSafe for TileMaskShader",1,["maplibre::render::shaders::TileMaskShader"]],["impl RefUnwindSafe for VectorTileShader",1,["maplibre::render::shaders::VectorTileShader"]],["impl RefUnwindSafe for ShaderCamera",1,["maplibre::render::shaders::ShaderCamera"]],["impl RefUnwindSafe for ShaderGlobals",1,["maplibre::render::shaders::ShaderGlobals"]],["impl RefUnwindSafe for ShaderVertex",1,["maplibre::render::shaders::ShaderVertex"]],["impl RefUnwindSafe for ShaderFeatureStyle",1,["maplibre::render::shaders::ShaderFeatureStyle"]],["impl RefUnwindSafe for ShaderLayerMetadata",1,["maplibre::render::shaders::ShaderLayerMetadata"]],["impl RefUnwindSafe for ShaderTileMetadata",1,["maplibre::render::shaders::ShaderTileMetadata"]],["impl RefUnwindSafe for ShaderTextureVertex",1,["maplibre::render::shaders::ShaderTextureVertex"]],["impl RefUnwindSafe for RasterTileShader",1,["maplibre::render::shaders::RasterTileShader"]],["impl RefUnwindSafe for RendererBuilder",1,["maplibre::render::builder::RendererBuilder"]],["impl !RefUnwindSafe for InitializationResult",1,["maplibre::render::builder::InitializationResult"]],["impl RefUnwindSafe for UninitializedRenderer",1,["maplibre::render::builder::UninitializedRenderer"]],["impl !RefUnwindSafe for InitializedRenderer",1,["maplibre::render::builder::InitializedRenderer"]],["impl RefUnwindSafe for ViewProjection",1,["maplibre::render::camera::ViewProjection"]],["impl RefUnwindSafe for InvertedViewProjection",1,["maplibre::render::camera::InvertedViewProjection"]],["impl RefUnwindSafe for ModelViewProjection",1,["maplibre::render::camera::ModelViewProjection"]],["impl RefUnwindSafe for Camera",1,["maplibre::render::camera::Camera"]],["impl RefUnwindSafe for EdgeInsets",1,["maplibre::render::camera::EdgeInsets"]],["impl RefUnwindSafe for Perspective",1,["maplibre::render::camera::Perspective"]],["impl RefUnwindSafe for RenderError",1,["maplibre::render::error::RenderError"]],["impl<T> RefUnwindSafe for Eventually<T>where\n T: RefUnwindSafe,",1,["maplibre::render::eventually::Eventually"]],["impl RefUnwindSafe for SetMaskPipeline",1,["maplibre::render::render_commands::SetMaskPipeline"]],["impl RefUnwindSafe for DrawMask",1,["maplibre::render::render_commands::DrawMask"]],["impl RefUnwindSafe for RenderCommandResult",1,["maplibre::render::render_phase::draw::RenderCommandResult"]],["impl<C, P> RefUnwindSafe for DrawState<C, P>where\n C: RefUnwindSafe,\n P: RefUnwindSafe,",1,["maplibre::render::render_phase::draw::DrawState"]],["impl<I> RefUnwindSafe for RenderPhase<I>where\n I: RefUnwindSafe,",1,["maplibre::render::render_phase::RenderPhase"]],["impl !RefUnwindSafe for LayerItem",1,["maplibre::render::render_phase::LayerItem"]],["impl !RefUnwindSafe for TileMaskItem",1,["maplibre::render::render_phase::TileMaskItem"]],["impl RefUnwindSafe for WgpuSettings",1,["maplibre::render::settings::WgpuSettings"]],["impl RefUnwindSafe for SurfaceType",1,["maplibre::render::settings::SurfaceType"]],["impl RefUnwindSafe for Msaa",1,["maplibre::render::settings::Msaa"]],["impl RefUnwindSafe for RendererSettings",1,["maplibre::render::settings::RendererSettings"]],["impl<B> RefUnwindSafe for BackingBuffer<B>where\n B: RefUnwindSafe,",1,["maplibre::render::tile_view_pattern::pattern::BackingBuffer"]],["impl<Q, B> RefUnwindSafe for TileViewPattern<Q, B>where\n B: RefUnwindSafe,\n Q: RefUnwindSafe,",1,["maplibre::render::tile_view_pattern::pattern::TileViewPattern"]],["impl RefUnwindSafe for SourceShapes",1,["maplibre::render::tile_view_pattern::SourceShapes"]],["impl RefUnwindSafe for ViewTile",1,["maplibre::render::tile_view_pattern::ViewTile"]],["impl RefUnwindSafe for TileShape",1,["maplibre::render::tile_view_pattern::TileShape"]],["impl<Q> RefUnwindSafe for QueryHasTile<Q>where\n Q: RefUnwindSafe,",1,["maplibre::render::tile_view_pattern::QueryHasTile"]],["impl !RefUnwindSafe for ViewTileSources",1,["maplibre::render::tile_view_pattern::ViewTileSources"]],["impl RefUnwindSafe for ViewState",1,["maplibre::render::view_state::ViewState"]],["impl RefUnwindSafe for RenderStageLabel",1,["maplibre::render::RenderStageLabel"]],["impl !RefUnwindSafe for RenderResources",1,["maplibre::render::RenderResources"]],["impl !RefUnwindSafe for Renderer",1,["maplibre::render::Renderer"]],["impl !RefUnwindSafe for MaskPipeline",1,["maplibre::render::MaskPipeline"]],["impl RefUnwindSafe for RenderPlugin",1,["maplibre::render::RenderPlugin"]],["impl RefUnwindSafe for BackgroundPaint",1,["maplibre::style::layer::BackgroundPaint"]],["impl RefUnwindSafe for FillPaint",1,["maplibre::style::layer::FillPaint"]],["impl RefUnwindSafe for LinePaint",1,["maplibre::style::layer::LinePaint"]],["impl RefUnwindSafe for LayerPaint",1,["maplibre::style::layer::LayerPaint"]],["impl RefUnwindSafe for StyleLayer",1,["maplibre::style::layer::StyleLayer"]],["impl RefUnwindSafe for RasterResampling",1,["maplibre::style::raster::RasterResampling"]],["impl RefUnwindSafe for RasterLayer",1,["maplibre::style::raster::RasterLayer"]],["impl RefUnwindSafe for TileAddressingScheme",1,["maplibre::style::source::TileAddressingScheme"]],["impl RefUnwindSafe for VectorSource",1,["maplibre::style::source::VectorSource"]],["impl RefUnwindSafe for Source",1,["maplibre::style::source::Source"]],["impl RefUnwindSafe for Style",1,["maplibre::style::style::Style"]],["impl RefUnwindSafe for FPSMeter",1,["maplibre::util::fps_meter::FPSMeter"]],["impl<S> RefUnwindSafe for Plane<S>where\n S: RefUnwindSafe,",1,["maplibre::util::math::Plane"]],["impl<S> RefUnwindSafe for Aabb2<S>where\n S: RefUnwindSafe,",1,["maplibre::util::math::Aabb2"]],["impl<S> RefUnwindSafe for Aabb3<S>where\n S: RefUnwindSafe,",1,["maplibre::util::math::Aabb3"]],["impl RefUnwindSafe for FloatOrd",1,["maplibre::util::math::FloatOrd"]],["impl<T> RefUnwindSafe for ChangeObserver<T>where\n T: RefUnwindSafe,",1,["maplibre::util::ChangeObserver"]],["impl RefUnwindSafe for WindowSize",1,["maplibre::window::WindowSize"]],["impl RefUnwindSafe for NopStage",1,["maplibre::schedule::NopStage"]],["impl<const I: usize, S> RefUnwindSafe for MultiStage<I, S>where\n S: RefUnwindSafe,",1,["maplibre::schedule::MultiStage"]],["impl !RefUnwindSafe for Schedule",1,["maplibre::schedule::Schedule"]],["impl RefUnwindSafe for SendEventError",1,["maplibre::event_loop::SendEventError"]],["impl<E> RefUnwindSafe for Kernel<E>where\n <E as Environment>::AsyncProcedureCall: RefUnwindSafe,\n <E as Environment>::HttpClient: RefUnwindSafe,\n <E as Environment>::MapWindowConfig: RefUnwindSafe,\n <E as Environment>::Scheduler: RefUnwindSafe,",1,["maplibre::kernel::Kernel"]],["impl<E> RefUnwindSafe for KernelBuilder<E>where\n <E as Environment>::AsyncProcedureCall: RefUnwindSafe,\n <E as Environment>::HttpClient: RefUnwindSafe,\n <E as Environment>::MapWindowConfig: RefUnwindSafe,\n <E as Environment>::Scheduler: RefUnwindSafe,",1,["maplibre::kernel::KernelBuilder"]],["impl RefUnwindSafe for MapError",1,["maplibre::map::MapError"]],["impl !RefUnwindSafe for CurrentMapContext",1,["maplibre::map::CurrentMapContext"]],["impl<E> !RefUnwindSafe for Map<E>",1,["maplibre::map::Map"]],["impl !RefUnwindSafe for Resources",1,["maplibre::tcs::resources::Resources"]],["impl<F> RefUnwindSafe for FunctionSystem<F>where\n F: RefUnwindSafe,",1,["maplibre::tcs::system::function::FunctionSystem"]],["impl !RefUnwindSafe for SystemStage",1,["maplibre::tcs::system::stage::SystemStage"]],["impl !RefUnwindSafe for SystemContainer",1,["maplibre::tcs::system::SystemContainer"]],["impl RefUnwindSafe for Tile",1,["maplibre::tcs::tiles::Tile"]],["impl !RefUnwindSafe for Tiles",1,["maplibre::tcs::tiles::Tiles"]],["impl<'t> !RefUnwindSafe for TileSpawnResult<'t>",1,["maplibre::tcs::tiles::TileSpawnResult"]],["impl RefUnwindSafe for GlobalQueryState",1,["maplibre::tcs::tiles::GlobalQueryState"]],["impl<'s> RefUnwindSafe for EphemeralQueryState<'s>",1,["maplibre::tcs::tiles::EphemeralQueryState"]],["impl !RefUnwindSafe for World",1,["maplibre::tcs::world::World"]],["impl RefUnwindSafe for GlobalQueryState",1,["maplibre::tcs::GlobalQueryState"]],["impl<'s> RefUnwindSafe for EphemeralQueryState<'s>",1,["maplibre::tcs::EphemeralQueryState"]],["impl RefUnwindSafe for DebugPassNode",1,["maplibre::debug::debug_pass::DebugPassNode"]],["impl RefUnwindSafe for SetDebugPipeline",1,["maplibre::debug::render_commands::SetDebugPipeline"]],["impl RefUnwindSafe for DrawDebugOutline",1,["maplibre::debug::render_commands::DrawDebugOutline"]],["impl !RefUnwindSafe for DebugPipeline",1,["maplibre::debug::DebugPipeline"]],["impl !RefUnwindSafe for TileDebugItem",1,["maplibre::debug::TileDebugItem"]],["impl RefUnwindSafe for DebugPlugin",1,["maplibre::debug::DebugPlugin"]],["impl<E, T> RefUnwindSafe for PopulateWorldSystem<E, T>where\n T: RefUnwindSafe,\n <E as Environment>::AsyncProcedureCall: RefUnwindSafe,\n <E as Environment>::HttpClient: RefUnwindSafe,\n <E as Environment>::MapWindowConfig: RefUnwindSafe,\n <E as Environment>::Scheduler: RefUnwindSafe,",1,["maplibre::raster::populate_world_system::PopulateWorldSystem"]],["impl !RefUnwindSafe for ProcessRasterError",1,["maplibre::raster::process_raster::ProcessRasterError"]],["impl RefUnwindSafe for RasterTileRequest",1,["maplibre::raster::process_raster::RasterTileRequest"]],["impl<T, C> RefUnwindSafe for ProcessRasterContext<T, C>where\n C: RefUnwindSafe,\n T: RefUnwindSafe,",1,["maplibre::raster::process_raster::ProcessRasterContext"]],["impl RefUnwindSafe for SetRasterTilePipeline",1,["maplibre::raster::render_commands::SetRasterTilePipeline"]],["impl<const I: usize> RefUnwindSafe for SetRasterViewBindGroup<I>",1,["maplibre::raster::render_commands::SetRasterViewBindGroup"]],["impl RefUnwindSafe for DrawRasterTile",1,["maplibre::raster::render_commands::DrawRasterTile"]],["impl<E, T> RefUnwindSafe for RequestSystem<E, T>where\n T: RefUnwindSafe,\n <E as Environment>::AsyncProcedureCall: RefUnwindSafe,\n <E as Environment>::HttpClient: RefUnwindSafe,\n <E as Environment>::MapWindowConfig: RefUnwindSafe,\n <E as Environment>::Scheduler: RefUnwindSafe,",1,["maplibre::raster::request_system::RequestSystem"]],["impl !RefUnwindSafe for RasterResources",1,["maplibre::raster::resource::raster::RasterResources"]],["impl RefUnwindSafe for RasterMessageTag",1,["maplibre::raster::transferables::RasterMessageTag"]],["impl RefUnwindSafe for DefaultLayerRaster",1,["maplibre::raster::transferables::DefaultLayerRaster"]],["impl RefUnwindSafe for DefaultLayerRasterMissing",1,["maplibre::raster::transferables::DefaultLayerRasterMissing"]],["impl RefUnwindSafe for DefaultRasterTransferables",1,["maplibre::raster::transferables::DefaultRasterTransferables"]],["impl<T> RefUnwindSafe for RasterPlugin<T>where\n T: RefUnwindSafe,",1,["maplibre::raster::RasterPlugin"]],["impl RefUnwindSafe for AvailableRasterLayerData",1,["maplibre::raster::AvailableRasterLayerData"]],["impl RefUnwindSafe for MissingRasterLayerData",1,["maplibre::raster::MissingRasterLayerData"]],["impl RefUnwindSafe for RasterLayerData",1,["maplibre::raster::RasterLayerData"]],["impl RefUnwindSafe for RasterLayersDataComponent",1,["maplibre::raster::RasterLayersDataComponent"]],["impl<E, T> RefUnwindSafe for PopulateWorldSystem<E, T>where\n T: RefUnwindSafe,\n <E as Environment>::AsyncProcedureCall: RefUnwindSafe,\n <E as Environment>::HttpClient: RefUnwindSafe,\n <E as Environment>::MapWindowConfig: RefUnwindSafe,\n <E as Environment>::Scheduler: RefUnwindSafe,",1,["maplibre::vector::populate_world_system::PopulateWorldSystem"]],["impl !RefUnwindSafe for ProcessVectorError",1,["maplibre::vector::process_vector::ProcessVectorError"]],["impl RefUnwindSafe for VectorTileRequest",1,["maplibre::vector::process_vector::VectorTileRequest"]],["impl<T, C> RefUnwindSafe for ProcessVectorContext<T, C>where\n C: RefUnwindSafe,\n T: RefUnwindSafe,",1,["maplibre::vector::process_vector::ProcessVectorContext"]],["impl RefUnwindSafe for SetVectorTilePipeline",1,["maplibre::vector::render_commands::SetVectorTilePipeline"]],["impl RefUnwindSafe for DrawVectorTile",1,["maplibre::vector::render_commands::DrawVectorTile"]],["impl<E, T> RefUnwindSafe for RequestSystem<E, T>where\n T: RefUnwindSafe,\n <E as Environment>::AsyncProcedureCall: RefUnwindSafe,\n <E as Environment>::HttpClient: RefUnwindSafe,\n <E as Environment>::MapWindowConfig: RefUnwindSafe,\n <E as Environment>::Scheduler: RefUnwindSafe,",1,["maplibre::vector::request_system::RequestSystem"]],["impl<Q, B, V, I, TM, FM> RefUnwindSafe for BufferPool<Q, B, V, I, TM, FM>where\n B: RefUnwindSafe,\n FM: RefUnwindSafe,\n I: RefUnwindSafe,\n Q: RefUnwindSafe,\n TM: RefUnwindSafe,\n V: RefUnwindSafe,",1,["maplibre::vector::resource::buffer_pool::BufferPool"]],["impl RefUnwindSafe for BackingBufferType",1,["maplibre::vector::resource::buffer_pool::BackingBufferType"]],["impl<B> RefUnwindSafe for BackingBuffer<B>where\n B: RefUnwindSafe,",1,["maplibre::vector::resource::buffer_pool::BackingBuffer"]],["impl RefUnwindSafe for IndexEntry",1,["maplibre::vector::resource::buffer_pool::IndexEntry"]],["impl RefUnwindSafe for RingIndexEntry",1,["maplibre::vector::resource::buffer_pool::RingIndexEntry"]],["impl RefUnwindSafe for RingIndex",1,["maplibre::vector::resource::buffer_pool::RingIndex"]],["impl RefUnwindSafe for VectorMessageTag",1,["maplibre::vector::transferables::VectorMessageTag"]],["impl RefUnwindSafe for DefaultTileTessellated",1,["maplibre::vector::transferables::DefaultTileTessellated"]],["impl RefUnwindSafe for DefaultLayerMissing",1,["maplibre::vector::transferables::DefaultLayerMissing"]],["impl RefUnwindSafe for DefaultLayerTesselated",1,["maplibre::vector::transferables::DefaultLayerTesselated"]],["impl RefUnwindSafe for DefaultLayerIndexed",1,["maplibre::vector::transferables::DefaultLayerIndexed"]],["impl RefUnwindSafe for DefaultVectorTransferables",1,["maplibre::vector::transferables::DefaultVectorTransferables"]],["impl !RefUnwindSafe for VectorPipeline",1,["maplibre::vector::VectorPipeline"]],["impl<T> RefUnwindSafe for VectorPlugin<T>where\n T: RefUnwindSafe,",1,["maplibre::vector::VectorPlugin"]],["impl RefUnwindSafe for VectorTilesDone",1,["maplibre::vector::VectorTilesDone"]],["impl RefUnwindSafe for AvailableVectorLayerData",1,["maplibre::vector::AvailableVectorLayerData"]],["impl RefUnwindSafe for MissingVectorLayerData",1,["maplibre::vector::MissingVectorLayerData"]],["impl RefUnwindSafe for VectorLayerData",1,["maplibre::vector::VectorLayerData"]],["impl RefUnwindSafe for VectorLayersDataComponent",1,["maplibre::vector::VectorLayersDataComponent"]]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/docs/api/implementors/core/panic/unwind_safe/trait.UnwindSafe.js b/docs/api/implementors/core/panic/unwind_safe/trait.UnwindSafe.js index 32484cc0..3a0d1cd7 100644 --- a/docs/api/implementors/core/panic/unwind_safe/trait.UnwindSafe.js +++ b/docs/api/implementors/core/panic/unwind_safe/trait.UnwindSafe.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"maplibre":[["impl<I> UnwindSafe for ZeroTessellator<I>where\n I: UnwindSafe,",1,["maplibre::tessellation::zero_tessellator::ZeroTessellator"]],["impl UnwindSafe for VertexConstructor",1,["maplibre::tessellation::VertexConstructor"]],["impl<V, I> UnwindSafe for OverAlignedVertexBuffer<V, I>where\n I: UnwindSafe,\n V: UnwindSafe,",1,["maplibre::tessellation::OverAlignedVertexBuffer"]],["impl !UnwindSafe for MapContext",1,["maplibre::context::MapContext"]],["impl UnwindSafe for Quadkey",1,["maplibre::coords::Quadkey"]],["impl UnwindSafe for ZoomLevel",1,["maplibre::coords::ZoomLevel"]],["impl UnwindSafe for LatLon",1,["maplibre::coords::LatLon"]],["impl UnwindSafe for Zoom",1,["maplibre::coords::Zoom"]],["impl UnwindSafe for InnerCoords",1,["maplibre::coords::InnerCoords"]],["impl UnwindSafe for TileCoords",1,["maplibre::coords::TileCoords"]],["impl UnwindSafe for WorldTileCoords",1,["maplibre::coords::WorldTileCoords"]],["impl UnwindSafe for AlignedWorldTileCoords",1,["maplibre::coords::AlignedWorldTileCoords"]],["impl UnwindSafe for WorldCoords",1,["maplibre::coords::WorldCoords"]],["impl UnwindSafe for ViewRegion",1,["maplibre::coords::ViewRegion"]],["impl !UnwindSafe for MessageError",1,["maplibre::io::apc::MessageError"]],["impl !UnwindSafe for Message",1,["maplibre::io::apc::Message"]],["impl UnwindSafe for Input",1,["maplibre::io::apc::Input"]],["impl UnwindSafe for SendError",1,["maplibre::io::apc::SendError"]],["impl !UnwindSafe for ProcedureError",1,["maplibre::io::apc::ProcedureError"]],["impl !UnwindSafe for CallError",1,["maplibre::io::apc::CallError"]],["impl UnwindSafe for SchedulerContext",1,["maplibre::io::apc::SchedulerContext"]],["impl<K, S> !UnwindSafe for SchedulerAsyncProcedureCall<K, S>",1,["maplibre::io::apc::SchedulerAsyncProcedureCall"]],["impl UnwindSafe for GeometryIndex",1,["maplibre::io::geometry_index::GeometryIndex"]],["impl UnwindSafe for TileIndex",1,["maplibre::io::geometry_index::TileIndex"]],["impl<T> UnwindSafe for IndexedGeometry<T>where\n T: UnwindSafe,",1,["maplibre::io::geometry_index::IndexedGeometry"]],["impl<T> UnwindSafe for ExactGeometry<T>where\n T: UnwindSafe,",1,["maplibre::io::geometry_index::ExactGeometry"]],["impl UnwindSafe for IndexProcessor",1,["maplibre::io::geometry_index::IndexProcessor"]],["impl !UnwindSafe for ScheduleError",1,["maplibre::io::scheduler::ScheduleError"]],["impl UnwindSafe for NopScheduler",1,["maplibre::io::scheduler::NopScheduler"]],["impl<HC> UnwindSafe for HttpSourceClient<HC>where\n HC: UnwindSafe,",1,["maplibre::io::source_client::HttpSourceClient"]],["impl !UnwindSafe for SourceFetchError",1,["maplibre::io::source_client::SourceFetchError"]],["impl<HC> UnwindSafe for SourceClient<HC>where\n HC: UnwindSafe,",1,["maplibre::io::source_client::SourceClient"]],["impl UnwindSafe for TessellateSource",1,["maplibre::io::source_type::TessellateSource"]],["impl UnwindSafe for RasterSource",1,["maplibre::io::source_type::RasterSource"]],["impl UnwindSafe for SourceType",1,["maplibre::io::source_type::SourceType"]],["impl !UnwindSafe for ReqwestHttpClient",1,["maplibre::platform::noweb::http_client::ReqwestHttpClient"]],["impl UnwindSafe for TokioScheduler",1,["maplibre::platform::noweb::scheduler::TokioScheduler"]],["impl UnwindSafe for ReqwestOffscreenKernelEnvironment",1,["maplibre::platform::noweb::ReqwestOffscreenKernelEnvironment"]],["impl !UnwindSafe for RunSubGraph",1,["maplibre::render::graph::context::RunSubGraph"]],["impl<'a> !UnwindSafe for RenderGraphContext<'a>",1,["maplibre::render::graph::context::RenderGraphContext"]],["impl UnwindSafe for RunSubGraphError",1,["maplibre::render::graph::context::RunSubGraphError"]],["impl UnwindSafe for OutputSlotError",1,["maplibre::render::graph::context::OutputSlotError"]],["impl UnwindSafe for InputSlotError",1,["maplibre::render::graph::context::InputSlotError"]],["impl UnwindSafe for Edge",1,["maplibre::render::graph::edge::Edge"]],["impl UnwindSafe for EdgeExistence",1,["maplibre::render::graph::edge::EdgeExistence"]],["impl !UnwindSafe for RenderGraph",1,["maplibre::render::graph::graph::RenderGraph"]],["impl UnwindSafe for GraphInputNode",1,["maplibre::render::graph::graph::GraphInputNode"]],["impl<'d> !UnwindSafe for RenderContext<'d>",1,["maplibre::render::graph::node::RenderContext"]],["impl UnwindSafe for NodeId",1,["maplibre::render::graph::node::NodeId"]],["impl UnwindSafe for NodeRunError",1,["maplibre::render::graph::node::NodeRunError"]],["impl UnwindSafe for Edges",1,["maplibre::render::graph::node::Edges"]],["impl !UnwindSafe for NodeState",1,["maplibre::render::graph::node::NodeState"]],["impl UnwindSafe for NodeLabel",1,["maplibre::render::graph::node::NodeLabel"]],["impl UnwindSafe for EmptyNode",1,["maplibre::render::graph::node::EmptyNode"]],["impl !UnwindSafe for SlotValue",1,["maplibre::render::graph::node_slot::SlotValue"]],["impl UnwindSafe for SlotType",1,["maplibre::render::graph::node_slot::SlotType"]],["impl UnwindSafe for SlotLabel",1,["maplibre::render::graph::node_slot::SlotLabel"]],["impl UnwindSafe for SlotInfo",1,["maplibre::render::graph::node_slot::SlotInfo"]],["impl UnwindSafe for SlotInfos",1,["maplibre::render::graph::node_slot::SlotInfos"]],["impl UnwindSafe for RenderGraphError",1,["maplibre::render::graph::RenderGraphError"]],["impl<B> UnwindSafe for BackingBufferDescriptor<B>where\n B: UnwindSafe,",1,["maplibre::render::resource::buffer::BackingBufferDescriptor"]],["impl UnwindSafe for RenderPipelineDescriptor",1,["maplibre::render::resource::pipeline::RenderPipelineDescriptor"]],["impl UnwindSafe for VertexBufferLayout",1,["maplibre::render::resource::shader::VertexBufferLayout"]],["impl UnwindSafe for FragmentState",1,["maplibre::render::resource::shader::FragmentState"]],["impl UnwindSafe for VertexState",1,["maplibre::render::resource::shader::VertexState"]],["impl UnwindSafe for BufferDimensions",1,["maplibre::render::resource::surface::BufferDimensions"]],["impl !UnwindSafe for WindowHead",1,["maplibre::render::resource::surface::WindowHead"]],["impl !UnwindSafe for BufferedTextureHead",1,["maplibre::render::resource::surface::BufferedTextureHead"]],["impl !UnwindSafe for Head",1,["maplibre::render::resource::surface::Head"]],["impl !UnwindSafe for Surface",1,["maplibre::render::resource::surface::Surface"]],["impl !UnwindSafe for TextureView",1,["maplibre::render::resource::texture::TextureView"]],["impl !UnwindSafe for Texture",1,["maplibre::render::resource::texture::Texture"]],["impl UnwindSafe for TilePipeline",1,["maplibre::render::resource::tile_pipeline::TilePipeline"]],["impl<'a> !UnwindSafe for TrackedRenderPass<'a>",1,["maplibre::render::resource::tracked_render_pass::TrackedRenderPass"]],["impl UnwindSafe for GraphRunnerSystem",1,["maplibre::render::systems::graph_runner_system::GraphRunnerSystem"]],["impl UnwindSafe for ResourceSystem",1,["maplibre::render::systems::resource_system::ResourceSystem"]],["impl UnwindSafe for RenderGraphRunner",1,["maplibre::render::graph_runner::RenderGraphRunner"]],["impl UnwindSafe for RenderGraphRunnerError",1,["maplibre::render::graph_runner::RenderGraphRunnerError"]],["impl UnwindSafe for MainPassNode",1,["maplibre::render::main_pass::MainPassNode"]],["impl UnwindSafe for MainPassDriverNode",1,["maplibre::render::main_pass::MainPassDriverNode"]],["impl UnwindSafe for TileMaskShader",1,["maplibre::render::shaders::TileMaskShader"]],["impl UnwindSafe for VectorTileShader",1,["maplibre::render::shaders::VectorTileShader"]],["impl UnwindSafe for ShaderCamera",1,["maplibre::render::shaders::ShaderCamera"]],["impl UnwindSafe for ShaderGlobals",1,["maplibre::render::shaders::ShaderGlobals"]],["impl UnwindSafe for ShaderVertex",1,["maplibre::render::shaders::ShaderVertex"]],["impl UnwindSafe for ShaderFeatureStyle",1,["maplibre::render::shaders::ShaderFeatureStyle"]],["impl UnwindSafe for ShaderLayerMetadata",1,["maplibre::render::shaders::ShaderLayerMetadata"]],["impl UnwindSafe for ShaderTileMetadata",1,["maplibre::render::shaders::ShaderTileMetadata"]],["impl UnwindSafe for ShaderTextureVertex",1,["maplibre::render::shaders::ShaderTextureVertex"]],["impl UnwindSafe for RasterTileShader",1,["maplibre::render::shaders::RasterTileShader"]],["impl UnwindSafe for RendererBuilder",1,["maplibre::render::builder::RendererBuilder"]],["impl !UnwindSafe for InitializationResult",1,["maplibre::render::builder::InitializationResult"]],["impl UnwindSafe for UninitializedRenderer",1,["maplibre::render::builder::UninitializedRenderer"]],["impl !UnwindSafe for InitializedRenderer",1,["maplibre::render::builder::InitializedRenderer"]],["impl UnwindSafe for ViewProjection",1,["maplibre::render::camera::ViewProjection"]],["impl UnwindSafe for InvertedViewProjection",1,["maplibre::render::camera::InvertedViewProjection"]],["impl UnwindSafe for ModelViewProjection",1,["maplibre::render::camera::ModelViewProjection"]],["impl UnwindSafe for Camera",1,["maplibre::render::camera::Camera"]],["impl UnwindSafe for Perspective",1,["maplibre::render::camera::Perspective"]],["impl UnwindSafe for RenderError",1,["maplibre::render::error::RenderError"]],["impl<T> UnwindSafe for Eventually<T>where\n T: UnwindSafe,",1,["maplibre::render::eventually::Eventually"]],["impl UnwindSafe for SetMaskPipeline",1,["maplibre::render::render_commands::SetMaskPipeline"]],["impl UnwindSafe for DrawMask",1,["maplibre::render::render_commands::DrawMask"]],["impl UnwindSafe for RenderCommandResult",1,["maplibre::render::render_phase::draw::RenderCommandResult"]],["impl<C, P> UnwindSafe for DrawState<C, P>where\n C: UnwindSafe,\n P: UnwindSafe,",1,["maplibre::render::render_phase::draw::DrawState"]],["impl<I> UnwindSafe for RenderPhase<I>where\n I: UnwindSafe,",1,["maplibre::render::render_phase::RenderPhase"]],["impl !UnwindSafe for LayerItem",1,["maplibre::render::render_phase::LayerItem"]],["impl !UnwindSafe for TileMaskItem",1,["maplibre::render::render_phase::TileMaskItem"]],["impl UnwindSafe for WgpuSettings",1,["maplibre::render::settings::WgpuSettings"]],["impl UnwindSafe for SurfaceType",1,["maplibre::render::settings::SurfaceType"]],["impl UnwindSafe for Msaa",1,["maplibre::render::settings::Msaa"]],["impl UnwindSafe for RendererSettings",1,["maplibre::render::settings::RendererSettings"]],["impl<B> UnwindSafe for BackingBuffer<B>where\n B: UnwindSafe,",1,["maplibre::render::tile_view_pattern::pattern::BackingBuffer"]],["impl<Q, B> UnwindSafe for TileViewPattern<Q, B>where\n B: UnwindSafe,\n Q: UnwindSafe,",1,["maplibre::render::tile_view_pattern::pattern::TileViewPattern"]],["impl UnwindSafe for SourceShapes",1,["maplibre::render::tile_view_pattern::SourceShapes"]],["impl UnwindSafe for ViewTile",1,["maplibre::render::tile_view_pattern::ViewTile"]],["impl UnwindSafe for TileShape",1,["maplibre::render::tile_view_pattern::TileShape"]],["impl<Q> UnwindSafe for QueryHasTile<Q>where\n Q: UnwindSafe,",1,["maplibre::render::tile_view_pattern::QueryHasTile"]],["impl !UnwindSafe for ViewTileSources",1,["maplibre::render::tile_view_pattern::ViewTileSources"]],["impl UnwindSafe for RenderStageLabel",1,["maplibre::render::RenderStageLabel"]],["impl !UnwindSafe for RenderResources",1,["maplibre::render::RenderResources"]],["impl !UnwindSafe for Renderer",1,["maplibre::render::Renderer"]],["impl !UnwindSafe for MaskPipeline",1,["maplibre::render::MaskPipeline"]],["impl UnwindSafe for RenderPlugin",1,["maplibre::render::RenderPlugin"]],["impl UnwindSafe for BackgroundPaint",1,["maplibre::style::layer::BackgroundPaint"]],["impl UnwindSafe for FillPaint",1,["maplibre::style::layer::FillPaint"]],["impl UnwindSafe for LinePaint",1,["maplibre::style::layer::LinePaint"]],["impl UnwindSafe for LayerPaint",1,["maplibre::style::layer::LayerPaint"]],["impl UnwindSafe for StyleLayer",1,["maplibre::style::layer::StyleLayer"]],["impl UnwindSafe for RasterResampling",1,["maplibre::style::raster::RasterResampling"]],["impl UnwindSafe for RasterLayer",1,["maplibre::style::raster::RasterLayer"]],["impl UnwindSafe for TileAddressingScheme",1,["maplibre::style::source::TileAddressingScheme"]],["impl UnwindSafe for VectorSource",1,["maplibre::style::source::VectorSource"]],["impl UnwindSafe for Source",1,["maplibre::style::source::Source"]],["impl UnwindSafe for Style",1,["maplibre::style::style::Style"]],["impl UnwindSafe for FPSMeter",1,["maplibre::util::fps_meter::FPSMeter"]],["impl<S> UnwindSafe for Plane<S>where\n S: UnwindSafe,",1,["maplibre::util::math::Plane"]],["impl<S> UnwindSafe for Aabb2<S>where\n S: UnwindSafe,",1,["maplibre::util::math::Aabb2"]],["impl<S> UnwindSafe for Aabb3<S>where\n S: UnwindSafe,",1,["maplibre::util::math::Aabb3"]],["impl UnwindSafe for FloatOrd",1,["maplibre::util::math::FloatOrd"]],["impl<T> UnwindSafe for ChangeObserver<T>where\n T: UnwindSafe,",1,["maplibre::util::ChangeObserver"]],["impl UnwindSafe for WindowSize",1,["maplibre::window::WindowSize"]],["impl UnwindSafe for NopStage",1,["maplibre::schedule::NopStage"]],["impl<const I: usize, S> UnwindSafe for MultiStage<I, S>where\n S: UnwindSafe,",1,["maplibre::schedule::MultiStage"]],["impl !UnwindSafe for Schedule",1,["maplibre::schedule::Schedule"]],["impl UnwindSafe for SendEventError",1,["maplibre::event_loop::SendEventError"]],["impl<E> UnwindSafe for Kernel<E>where\n <E as Environment>::AsyncProcedureCall: UnwindSafe,\n <E as Environment>::HttpClient: UnwindSafe,\n <E as Environment>::MapWindowConfig: UnwindSafe,\n <E as Environment>::Scheduler: UnwindSafe,",1,["maplibre::kernel::Kernel"]],["impl<E> UnwindSafe for KernelBuilder<E>where\n <E as Environment>::AsyncProcedureCall: UnwindSafe,\n <E as Environment>::HttpClient: UnwindSafe,\n <E as Environment>::MapWindowConfig: UnwindSafe,\n <E as Environment>::Scheduler: UnwindSafe,",1,["maplibre::kernel::KernelBuilder"]],["impl UnwindSafe for MapError",1,["maplibre::map::MapError"]],["impl !UnwindSafe for CurrentMapContext",1,["maplibre::map::CurrentMapContext"]],["impl<E> !UnwindSafe for Map<E>",1,["maplibre::map::Map"]],["impl !UnwindSafe for Resources",1,["maplibre::tcs::resources::Resources"]],["impl<F> UnwindSafe for FunctionSystem<F>where\n F: UnwindSafe,",1,["maplibre::tcs::system::function::FunctionSystem"]],["impl !UnwindSafe for SystemStage",1,["maplibre::tcs::system::stage::SystemStage"]],["impl !UnwindSafe for SystemContainer",1,["maplibre::tcs::system::SystemContainer"]],["impl UnwindSafe for Tile",1,["maplibre::tcs::tiles::Tile"]],["impl !UnwindSafe for Tiles",1,["maplibre::tcs::tiles::Tiles"]],["impl<'t> !UnwindSafe for TileSpawnResult<'t>",1,["maplibre::tcs::tiles::TileSpawnResult"]],["impl UnwindSafe for GlobalQueryState",1,["maplibre::tcs::tiles::GlobalQueryState"]],["impl<'s> !UnwindSafe for EphemeralQueryState<'s>",1,["maplibre::tcs::tiles::EphemeralQueryState"]],["impl !UnwindSafe for World",1,["maplibre::tcs::world::World"]],["impl UnwindSafe for GlobalQueryState",1,["maplibre::tcs::GlobalQueryState"]],["impl<'s> !UnwindSafe for EphemeralQueryState<'s>",1,["maplibre::tcs::EphemeralQueryState"]],["impl UnwindSafe for ViewState",1,["maplibre::view_state::ViewState"]],["impl UnwindSafe for DebugPassNode",1,["maplibre::debug::debug_pass::DebugPassNode"]],["impl UnwindSafe for SetDebugPipeline",1,["maplibre::debug::render_commands::SetDebugPipeline"]],["impl UnwindSafe for DrawDebugOutline",1,["maplibre::debug::render_commands::DrawDebugOutline"]],["impl !UnwindSafe for DebugPipeline",1,["maplibre::debug::DebugPipeline"]],["impl !UnwindSafe for TileDebugItem",1,["maplibre::debug::TileDebugItem"]],["impl UnwindSafe for DebugPlugin",1,["maplibre::debug::DebugPlugin"]],["impl<E, T> UnwindSafe for PopulateWorldSystem<E, T>where\n T: UnwindSafe,\n <E as Environment>::AsyncProcedureCall: RefUnwindSafe,\n <E as Environment>::HttpClient: RefUnwindSafe,\n <E as Environment>::MapWindowConfig: RefUnwindSafe,\n <E as Environment>::Scheduler: RefUnwindSafe,",1,["maplibre::raster::populate_world_system::PopulateWorldSystem"]],["impl !UnwindSafe for ProcessRasterError",1,["maplibre::raster::process_raster::ProcessRasterError"]],["impl UnwindSafe for RasterTileRequest",1,["maplibre::raster::process_raster::RasterTileRequest"]],["impl<T, C> UnwindSafe for ProcessRasterContext<T, C>where\n C: UnwindSafe,\n T: UnwindSafe,",1,["maplibre::raster::process_raster::ProcessRasterContext"]],["impl UnwindSafe for SetRasterTilePipeline",1,["maplibre::raster::render_commands::SetRasterTilePipeline"]],["impl<const I: usize> UnwindSafe for SetRasterViewBindGroup<I>",1,["maplibre::raster::render_commands::SetRasterViewBindGroup"]],["impl UnwindSafe for DrawRasterTile",1,["maplibre::raster::render_commands::DrawRasterTile"]],["impl<E, T> UnwindSafe for RequestSystem<E, T>where\n T: UnwindSafe,\n <E as Environment>::AsyncProcedureCall: RefUnwindSafe,\n <E as Environment>::HttpClient: RefUnwindSafe,\n <E as Environment>::MapWindowConfig: RefUnwindSafe,\n <E as Environment>::Scheduler: RefUnwindSafe,",1,["maplibre::raster::request_system::RequestSystem"]],["impl !UnwindSafe for RasterResources",1,["maplibre::raster::resource::raster::RasterResources"]],["impl UnwindSafe for RasterMessageTag",1,["maplibre::raster::transferables::RasterMessageTag"]],["impl UnwindSafe for DefaultLayerRaster",1,["maplibre::raster::transferables::DefaultLayerRaster"]],["impl UnwindSafe for DefaultLayerRasterMissing",1,["maplibre::raster::transferables::DefaultLayerRasterMissing"]],["impl UnwindSafe for DefaultRasterTransferables",1,["maplibre::raster::transferables::DefaultRasterTransferables"]],["impl<T> UnwindSafe for RasterPlugin<T>where\n T: UnwindSafe,",1,["maplibre::raster::RasterPlugin"]],["impl UnwindSafe for AvailableRasterLayerData",1,["maplibre::raster::AvailableRasterLayerData"]],["impl UnwindSafe for MissingRasterLayerData",1,["maplibre::raster::MissingRasterLayerData"]],["impl UnwindSafe for RasterLayerData",1,["maplibre::raster::RasterLayerData"]],["impl UnwindSafe for RasterLayersDataComponent",1,["maplibre::raster::RasterLayersDataComponent"]],["impl<E, T> UnwindSafe for PopulateWorldSystem<E, T>where\n T: UnwindSafe,\n <E as Environment>::AsyncProcedureCall: RefUnwindSafe,\n <E as Environment>::HttpClient: RefUnwindSafe,\n <E as Environment>::MapWindowConfig: RefUnwindSafe,\n <E as Environment>::Scheduler: RefUnwindSafe,",1,["maplibre::vector::populate_world_system::PopulateWorldSystem"]],["impl !UnwindSafe for ProcessVectorError",1,["maplibre::vector::process_vector::ProcessVectorError"]],["impl UnwindSafe for VectorTileRequest",1,["maplibre::vector::process_vector::VectorTileRequest"]],["impl<T, C> UnwindSafe for ProcessVectorContext<T, C>where\n C: UnwindSafe,\n T: UnwindSafe,",1,["maplibre::vector::process_vector::ProcessVectorContext"]],["impl UnwindSafe for SetVectorTilePipeline",1,["maplibre::vector::render_commands::SetVectorTilePipeline"]],["impl UnwindSafe for DrawVectorTile",1,["maplibre::vector::render_commands::DrawVectorTile"]],["impl<E, T> UnwindSafe for RequestSystem<E, T>where\n T: UnwindSafe,\n <E as Environment>::AsyncProcedureCall: RefUnwindSafe,\n <E as Environment>::HttpClient: RefUnwindSafe,\n <E as Environment>::MapWindowConfig: RefUnwindSafe,\n <E as Environment>::Scheduler: RefUnwindSafe,",1,["maplibre::vector::request_system::RequestSystem"]],["impl<Q, B, V, I, TM, FM> UnwindSafe for BufferPool<Q, B, V, I, TM, FM>where\n B: UnwindSafe,\n FM: UnwindSafe,\n I: UnwindSafe,\n Q: UnwindSafe,\n TM: UnwindSafe,\n V: UnwindSafe,",1,["maplibre::vector::resource::buffer_pool::BufferPool"]],["impl UnwindSafe for BackingBufferType",1,["maplibre::vector::resource::buffer_pool::BackingBufferType"]],["impl<B> UnwindSafe for BackingBuffer<B>where\n B: UnwindSafe,",1,["maplibre::vector::resource::buffer_pool::BackingBuffer"]],["impl UnwindSafe for IndexEntry",1,["maplibre::vector::resource::buffer_pool::IndexEntry"]],["impl UnwindSafe for RingIndexEntry",1,["maplibre::vector::resource::buffer_pool::RingIndexEntry"]],["impl UnwindSafe for RingIndex",1,["maplibre::vector::resource::buffer_pool::RingIndex"]],["impl UnwindSafe for VectorMessageTag",1,["maplibre::vector::transferables::VectorMessageTag"]],["impl UnwindSafe for DefaultTileTessellated",1,["maplibre::vector::transferables::DefaultTileTessellated"]],["impl UnwindSafe for DefaultLayerMissing",1,["maplibre::vector::transferables::DefaultLayerMissing"]],["impl UnwindSafe for DefaultLayerTesselated",1,["maplibre::vector::transferables::DefaultLayerTesselated"]],["impl UnwindSafe for DefaultLayerIndexed",1,["maplibre::vector::transferables::DefaultLayerIndexed"]],["impl UnwindSafe for DefaultVectorTransferables",1,["maplibre::vector::transferables::DefaultVectorTransferables"]],["impl !UnwindSafe for VectorPipeline",1,["maplibre::vector::VectorPipeline"]],["impl<T> UnwindSafe for VectorPlugin<T>where\n T: UnwindSafe,",1,["maplibre::vector::VectorPlugin"]],["impl UnwindSafe for VectorTilesDone",1,["maplibre::vector::VectorTilesDone"]],["impl UnwindSafe for AvailableVectorLayerData",1,["maplibre::vector::AvailableVectorLayerData"]],["impl UnwindSafe for MissingVectorLayerData",1,["maplibre::vector::MissingVectorLayerData"]],["impl UnwindSafe for VectorLayerData",1,["maplibre::vector::VectorLayerData"]],["impl UnwindSafe for VectorLayersDataComponent",1,["maplibre::vector::VectorLayersDataComponent"]]] +"maplibre":[["impl<I> UnwindSafe for ZeroTessellator<I>where\n I: UnwindSafe,",1,["maplibre::tessellation::zero_tessellator::ZeroTessellator"]],["impl UnwindSafe for VertexConstructor",1,["maplibre::tessellation::VertexConstructor"]],["impl<V, I> UnwindSafe for OverAlignedVertexBuffer<V, I>where\n I: UnwindSafe,\n V: UnwindSafe,",1,["maplibre::tessellation::OverAlignedVertexBuffer"]],["impl !UnwindSafe for MapContext",1,["maplibre::context::MapContext"]],["impl UnwindSafe for Quadkey",1,["maplibre::coords::Quadkey"]],["impl UnwindSafe for ZoomLevel",1,["maplibre::coords::ZoomLevel"]],["impl UnwindSafe for LatLon",1,["maplibre::coords::LatLon"]],["impl UnwindSafe for Zoom",1,["maplibre::coords::Zoom"]],["impl UnwindSafe for InnerCoords",1,["maplibre::coords::InnerCoords"]],["impl UnwindSafe for TileCoords",1,["maplibre::coords::TileCoords"]],["impl UnwindSafe for WorldTileCoords",1,["maplibre::coords::WorldTileCoords"]],["impl UnwindSafe for AlignedWorldTileCoords",1,["maplibre::coords::AlignedWorldTileCoords"]],["impl UnwindSafe for WorldCoords",1,["maplibre::coords::WorldCoords"]],["impl UnwindSafe for ViewRegion",1,["maplibre::coords::ViewRegion"]],["impl !UnwindSafe for MessageError",1,["maplibre::io::apc::MessageError"]],["impl !UnwindSafe for Message",1,["maplibre::io::apc::Message"]],["impl UnwindSafe for Input",1,["maplibre::io::apc::Input"]],["impl UnwindSafe for SendError",1,["maplibre::io::apc::SendError"]],["impl !UnwindSafe for ProcedureError",1,["maplibre::io::apc::ProcedureError"]],["impl !UnwindSafe for CallError",1,["maplibre::io::apc::CallError"]],["impl UnwindSafe for SchedulerContext",1,["maplibre::io::apc::SchedulerContext"]],["impl<K, S> !UnwindSafe for SchedulerAsyncProcedureCall<K, S>",1,["maplibre::io::apc::SchedulerAsyncProcedureCall"]],["impl UnwindSafe for GeometryIndex",1,["maplibre::io::geometry_index::GeometryIndex"]],["impl UnwindSafe for TileIndex",1,["maplibre::io::geometry_index::TileIndex"]],["impl<T> UnwindSafe for IndexedGeometry<T>where\n T: UnwindSafe,",1,["maplibre::io::geometry_index::IndexedGeometry"]],["impl<T> UnwindSafe for ExactGeometry<T>where\n T: UnwindSafe,",1,["maplibre::io::geometry_index::ExactGeometry"]],["impl UnwindSafe for IndexProcessor",1,["maplibre::io::geometry_index::IndexProcessor"]],["impl !UnwindSafe for ScheduleError",1,["maplibre::io::scheduler::ScheduleError"]],["impl UnwindSafe for NopScheduler",1,["maplibre::io::scheduler::NopScheduler"]],["impl<HC> UnwindSafe for HttpSourceClient<HC>where\n HC: UnwindSafe,",1,["maplibre::io::source_client::HttpSourceClient"]],["impl !UnwindSafe for SourceFetchError",1,["maplibre::io::source_client::SourceFetchError"]],["impl<HC> UnwindSafe for SourceClient<HC>where\n HC: UnwindSafe,",1,["maplibre::io::source_client::SourceClient"]],["impl UnwindSafe for TessellateSource",1,["maplibre::io::source_type::TessellateSource"]],["impl UnwindSafe for RasterSource",1,["maplibre::io::source_type::RasterSource"]],["impl UnwindSafe for SourceType",1,["maplibre::io::source_type::SourceType"]],["impl !UnwindSafe for ReqwestHttpClient",1,["maplibre::platform::noweb::http_client::ReqwestHttpClient"]],["impl UnwindSafe for TokioScheduler",1,["maplibre::platform::noweb::scheduler::TokioScheduler"]],["impl UnwindSafe for ReqwestOffscreenKernelEnvironment",1,["maplibre::platform::noweb::ReqwestOffscreenKernelEnvironment"]],["impl !UnwindSafe for RunSubGraph",1,["maplibre::render::graph::context::RunSubGraph"]],["impl<'a> !UnwindSafe for RenderGraphContext<'a>",1,["maplibre::render::graph::context::RenderGraphContext"]],["impl UnwindSafe for RunSubGraphError",1,["maplibre::render::graph::context::RunSubGraphError"]],["impl UnwindSafe for OutputSlotError",1,["maplibre::render::graph::context::OutputSlotError"]],["impl UnwindSafe for InputSlotError",1,["maplibre::render::graph::context::InputSlotError"]],["impl UnwindSafe for Edge",1,["maplibre::render::graph::edge::Edge"]],["impl UnwindSafe for EdgeExistence",1,["maplibre::render::graph::edge::EdgeExistence"]],["impl !UnwindSafe for RenderGraph",1,["maplibre::render::graph::graph::RenderGraph"]],["impl UnwindSafe for GraphInputNode",1,["maplibre::render::graph::graph::GraphInputNode"]],["impl<'d> !UnwindSafe for RenderContext<'d>",1,["maplibre::render::graph::node::RenderContext"]],["impl UnwindSafe for NodeId",1,["maplibre::render::graph::node::NodeId"]],["impl UnwindSafe for NodeRunError",1,["maplibre::render::graph::node::NodeRunError"]],["impl UnwindSafe for Edges",1,["maplibre::render::graph::node::Edges"]],["impl !UnwindSafe for NodeState",1,["maplibre::render::graph::node::NodeState"]],["impl UnwindSafe for NodeLabel",1,["maplibre::render::graph::node::NodeLabel"]],["impl UnwindSafe for EmptyNode",1,["maplibre::render::graph::node::EmptyNode"]],["impl !UnwindSafe for SlotValue",1,["maplibre::render::graph::node_slot::SlotValue"]],["impl UnwindSafe for SlotType",1,["maplibre::render::graph::node_slot::SlotType"]],["impl UnwindSafe for SlotLabel",1,["maplibre::render::graph::node_slot::SlotLabel"]],["impl UnwindSafe for SlotInfo",1,["maplibre::render::graph::node_slot::SlotInfo"]],["impl UnwindSafe for SlotInfos",1,["maplibre::render::graph::node_slot::SlotInfos"]],["impl UnwindSafe for RenderGraphError",1,["maplibre::render::graph::RenderGraphError"]],["impl<B> UnwindSafe for BackingBufferDescriptor<B>where\n B: UnwindSafe,",1,["maplibre::render::resource::buffer::BackingBufferDescriptor"]],["impl UnwindSafe for RenderPipelineDescriptor",1,["maplibre::render::resource::pipeline::RenderPipelineDescriptor"]],["impl UnwindSafe for VertexBufferLayout",1,["maplibre::render::resource::shader::VertexBufferLayout"]],["impl UnwindSafe for FragmentState",1,["maplibre::render::resource::shader::FragmentState"]],["impl UnwindSafe for VertexState",1,["maplibre::render::resource::shader::VertexState"]],["impl UnwindSafe for BufferDimensions",1,["maplibre::render::resource::surface::BufferDimensions"]],["impl !UnwindSafe for WindowHead",1,["maplibre::render::resource::surface::WindowHead"]],["impl !UnwindSafe for BufferedTextureHead",1,["maplibre::render::resource::surface::BufferedTextureHead"]],["impl !UnwindSafe for Head",1,["maplibre::render::resource::surface::Head"]],["impl !UnwindSafe for Surface",1,["maplibre::render::resource::surface::Surface"]],["impl !UnwindSafe for TextureView",1,["maplibre::render::resource::texture::TextureView"]],["impl !UnwindSafe for Texture",1,["maplibre::render::resource::texture::Texture"]],["impl UnwindSafe for TilePipeline",1,["maplibre::render::resource::tile_pipeline::TilePipeline"]],["impl<'a> !UnwindSafe for TrackedRenderPass<'a>",1,["maplibre::render::resource::tracked_render_pass::TrackedRenderPass"]],["impl UnwindSafe for GraphRunnerSystem",1,["maplibre::render::systems::graph_runner_system::GraphRunnerSystem"]],["impl UnwindSafe for ResourceSystem",1,["maplibre::render::systems::resource_system::ResourceSystem"]],["impl UnwindSafe for RenderGraphRunner",1,["maplibre::render::graph_runner::RenderGraphRunner"]],["impl UnwindSafe for RenderGraphRunnerError",1,["maplibre::render::graph_runner::RenderGraphRunnerError"]],["impl UnwindSafe for MainPassNode",1,["maplibre::render::main_pass::MainPassNode"]],["impl UnwindSafe for MainPassDriverNode",1,["maplibre::render::main_pass::MainPassDriverNode"]],["impl UnwindSafe for TileMaskShader",1,["maplibre::render::shaders::TileMaskShader"]],["impl UnwindSafe for VectorTileShader",1,["maplibre::render::shaders::VectorTileShader"]],["impl UnwindSafe for ShaderCamera",1,["maplibre::render::shaders::ShaderCamera"]],["impl UnwindSafe for ShaderGlobals",1,["maplibre::render::shaders::ShaderGlobals"]],["impl UnwindSafe for ShaderVertex",1,["maplibre::render::shaders::ShaderVertex"]],["impl UnwindSafe for ShaderFeatureStyle",1,["maplibre::render::shaders::ShaderFeatureStyle"]],["impl UnwindSafe for ShaderLayerMetadata",1,["maplibre::render::shaders::ShaderLayerMetadata"]],["impl UnwindSafe for ShaderTileMetadata",1,["maplibre::render::shaders::ShaderTileMetadata"]],["impl UnwindSafe for ShaderTextureVertex",1,["maplibre::render::shaders::ShaderTextureVertex"]],["impl UnwindSafe for RasterTileShader",1,["maplibre::render::shaders::RasterTileShader"]],["impl UnwindSafe for RendererBuilder",1,["maplibre::render::builder::RendererBuilder"]],["impl !UnwindSafe for InitializationResult",1,["maplibre::render::builder::InitializationResult"]],["impl UnwindSafe for UninitializedRenderer",1,["maplibre::render::builder::UninitializedRenderer"]],["impl !UnwindSafe for InitializedRenderer",1,["maplibre::render::builder::InitializedRenderer"]],["impl UnwindSafe for ViewProjection",1,["maplibre::render::camera::ViewProjection"]],["impl UnwindSafe for InvertedViewProjection",1,["maplibre::render::camera::InvertedViewProjection"]],["impl UnwindSafe for ModelViewProjection",1,["maplibre::render::camera::ModelViewProjection"]],["impl UnwindSafe for Camera",1,["maplibre::render::camera::Camera"]],["impl UnwindSafe for EdgeInsets",1,["maplibre::render::camera::EdgeInsets"]],["impl UnwindSafe for Perspective",1,["maplibre::render::camera::Perspective"]],["impl UnwindSafe for RenderError",1,["maplibre::render::error::RenderError"]],["impl<T> UnwindSafe for Eventually<T>where\n T: UnwindSafe,",1,["maplibre::render::eventually::Eventually"]],["impl UnwindSafe for SetMaskPipeline",1,["maplibre::render::render_commands::SetMaskPipeline"]],["impl UnwindSafe for DrawMask",1,["maplibre::render::render_commands::DrawMask"]],["impl UnwindSafe for RenderCommandResult",1,["maplibre::render::render_phase::draw::RenderCommandResult"]],["impl<C, P> UnwindSafe for DrawState<C, P>where\n C: UnwindSafe,\n P: UnwindSafe,",1,["maplibre::render::render_phase::draw::DrawState"]],["impl<I> UnwindSafe for RenderPhase<I>where\n I: UnwindSafe,",1,["maplibre::render::render_phase::RenderPhase"]],["impl !UnwindSafe for LayerItem",1,["maplibre::render::render_phase::LayerItem"]],["impl !UnwindSafe for TileMaskItem",1,["maplibre::render::render_phase::TileMaskItem"]],["impl UnwindSafe for WgpuSettings",1,["maplibre::render::settings::WgpuSettings"]],["impl UnwindSafe for SurfaceType",1,["maplibre::render::settings::SurfaceType"]],["impl UnwindSafe for Msaa",1,["maplibre::render::settings::Msaa"]],["impl UnwindSafe for RendererSettings",1,["maplibre::render::settings::RendererSettings"]],["impl<B> UnwindSafe for BackingBuffer<B>where\n B: UnwindSafe,",1,["maplibre::render::tile_view_pattern::pattern::BackingBuffer"]],["impl<Q, B> UnwindSafe for TileViewPattern<Q, B>where\n B: UnwindSafe,\n Q: UnwindSafe,",1,["maplibre::render::tile_view_pattern::pattern::TileViewPattern"]],["impl UnwindSafe for SourceShapes",1,["maplibre::render::tile_view_pattern::SourceShapes"]],["impl UnwindSafe for ViewTile",1,["maplibre::render::tile_view_pattern::ViewTile"]],["impl UnwindSafe for TileShape",1,["maplibre::render::tile_view_pattern::TileShape"]],["impl<Q> UnwindSafe for QueryHasTile<Q>where\n Q: UnwindSafe,",1,["maplibre::render::tile_view_pattern::QueryHasTile"]],["impl !UnwindSafe for ViewTileSources",1,["maplibre::render::tile_view_pattern::ViewTileSources"]],["impl UnwindSafe for ViewState",1,["maplibre::render::view_state::ViewState"]],["impl UnwindSafe for RenderStageLabel",1,["maplibre::render::RenderStageLabel"]],["impl !UnwindSafe for RenderResources",1,["maplibre::render::RenderResources"]],["impl !UnwindSafe for Renderer",1,["maplibre::render::Renderer"]],["impl !UnwindSafe for MaskPipeline",1,["maplibre::render::MaskPipeline"]],["impl UnwindSafe for RenderPlugin",1,["maplibre::render::RenderPlugin"]],["impl UnwindSafe for BackgroundPaint",1,["maplibre::style::layer::BackgroundPaint"]],["impl UnwindSafe for FillPaint",1,["maplibre::style::layer::FillPaint"]],["impl UnwindSafe for LinePaint",1,["maplibre::style::layer::LinePaint"]],["impl UnwindSafe for LayerPaint",1,["maplibre::style::layer::LayerPaint"]],["impl UnwindSafe for StyleLayer",1,["maplibre::style::layer::StyleLayer"]],["impl UnwindSafe for RasterResampling",1,["maplibre::style::raster::RasterResampling"]],["impl UnwindSafe for RasterLayer",1,["maplibre::style::raster::RasterLayer"]],["impl UnwindSafe for TileAddressingScheme",1,["maplibre::style::source::TileAddressingScheme"]],["impl UnwindSafe for VectorSource",1,["maplibre::style::source::VectorSource"]],["impl UnwindSafe for Source",1,["maplibre::style::source::Source"]],["impl UnwindSafe for Style",1,["maplibre::style::style::Style"]],["impl UnwindSafe for FPSMeter",1,["maplibre::util::fps_meter::FPSMeter"]],["impl<S> UnwindSafe for Plane<S>where\n S: UnwindSafe,",1,["maplibre::util::math::Plane"]],["impl<S> UnwindSafe for Aabb2<S>where\n S: UnwindSafe,",1,["maplibre::util::math::Aabb2"]],["impl<S> UnwindSafe for Aabb3<S>where\n S: UnwindSafe,",1,["maplibre::util::math::Aabb3"]],["impl UnwindSafe for FloatOrd",1,["maplibre::util::math::FloatOrd"]],["impl<T> UnwindSafe for ChangeObserver<T>where\n T: UnwindSafe,",1,["maplibre::util::ChangeObserver"]],["impl UnwindSafe for WindowSize",1,["maplibre::window::WindowSize"]],["impl UnwindSafe for NopStage",1,["maplibre::schedule::NopStage"]],["impl<const I: usize, S> UnwindSafe for MultiStage<I, S>where\n S: UnwindSafe,",1,["maplibre::schedule::MultiStage"]],["impl !UnwindSafe for Schedule",1,["maplibre::schedule::Schedule"]],["impl UnwindSafe for SendEventError",1,["maplibre::event_loop::SendEventError"]],["impl<E> UnwindSafe for Kernel<E>where\n <E as Environment>::AsyncProcedureCall: UnwindSafe,\n <E as Environment>::HttpClient: UnwindSafe,\n <E as Environment>::MapWindowConfig: UnwindSafe,\n <E as Environment>::Scheduler: UnwindSafe,",1,["maplibre::kernel::Kernel"]],["impl<E> UnwindSafe for KernelBuilder<E>where\n <E as Environment>::AsyncProcedureCall: UnwindSafe,\n <E as Environment>::HttpClient: UnwindSafe,\n <E as Environment>::MapWindowConfig: UnwindSafe,\n <E as Environment>::Scheduler: UnwindSafe,",1,["maplibre::kernel::KernelBuilder"]],["impl UnwindSafe for MapError",1,["maplibre::map::MapError"]],["impl !UnwindSafe for CurrentMapContext",1,["maplibre::map::CurrentMapContext"]],["impl<E> !UnwindSafe for Map<E>",1,["maplibre::map::Map"]],["impl !UnwindSafe for Resources",1,["maplibre::tcs::resources::Resources"]],["impl<F> UnwindSafe for FunctionSystem<F>where\n F: UnwindSafe,",1,["maplibre::tcs::system::function::FunctionSystem"]],["impl !UnwindSafe for SystemStage",1,["maplibre::tcs::system::stage::SystemStage"]],["impl !UnwindSafe for SystemContainer",1,["maplibre::tcs::system::SystemContainer"]],["impl UnwindSafe for Tile",1,["maplibre::tcs::tiles::Tile"]],["impl !UnwindSafe for Tiles",1,["maplibre::tcs::tiles::Tiles"]],["impl<'t> !UnwindSafe for TileSpawnResult<'t>",1,["maplibre::tcs::tiles::TileSpawnResult"]],["impl UnwindSafe for GlobalQueryState",1,["maplibre::tcs::tiles::GlobalQueryState"]],["impl<'s> !UnwindSafe for EphemeralQueryState<'s>",1,["maplibre::tcs::tiles::EphemeralQueryState"]],["impl !UnwindSafe for World",1,["maplibre::tcs::world::World"]],["impl UnwindSafe for GlobalQueryState",1,["maplibre::tcs::GlobalQueryState"]],["impl<'s> !UnwindSafe for EphemeralQueryState<'s>",1,["maplibre::tcs::EphemeralQueryState"]],["impl UnwindSafe for DebugPassNode",1,["maplibre::debug::debug_pass::DebugPassNode"]],["impl UnwindSafe for SetDebugPipeline",1,["maplibre::debug::render_commands::SetDebugPipeline"]],["impl UnwindSafe for DrawDebugOutline",1,["maplibre::debug::render_commands::DrawDebugOutline"]],["impl !UnwindSafe for DebugPipeline",1,["maplibre::debug::DebugPipeline"]],["impl !UnwindSafe for TileDebugItem",1,["maplibre::debug::TileDebugItem"]],["impl UnwindSafe for DebugPlugin",1,["maplibre::debug::DebugPlugin"]],["impl<E, T> UnwindSafe for PopulateWorldSystem<E, T>where\n T: UnwindSafe,\n <E as Environment>::AsyncProcedureCall: RefUnwindSafe,\n <E as Environment>::HttpClient: RefUnwindSafe,\n <E as Environment>::MapWindowConfig: RefUnwindSafe,\n <E as Environment>::Scheduler: RefUnwindSafe,",1,["maplibre::raster::populate_world_system::PopulateWorldSystem"]],["impl !UnwindSafe for ProcessRasterError",1,["maplibre::raster::process_raster::ProcessRasterError"]],["impl UnwindSafe for RasterTileRequest",1,["maplibre::raster::process_raster::RasterTileRequest"]],["impl<T, C> UnwindSafe for ProcessRasterContext<T, C>where\n C: UnwindSafe,\n T: UnwindSafe,",1,["maplibre::raster::process_raster::ProcessRasterContext"]],["impl UnwindSafe for SetRasterTilePipeline",1,["maplibre::raster::render_commands::SetRasterTilePipeline"]],["impl<const I: usize> UnwindSafe for SetRasterViewBindGroup<I>",1,["maplibre::raster::render_commands::SetRasterViewBindGroup"]],["impl UnwindSafe for DrawRasterTile",1,["maplibre::raster::render_commands::DrawRasterTile"]],["impl<E, T> UnwindSafe for RequestSystem<E, T>where\n T: UnwindSafe,\n <E as Environment>::AsyncProcedureCall: RefUnwindSafe,\n <E as Environment>::HttpClient: RefUnwindSafe,\n <E as Environment>::MapWindowConfig: RefUnwindSafe,\n <E as Environment>::Scheduler: RefUnwindSafe,",1,["maplibre::raster::request_system::RequestSystem"]],["impl !UnwindSafe for RasterResources",1,["maplibre::raster::resource::raster::RasterResources"]],["impl UnwindSafe for RasterMessageTag",1,["maplibre::raster::transferables::RasterMessageTag"]],["impl UnwindSafe for DefaultLayerRaster",1,["maplibre::raster::transferables::DefaultLayerRaster"]],["impl UnwindSafe for DefaultLayerRasterMissing",1,["maplibre::raster::transferables::DefaultLayerRasterMissing"]],["impl UnwindSafe for DefaultRasterTransferables",1,["maplibre::raster::transferables::DefaultRasterTransferables"]],["impl<T> UnwindSafe for RasterPlugin<T>where\n T: UnwindSafe,",1,["maplibre::raster::RasterPlugin"]],["impl UnwindSafe for AvailableRasterLayerData",1,["maplibre::raster::AvailableRasterLayerData"]],["impl UnwindSafe for MissingRasterLayerData",1,["maplibre::raster::MissingRasterLayerData"]],["impl UnwindSafe for RasterLayerData",1,["maplibre::raster::RasterLayerData"]],["impl UnwindSafe for RasterLayersDataComponent",1,["maplibre::raster::RasterLayersDataComponent"]],["impl<E, T> UnwindSafe for PopulateWorldSystem<E, T>where\n T: UnwindSafe,\n <E as Environment>::AsyncProcedureCall: RefUnwindSafe,\n <E as Environment>::HttpClient: RefUnwindSafe,\n <E as Environment>::MapWindowConfig: RefUnwindSafe,\n <E as Environment>::Scheduler: RefUnwindSafe,",1,["maplibre::vector::populate_world_system::PopulateWorldSystem"]],["impl !UnwindSafe for ProcessVectorError",1,["maplibre::vector::process_vector::ProcessVectorError"]],["impl UnwindSafe for VectorTileRequest",1,["maplibre::vector::process_vector::VectorTileRequest"]],["impl<T, C> UnwindSafe for ProcessVectorContext<T, C>where\n C: UnwindSafe,\n T: UnwindSafe,",1,["maplibre::vector::process_vector::ProcessVectorContext"]],["impl UnwindSafe for SetVectorTilePipeline",1,["maplibre::vector::render_commands::SetVectorTilePipeline"]],["impl UnwindSafe for DrawVectorTile",1,["maplibre::vector::render_commands::DrawVectorTile"]],["impl<E, T> UnwindSafe for RequestSystem<E, T>where\n T: UnwindSafe,\n <E as Environment>::AsyncProcedureCall: RefUnwindSafe,\n <E as Environment>::HttpClient: RefUnwindSafe,\n <E as Environment>::MapWindowConfig: RefUnwindSafe,\n <E as Environment>::Scheduler: RefUnwindSafe,",1,["maplibre::vector::request_system::RequestSystem"]],["impl<Q, B, V, I, TM, FM> UnwindSafe for BufferPool<Q, B, V, I, TM, FM>where\n B: UnwindSafe,\n FM: UnwindSafe,\n I: UnwindSafe,\n Q: UnwindSafe,\n TM: UnwindSafe,\n V: UnwindSafe,",1,["maplibre::vector::resource::buffer_pool::BufferPool"]],["impl UnwindSafe for BackingBufferType",1,["maplibre::vector::resource::buffer_pool::BackingBufferType"]],["impl<B> UnwindSafe for BackingBuffer<B>where\n B: UnwindSafe,",1,["maplibre::vector::resource::buffer_pool::BackingBuffer"]],["impl UnwindSafe for IndexEntry",1,["maplibre::vector::resource::buffer_pool::IndexEntry"]],["impl UnwindSafe for RingIndexEntry",1,["maplibre::vector::resource::buffer_pool::RingIndexEntry"]],["impl UnwindSafe for RingIndex",1,["maplibre::vector::resource::buffer_pool::RingIndex"]],["impl UnwindSafe for VectorMessageTag",1,["maplibre::vector::transferables::VectorMessageTag"]],["impl UnwindSafe for DefaultTileTessellated",1,["maplibre::vector::transferables::DefaultTileTessellated"]],["impl UnwindSafe for DefaultLayerMissing",1,["maplibre::vector::transferables::DefaultLayerMissing"]],["impl UnwindSafe for DefaultLayerTesselated",1,["maplibre::vector::transferables::DefaultLayerTesselated"]],["impl UnwindSafe for DefaultLayerIndexed",1,["maplibre::vector::transferables::DefaultLayerIndexed"]],["impl UnwindSafe for DefaultVectorTransferables",1,["maplibre::vector::transferables::DefaultVectorTransferables"]],["impl !UnwindSafe for VectorPipeline",1,["maplibre::vector::VectorPipeline"]],["impl<T> UnwindSafe for VectorPlugin<T>where\n T: UnwindSafe,",1,["maplibre::vector::VectorPlugin"]],["impl UnwindSafe for VectorTilesDone",1,["maplibre::vector::VectorTilesDone"]],["impl UnwindSafe for AvailableVectorLayerData",1,["maplibre::vector::AvailableVectorLayerData"]],["impl UnwindSafe for MissingVectorLayerData",1,["maplibre::vector::MissingVectorLayerData"]],["impl UnwindSafe for VectorLayerData",1,["maplibre::vector::VectorLayerData"]],["impl UnwindSafe for VectorLayersDataComponent",1,["maplibre::vector::VectorLayersDataComponent"]]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/docs/api/implementors/geozero/feature_processor/trait.FeatureProcessor.js b/docs/api/implementors/geozero/feature_processor/trait.FeatureProcessor.js index 8b365742..6595ee44 100644 --- a/docs/api/implementors/geozero/feature_processor/trait.FeatureProcessor.js +++ b/docs/api/implementors/geozero/feature_processor/trait.FeatureProcessor.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"maplibre":[["impl FeatureProcessor for IndexProcessor"],["impl<I: Add + From<VertexId> + MaxIndex> FeatureProcessor for ZeroTessellator<I>"]] +"maplibre":[["impl<I: Add + From<VertexId> + MaxIndex> FeatureProcessor for ZeroTessellator<I>"],["impl FeatureProcessor for IndexProcessor"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/docs/api/implementors/geozero/property_processor/trait.PropertyProcessor.js b/docs/api/implementors/geozero/property_processor/trait.PropertyProcessor.js index ac7c0c8e..812d8cdb 100644 --- a/docs/api/implementors/geozero/property_processor/trait.PropertyProcessor.js +++ b/docs/api/implementors/geozero/property_processor/trait.PropertyProcessor.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"maplibre":[["impl PropertyProcessor for IndexProcessor"],["impl<I: Add + From<VertexId> + MaxIndex> PropertyProcessor for ZeroTessellator<I>"]] +"maplibre":[["impl<I: Add + From<VertexId> + MaxIndex> PropertyProcessor for ZeroTessellator<I>"],["impl PropertyProcessor for IndexProcessor"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/docs/api/implementors/serde/de/trait.Deserialize.js b/docs/api/implementors/serde/de/trait.Deserialize.js index 0f46d757..a0c44842 100644 --- a/docs/api/implementors/serde/de/trait.Deserialize.js +++ b/docs/api/implementors/serde/de/trait.Deserialize.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"maplibre":[["impl<'de> Deserialize<'de> for RasterLayer"],["impl<'de> Deserialize<'de> for WorldTileCoords"],["impl<'de> Deserialize<'de> for Source"],["impl<'de> Deserialize<'de> for StyleLayer"],["impl<'de> Deserialize<'de> for Style"],["impl<'de> Deserialize<'de> for ZoomLevel"],["impl<'de> Deserialize<'de> for Input"],["impl<'de> Deserialize<'de> for FillPaint"],["impl<'de> Deserialize<'de> for VectorSource"],["impl<'de> Deserialize<'de> for RasterResampling"],["impl<'de> Deserialize<'de> for LayerPaint"],["impl<'de> Deserialize<'de> for LinePaint"],["impl<'de> Deserialize<'de> for TileAddressingScheme"],["impl<'de> Deserialize<'de> for BackgroundPaint"]] +"maplibre":[["impl<'de> Deserialize<'de> for FillPaint"],["impl<'de> Deserialize<'de> for RasterLayer"],["impl<'de> Deserialize<'de> for Style"],["impl<'de> Deserialize<'de> for VectorSource"],["impl<'de> Deserialize<'de> for StyleLayer"],["impl<'de> Deserialize<'de> for LayerPaint"],["impl<'de> Deserialize<'de> for ZoomLevel"],["impl<'de> Deserialize<'de> for TileAddressingScheme"],["impl<'de> Deserialize<'de> for WorldTileCoords"],["impl<'de> Deserialize<'de> for BackgroundPaint"],["impl<'de> Deserialize<'de> for RasterResampling"],["impl<'de> Deserialize<'de> for LinePaint"],["impl<'de> Deserialize<'de> for Source"],["impl<'de> Deserialize<'de> for Input"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/docs/api/implementors/serde/ser/trait.Serialize.js b/docs/api/implementors/serde/ser/trait.Serialize.js index 9b524977..06e5639e 100644 --- a/docs/api/implementors/serde/ser/trait.Serialize.js +++ b/docs/api/implementors/serde/ser/trait.Serialize.js @@ -1,3 +1,3 @@ (function() {var implementors = { -"maplibre":[["impl Serialize for Style"],["impl Serialize for ZoomLevel"],["impl Serialize for RasterLayer"],["impl Serialize for BackgroundPaint"],["impl Serialize for FillPaint"],["impl Serialize for LayerPaint"],["impl Serialize for WorldTileCoords"],["impl Serialize for VectorSource"],["impl Serialize for TileAddressingScheme"],["impl Serialize for RasterResampling"],["impl Serialize for Input"],["impl Serialize for LinePaint"],["impl Serialize for StyleLayer"],["impl Serialize for Source"]] +"maplibre":[["impl Serialize for Input"],["impl Serialize for FillPaint"],["impl Serialize for LinePaint"],["impl Serialize for RasterLayer"],["impl Serialize for WorldTileCoords"],["impl Serialize for ZoomLevel"],["impl Serialize for Style"],["impl Serialize for VectorSource"],["impl Serialize for BackgroundPaint"],["impl Serialize for StyleLayer"],["impl Serialize for LayerPaint"],["impl Serialize for Source"],["impl Serialize for TileAddressingScheme"],["impl Serialize for RasterResampling"]] };if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/docs/api/maplibre/all.html b/docs/api/maplibre/all.html index 6ceea4ab..865c910c 100644 --- a/docs/api/maplibre/all.html +++ b/docs/api/maplibre/all.html @@ -1 +1 @@ -List of all items in this crate

List of all items

Structs

Enums

Traits

Macros

Functions

Type Definitions

Constants

\ No newline at end of file +List of all items in this crate

List of all items

Structs

Enums

Traits

Macros

Functions

Type Definitions

Constants

\ No newline at end of file diff --git a/docs/api/maplibre/benchmarking/tessellation/struct.VertexConstructor.html b/docs/api/maplibre/benchmarking/tessellation/struct.VertexConstructor.html index d2339632..226f8f09 100644 --- a/docs/api/maplibre/benchmarking/tessellation/struct.VertexConstructor.html +++ b/docs/api/maplibre/benchmarking/tessellation/struct.VertexConstructor.html @@ -1,5 +1,5 @@ VertexConstructor in maplibre::benchmarking::tessellation - Rust
pub struct VertexConstructor {}
Expand description

Constructor for Fill and Stroke vertices.

-

Trait Implementations§

source§

impl FillVertexConstructor<ShaderVertex> for VertexConstructor

source§

fn new_vertex(&mut self, vertex: FillVertex<'_>) -> ShaderVertex

source§

impl StrokeVertexConstructor<ShaderVertex> for VertexConstructor

source§

fn new_vertex(&mut self, vertex: StrokeVertex<'_, '_>) -> ShaderVertex

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere +

Trait Implementations§

source§

impl FillVertexConstructor<ShaderVertex> for VertexConstructor

source§

fn new_vertex(&mut self, vertex: FillVertex<'_>) -> ShaderVertex

source§

impl StrokeVertexConstructor<ShaderVertex> for VertexConstructor

source§

fn new_vertex(&mut self, vertex: StrokeVertex<'_, '_>) -> ShaderVertex

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Downcast<T> for T

§

fn downcast(&self) -> &T

§

impl<T> Downcast for Twhere diff --git a/docs/api/maplibre/context/index.html b/docs/api/maplibre/context/index.html index 906a0fb9..052eacaa 100644 --- a/docs/api/maplibre/context/index.html +++ b/docs/api/maplibre/context/index.html @@ -1 +1 @@ -maplibre::context - Rust

Module maplibre::context

source ·

Structs

\ No newline at end of file +maplibre::context - Rust

Module maplibre::context

source ·

Structs

\ No newline at end of file diff --git a/docs/api/maplibre/context/struct.MapContext.html b/docs/api/maplibre/context/struct.MapContext.html index 530f01bf..95150f09 100644 --- a/docs/api/maplibre/context/struct.MapContext.html +++ b/docs/api/maplibre/context/struct.MapContext.html @@ -1,12 +1,12 @@ -MapContext in maplibre::context - Rust
pub struct MapContext {
+MapContext in maplibre::context - Rust
pub struct MapContext {
     pub style: Style,
     pub world: World,
-    pub view_state: ViewState,
+    pub view_state: ViewState,
     pub renderer: Renderer,
 }
Expand description

Stores the context of the map.

This struct should not depend on the crate::environment::Environment trait. Else types throughout the crate get messy quickly.

-

Fields§

§style: Style§world: World§view_state: ViewState§renderer: Renderer

Implementations§

source§

impl MapContext

source

pub fn resize(&mut self, width: u32, height: u32)

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere +

Fields§

§style: Style§world: World§view_state: ViewState§renderer: Renderer

Implementations§

source§

impl MapContext

source

pub fn resize(&mut self, width: u32, height: u32)

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Downcast<T> for T

§

fn downcast(&self) -> &T

§

impl<T> Downcast for Twhere diff --git a/docs/api/maplibre/coords/index.html b/docs/api/maplibre/coords/index.html index e8b30a5f..07859870 100644 --- a/docs/api/maplibre/coords/index.html +++ b/docs/api/maplibre/coords/index.html @@ -1,4 +1,4 @@ -maplibre::coords - Rust

Module maplibre::coords

source ·
Expand description

Provides utilities related to coordinates.

+maplibre::coords - Rust

Module maplibre::coords

source ·
Expand description

Provides utilities related to coordinates.

Structs

Trait Implementations§

source§

impl Clone for TileCoords

source§

fn clone(&self) -> TileCoords

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for TileCoords

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for TileCoords

source§

fn default() -> TileCoords

Returns the “default value” for a type. Read more
source§

impl Display for TileCoords

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl From<(u32, u32, ZoomLevel)> for TileCoords

source§

fn from(tuple: (u32, u32, ZoomLevel)) -> Self

Converts to this type from the input type.
source§

impl Hash for TileCoords

source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)where +

Trait Implementations§

source§

impl Clone for TileCoords

source§

fn clone(&self) -> TileCoords

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for TileCoords

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for TileCoords

source§

fn default() -> TileCoords

Returns the “default value” for a type. Read more
source§

impl Display for TileCoords

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl From<(u32, u32, ZoomLevel)> for TileCoords

source§

fn from(tuple: (u32, u32, ZoomLevel)) -> Self

Converts to this type from the input type.
source§

impl Hash for TileCoords

source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)where H: Hasher, - Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
source§

impl PartialEq<TileCoords> for TileCoords

source§

fn eq(&self, other: &TileCoords) -> bool

This method tests for self and other values to be equal, and is used + Self: Sized,
Feeds a slice of this type into the given Hasher. Read more
source§

impl PartialEq<TileCoords> for TileCoords

source§

fn eq(&self, other: &TileCoords) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
source§

impl Copy for TileCoords

source§

impl Eq for TileCoords

source§

impl StructuralEq for TileCoords

source§

impl StructuralPartialEq for TileCoords

Auto Trait Implementations§

§

impl RefUnwindSafe for TileCoords

§

impl Send for TileCoords

§

impl Sync for TileCoords

§

impl Unpin for TileCoords

§

impl UnwindSafe for TileCoords

Blanket Implementations§

source§

impl<T> Any for Twhere +sufficient, and should not be overridden without very good reason.

source§

impl Copy for TileCoords

source§

impl Eq for TileCoords

source§

impl StructuralEq for TileCoords

source§

impl StructuralPartialEq for TileCoords

Auto Trait Implementations§

§

impl RefUnwindSafe for TileCoords

§

impl Send for TileCoords

§

impl Sync for TileCoords

§

impl Unpin for TileCoords

§

impl UnwindSafe for TileCoords

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Downcast<T> for T

§

fn downcast(&self) -> &T

§

impl<T> Downcast for Twhere diff --git a/docs/api/maplibre/coords/struct.ViewRegion.html b/docs/api/maplibre/coords/struct.ViewRegion.html index e44d9200..8ae22123 100644 --- a/docs/api/maplibre/coords/struct.ViewRegion.html +++ b/docs/api/maplibre/coords/struct.ViewRegion.html @@ -1,4 +1,4 @@ -ViewRegion in maplibre::coords - Rust

Fields§

§min_tile: WorldTileCoords§max_tile: WorldTileCoords§zoom_level: ZoomLevel

At which zoom level does this region exist

§padding: i32

Padding around this view region

§max_n_tiles: usize

The maximum amount of tiles this view region contains

-

Implementations§

source§

impl ViewRegion

source

pub fn new( +

Implementations§

source§

impl ViewRegion

source

pub fn new( view_region: Aabb2<f64>, padding: i32, max_n_tiles: usize, zoom: Zoom, z: ZoomLevel -) -> Self

source

pub fn zoom_level(&self) -> ZoomLevel

source

pub fn is_in_view(&self, world_coords: &WorldTileCoords) -> bool

source

pub fn iter(&self) -> impl Iterator<Item = WorldTileCoords> + '_

Trait Implementations§

source§

impl Debug for ViewRegion

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere +) -> Self

source

pub fn zoom_level(&self) -> ZoomLevel

source

pub fn is_in_view(&self, world_coords: &WorldTileCoords) -> bool

source

pub fn iter(&self) -> impl Iterator<Item = WorldTileCoords> + '_

Trait Implementations§

source§

impl Debug for ViewRegion

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Downcast<T> for T

§

fn downcast(&self) -> &T

§

impl<T> Downcast for Twhere diff --git a/docs/api/maplibre/coords/struct.WorldCoords.html b/docs/api/maplibre/coords/struct.WorldCoords.html index 4f9f767f..12f6fef9 100644 --- a/docs/api/maplibre/coords/struct.WorldCoords.html +++ b/docs/api/maplibre/coords/struct.WorldCoords.html @@ -1,4 +1,4 @@ -WorldCoords in maplibre::coords - Rust
pub struct WorldCoords {
+WorldCoords in maplibre::coords - Rust
pub struct WorldCoords {
     pub x: f64,
     pub y: f64,
 }
Expand description

Actual coordinates within the 3D world. The z value of the [WorldCoors] is not related to @@ -6,9 +6,9 @@ the z value of the [WorldTileCoors]. In the 3D world a which are determined only by the render engine and not by the zoom level.

Coordinate System Origin

The origin of the coordinate system is in the upper-left corner.

-

Fields§

§x: f64§y: f64

Implementations§

source§

impl WorldCoords

source

pub fn from_lat_lon(lat_lon: LatLon, zoom: Zoom) -> WorldCoords

source

pub fn at_ground(x: f64, y: f64) -> Self

source

pub fn into_world_tile(self, z: ZoomLevel, zoom: Zoom) -> WorldTileCoords

Trait Implementations§

source§

impl Clone for WorldCoords

source§

fn clone(&self) -> WorldCoords

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for WorldCoords

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for WorldCoords

source§

fn default() -> WorldCoords

Returns the “default value” for a type. Read more
source§

impl Display for WorldCoords

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl From<(f32, f32)> for WorldCoords

source§

fn from(tuple: (f32, f32)) -> Self

Converts to this type from the input type.
source§

impl From<(f64, f64)> for WorldCoords

source§

fn from(tuple: (f64, f64)) -> Self

Converts to this type from the input type.
source§

impl From<Point3<f64>> for WorldCoords

source§

fn from(point: Point3<f64>) -> Self

Converts to this type from the input type.
source§

impl From<WorldCoords> for Vec3f32

source§

fn from(world_coords: WorldCoords) -> Self

Converts to this type from the input type.
source§

impl PartialEq<WorldCoords> for WorldCoords

source§

fn eq(&self, other: &WorldCoords) -> bool

This method tests for self and other values to be equal, and is used +

Fields§

§x: f64§y: f64

Implementations§

source§

impl WorldCoords

source

pub fn from_lat_lon(lat_lon: LatLon, zoom: Zoom) -> WorldCoords

source

pub fn at_ground(x: f64, y: f64) -> Self

source

pub fn into_world_tile(self, z: ZoomLevel, zoom: Zoom) -> WorldTileCoords

Trait Implementations§

source§

impl Clone for WorldCoords

source§

fn clone(&self) -> WorldCoords

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for WorldCoords

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for WorldCoords

source§

fn default() -> WorldCoords

Returns the “default value” for a type. Read more
source§

impl Display for WorldCoords

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl From<(f32, f32)> for WorldCoords

source§

fn from(tuple: (f32, f32)) -> Self

Converts to this type from the input type.
source§

impl From<(f64, f64)> for WorldCoords

source§

fn from(tuple: (f64, f64)) -> Self

Converts to this type from the input type.
source§

impl From<Point3<f64>> for WorldCoords

source§

fn from(point: Point3<f64>) -> Self

Converts to this type from the input type.
source§

impl From<WorldCoords> for Vec3f32

source§

fn from(world_coords: WorldCoords) -> Self

Converts to this type from the input type.
source§

impl PartialEq<WorldCoords> for WorldCoords

source§

fn eq(&self, other: &WorldCoords) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
source§

impl Copy for WorldCoords

source§

impl StructuralPartialEq for WorldCoords

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere +sufficient, and should not be overridden without very good reason.

source§

impl Copy for WorldCoords

source§

impl StructuralPartialEq for WorldCoords

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Downcast<T> for T

§

fn downcast(&self) -> &T

§

impl<T> Downcast for Twhere diff --git a/docs/api/maplibre/coords/struct.WorldTileCoords.html b/docs/api/maplibre/coords/struct.WorldTileCoords.html index 2c203889..a1a4d057 100644 --- a/docs/api/maplibre/coords/struct.WorldTileCoords.html +++ b/docs/api/maplibre/coords/struct.WorldTileCoords.html @@ -1,4 +1,4 @@ -WorldTileCoords in maplibre::coords - Rust

Fields§

§x: i32§y: i32§z: ZoomLevel

Implementations§

source§

impl WorldTileCoords

source

pub fn into_tile(self, scheme: TileAddressingScheme) -> Option<TileCoords>

Returns the tile coords according to an addressing scheme. This is not possible if the +

Fields§

§x: i32§y: i32§z: ZoomLevel

Implementations§

source§

impl WorldTileCoords

source

pub fn into_tile(self, scheme: TileAddressingScheme) -> Option<TileCoords>

Returns the tile coords according to an addressing scheme. This is not possible if the coordinates of this WorldTileCoords exceed their bounds.

Example

The WorldTileCoords WT(x=5,y=5,z=0) exceeds its bounds because there is no tile x=5,y=5 at zoom level z=0.

-
source

pub fn transform_for_zoom(&self, zoom: Zoom) -> Matrix4<f64>

source

pub fn into_aligned(self) -> AlignedWorldTileCoords

source

pub fn build_quad_key(&self) -> Option<Quadkey>

Adopted from tilebelt

-
source

pub fn get_children(&self) -> [WorldTileCoords; 4]

Adopted from tilebelt

-
source

pub fn get_parent(&self) -> Option<WorldTileCoords>

Get the tile which is one zoom level lower and contains this one

-
source

pub fn stencil_reference_value_3d(&self) -> u8

Returns unique stencil reference values for WorldTileCoords which are 3D. +

source

pub fn transform_for_zoom(&self, zoom: Zoom) -> Matrix4<f64>

source

pub fn into_aligned(self) -> AlignedWorldTileCoords

source

pub fn build_quad_key(&self) -> Option<Quadkey>

Adopted from tilebelt

+
source

pub fn get_children(&self) -> [WorldTileCoords; 4]

Adopted from tilebelt

+
source

pub fn get_parent(&self) -> Option<WorldTileCoords>

Get the tile which is one zoom level lower and contains this one

+
source

pub fn stencil_reference_value_3d(&self) -> u8

Returns unique stencil reference values for WorldTileCoords which are 3D. Tiles from arbitrary z can lie next to each other, because we mix tiles from different levels based on availability.

-

Trait Implementations§

source§

impl Clone for WorldTileCoords

source§

fn clone(&self) -> WorldTileCoords

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for WorldTileCoords

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for WorldTileCoords

source§

fn default() -> WorldTileCoords

Returns the “default value” for a type. Read more
source§

impl<'de> Deserialize<'de> for WorldTileCoords

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where - __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Display for WorldTileCoords

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl From<(i32, i32, ZoomLevel)> for WorldTileCoords

source§

fn from(tuple: (i32, i32, ZoomLevel)) -> Self

Converts to this type from the input type.
source§

impl Hash for WorldTileCoords

source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)where +

Trait Implementations§

source§

impl Clone for WorldTileCoords

source§

fn clone(&self) -> WorldTileCoords

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for WorldTileCoords

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for WorldTileCoords

source§

fn default() -> WorldTileCoords

Returns the “default value” for a type. Read more
source§

impl<'de> Deserialize<'de> for WorldTileCoords

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where + __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Display for WorldTileCoords

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl From<(i32, i32, ZoomLevel)> for WorldTileCoords

source§

fn from(tuple: (i32, i32, ZoomLevel)) -> Self

Converts to this type from the input type.
source§

impl Hash for WorldTileCoords

source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)where H: Hasher, - Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
source§

impl Ord for WorldTileCoords

source§

fn cmp(&self, other: &WorldTileCoords) -> Ordering

This method returns an Ordering between self and other. Read more
1.21.0 · source§

fn max(self, other: Self) -> Selfwhere + Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
source§

impl Ord for WorldTileCoords

source§

fn cmp(&self, other: &WorldTileCoords) -> Ordering

This method returns an Ordering between self and other. Read more
1.21.0 · source§

fn max(self, other: Self) -> Selfwhere Self: Sized,

Compares and returns the maximum of two values. Read more
1.21.0 · source§

fn min(self, other: Self) -> Selfwhere Self: Sized,

Compares and returns the minimum of two values. Read more
1.50.0 · source§

fn clamp(self, min: Self, max: Self) -> Selfwhere - Self: Sized + PartialOrd<Self>,

Restrict a value to a certain interval. Read more
source§

impl PartialEq<WorldTileCoords> for WorldTileCoords

source§

fn eq(&self, other: &WorldTileCoords) -> bool

This method tests for self and other values to be equal, and is used + Self: Sized + PartialOrd<Self>,
Restrict a value to a certain interval. Read more
source§

impl PartialEq<WorldTileCoords> for WorldTileCoords

source§

fn eq(&self, other: &WorldTileCoords) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
source§

impl PartialOrd<WorldTileCoords> for WorldTileCoords

source§

fn partial_cmp(&self, other: &WorldTileCoords) -> Option<Ordering>

This method returns an ordering between self and other values if one exists. Read more
1.0.0 · source§

fn lt(&self, other: &Rhs) -> bool

This method tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · source§

fn le(&self, other: &Rhs) -> bool

This method tests less than or equal to (for self and other) and is used by the <= +sufficient, and should not be overridden without very good reason.
source§

impl PartialOrd<WorldTileCoords> for WorldTileCoords

source§

fn partial_cmp(&self, other: &WorldTileCoords) -> Option<Ordering>

This method returns an ordering between self and other values if one exists. Read more
1.0.0 · source§

fn lt(&self, other: &Rhs) -> bool

This method tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · source§

fn le(&self, other: &Rhs) -> bool

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · source§

fn gt(&self, other: &Rhs) -> bool

This method tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · source§

fn ge(&self, other: &Rhs) -> bool

This method tests greater than or equal to (for self and other) and is used by the >= -operator. Read more
source§

impl Serialize for WorldTileCoords

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>where - __S: Serializer,

Serialize this value into the given Serde serializer. Read more
source§

impl Zeroable for WorldTileCoords

§

fn zeroed() -> Self

source§

impl Copy for WorldTileCoords

source§

impl Eq for WorldTileCoords

source§

impl StructuralEq for WorldTileCoords

source§

impl StructuralPartialEq for WorldTileCoords

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere +operator. Read more

source§

impl Serialize for WorldTileCoords

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>where + __S: Serializer,

Serialize this value into the given Serde serializer. Read more
source§

impl Zeroable for WorldTileCoords

§

fn zeroed() -> Self

source§

impl Copy for WorldTileCoords

source§

impl Eq for WorldTileCoords

source§

impl StructuralEq for WorldTileCoords

source§

impl StructuralPartialEq for WorldTileCoords

Auto Trait Implementations§

§

impl RefUnwindSafe for WorldTileCoords

§

impl Send for WorldTileCoords

§

impl Sync for WorldTileCoords

§

impl Unpin for WorldTileCoords

§

impl UnwindSafe for WorldTileCoords

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Downcast<T> for T

§

fn downcast(&self) -> &T

§

impl<T> Downcast for Twhere diff --git a/docs/api/maplibre/coords/struct.Zoom.html b/docs/api/maplibre/coords/struct.Zoom.html index e753c74c..763abf20 100644 --- a/docs/api/maplibre/coords/struct.Zoom.html +++ b/docs/api/maplibre/coords/struct.Zoom.html @@ -1,6 +1,13 @@ -Zoom in maplibre::coords - Rust

Struct maplibre::coords::Zoom

source ·
pub struct Zoom(f64);
Expand description

Zoom is an exponential scale that defines the zoom of the camera on the map. +Zoom in maplibre::coords - Rust

Struct maplibre::coords::Zoom

source ·
pub struct Zoom(f64);
Expand description

Zoom is an exponential scale that defines the zoom of the camera on the map. We can derive the ZoomLevel from Zoom by using the [crate::coords::ZOOM_BOUNDS].

-

Tuple Fields§

§0: f64

Implementations§

source§

impl Zoom

source

pub fn new(zoom: f64) -> Self

source§

impl Zoom

source

pub fn from(zoom_level: ZoomLevel) -> Self

source§

impl Zoom

source

pub fn scale_to_tile(&self, coords: &WorldTileCoords) -> f64

source

pub fn scale_to_zoom_level(&self, z: ZoomLevel) -> f64

source

pub fn scale_delta(&self, zoom: &Zoom) -> f64

source

pub fn level(&self) -> ZoomLevel

Trait Implementations§

source§

impl Add<Zoom> for Zoom

§

type Output = Zoom

The resulting type after applying the + operator.
source§

fn add(self, rhs: Self) -> Self::Output

Performs the + operation. Read more
source§

impl Clone for Zoom

source§

fn clone(&self) -> Zoom

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for Zoom

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for Zoom

source§

fn default() -> Self

Returns the “default value” for a type. Read more
source§

impl Display for Zoom

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl SignificantlyDifferent<Zoom> for Zoom

§

type Epsilon = f64

source§

fn ne(&self, other: &Self, epsilon: Self::Epsilon) -> bool

This method tests for self and other values to be significantly different
source§

impl Sub<Zoom> for Zoom

§

type Output = Zoom

The resulting type after applying the - operator.
source§

fn sub(self, rhs: Self) -> Self::Output

Performs the - operation. Read more
source§

impl Copy for Zoom

Auto Trait Implementations§

§

impl RefUnwindSafe for Zoom

§

impl Send for Zoom

§

impl Sync for Zoom

§

impl Unpin for Zoom

§

impl UnwindSafe for Zoom

Blanket Implementations§

source§

impl<T> Any for Twhere +

Tuple Fields§

§0: f64

Implementations§

source§

impl Zoom

source

pub fn new(zoom: f64) -> Self

source§

impl Zoom

source

pub fn from(zoom_level: ZoomLevel) -> Self

source§

impl Zoom

source

pub fn scale_to_tile(&self, coords: &WorldTileCoords) -> f64

source

pub fn scale_to_zoom_level(&self, z: ZoomLevel) -> f64

source

pub fn scale_delta(&self, zoom: &Zoom) -> f64

source

pub fn zoom_level(&self, tile_size: f64) -> ZoomLevel

Adopted from +Transform::coveringZoomLevel

+

This function calculates which ZoomLevel to show at this zoom.

+

The tile_size is the size of the tile like specified in the source definition, +For example raster tiles can be 512px or 256px. If it is 256px, then 2x as many tiles are +displayed. If the raster tile is 512px then exactly as many raster tiles like vector +tiles would be displayed.

+

Trait Implementations§

source§

impl Add<Zoom> for Zoom

§

type Output = Zoom

The resulting type after applying the + operator.
source§

fn add(self, rhs: Self) -> Self::Output

Performs the + operation. Read more
source§

impl Clone for Zoom

source§

fn clone(&self) -> Zoom

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for Zoom

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for Zoom

source§

fn default() -> Self

Returns the “default value” for a type. Read more
source§

impl Display for Zoom

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl SignificantlyDifferent<Zoom> for Zoom

§

type Epsilon = f64

source§

fn ne(&self, other: &Self, epsilon: Self::Epsilon) -> bool

This method tests for self and other values to be significantly different
source§

impl Sub<Zoom> for Zoom

§

type Output = Zoom

The resulting type after applying the - operator.
source§

fn sub(self, rhs: Self) -> Self::Output

Performs the - operation. Read more
source§

impl Copy for Zoom

Auto Trait Implementations§

§

impl RefUnwindSafe for Zoom

§

impl Send for Zoom

§

impl Sync for Zoom

§

impl Unpin for Zoom

§

impl UnwindSafe for Zoom

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Downcast<T> for T

§

fn downcast(&self) -> &T

§

impl<T> Downcast for Twhere diff --git a/docs/api/maplibre/coords/struct.ZoomLevel.html b/docs/api/maplibre/coords/struct.ZoomLevel.html index aaa44480..1b475388 100644 --- a/docs/api/maplibre/coords/struct.ZoomLevel.html +++ b/docs/api/maplibre/coords/struct.ZoomLevel.html @@ -1,4 +1,4 @@ -ZoomLevel in maplibre::coords - Rust

Struct maplibre::coords::ZoomLevel

source ·
#[repr(C)]
pub struct ZoomLevel(u8);

Tuple Fields§

§0: u8

Implementations§

source§

impl ZoomLevel

source

pub const fn new(z: u8) -> Self

source

pub fn is_root(self) -> bool

Trait Implementations§

source§

impl Add<u8> for ZoomLevel

§

type Output = ZoomLevel

The resulting type after applying the + operator.
source§

fn add(self, rhs: u8) -> Self::Output

Performs the + operation. Read more
source§

impl Clone for ZoomLevel

source§

fn clone(&self) -> ZoomLevel

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for ZoomLevel

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for ZoomLevel

source§

fn default() -> ZoomLevel

Returns the “default value” for a type. Read more
source§

impl<'de> Deserialize<'de> for ZoomLevel

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where +ZoomLevel in maplibre::coords - Rust

Struct maplibre::coords::ZoomLevel

source ·
#[repr(C)]
pub struct ZoomLevel(u8);

Tuple Fields§

§0: u8

Implementations§

source§

impl ZoomLevel

source

pub const fn new(z: u8) -> Self

source

pub fn is_root(self) -> bool

Trait Implementations§

source§

impl Add<u8> for ZoomLevel

§

type Output = ZoomLevel

The resulting type after applying the + operator.
source§

fn add(self, rhs: u8) -> Self::Output

Performs the + operation. Read more
source§

impl Clone for ZoomLevel

source§

fn clone(&self) -> ZoomLevel

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for ZoomLevel

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for ZoomLevel

source§

fn default() -> ZoomLevel

Returns the “default value” for a type. Read more
source§

impl<'de> Deserialize<'de> for ZoomLevel

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Display for ZoomLevel

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl From<ZoomLevel> for u8

source§

fn from(val: ZoomLevel) -> Self

Converts to this type from the input type.
source§

impl From<u8> for ZoomLevel

source§

fn from(zoom_level: u8) -> Self

Converts to this type from the input type.
source§

impl Hash for ZoomLevel

source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
source§

impl Ord for ZoomLevel

source§

fn cmp(&self, other: &ZoomLevel) -> Ordering

This method returns an Ordering between self and other. Read more
1.21.0 · source§

fn max(self, other: Self) -> Selfwhere @@ -9,7 +9,7 @@ by ==.

source§

impl PartialOrd<ZoomLevel> for ZoomLevel

source§

fn partial_cmp(&self, other: &ZoomLevel) -> Option<Ordering>

This method returns an ordering between self and other values if one exists. Read more
1.0.0 · source§

fn lt(&self, other: &Rhs) -> bool

This method tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · source§

fn le(&self, other: &Rhs) -> bool

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · source§

fn gt(&self, other: &Rhs) -> bool

This method tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · source§

fn ge(&self, other: &Rhs) -> bool

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more
source§

impl Serialize for ZoomLevel

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>where - __S: Serializer,

Serialize this value into the given Serde serializer. Read more
source§

impl Sub<u8> for ZoomLevel

§

type Output = ZoomLevel

The resulting type after applying the - operator.
source§

fn sub(self, rhs: u8) -> Self::Output

Performs the - operation. Read more
source§

impl Zeroable for ZoomLevel

§

fn zeroed() -> Self

source§

impl Copy for ZoomLevel

source§

impl Eq for ZoomLevel

source§

impl Pod for ZoomLevel

source§

impl StructuralEq for ZoomLevel

source§

impl StructuralPartialEq for ZoomLevel

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere + __S: Serializer,

Serialize this value into the given Serde serializer. Read more
source§

impl Sub<u8> for ZoomLevel

§

type Output = ZoomLevel

The resulting type after applying the - operator.
source§

fn sub(self, rhs: u8) -> Self::Output

Performs the - operation. Read more
source§

impl Zeroable for ZoomLevel

§

fn zeroed() -> Self

source§

impl Copy for ZoomLevel

source§

impl Eq for ZoomLevel

source§

impl Pod for ZoomLevel

source§

impl StructuralEq for ZoomLevel

source§

impl StructuralPartialEq for ZoomLevel

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> CheckedBitPattern for Twhere diff --git a/docs/api/maplibre/index.html b/docs/api/maplibre/index.html index 2a2aede8..b97dd780 100644 --- a/docs/api/maplibre/index.html +++ b/docs/api/maplibre/index.html @@ -1,4 +1,4 @@ -maplibre - Rust

Crate maplibre

source ·
Expand description

Maplibre-rs

+maplibre - Rust

Crate maplibre

source ·
Expand description

Maplibre-rs

A multi-platform library for rendering vector tile maps with WebGPU.

Maplibre-rs is a map renderer that can run natively on MacOS, Linux, Windows, Android, iOS and the web. It takes advantage of Lyon to tessellate vector tiles and WebGPU to display them efficiently. @@ -9,4 +9,4 @@ Maplibre-rs also has an headless mode (work in progress) that can gener

maplibre = "0.0.2"
 

Modules

  • Collection of utilities used to perform certain calculations more conveniently.
  • Provides utilities related to coordinates.
  • Handles IO related processing as well as multithreading.
  • Handles platform specific code. Depending on the compilation target, different parts of this module are used.
  • This module implements the rendering algorithm of maplibre-rs. It manages the whole -communication with the GPU.
  • Vector tile format styling.
  • Tessellation for lines and polygons is implemented here.
  • Nested message and enum types in Tile.
  • Utils which are used internally
  • Utilities for the window system.

Macros

\ No newline at end of file +communication with the GPU.
  • Vector tile format styling.
  • Tessellation for lines and polygons is implemented here.
  • Nested message and enum types in Tile.
  • Utils which are used internally
  • Utilities for the window system.
  • Macros

    \ No newline at end of file diff --git a/docs/api/maplibre/io/apc/enum.MessageError.html b/docs/api/maplibre/io/apc/enum.MessageError.html index c2cb4b19..24d2cafc 100644 --- a/docs/api/maplibre/io/apc/enum.MessageError.html +++ b/docs/api/maplibre/io/apc/enum.MessageError.html @@ -1,6 +1,6 @@ MessageError in maplibre::io::apc - Rust
    pub enum MessageError {
         CastError(Box<dyn Any>),
    -}

    Variants§

    §

    CastError(Box<dyn Any>)

    Trait Implementations§

    source§

    impl Debug for MessageError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for MessageError

    source§

    fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for MessageError

    1.30.0 · source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, demand: &mut Demand<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere +}

    Variants§

    §

    CastError(Box<dyn Any>)

    Trait Implementations§

    source§

    impl Debug for MessageError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for MessageError

    source§

    fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for MessageError

    1.30.0 · source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, demand: &mut Demand<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for Twhere T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for Twhere T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Downcast<T> for T

    §

    fn downcast(&self) -> &T

    §

    impl<T> Downcast for Twhere diff --git a/docs/api/maplibre/io/apc/enum.ProcedureError.html b/docs/api/maplibre/io/apc/enum.ProcedureError.html index 1df1685f..51d1f3d3 100644 --- a/docs/api/maplibre/io/apc/enum.ProcedureError.html +++ b/docs/api/maplibre/io/apc/enum.ProcedureError.html @@ -3,7 +3,7 @@ Execution(Box<dyn Error>), Send(SendError), }

    Variants§

    §

    IncompatibleInput

    The Input is not compatible with the procedure

    -
    §

    Execution(Box<dyn Error>)

    §

    Send(SendError)

    Trait Implementations§

    source§

    impl Debug for ProcedureError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for ProcedureError

    source§

    fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for ProcedureError

    1.30.0 · source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, demand: &mut Demand<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere +

    §

    Execution(Box<dyn Error>)

    §

    Send(SendError)

    Trait Implementations§

    source§

    impl Debug for ProcedureError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for ProcedureError

    source§

    fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for ProcedureError

    1.30.0 · source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, demand: &mut Demand<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for Twhere T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for Twhere T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Downcast<T> for T

    §

    fn downcast(&self) -> &T

    §

    impl<T> Downcast for Twhere diff --git a/docs/api/maplibre/io/apc/enum.SendError.html b/docs/api/maplibre/io/apc/enum.SendError.html index 181f5edb..9f8b7e56 100644 --- a/docs/api/maplibre/io/apc/enum.SendError.html +++ b/docs/api/maplibre/io/apc/enum.SendError.html @@ -1,6 +1,6 @@ SendError in maplibre::io::apc - Rust

    Enum maplibre::io::apc::SendError

    source ·
    pub enum SendError {
         Transmission,
    -}

    Variants§

    §

    Transmission

    Trait Implementations§

    source§

    impl Debug for SendError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for SendError

    source§

    fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for SendError

    1.30.0 · source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, demand: &mut Demand<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere +}

    Variants§

    §

    Transmission

    Trait Implementations§

    source§

    impl Debug for SendError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for SendError

    source§

    fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for SendError

    1.30.0 · source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, demand: &mut Demand<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for Twhere T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for Twhere T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Downcast<T> for T

    §

    fn downcast(&self) -> &T

    §

    impl<T> Downcast for Twhere diff --git a/docs/api/maplibre/io/apc/trait.MessageTag.html b/docs/api/maplibre/io/apc/trait.MessageTag.html index 42b0edbc..a5c2c737 100644 --- a/docs/api/maplibre/io/apc/trait.MessageTag.html +++ b/docs/api/maplibre/io/apc/trait.MessageTag.html @@ -1,4 +1,4 @@ MessageTag in maplibre::io::apc - Rust

    Trait maplibre::io::apc::MessageTag

    source ·
    pub trait MessageTag: DynHash + Debug + Send + Sync + 'static { }
    Expand description

    Defines a set of strongly-typed labels for a class of objects

    Trait Implementations§

    source§

    impl Clone for Box<dyn MessageTag>

    source§

    fn clone(&self) -> Self

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Hash for dyn MessageTag

    source§

    fn hash<H: Hasher>(&self, state: &mut H)

    Feeds this value into the given Hasher. Read more
    source§

    impl PartialEq<dyn MessageTag> for dyn MessageTag

    source§

    fn eq(&self, other: &Self) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl Eq for dyn MessageTag

    Implementations on Foreign Types§

    source§

    impl MessageTag for &'static str

    source§

    impl MessageTag for u32

    source§

    impl MessageTag for Cow<'static, str>

    Implementors§

    \ No newline at end of file +sufficient, and should not be overridden without very good reason.

    source§

    impl Eq for dyn MessageTag

    Implementations on Foreign Types§

    source§

    impl MessageTag for &'static str

    source§

    impl MessageTag for Cow<'static, str>

    source§

    impl MessageTag for u32

    Implementors§

    \ No newline at end of file diff --git a/docs/api/maplibre/io/source_client/struct.SourceFetchError.html b/docs/api/maplibre/io/source_client/struct.SourceFetchError.html index 15d77368..5d47f827 100644 --- a/docs/api/maplibre/io/source_client/struct.SourceFetchError.html +++ b/docs/api/maplibre/io/source_client/struct.SourceFetchError.html @@ -1,4 +1,4 @@ -SourceFetchError in maplibre::io::source_client - Rust
    pub struct SourceFetchError(pub Box<dyn Error>);

    Tuple Fields§

    §0: Box<dyn Error>

    Trait Implementations§

    source§

    impl Debug for SourceFetchError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for SourceFetchError

    source§

    fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for SourceFetchError

    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, demand: &mut Demand<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<Error> for SourceFetchError

    source§

    fn from(err: Error) -> Self

    Converts to this type from the input type.
    source§

    impl From<Error> for SourceFetchError

    source§

    fn from(err: Error) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere +SourceFetchError in maplibre::io::source_client - Rust
    pub struct SourceFetchError(pub Box<dyn Error>);

    Tuple Fields§

    §0: Box<dyn Error>

    Trait Implementations§

    source§

    impl Debug for SourceFetchError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for SourceFetchError

    source§

    fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for SourceFetchError

    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, demand: &mut Demand<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<Error> for SourceFetchError

    source§

    fn from(err: Error) -> Self

    Converts to this type from the input type.
    source§

    impl From<Error> for SourceFetchError

    source§

    fn from(err: Error) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for Twhere T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for Twhere T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Downcast<T> for T

    §

    fn downcast(&self) -> &T

    §

    impl<T> Downcast for Twhere diff --git a/docs/api/maplibre/plugin/trait.Plugin.html b/docs/api/maplibre/plugin/trait.Plugin.html index c738f3f6..f1981cd7 100644 --- a/docs/api/maplibre/plugin/trait.Plugin.html +++ b/docs/api/maplibre/plugin/trait.Plugin.html @@ -13,4 +13,4 @@ kernel: Rc<Kernel<E>>, world: &mut World, graph: &mut RenderGraph -)

    Implementors§

    \ No newline at end of file +)

    Implementors§

    \ No newline at end of file diff --git a/docs/api/maplibre/raster/process_raster/enum.ProcessRasterError.html b/docs/api/maplibre/raster/process_raster/enum.ProcessRasterError.html index aba19e8e..91dbd79a 100644 --- a/docs/api/maplibre/raster/process_raster/enum.ProcessRasterError.html +++ b/docs/api/maplibre/raster/process_raster/enum.ProcessRasterError.html @@ -1,7 +1,7 @@ ProcessRasterError in maplibre::raster::process_raster - Rust
    pub enum ProcessRasterError {
         Processing(Box<dyn Error>),
     }

    Variants§

    §

    Processing(Box<dyn Error>)

    Error during processing of the pipeline

    -

    Trait Implementations§

    source§

    impl Debug for ProcessRasterError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for ProcessRasterError

    source§

    fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for ProcessRasterError

    1.30.0 · source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, demand: &mut Demand<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere +

    Trait Implementations§

    source§

    impl Debug for ProcessRasterError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for ProcessRasterError

    source§

    fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for ProcessRasterError

    1.30.0 · source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, demand: &mut Demand<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for Twhere T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for Twhere T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Downcast<T> for T

    §

    fn downcast(&self) -> &T

    §

    impl<T> Downcast for Twhere diff --git a/docs/api/maplibre/raster/request_system/fn.fetch_raster_apc.html b/docs/api/maplibre/raster/request_system/fn.fetch_raster_apc.html index 577a0d2c..a5f4e474 100644 --- a/docs/api/maplibre/raster/request_system/fn.fetch_raster_apc.html +++ b/docs/api/maplibre/raster/request_system/fn.fetch_raster_apc.html @@ -1,4 +1,4 @@ -fetch_raster_apc in maplibre::raster::request_system - Rust
    pub fn fetch_raster_apc<K: OffscreenKernelEnvironment, T: RasterTransferables, C: Context + Clone + Send>(
    +fetch_raster_apc in maplibre::raster::request_system - Rust
    pub fn fetch_raster_apc<K: OffscreenKernelEnvironment, T: RasterTransferables, C: Context + Clone + Send>(
         input: Input,
         context: C,
         kernel: K
    diff --git a/docs/api/maplibre/raster/request_system/index.html b/docs/api/maplibre/raster/request_system/index.html
    index 135f5476..51d38491 100644
    --- a/docs/api/maplibre/raster/request_system/index.html
    +++ b/docs/api/maplibre/raster/request_system/index.html
    @@ -1,2 +1,2 @@
    -maplibre::raster::request_system - Rust
    Expand description

    Requests tiles which are currently in view

    +maplibre::raster::request_system - Rust
    Expand description

    Requests tiles which are currently in view

    Structs

    Functions

    \ No newline at end of file diff --git a/docs/api/maplibre/raster/request_system/struct.RequestSystem.html b/docs/api/maplibre/raster/request_system/struct.RequestSystem.html index bd8c01eb..782668f9 100644 --- a/docs/api/maplibre/raster/request_system/struct.RequestSystem.html +++ b/docs/api/maplibre/raster/request_system/struct.RequestSystem.html @@ -1,7 +1,7 @@ -RequestSystem in maplibre::raster::request_system - Rust
    pub struct RequestSystem<E: Environment, T: RasterTransferables> {
    +RequestSystem in maplibre::raster::request_system - Rust
    pub struct RequestSystem<E: Environment, T: RasterTransferables> {
         kernel: Rc<Kernel<E>>,
         phantom_t: PhantomData<T>,
    -}

    Fields§

    §kernel: Rc<Kernel<E>>§phantom_t: PhantomData<T>

    Implementations§

    source§

    impl<E: Environment, T: RasterTransferables> RequestSystem<E, T>

    source

    pub fn new(kernel: &Rc<Kernel<E>>) -> Self

    Trait Implementations§

    source§

    impl<E: Environment, T: RasterTransferables> System for RequestSystem<E, T>

    source§

    fn name(&self) -> Cow<'static, str>

    Returns the system’s name.
    source§

    fn run(&mut self, _: &mut MapContext)

    Auto Trait Implementations§

    §

    impl<E, T> RefUnwindSafe for RequestSystem<E, T>where +}

    Fields§

    §kernel: Rc<Kernel<E>>§phantom_t: PhantomData<T>

    Implementations§

    source§

    impl<E: Environment, T: RasterTransferables> RequestSystem<E, T>

    source

    pub fn new(kernel: &Rc<Kernel<E>>) -> Self

    Trait Implementations§

    source§

    impl<E: Environment, T: RasterTransferables> System for RequestSystem<E, T>

    source§

    fn name(&self) -> Cow<'static, str>

    Returns the system’s name.
    source§

    fn run(&mut self, _: &mut MapContext)

    Auto Trait Implementations§

    §

    impl<E, T> RefUnwindSafe for RequestSystem<E, T>where T: RefUnwindSafe, <E as Environment>::AsyncProcedureCall: RefUnwindSafe, <E as Environment>::HttpClient: RefUnwindSafe, diff --git a/docs/api/maplibre/raster/resource/raster/struct.RasterResources.html b/docs/api/maplibre/raster/resource/raster/struct.RasterResources.html index 26b49dd7..7edb2c57 100644 --- a/docs/api/maplibre/raster/resource/raster/struct.RasterResources.html +++ b/docs/api/maplibre/raster/resource/raster/struct.RasterResources.html @@ -24,11 +24,11 @@ coords: &WorldTileCoords, texture: Texture )

    Creates a bind group for each fetched raster tile and store it inside a hashmap.

    -
    source

    pub fn pipeline(&self) -> &RenderPipeline

    Trait Implementations§

    source§

    impl HasTile for RasterResources

    source

    pub fn pipeline(&self) -> &RenderPipeline

    Trait Implementations§

    source§

    impl HasTile for RasterResources

    source§

    fn has_tile(&self, coords: WorldTileCoords, _world: &World) -> bool

    source§

    fn get_available_parent( &self, coords: WorldTileCoords, world: &World -) -> Option<WorldTileCoords>

    source§

    fn get_available_children( +) -> Option<WorldTileCoords>

    source§

    fn get_available_children( &self, coords: WorldTileCoords, world: &World, diff --git a/docs/api/maplibre/raster/upload_system/fn.upload_raster_layer.html b/docs/api/maplibre/raster/upload_system/fn.upload_raster_layer.html index f52e27c6..67f23e10 100644 --- a/docs/api/maplibre/raster/upload_system/fn.upload_raster_layer.html +++ b/docs/api/maplibre/raster/upload_system/fn.upload_raster_layer.html @@ -1,4 +1,4 @@ -upload_raster_layer in maplibre::raster::upload_system - Rust
    fn upload_raster_layer(
    +upload_raster_layer in maplibre::raster::upload_system - Rust
    fn upload_raster_layer(
         raster_resources: &mut RasterResources,
         device: &Device,
         queue: &Queue,
    diff --git a/docs/api/maplibre/raster/upload_system/fn.upload_system.html b/docs/api/maplibre/raster/upload_system/fn.upload_system.html
    index 28fe75c7..c933c2cd 100644
    --- a/docs/api/maplibre/raster/upload_system/fn.upload_system.html
    +++ b/docs/api/maplibre/raster/upload_system/fn.upload_system.html
    @@ -1 +1 @@
    -upload_system in maplibre::raster::upload_system - Rust
    pub fn upload_system(_: &mut MapContext)
    \ No newline at end of file +upload_system in maplibre::raster::upload_system - Rust
    pub fn upload_system(_: &mut MapContext)
    \ No newline at end of file diff --git a/docs/api/maplibre/raster/upload_system/index.html b/docs/api/maplibre/raster/upload_system/index.html index f688a89d..8a806fd2 100644 --- a/docs/api/maplibre/raster/upload_system/index.html +++ b/docs/api/maplibre/raster/upload_system/index.html @@ -1,2 +1,2 @@ -maplibre::raster::upload_system - Rust
    Expand description

    Uploads data to the GPU which is needed for rendering.

    +maplibre::raster::upload_system - Rust
    Expand description

    Uploads data to the GPU which is needed for rendering.

    Functions

    \ No newline at end of file diff --git a/docs/api/maplibre/render/camera/constant.FLIP_Y.html b/docs/api/maplibre/render/camera/constant.FLIP_Y.html index cc853be5..47495a3b 100644 --- a/docs/api/maplibre/render/camera/constant.FLIP_Y.html +++ b/docs/api/maplibre/render/camera/constant.FLIP_Y.html @@ -1 +1 @@ -FLIP_Y in maplibre::render::camera - Rust

    Constant maplibre::render::camera::FLIP_Y

    source ·
    pub const FLIP_Y: Matrix4<f64>;
    \ No newline at end of file +FLIP_Y in maplibre::render::camera - Rust

    Constant maplibre::render::camera::FLIP_Y

    source ·
    pub const FLIP_Y: Matrix4<f64>;
    \ No newline at end of file diff --git a/docs/api/maplibre/render/camera/constant.MAX_PITCH.html b/docs/api/maplibre/render/camera/constant.MAX_PITCH.html index 8470777d..565fee3a 100644 --- a/docs/api/maplibre/render/camera/constant.MAX_PITCH.html +++ b/docs/api/maplibre/render/camera/constant.MAX_PITCH.html @@ -1 +1 @@ -MAX_PITCH in maplibre::render::camera - Rust

    Constant maplibre::render::camera::MAX_PITCH

    source ·
    const MAX_PITCH: Rad<f64>;
    \ No newline at end of file +MAX_PITCH in maplibre::render::camera - Rust

    Constant maplibre::render::camera::MAX_PITCH

    source ·
    const MAX_PITCH: Deg<f64>;
    \ No newline at end of file diff --git a/docs/api/maplibre/render/camera/constant.MAX_YAW.html b/docs/api/maplibre/render/camera/constant.MAX_YAW.html new file mode 100644 index 00000000..fd84ccbb --- /dev/null +++ b/docs/api/maplibre/render/camera/constant.MAX_YAW.html @@ -0,0 +1 @@ +MAX_YAW in maplibre::render::camera - Rust

    Constant maplibre::render::camera::MAX_YAW

    source ·
    const MAX_YAW: Deg<f64>;
    \ No newline at end of file diff --git a/docs/api/maplibre/render/camera/constant.MIN_PITCH.html b/docs/api/maplibre/render/camera/constant.MIN_PITCH.html index 9453c310..30889d21 100644 --- a/docs/api/maplibre/render/camera/constant.MIN_PITCH.html +++ b/docs/api/maplibre/render/camera/constant.MIN_PITCH.html @@ -1 +1 @@ -MIN_PITCH in maplibre::render::camera - Rust

    Constant maplibre::render::camera::MIN_PITCH

    source ·
    const MIN_PITCH: Rad<f64>;
    \ No newline at end of file +MIN_PITCH in maplibre::render::camera - Rust

    Constant maplibre::render::camera::MIN_PITCH

    source ·
    const MIN_PITCH: Deg<f64>;
    \ No newline at end of file diff --git a/docs/api/maplibre/render/camera/constant.MIN_YAW.html b/docs/api/maplibre/render/camera/constant.MIN_YAW.html new file mode 100644 index 00000000..a6ffd5cb --- /dev/null +++ b/docs/api/maplibre/render/camera/constant.MIN_YAW.html @@ -0,0 +1 @@ +MIN_YAW in maplibre::render::camera - Rust

    Constant maplibre::render::camera::MIN_YAW

    source ·
    const MIN_YAW: Deg<f64>;
    \ No newline at end of file diff --git a/docs/api/maplibre/render/camera/constant.OPENGL_TO_WGPU_MATRIX.html b/docs/api/maplibre/render/camera/constant.OPENGL_TO_WGPU_MATRIX.html index 64ab73d9..e79af771 100644 --- a/docs/api/maplibre/render/camera/constant.OPENGL_TO_WGPU_MATRIX.html +++ b/docs/api/maplibre/render/camera/constant.OPENGL_TO_WGPU_MATRIX.html @@ -1 +1 @@ -OPENGL_TO_WGPU_MATRIX in maplibre::render::camera - Rust
    pub const OPENGL_TO_WGPU_MATRIX: Matrix4<f64>;
    \ No newline at end of file +OPENGL_TO_WGPU_MATRIX in maplibre::render::camera - Rust
    pub const OPENGL_TO_WGPU_MATRIX: Matrix4<f64>;
    \ No newline at end of file diff --git a/docs/api/maplibre/render/camera/index.html b/docs/api/maplibre/render/camera/index.html index a8346350..c3d60dea 100644 --- a/docs/api/maplibre/render/camera/index.html +++ b/docs/api/maplibre/render/camera/index.html @@ -1,2 +1,2 @@ -maplibre::render::camera - Rust
    \ No newline at end of file +maplibre::render::camera - Rust
    \ No newline at end of file diff --git a/docs/api/maplibre/render/camera/sidebar-items.js b/docs/api/maplibre/render/camera/sidebar-items.js index 25a555bf..772292a4 100644 --- a/docs/api/maplibre/render/camera/sidebar-items.js +++ b/docs/api/maplibre/render/camera/sidebar-items.js @@ -1 +1 @@ -window.SIDEBAR_ITEMS = {"constant":["FLIP_Y","MAX_PITCH","MIN_PITCH","OPENGL_TO_WGPU_MATRIX"],"struct":["Camera","InvertedViewProjection","ModelViewProjection","Perspective","ViewProjection"]}; \ No newline at end of file +window.SIDEBAR_ITEMS = {"constant":["FLIP_Y","MAX_PITCH","MAX_YAW","MIN_PITCH","MIN_YAW","OPENGL_TO_WGPU_MATRIX"],"struct":["Camera","EdgeInsets","InvertedViewProjection","ModelViewProjection","Perspective","ViewProjection"]}; \ No newline at end of file diff --git a/docs/api/maplibre/render/camera/struct.Camera.html b/docs/api/maplibre/render/camera/struct.Camera.html index 7e8d6e5b..3fca3833 100644 --- a/docs/api/maplibre/render/camera/struct.Camera.html +++ b/docs/api/maplibre/render/camera/struct.Camera.html @@ -1,62 +1,13 @@ -Camera in maplibre::render::camera - Rust

    Struct maplibre::render::camera::Camera

    source ·
    pub struct Camera {
    -    position: Point3<f64>,
    +Camera in maplibre::render::camera - Rust

    Struct maplibre::render::camera::Camera

    source ·
    pub struct Camera {
    +    position: Point2<f64>,
         yaw: Rad<f64>,
         pitch: Rad<f64>,
    -    width: f64,
    -    height: f64,
    -}

    Fields§

    §position: Point3<f64>§yaw: Rad<f64>§pitch: Rad<f64>§width: f64§height: f64

    Implementations§

    source§

    impl Camera

    source

    pub fn new<V: Into<Point3<f64>>, Y: Into<Rad<f64>>, P: Into<Rad<f64>>>( + roll: Rad<f64>, +}

    Fields§

    §position: Point2<f64>§yaw: Rad<f64>§pitch: Rad<f64>§roll: Rad<f64>

    Implementations§

    source§

    impl Camera

    source

    pub fn new<V: Into<Point2<f64>>, Y: Into<Rad<f64>>, P: Into<Rad<f64>>>( position: V, yaw: Y, - pitch: P, - width: u32, - height: u32 -) -> Self

    source

    pub fn resize(&mut self, width: u32, height: u32)

    source

    fn calc_matrix(&self) -> Matrix4<f64>

    source

    pub fn calc_view_proj(&self, perspective: &Perspective) -> ViewProjection

    source

    fn clip_to_window_transform(&self) -> Matrix4<f64>

    A transform which can be used to transform between clip and window space. -Adopted from here (Direct3D).

    -
    source

    fn clip_to_window(&self, clip: &Vector4<f64>) -> Vector4<f64>

    Transforms coordinates in clip space to window coordinates.

    -

    Adopted from here (Direct3D).

    -
    source

    fn clip_to_window_vulkan(&self, clip: &Vector4<f64>) -> Vector3<f64>

    Alternative implementation to clip_to_window. Transforms coordinates in clip space to -window coordinates.

    -

    Adopted from here -and here (Vulkan).

    -
    source

    fn window_to_world( - &self, - window: &Vector3<f64>, - inverted_view_proj: &InvertedViewProjection -) -> Vector3<f64>

    Order of transformations reversed: https://computergraphics.stackexchange.com/questions/6087/screen-space-coordinates-to-eye-space-conversion/6093 -w is lost.

    -

    OpenGL explanation: https://www.khronos.org/opengl/wiki/Compute_eye_space_from_window_space#From_window_to_ndc

    -
    source

    fn window_to_world_nalgebra( - window: &Vector3<f64>, - inverted_view_proj: &InvertedViewProjection, - width: f64, - height: f64 -) -> Vector3<f64>

    Alternative implementation to window_to_world

    -

    Adopted from here.

    -
    source

    pub fn window_to_world_at_ground( - &self, - window: &Vector2<f64>, - inverted_view_proj: &InvertedViewProjection, - bound: bool -) -> Option<Vector3<f64>>

    Gets the world coordinates for the specified window coordinates on the z=0 plane.

    -
    source

    pub fn view_region_bounding_box( - &self, - inverted_view_proj: &InvertedViewProjection -) -> Option<Aabb2<f64>>

    Calculates an Aabb2 bounding box which contains at least the visible area on the z=0 -plane. One can think of it as being the bounding box of the geometry which forms the -intersection between the viewing frustum and the z=0 plane.

    -

    This implementation works in the world 3D space. It casts rays from the corners of the -window to calculate intersections points with the z=0 plane. Then a bounding box is -calculated.

    -

    Note: It is possible that no such bounding box exists. This is the case if the z=0 plane -is not in view.

    -
    source

    pub fn view_region_bounding_box_ndc( - &self, - perspective: &Perspective -) -> Option<Aabb2<f64>>

    An alternative implementation for view_bounding_box.

    -

    This implementation works in the NDC space. We are creating a plane in the world 3D space. -Then we are transforming it to the NDC space. In NDC space it is easy to calculate -the intersection points between an Aabb3 and a plane. The resulting Aabb2 is returned.

    -
    source

    pub fn position(&self) -> Point3<f64>

    source

    pub fn yaw(&self) -> Rad<f64>

    source

    pub fn rotate<P: Into<Rad<f64>>>(&mut self, delta: P)

    source

    pub fn pitch(&self) -> Rad<f64>

    source

    pub fn tilt<P: Into<Rad<f64>>>(&mut self, delta: P)

    source

    pub fn move_relative(&mut self, delta: Vector3<f64>)

    source

    pub fn move_to(&mut self, new_position: Point3<f64>)

    source

    pub fn position_vector(&self) -> Vector3<f64>

    source

    pub fn homogenous_position(&self) -> Vector4<f64>

    Trait Implementations§

    source§

    impl Clone for Camera

    source§

    fn clone(&self) -> Camera

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for Camera

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl SignificantlyDifferent<Camera> for Camera

    §

    type Epsilon = f64

    source§

    fn ne(&self, other: &Self, epsilon: Self::Epsilon) -> bool

    This method tests for self and other values to be significantly different

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere + pitch: P +) -> Self

    source

    pub fn calc_matrix(&self, camera_height: f64) -> Matrix4<f64>

    source

    pub fn position(&self) -> Point2<f64>

    source

    pub fn get_yaw(&self) -> Rad<f64>

    source

    pub fn yaw<P: Into<Rad<f64>>>(&mut self, delta: P)

    source

    pub fn get_roll(&self) -> Rad<f64>

    source

    pub fn roll<P: Into<Rad<f64>>>(&mut self, delta: P)

    source

    pub fn get_pitch(&self) -> Rad<f64>

    source

    pub fn pitch<P: Into<Rad<f64>>>(&mut self, delta: P)

    source

    pub fn move_relative(&mut self, delta: Vector2<f64>)

    source

    pub fn move_to(&mut self, new_position: Point2<f64>)

    source

    pub fn position_vector(&self) -> Vector2<f64>

    source

    pub fn to_3d(&self, camera_height: f64) -> Point3<f64>

    source

    pub fn set_yaw<P: Into<Rad<f64>>>(&mut self, yaw: P)

    source

    pub fn set_pitch<P: Into<Rad<f64>>>(&mut self, pitch: P)

    source

    pub fn set_roll<P: Into<Rad<f64>>>(&mut self, roll: P)

    Trait Implementations§

    source§

    impl Clone for Camera

    source§

    fn clone(&self) -> Camera

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for Camera

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl SignificantlyDifferent<Camera> for Camera

    §

    type Epsilon = f64

    source§

    fn ne(&self, other: &Self, epsilon: Self::Epsilon) -> bool

    This method tests for self and other values to be significantly different

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for Twhere T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for Twhere T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Downcast<T> for T

    §

    fn downcast(&self) -> &T

    §

    impl<T> Downcast for Twhere diff --git a/docs/api/maplibre/render/camera/struct.EdgeInsets.html b/docs/api/maplibre/render/camera/struct.EdgeInsets.html new file mode 100644 index 00000000..6da03a2a --- /dev/null +++ b/docs/api/maplibre/render/camera/struct.EdgeInsets.html @@ -0,0 +1,41 @@ +EdgeInsets in maplibre::render::camera - Rust
    pub struct EdgeInsets {
    +    pub top: f64,
    +    pub bottom: f64,
    +    pub left: f64,
    +    pub right: f64,
    +}

    Fields§

    §top: f64§bottom: f64§left: f64§right: f64

    Implementations§

    source§

    impl EdgeInsets

    source

    pub fn center(&self, width: f64, height: f64) -> Point2<f64>

    Utility method that computes the new apprent center or vanishing point after applying insets. +This is in pixels and with the top left being (0.0) and +y being downwards.

    +

    @param {number} width the width +@param {number} height the height +@returns {Point} the point +@memberof EdgeInsets

    +

    Trait Implementations§

    source§

    impl Clone for EdgeInsets

    source§

    fn clone(&self) -> EdgeInsets

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Default for EdgeInsets

    source§

    fn default() -> EdgeInsets

    Returns the “default value” for a type. Read more
    source§

    impl PartialEq<EdgeInsets> for EdgeInsets

    source§

    fn eq(&self, other: &EdgeInsets) -> bool

    This method tests for self and other values to be equal, and is used +by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always +sufficient, and should not be overridden without very good reason.
    source§

    impl Copy for EdgeInsets

    source§

    impl StructuralPartialEq for EdgeInsets

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere + T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for Twhere + T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for Twhere + T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Downcast<T> for T

    §

    fn downcast(&self) -> &T

    §

    impl<T> Downcast for Twhere + T: Any,

    §

    fn into_any(self: Box<T, Global>) -> Box<dyn Any, Global>

    Convert Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can +then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.
    §

    fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>

    Convert Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be +further downcast into Rc<ConcreteType> where ConcreteType implements Trait.
    §

    fn as_any(&self) -> &(dyn Any + 'static)

    Convert &Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot +generate &Any’s vtable from &Trait’s.
    §

    fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)

    Convert &mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot +generate &mut Any’s vtable from &mut Trait’s.
    §

    impl<T> DowncastSync for Twhere + T: Any + Send + Sync,

    §

    fn into_any_arc(self: Arc<T>) -> Arc<dyn Any + Sync + Send>

    Convert Arc<Trait> (where Trait: Downcast) to Arc<Any>. Arc<Any> can then be +further downcast into Arc<ConcreteType> where ConcreteType implements Trait.
    source§

    impl<T> From<T> for T

    source§

    fn from(t: T) -> T

    Returns the argument unchanged.

    +
    source§

    impl<T> Instrument for T

    source§

    fn instrument(self, span: Span) -> Instrumented<Self>

    Instruments this type with the provided Span, returning an +Instrumented wrapper. Read more
    source§

    fn in_current_span(self) -> Instrumented<Self>

    Instruments this type with the current Span, returning an +Instrumented wrapper. Read more
    source§

    impl<T, U> Into<U> for Twhere + U: From<T>,

    source§

    fn into(self) -> U

    Calls U::from(self).

    +

    That is, this conversion is whatever the implementation of +From<T> for U chooses to do.

    +
    source§

    impl<T> Same<T> for T

    §

    type Output = T

    Should always be Self
    source§

    impl<T> ToOwned for Twhere + T: Clone,

    §

    type Owned = T

    The resulting type after obtaining ownership.
    source§

    fn to_owned(&self) -> T

    Creates owned data from borrowed data, usually by cloning. Read more
    source§

    fn clone_into(&self, target: &mut T)

    Uses borrowed data to replace owned data, usually by cloning. Read more
    source§

    impl<T, U> TryFrom<U> for Twhere + U: Into<T>,

    §

    type Error = Infallible

    The type returned in the event of a conversion error.
    source§

    fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

    Performs the conversion.
    source§

    impl<T, U> TryInto<U> for Twhere + U: TryFrom<T>,

    §

    type Error = <U as TryFrom<T>>::Error

    The type returned in the event of a conversion error.
    source§

    fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

    Performs the conversion.
    §

    impl<T> Upcast<T> for T

    §

    fn upcast(&self) -> Option<&T>

    source§

    impl<T> WithSubscriber for T

    source§

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where + S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a +WithDispatch wrapper. Read more
    source§

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a +WithDispatch wrapper. Read more
    §

    impl<G1, G2> Within<G2> for G1where + G2: Contains<G1>,

    §

    fn is_within(&self, b: &G2) -> bool

    source§

    impl<T> Resource for Twhere + T: 'static,

    §

    impl<T> WasmNotSend for Twhere + T: Send,

    §

    impl<T> WasmNotSync for Twhere + T: Sync,

    \ No newline at end of file diff --git a/docs/api/maplibre/render/camera/struct.InvertedViewProjection.html b/docs/api/maplibre/render/camera/struct.InvertedViewProjection.html index 25361412..256d8d5d 100644 --- a/docs/api/maplibre/render/camera/struct.InvertedViewProjection.html +++ b/docs/api/maplibre/render/camera/struct.InvertedViewProjection.html @@ -1,4 +1,4 @@ -InvertedViewProjection in maplibre::render::camera - Rust
    pub struct InvertedViewProjection(Matrix4<f64>);

    Tuple Fields§

    §0: Matrix4<f64>

    Implementations§

    source§

    impl InvertedViewProjection

    source

    pub fn project(&self, vector: Vector4<f64>) -> Vector4<f64>

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere +InvertedViewProjection in maplibre::render::camera - Rust
    pub struct InvertedViewProjection(Matrix4<f64>);

    Tuple Fields§

    §0: Matrix4<f64>

    Implementations§

    source§

    impl InvertedViewProjection

    source

    pub fn project(&self, vector: Vector4<f64>) -> Vector4<f64>

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for Twhere T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for Twhere T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Downcast<T> for T

    §

    fn downcast(&self) -> &T

    §

    impl<T> Downcast for Twhere diff --git a/docs/api/maplibre/render/camera/struct.ModelViewProjection.html b/docs/api/maplibre/render/camera/struct.ModelViewProjection.html index f2656967..7ed88d0b 100644 --- a/docs/api/maplibre/render/camera/struct.ModelViewProjection.html +++ b/docs/api/maplibre/render/camera/struct.ModelViewProjection.html @@ -1,4 +1,4 @@ -ModelViewProjection in maplibre::render::camera - Rust
    pub struct ModelViewProjection(Matrix4<f64>);

    Tuple Fields§

    §0: Matrix4<f64>

    Implementations§

    source§

    impl ModelViewProjection

    source

    pub fn downcast(&self) -> Matrix4<f32>

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere +ModelViewProjection in maplibre::render::camera - Rust
    pub struct ModelViewProjection(Matrix4<f64>);

    Tuple Fields§

    §0: Matrix4<f64>

    Implementations§

    source§

    impl ModelViewProjection

    source

    pub fn downcast(&self) -> Matrix4<f32>

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for Twhere T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for Twhere T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Downcast<T> for T

    §

    fn downcast(&self) -> &T

    §

    impl<T> Downcast for Twhere diff --git a/docs/api/maplibre/render/camera/struct.Perspective.html b/docs/api/maplibre/render/camera/struct.Perspective.html index 59433867..e1360cca 100644 --- a/docs/api/maplibre/render/camera/struct.Perspective.html +++ b/docs/api/maplibre/render/camera/struct.Perspective.html @@ -1,19 +1,12 @@ -Perspective in maplibre::render::camera - Rust
    pub struct Perspective {
    +Perspective in maplibre::render::camera - Rust
    pub struct Perspective {
         fovy: Rad<f64>,
    -    znear: f64,
    -    zfar: f64,
    -    current_projection: Matrix4<f64>,
    -}

    Fields§

    §fovy: Rad<f64>§znear: f64§zfar: f64§current_projection: Matrix4<f64>

    Implementations§

    source§

    impl Perspective

    source

    pub fn new<F: Into<Rad<f64>>>( - width: u32, - height: u32, - fovy: F, - znear: f64, - zfar: f64 -) -> Self

    source

    pub fn resize(&mut self, width: u32, height: u32)

    source

    fn calc_matrix( - aspect: f64, - fovy: Rad<f64>, - znear: f64, - zfar: f64 +}

    Fields§

    §fovy: Rad<f64>

    Implementations§

    source§

    impl Perspective

    source

    pub fn new<F: Into<Rad<f64>>>(fovy: F) -> Self

    source

    pub fn fovy(&self) -> Rad<f64>

    source

    pub fn fovx(&self, width: f64, height: f64) -> Rad<f64>

    source

    pub fn y_tan(&self) -> f64

    source

    pub fn x_tan(&self, width: f64, height: f64) -> f64

    source

    pub fn offset_x(&self, center_offset: Point2<f64>, width: f64) -> f64

    source

    pub fn offset_y(&self, center_offset: Point2<f64>, height: f64) -> f64

    source

    pub fn calc_matrix(&self, aspect: f64, near_z: f64, far_z: f64) -> Matrix4<f64>

    source

    pub fn calc_matrix_with_center( + &self, + width: f64, + height: f64, + near_z: f64, + far_z: f64, + center_offset: Point2<f64> ) -> Matrix4<f64>

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for Twhere T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for Twhere diff --git a/docs/api/maplibre/render/camera/struct.ViewProjection.html b/docs/api/maplibre/render/camera/struct.ViewProjection.html index 10d700af..8ffa0380 100644 --- a/docs/api/maplibre/render/camera/struct.ViewProjection.html +++ b/docs/api/maplibre/render/camera/struct.ViewProjection.html @@ -1,7 +1,7 @@ -ViewProjection in maplibre::render::camera - Rust
    pub struct ViewProjection(Matrix4<f64>);

    Tuple Fields§

    §0: Matrix4<f64>

    Implementations§

    source§

    impl ViewProjection

    source

    pub fn invert(&self) -> InvertedViewProjection

    source

    pub fn project(&self, vector: Vector4<f64>) -> Vector4<f64>

    source

    pub fn to_model_view_projection( +ViewProjection in maplibre::render::camera - Rust
    pub struct ViewProjection(pub Matrix4<f64>);

    Tuple Fields§

    §0: Matrix4<f64>

    Implementations§

    source§

    impl ViewProjection

    source

    pub fn invert(&self) -> InvertedViewProjection

    source

    pub fn project(&self, vector: Vector4<f64>) -> Vector4<f64>

    source

    pub fn to_model_view_projection( &self, projection: Matrix4<f64> -) -> ModelViewProjection

    source

    pub fn downcast(&self) -> Matrix4<f32>

    Trait Implementations§

    source§

    impl Debug for ViewProjection

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere +) -> ModelViewProjection

    source

    pub fn downcast(&self) -> Matrix4<f32>

    Trait Implementations§

    source§

    impl Clone for ViewProjection

    source§

    fn clone(&self) -> ViewProjection

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ViewProjection

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Copy for ViewProjection

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for Twhere T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for Twhere T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Downcast<T> for T

    §

    fn downcast(&self) -> &T

    §

    impl<T> Downcast for Twhere @@ -18,7 +18,8 @@ further downcast into Arc<ConcreteType> where From<T>,

    source§

    fn into(self) -> U

    Calls U::from(self).

    That is, this conversion is whatever the implementation of From<T> for U chooses to do.

    -
    source§

    impl<T> Same<T> for T

    §

    type Output = T

    Should always be Self
    source§

    impl<T, U> TryFrom<U> for Twhere +

    source§

    impl<T> Same<T> for T

    §

    type Output = T

    Should always be Self
    source§

    impl<T> ToOwned for Twhere + T: Clone,

    §

    type Owned = T

    The resulting type after obtaining ownership.
    source§

    fn to_owned(&self) -> T

    Creates owned data from borrowed data, usually by cloning. Read more
    source§

    fn clone_into(&self, target: &mut T)

    Uses borrowed data to replace owned data, usually by cloning. Read more
    source§

    impl<T, U> TryFrom<U> for Twhere U: Into<T>,

    §

    type Error = Infallible

    The type returned in the event of a conversion error.
    source§

    fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

    Performs the conversion.
    source§

    impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

    §

    type Error = <U as TryFrom<T>>::Error

    The type returned in the event of a conversion error.
    source§

    fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

    Performs the conversion.
    §

    impl<T> Upcast<T> for T

    §

    fn upcast(&self) -> Option<&T>

    source§

    impl<T> WithSubscriber for T

    source§

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a diff --git a/docs/api/maplibre/render/constant.INDEX_FORMAT.html b/docs/api/maplibre/render/constant.INDEX_FORMAT.html index e8a7c3bf..5e38ae87 100644 --- a/docs/api/maplibre/render/constant.INDEX_FORMAT.html +++ b/docs/api/maplibre/render/constant.INDEX_FORMAT.html @@ -1 +1 @@ -INDEX_FORMAT in maplibre::render - Rust

    Constant maplibre::render::INDEX_FORMAT

    source ·
    pub(crate) const INDEX_FORMAT: IndexFormat;
    \ No newline at end of file +INDEX_FORMAT in maplibre::render - Rust

    Constant maplibre::render::INDEX_FORMAT

    source ·
    pub(crate) const INDEX_FORMAT: IndexFormat;
    \ No newline at end of file diff --git a/docs/api/maplibre/render/draw_graph/constant.NAME.html b/docs/api/maplibre/render/draw_graph/constant.NAME.html index c7042329..3427d785 100644 --- a/docs/api/maplibre/render/draw_graph/constant.NAME.html +++ b/docs/api/maplibre/render/draw_graph/constant.NAME.html @@ -1 +1 @@ -NAME in maplibre::render::draw_graph - Rust

    Constant maplibre::render::draw_graph::NAME

    source ·
    pub const NAME: &str = "draw";
    \ No newline at end of file +NAME in maplibre::render::draw_graph - Rust

    Constant maplibre::render::draw_graph::NAME

    source ·
    pub const NAME: &str = "draw";
    \ No newline at end of file diff --git a/docs/api/maplibre/render/draw_graph/index.html b/docs/api/maplibre/render/draw_graph/index.html index 9e81dc7c..cc68f030 100644 --- a/docs/api/maplibre/render/draw_graph/index.html +++ b/docs/api/maplibre/render/draw_graph/index.html @@ -1,2 +1,2 @@ -maplibre::render::draw_graph - Rust

    Module maplibre::render::draw_graph

    source ·
    Expand description

    Labels for the “draw” graph

    +maplibre::render::draw_graph - Rust

    Module maplibre::render::draw_graph

    source ·
    Expand description

    Labels for the “draw” graph

    Modules

    Constants

    \ No newline at end of file diff --git a/docs/api/maplibre/render/draw_graph/input/index.html b/docs/api/maplibre/render/draw_graph/input/index.html index dd4a23b5..f0be315d 100644 --- a/docs/api/maplibre/render/draw_graph/input/index.html +++ b/docs/api/maplibre/render/draw_graph/input/index.html @@ -1 +1 @@ -maplibre::render::draw_graph::input - Rust
    \ No newline at end of file +maplibre::render::draw_graph::input - Rust
    \ No newline at end of file diff --git a/docs/api/maplibre/render/draw_graph/node/constant.MAIN_PASS.html b/docs/api/maplibre/render/draw_graph/node/constant.MAIN_PASS.html index d741639c..46c5bfc6 100644 --- a/docs/api/maplibre/render/draw_graph/node/constant.MAIN_PASS.html +++ b/docs/api/maplibre/render/draw_graph/node/constant.MAIN_PASS.html @@ -1 +1 @@ -MAIN_PASS in maplibre::render::draw_graph::node - Rust
    pub const MAIN_PASS: &str = "main_pass";
    \ No newline at end of file +MAIN_PASS in maplibre::render::draw_graph::node - Rust
    pub const MAIN_PASS: &str = "main_pass";
    \ No newline at end of file diff --git a/docs/api/maplibre/render/draw_graph/node/index.html b/docs/api/maplibre/render/draw_graph/node/index.html index d7e5551c..ff1f92c3 100644 --- a/docs/api/maplibre/render/draw_graph/node/index.html +++ b/docs/api/maplibre/render/draw_graph/node/index.html @@ -1 +1 @@ -maplibre::render::draw_graph::node - Rust
    \ No newline at end of file +maplibre::render::draw_graph::node - Rust
    \ No newline at end of file diff --git a/docs/api/maplibre/render/enum.RenderStageLabel.html b/docs/api/maplibre/render/enum.RenderStageLabel.html index f5321c44..f95c1ea3 100644 --- a/docs/api/maplibre/render/enum.RenderStageLabel.html +++ b/docs/api/maplibre/render/enum.RenderStageLabel.html @@ -1,4 +1,4 @@ -RenderStageLabel in maplibre::render - Rust
    pub enum RenderStageLabel {
    +RenderStageLabel in maplibre::render - Rust
    pub enum RenderStageLabel {
         Extract,
         Prepare,
         Queue,
    @@ -17,11 +17,11 @@ For example data is uploaded to the GPU in this stage.

    §

    Render

    Actual rendering happens here. In most cases, only the render backend should insert resources here.

    §

    Cleanup

    Cleanup render resources here.

    -

    Trait Implementations§

    source§

    impl Clone for RenderStageLabel

    source§

    fn clone(&self) -> RenderStageLabel

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for RenderStageLabel

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Hash for RenderStageLabel

    source§

    fn hash<__H: Hasher>(&self, state: &mut __H)

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)where +

    Trait Implementations§

    source§

    impl Clone for RenderStageLabel

    source§

    fn clone(&self) -> RenderStageLabel

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for RenderStageLabel

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Hash for RenderStageLabel

    source§

    fn hash<__H: Hasher>(&self, state: &mut __H)

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)where H: Hasher, - Self: Sized,

    Feeds a slice of this type into the given Hasher. Read more
    source§

    impl PartialEq<RenderStageLabel> for RenderStageLabel

    source§

    fn eq(&self, other: &RenderStageLabel) -> bool

    This method tests for self and other values to be equal, and is used + Self: Sized,

    Feeds a slice of this type into the given Hasher. Read more

    source§

    impl PartialEq<RenderStageLabel> for RenderStageLabel

    source§

    fn eq(&self, other: &RenderStageLabel) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl Eq for RenderStageLabel

    source§

    impl StageLabel for RenderStageLabel

    source§

    impl StructuralEq for RenderStageLabel

    source§

    impl StructuralPartialEq for RenderStageLabel

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere +sufficient, and should not be overridden without very good reason.

    source§

    impl Eq for RenderStageLabel

    source§

    impl StageLabel for RenderStageLabel

    source§

    impl StructuralEq for RenderStageLabel

    source§

    impl StructuralPartialEq for RenderStageLabel

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for Twhere T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for Twhere T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Downcast<T> for T

    §

    fn downcast(&self) -> &T

    §

    impl<T> Downcast for Twhere diff --git a/docs/api/maplibre/render/error/enum.RenderError.html b/docs/api/maplibre/render/error/enum.RenderError.html index fcfc92af..981f1d7a 100644 --- a/docs/api/maplibre/render/error/enum.RenderError.html +++ b/docs/api/maplibre/render/error/enum.RenderError.html @@ -3,7 +3,7 @@ CreateSurfaceError(CreateSurfaceError), Graph(RenderGraphError), RequestDevice(RequestDeviceError), -}

    Variants§

    §

    Surface(SurfaceError)

    §

    CreateSurfaceError(CreateSurfaceError)

    §

    Graph(RenderGraphError)

    §

    RequestDevice(RequestDeviceError)

    Implementations§

    Trait Implementations§

    source§

    impl Debug for RenderError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for RenderError

    source§

    fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for RenderError

    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, demand: &mut Demand<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<CreateSurfaceError> for RenderError

    source§

    fn from(source: CreateSurfaceError) -> Self

    Converts to this type from the input type.
    source§

    impl From<RenderGraphError> for RenderError

    source§

    fn from(source: RenderGraphError) -> Self

    Converts to this type from the input type.
    source§

    impl From<RequestDeviceError> for RenderError

    source§

    fn from(source: RequestDeviceError) -> Self

    Converts to this type from the input type.
    source§

    impl From<SurfaceError> for RenderError

    source§

    fn from(source: SurfaceError) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere +}

    Variants§

    §

    Surface(SurfaceError)

    §

    CreateSurfaceError(CreateSurfaceError)

    §

    Graph(RenderGraphError)

    §

    RequestDevice(RequestDeviceError)

    Implementations§

    Trait Implementations§

    source§

    impl Debug for RenderError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for RenderError

    source§

    fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for RenderError

    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, demand: &mut Demand<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<CreateSurfaceError> for RenderError

    source§

    fn from(source: CreateSurfaceError) -> Self

    Converts to this type from the input type.
    source§

    impl From<RenderGraphError> for RenderError

    source§

    fn from(source: RenderGraphError) -> Self

    Converts to this type from the input type.
    source§

    impl From<RequestDeviceError> for RenderError

    source§

    fn from(source: RequestDeviceError) -> Self

    Converts to this type from the input type.
    source§

    impl From<SurfaceError> for RenderError

    source§

    fn from(source: SurfaceError) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for Twhere T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for Twhere T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Downcast<T> for T

    §

    fn downcast(&self) -> &T

    §

    impl<T> Downcast for Twhere diff --git a/docs/api/maplibre/render/eventually/enum.Eventually.html b/docs/api/maplibre/render/eventually/enum.Eventually.html index 46cbfbf1..c84ce467 100644 --- a/docs/api/maplibre/render/eventually/enum.Eventually.html +++ b/docs/api/maplibre/render/eventually/enum.Eventually.html @@ -5,11 +5,11 @@ Uninitialized resourced can be initialized by calling Eventually::initialize().

    Variants§

    §

    Initialized(T)

    §

    Uninitialized

    Implementations§

    source§

    impl<T> Eventually<T>where T: HasChanged,

    source

    pub fn reinitialize(&mut self, f: impl FnOnce() -> T, criteria: &T::Criteria)

    source§

    impl<T> Eventually<T>

    source

    pub fn initialize(&mut self, f: impl FnOnce() -> T)

    source

    pub fn take(&mut self) -> Eventually<T>

    source

    pub fn expect_initialized_mut(&mut self, message: &str) -> &mut T

    Trait Implementations§

    source§

    impl<T> Default for Eventually<T>

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl<T> HasTile for Eventually<T>where - T: HasTile,

    source§

    fn has_tile(&self, coords: WorldTileCoords, world: &World) -> bool

    source§

    fn get_available_parent( &self, coords: WorldTileCoords, world: &World -) -> Option<WorldTileCoords>

    source§

    fn get_available_children( +) -> Option<WorldTileCoords>

    source§

    fn get_available_children( &self, coords: WorldTileCoords, world: &World, diff --git a/docs/api/maplibre/render/graph/context/enum.InputSlotError.html b/docs/api/maplibre/render/graph/context/enum.InputSlotError.html index 271fb9c8..e5a5fa17 100644 --- a/docs/api/maplibre/render/graph/context/enum.InputSlotError.html +++ b/docs/api/maplibre/render/graph/context/enum.InputSlotError.html @@ -5,7 +5,7 @@ expected: SlotType, actual: SlotType, }, -}

    Variants§

    §

    InvalidSlot(SlotLabel)

    §

    MismatchedSlotType

    Fields

    §expected: SlotType
    §actual: SlotType

    Trait Implementations§

    source§

    impl Debug for InputSlotError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for InputSlotError

    source§

    fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for InputSlotError

    1.30.0 · source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, demand: &mut Demand<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<InputSlotError> for NodeRunError

    source§

    fn from(source: InputSlotError) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq<InputSlotError> for InputSlotError

    source§

    fn eq(&self, other: &InputSlotError) -> bool

    This method tests for self and other values to be equal, and is used +}

    Variants§

    §

    InvalidSlot(SlotLabel)

    §

    MismatchedSlotType

    Fields

    §expected: SlotType
    §actual: SlotType

    Trait Implementations§

    source§

    impl Debug for InputSlotError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for InputSlotError

    source§

    fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for InputSlotError

    1.30.0 · source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, demand: &mut Demand<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<InputSlotError> for NodeRunError

    source§

    fn from(source: InputSlotError) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq<InputSlotError> for InputSlotError

    source§

    fn eq(&self, other: &InputSlotError) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
    source§

    impl Eq for InputSlotError

    source§

    impl StructuralEq for InputSlotError

    source§

    impl StructuralPartialEq for InputSlotError

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for Twhere diff --git a/docs/api/maplibre/render/graph/enum.InputSlotError.html b/docs/api/maplibre/render/graph/enum.InputSlotError.html index 3fbe8eb0..b4de226f 100644 --- a/docs/api/maplibre/render/graph/enum.InputSlotError.html +++ b/docs/api/maplibre/render/graph/enum.InputSlotError.html @@ -5,7 +5,7 @@ expected: SlotType, actual: SlotType, }, -}

    Variants§

    §

    InvalidSlot(SlotLabel)

    §

    MismatchedSlotType

    Fields

    §expected: SlotType
    §actual: SlotType

    Trait Implementations§

    source§

    impl Debug for InputSlotError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for InputSlotError

    source§

    fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for InputSlotError

    1.30.0 · source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, demand: &mut Demand<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<InputSlotError> for NodeRunError

    source§

    fn from(source: InputSlotError) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq<InputSlotError> for InputSlotError

    source§

    fn eq(&self, other: &InputSlotError) -> bool

    This method tests for self and other values to be equal, and is used +}

    Variants§

    §

    InvalidSlot(SlotLabel)

    §

    MismatchedSlotType

    Fields

    §expected: SlotType
    §actual: SlotType

    Trait Implementations§

    source§

    impl Debug for InputSlotError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for InputSlotError

    source§

    fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for InputSlotError

    1.30.0 · source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, demand: &mut Demand<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<InputSlotError> for NodeRunError

    source§

    fn from(source: InputSlotError) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq<InputSlotError> for InputSlotError

    source§

    fn eq(&self, other: &InputSlotError) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
    source§

    impl Eq for InputSlotError

    source§

    impl StructuralEq for InputSlotError

    source§

    impl StructuralPartialEq for InputSlotError

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for Twhere diff --git a/docs/api/maplibre/render/graph/enum.NodeLabel.html b/docs/api/maplibre/render/graph/enum.NodeLabel.html index 105727e5..d1f9235e 100644 --- a/docs/api/maplibre/render/graph/enum.NodeLabel.html +++ b/docs/api/maplibre/render/graph/enum.NodeLabel.html @@ -3,7 +3,7 @@ Name(Cow<'static, str>), }
    Expand description

    A NodeLabel is used to reference a NodeState by either its name or NodeId inside the RenderGraph.

    -

    Variants§

    §

    Id(NodeId)

    §

    Name(Cow<'static, str>)

    Trait Implementations§

    source§

    impl Clone for NodeLabel

    source§

    fn clone(&self) -> NodeLabel

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for NodeLabel

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<&'static str> for NodeLabel

    source§

    fn from(value: &'static str) -> Self

    Converts to this type from the input type.
    source§

    impl From<&NodeLabel> for NodeLabel

    source§

    fn from(value: &NodeLabel) -> Self

    Converts to this type from the input type.
    source§

    impl From<NodeId> for NodeLabel

    source§

    fn from(value: NodeId) -> Self

    Converts to this type from the input type.
    source§

    impl From<String> for NodeLabel

    source§

    fn from(value: String) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq<NodeLabel> for NodeLabel

    source§

    fn eq(&self, other: &NodeLabel) -> bool

    This method tests for self and other values to be equal, and is used +

    Variants§

    §

    Id(NodeId)

    §

    Name(Cow<'static, str>)

    Trait Implementations§

    source§

    impl Clone for NodeLabel

    source§

    fn clone(&self) -> NodeLabel

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for NodeLabel

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<&'static str> for NodeLabel

    source§

    fn from(value: &'static str) -> Self

    Converts to this type from the input type.
    source§

    impl From<&NodeLabel> for NodeLabel

    source§

    fn from(value: &NodeLabel) -> Self

    Converts to this type from the input type.
    source§

    impl From<NodeId> for NodeLabel

    source§

    fn from(value: NodeId) -> Self

    Converts to this type from the input type.
    source§

    impl From<String> for NodeLabel

    source§

    fn from(value: String) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq<NodeLabel> for NodeLabel

    source§

    fn eq(&self, other: &NodeLabel) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
    source§

    impl Eq for NodeLabel

    source§

    impl StructuralEq for NodeLabel

    source§

    impl StructuralPartialEq for NodeLabel

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for Twhere diff --git a/docs/api/maplibre/render/graph/enum.NodeRunError.html b/docs/api/maplibre/render/graph/enum.NodeRunError.html index d44c2234..cdce3973 100644 --- a/docs/api/maplibre/render/graph/enum.NodeRunError.html +++ b/docs/api/maplibre/render/graph/enum.NodeRunError.html @@ -2,7 +2,7 @@ InputSlotError(InputSlotError), OutputSlotError(OutputSlotError), RunSubGraphError(RunSubGraphError), -}

    Variants§

    §

    InputSlotError(InputSlotError)

    §

    OutputSlotError(OutputSlotError)

    §

    RunSubGraphError(RunSubGraphError)

    Trait Implementations§

    source§

    impl Debug for NodeRunError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for NodeRunError

    source§

    fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for NodeRunError

    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, demand: &mut Demand<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<InputSlotError> for NodeRunError

    source§

    fn from(source: InputSlotError) -> Self

    Converts to this type from the input type.
    source§

    impl From<NodeRunError> for RenderGraphRunnerError

    source§

    fn from(source: NodeRunError) -> Self

    Converts to this type from the input type.
    source§

    impl From<OutputSlotError> for NodeRunError

    source§

    fn from(source: OutputSlotError) -> Self

    Converts to this type from the input type.
    source§

    impl From<RunSubGraphError> for NodeRunError

    source§

    fn from(source: RunSubGraphError) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq<NodeRunError> for NodeRunError

    source§

    fn eq(&self, other: &NodeRunError) -> bool

    This method tests for self and other values to be equal, and is used +}

    Variants§

    §

    InputSlotError(InputSlotError)

    §

    OutputSlotError(OutputSlotError)

    §

    RunSubGraphError(RunSubGraphError)

    Trait Implementations§

    source§

    impl Debug for NodeRunError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for NodeRunError

    source§

    fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for NodeRunError

    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, demand: &mut Demand<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<InputSlotError> for NodeRunError

    source§

    fn from(source: InputSlotError) -> Self

    Converts to this type from the input type.
    source§

    impl From<NodeRunError> for RenderGraphRunnerError

    source§

    fn from(source: NodeRunError) -> Self

    Converts to this type from the input type.
    source§

    impl From<OutputSlotError> for NodeRunError

    source§

    fn from(source: OutputSlotError) -> Self

    Converts to this type from the input type.
    source§

    impl From<RunSubGraphError> for NodeRunError

    source§

    fn from(source: RunSubGraphError) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq<NodeRunError> for NodeRunError

    source§

    fn eq(&self, other: &NodeRunError) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
    source§

    impl Eq for NodeRunError

    source§

    impl StructuralEq for NodeRunError

    source§

    impl StructuralPartialEq for NodeRunError

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for Twhere diff --git a/docs/api/maplibre/render/graph/enum.RenderGraphError.html b/docs/api/maplibre/render/graph/enum.RenderGraphError.html index 9e1f6811..211ba04b 100644 --- a/docs/api/maplibre/render/graph/enum.RenderGraphError.html +++ b/docs/api/maplibre/render/graph/enum.RenderGraphError.html @@ -24,7 +24,7 @@ input_slot: usize, occupied_by_node: NodeId, }, -}

    Variants§

    §

    InvalidNode(NodeLabel)

    §

    InvalidOutputNodeSlot(SlotLabel)

    §

    InvalidInputNodeSlot(SlotLabel)

    §

    WrongNodeType

    §

    MismatchedNodeSlots

    Fields

    §output_node: NodeId
    §output_slot: usize
    §input_node: NodeId
    §input_slot: usize
    §

    EdgeAlreadyExists(Edge)

    §

    EdgeDoesNotExist(Edge)

    §

    UnconnectedNodeInputSlot

    Fields

    §node: NodeId
    §input_slot: usize
    §

    UnconnectedNodeOutputSlot

    Fields

    §node: NodeId
    §output_slot: usize
    §

    NodeInputSlotAlreadyOccupied

    Fields

    §node: NodeId
    §input_slot: usize
    §occupied_by_node: NodeId

    Trait Implementations§

    source§

    impl Debug for RenderGraphError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for RenderGraphError

    source§

    fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for RenderGraphError

    1.30.0 · source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, demand: &mut Demand<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<RenderGraphError> for RenderError

    source§

    fn from(source: RenderGraphError) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq<RenderGraphError> for RenderGraphError

    source§

    fn eq(&self, other: &RenderGraphError) -> bool

    This method tests for self and other values to be equal, and is used +}

    Variants§

    §

    InvalidNode(NodeLabel)

    §

    InvalidOutputNodeSlot(SlotLabel)

    §

    InvalidInputNodeSlot(SlotLabel)

    §

    WrongNodeType

    §

    MismatchedNodeSlots

    Fields

    §output_node: NodeId
    §output_slot: usize
    §input_node: NodeId
    §input_slot: usize
    §

    EdgeAlreadyExists(Edge)

    §

    EdgeDoesNotExist(Edge)

    §

    UnconnectedNodeInputSlot

    Fields

    §node: NodeId
    §input_slot: usize
    §

    UnconnectedNodeOutputSlot

    Fields

    §node: NodeId
    §output_slot: usize
    §

    NodeInputSlotAlreadyOccupied

    Fields

    §node: NodeId
    §input_slot: usize
    §occupied_by_node: NodeId

    Trait Implementations§

    source§

    impl Debug for RenderGraphError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for RenderGraphError

    source§

    fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for RenderGraphError

    1.30.0 · source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, demand: &mut Demand<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<RenderGraphError> for RenderError

    source§

    fn from(source: RenderGraphError) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq<RenderGraphError> for RenderGraphError

    source§

    fn eq(&self, other: &RenderGraphError) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
    source§

    impl Eq for RenderGraphError

    source§

    impl StructuralEq for RenderGraphError

    source§

    impl StructuralPartialEq for RenderGraphError

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for Twhere diff --git a/docs/api/maplibre/render/graph/enum.SlotLabel.html b/docs/api/maplibre/render/graph/enum.SlotLabel.html index fa47dae6..f6d1b8c0 100644 --- a/docs/api/maplibre/render/graph/enum.SlotLabel.html +++ b/docs/api/maplibre/render/graph/enum.SlotLabel.html @@ -3,7 +3,7 @@ Name(Cow<'static, str>), }
    Expand description

    A SlotLabel is used to reference a slot by either its name or index inside the RenderGraph.

    -

    Variants§

    §

    Index(usize)

    §

    Name(Cow<'static, str>)

    Trait Implementations§

    source§

    impl Clone for SlotLabel

    source§

    fn clone(&self) -> SlotLabel

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for SlotLabel

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<&'static str> for SlotLabel

    source§

    fn from(value: &'static str) -> Self

    Converts to this type from the input type.
    source§

    impl From<&SlotLabel> for SlotLabel

    source§

    fn from(value: &SlotLabel) -> Self

    Converts to this type from the input type.
    source§

    impl From<Cow<'static, str>> for SlotLabel

    source§

    fn from(value: Cow<'static, str>) -> Self

    Converts to this type from the input type.
    source§

    impl From<String> for SlotLabel

    source§

    fn from(value: String) -> Self

    Converts to this type from the input type.
    source§

    impl From<usize> for SlotLabel

    source§

    fn from(value: usize) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq<SlotLabel> for SlotLabel

    source§

    fn eq(&self, other: &SlotLabel) -> bool

    This method tests for self and other values to be equal, and is used +

    Variants§

    §

    Index(usize)

    §

    Name(Cow<'static, str>)

    Trait Implementations§

    source§

    impl Clone for SlotLabel

    source§

    fn clone(&self) -> SlotLabel

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for SlotLabel

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<&'static str> for SlotLabel

    source§

    fn from(value: &'static str) -> Self

    Converts to this type from the input type.
    source§

    impl From<&SlotLabel> for SlotLabel

    source§

    fn from(value: &SlotLabel) -> Self

    Converts to this type from the input type.
    source§

    impl From<Cow<'static, str>> for SlotLabel

    source§

    fn from(value: Cow<'static, str>) -> Self

    Converts to this type from the input type.
    source§

    impl From<String> for SlotLabel

    source§

    fn from(value: String) -> Self

    Converts to this type from the input type.
    source§

    impl From<usize> for SlotLabel

    source§

    fn from(value: usize) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq<SlotLabel> for SlotLabel

    source§

    fn eq(&self, other: &SlotLabel) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
    source§

    impl Eq for SlotLabel

    source§

    impl StructuralEq for SlotLabel

    source§

    impl StructuralPartialEq for SlotLabel

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for Twhere diff --git a/docs/api/maplibre/render/graph/enum.SlotType.html b/docs/api/maplibre/render/graph/enum.SlotType.html index dfb9c5c1..9921fa34 100644 --- a/docs/api/maplibre/render/graph/enum.SlotType.html +++ b/docs/api/maplibre/render/graph/enum.SlotType.html @@ -8,7 +8,7 @@ the render Variants§

    §

    Buffer

    A GPU-accessible [Buffer].

    §

    TextureView

    A TextureView describes a texture used in a pipeline.

    §

    Sampler

    A texture [Sampler] defines how a pipeline will sample from a TextureView.

    -

    Trait Implementations§

    source§

    impl Clone for SlotType

    source§

    fn clone(&self) -> SlotType

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for SlotType

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for SlotType

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl PartialEq<SlotType> for SlotType

    source§

    fn eq(&self, other: &SlotType) -> bool

    This method tests for self and other values to be equal, and is used +

    Trait Implementations§

    source§

    impl Clone for SlotType

    source§

    fn clone(&self) -> SlotType

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for SlotType

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for SlotType

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl PartialEq<SlotType> for SlotType

    source§

    fn eq(&self, other: &SlotType) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
    source§

    impl Copy for SlotType

    source§

    impl Eq for SlotType

    source§

    impl StructuralEq for SlotType

    source§

    impl StructuralPartialEq for SlotType

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for Twhere diff --git a/docs/api/maplibre/render/graph/enum.SlotValue.html b/docs/api/maplibre/render/graph/enum.SlotValue.html index f485c96e..770d7fe3 100644 --- a/docs/api/maplibre/render/graph/enum.SlotValue.html +++ b/docs/api/maplibre/render/graph/enum.SlotValue.html @@ -11,7 +11,7 @@ Corresponds to the §

    TextureView(Rc<TextureView>)

    A TextureView describes a texture used in a pipeline.

    §

    Sampler(Rc<Sampler>)

    A texture [Sampler] defines how a pipeline will sample from a TextureView.

    Implementations§

    source§

    impl SlotValue

    source

    pub fn slot_type(&self) -> SlotType

    Returns the SlotType of this value.

    -

    Trait Implementations§

    source§

    impl Clone for SlotValue

    source§

    fn clone(&self) -> SlotValue

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for SlotValue

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<Buffer> for SlotValue

    source§

    fn from(value: Buffer) -> Self

    Converts to this type from the input type.
    source§

    impl From<Sampler> for SlotValue

    source§

    fn from(value: Sampler) -> Self

    Converts to this type from the input type.
    source§

    impl From<TextureView> for SlotValue

    source§

    fn from(value: TextureView) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere +

    Trait Implementations§

    source§

    impl Clone for SlotValue

    source§

    fn clone(&self) -> SlotValue

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for SlotValue

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<Buffer> for SlotValue

    source§

    fn from(value: Buffer) -> Self

    Converts to this type from the input type.
    source§

    impl From<Sampler> for SlotValue

    source§

    fn from(value: Sampler) -> Self

    Converts to this type from the input type.
    source§

    impl From<TextureView> for SlotValue

    source§

    fn from(value: TextureView) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for Twhere T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for Twhere T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Downcast<T> for T

    §

    fn downcast(&self) -> &T

    §

    impl<T> Downcast for Twhere diff --git a/docs/api/maplibre/render/graph/node/enum.NodeLabel.html b/docs/api/maplibre/render/graph/node/enum.NodeLabel.html index 69d13c0a..3a1dd4d4 100644 --- a/docs/api/maplibre/render/graph/node/enum.NodeLabel.html +++ b/docs/api/maplibre/render/graph/node/enum.NodeLabel.html @@ -3,7 +3,7 @@ Name(Cow<'static, str>), }
    Expand description

    A NodeLabel is used to reference a NodeState by either its name or NodeId inside the RenderGraph.

    -

    Variants§

    §

    Id(NodeId)

    §

    Name(Cow<'static, str>)

    Trait Implementations§

    source§

    impl Clone for NodeLabel

    source§

    fn clone(&self) -> NodeLabel

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for NodeLabel

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<&'static str> for NodeLabel

    source§

    fn from(value: &'static str) -> Self

    Converts to this type from the input type.
    source§

    impl From<&NodeLabel> for NodeLabel

    source§

    fn from(value: &NodeLabel) -> Self

    Converts to this type from the input type.
    source§

    impl From<NodeId> for NodeLabel

    source§

    fn from(value: NodeId) -> Self

    Converts to this type from the input type.
    source§

    impl From<String> for NodeLabel

    source§

    fn from(value: String) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq<NodeLabel> for NodeLabel

    source§

    fn eq(&self, other: &NodeLabel) -> bool

    This method tests for self and other values to be equal, and is used +

    Variants§

    §

    Id(NodeId)

    §

    Name(Cow<'static, str>)

    Trait Implementations§

    source§

    impl Clone for NodeLabel

    source§

    fn clone(&self) -> NodeLabel

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for NodeLabel

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<&'static str> for NodeLabel

    source§

    fn from(value: &'static str) -> Self

    Converts to this type from the input type.
    source§

    impl From<&NodeLabel> for NodeLabel

    source§

    fn from(value: &NodeLabel) -> Self

    Converts to this type from the input type.
    source§

    impl From<NodeId> for NodeLabel

    source§

    fn from(value: NodeId) -> Self

    Converts to this type from the input type.
    source§

    impl From<String> for NodeLabel

    source§

    fn from(value: String) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq<NodeLabel> for NodeLabel

    source§

    fn eq(&self, other: &NodeLabel) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
    source§

    impl Eq for NodeLabel

    source§

    impl StructuralEq for NodeLabel

    source§

    impl StructuralPartialEq for NodeLabel

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for Twhere diff --git a/docs/api/maplibre/render/graph/node/enum.NodeRunError.html b/docs/api/maplibre/render/graph/node/enum.NodeRunError.html index 4e3e24db..b66a527d 100644 --- a/docs/api/maplibre/render/graph/node/enum.NodeRunError.html +++ b/docs/api/maplibre/render/graph/node/enum.NodeRunError.html @@ -2,7 +2,7 @@ InputSlotError(InputSlotError), OutputSlotError(OutputSlotError), RunSubGraphError(RunSubGraphError), -}

    Variants§

    §

    InputSlotError(InputSlotError)

    §

    OutputSlotError(OutputSlotError)

    §

    RunSubGraphError(RunSubGraphError)

    Trait Implementations§

    source§

    impl Debug for NodeRunError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for NodeRunError

    source§

    fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for NodeRunError

    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, demand: &mut Demand<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<InputSlotError> for NodeRunError

    source§

    fn from(source: InputSlotError) -> Self

    Converts to this type from the input type.
    source§

    impl From<NodeRunError> for RenderGraphRunnerError

    source§

    fn from(source: NodeRunError) -> Self

    Converts to this type from the input type.
    source§

    impl From<OutputSlotError> for NodeRunError

    source§

    fn from(source: OutputSlotError) -> Self

    Converts to this type from the input type.
    source§

    impl From<RunSubGraphError> for NodeRunError

    source§

    fn from(source: RunSubGraphError) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq<NodeRunError> for NodeRunError

    source§

    fn eq(&self, other: &NodeRunError) -> bool

    This method tests for self and other values to be equal, and is used +}

    Variants§

    §

    InputSlotError(InputSlotError)

    §

    OutputSlotError(OutputSlotError)

    §

    RunSubGraphError(RunSubGraphError)

    Trait Implementations§

    source§

    impl Debug for NodeRunError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for NodeRunError

    source§

    fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for NodeRunError

    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, demand: &mut Demand<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<InputSlotError> for NodeRunError

    source§

    fn from(source: InputSlotError) -> Self

    Converts to this type from the input type.
    source§

    impl From<NodeRunError> for RenderGraphRunnerError

    source§

    fn from(source: NodeRunError) -> Self

    Converts to this type from the input type.
    source§

    impl From<OutputSlotError> for NodeRunError

    source§

    fn from(source: OutputSlotError) -> Self

    Converts to this type from the input type.
    source§

    impl From<RunSubGraphError> for NodeRunError

    source§

    fn from(source: RunSubGraphError) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq<NodeRunError> for NodeRunError

    source§

    fn eq(&self, other: &NodeRunError) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
    source§

    impl Eq for NodeRunError

    source§

    impl StructuralEq for NodeRunError

    source§

    impl StructuralPartialEq for NodeRunError

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for Twhere diff --git a/docs/api/maplibre/render/graph/node_slot/enum.SlotLabel.html b/docs/api/maplibre/render/graph/node_slot/enum.SlotLabel.html index 7c2e6caa..77b4995b 100644 --- a/docs/api/maplibre/render/graph/node_slot/enum.SlotLabel.html +++ b/docs/api/maplibre/render/graph/node_slot/enum.SlotLabel.html @@ -3,7 +3,7 @@ Name(Cow<'static, str>), }
    Expand description

    A SlotLabel is used to reference a slot by either its name or index inside the RenderGraph.

    -

    Variants§

    §

    Index(usize)

    §

    Name(Cow<'static, str>)

    Trait Implementations§

    source§

    impl Clone for SlotLabel

    source§

    fn clone(&self) -> SlotLabel

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for SlotLabel

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<&'static str> for SlotLabel

    source§

    fn from(value: &'static str) -> Self

    Converts to this type from the input type.
    source§

    impl From<&SlotLabel> for SlotLabel

    source§

    fn from(value: &SlotLabel) -> Self

    Converts to this type from the input type.
    source§

    impl From<Cow<'static, str>> for SlotLabel

    source§

    fn from(value: Cow<'static, str>) -> Self

    Converts to this type from the input type.
    source§

    impl From<String> for SlotLabel

    source§

    fn from(value: String) -> Self

    Converts to this type from the input type.
    source§

    impl From<usize> for SlotLabel

    source§

    fn from(value: usize) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq<SlotLabel> for SlotLabel

    source§

    fn eq(&self, other: &SlotLabel) -> bool

    This method tests for self and other values to be equal, and is used +

    Variants§

    §

    Index(usize)

    §

    Name(Cow<'static, str>)

    Trait Implementations§

    source§

    impl Clone for SlotLabel

    source§

    fn clone(&self) -> SlotLabel

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for SlotLabel

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<&'static str> for SlotLabel

    source§

    fn from(value: &'static str) -> Self

    Converts to this type from the input type.
    source§

    impl From<&SlotLabel> for SlotLabel

    source§

    fn from(value: &SlotLabel) -> Self

    Converts to this type from the input type.
    source§

    impl From<Cow<'static, str>> for SlotLabel

    source§

    fn from(value: Cow<'static, str>) -> Self

    Converts to this type from the input type.
    source§

    impl From<String> for SlotLabel

    source§

    fn from(value: String) -> Self

    Converts to this type from the input type.
    source§

    impl From<usize> for SlotLabel

    source§

    fn from(value: usize) -> Self

    Converts to this type from the input type.
    source§

    impl PartialEq<SlotLabel> for SlotLabel

    source§

    fn eq(&self, other: &SlotLabel) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
    source§

    impl Eq for SlotLabel

    source§

    impl StructuralEq for SlotLabel

    source§

    impl StructuralPartialEq for SlotLabel

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for Twhere diff --git a/docs/api/maplibre/render/graph/node_slot/enum.SlotType.html b/docs/api/maplibre/render/graph/node_slot/enum.SlotType.html index 719648db..efa55a1c 100644 --- a/docs/api/maplibre/render/graph/node_slot/enum.SlotType.html +++ b/docs/api/maplibre/render/graph/node_slot/enum.SlotType.html @@ -8,7 +8,7 @@ the render Variants§

    §

    Buffer

    A GPU-accessible [Buffer].

    §

    TextureView

    A TextureView describes a texture used in a pipeline.

    §

    Sampler

    A texture [Sampler] defines how a pipeline will sample from a TextureView.

    -

    Trait Implementations§

    source§

    impl Clone for SlotType

    source§

    fn clone(&self) -> SlotType

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for SlotType

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for SlotType

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl PartialEq<SlotType> for SlotType

    source§

    fn eq(&self, other: &SlotType) -> bool

    This method tests for self and other values to be equal, and is used +

    Trait Implementations§

    source§

    impl Clone for SlotType

    source§

    fn clone(&self) -> SlotType

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for SlotType

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for SlotType

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl PartialEq<SlotType> for SlotType

    source§

    fn eq(&self, other: &SlotType) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
    source§

    impl Copy for SlotType

    source§

    impl Eq for SlotType

    source§

    impl StructuralEq for SlotType

    source§

    impl StructuralPartialEq for SlotType

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for Twhere diff --git a/docs/api/maplibre/render/graph/node_slot/enum.SlotValue.html b/docs/api/maplibre/render/graph/node_slot/enum.SlotValue.html index c2b0f18b..c4e26e39 100644 --- a/docs/api/maplibre/render/graph/node_slot/enum.SlotValue.html +++ b/docs/api/maplibre/render/graph/node_slot/enum.SlotValue.html @@ -11,7 +11,7 @@ Corresponds to the §

    TextureView(Rc<TextureView>)

    A TextureView describes a texture used in a pipeline.

    §

    Sampler(Rc<Sampler>)

    A texture [Sampler] defines how a pipeline will sample from a TextureView.

    Implementations§

    source§

    impl SlotValue

    source

    pub fn slot_type(&self) -> SlotType

    Returns the SlotType of this value.

    -

    Trait Implementations§

    source§

    impl Clone for SlotValue

    source§

    fn clone(&self) -> SlotValue

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for SlotValue

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<Buffer> for SlotValue

    source§

    fn from(value: Buffer) -> Self

    Converts to this type from the input type.
    source§

    impl From<Sampler> for SlotValue

    source§

    fn from(value: Sampler) -> Self

    Converts to this type from the input type.
    source§

    impl From<TextureView> for SlotValue

    source§

    fn from(value: TextureView) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere +

    Trait Implementations§

    source§

    impl Clone for SlotValue

    source§

    fn clone(&self) -> SlotValue

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for SlotValue

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl From<Buffer> for SlotValue

    source§

    fn from(value: Buffer) -> Self

    Converts to this type from the input type.
    source§

    impl From<Sampler> for SlotValue

    source§

    fn from(value: Sampler) -> Self

    Converts to this type from the input type.
    source§

    impl From<TextureView> for SlotValue

    source§

    fn from(value: TextureView) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for Twhere T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for Twhere T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Downcast<T> for T

    §

    fn downcast(&self) -> &T

    §

    impl<T> Downcast for Twhere diff --git a/docs/api/maplibre/render/graph_runner/enum.RenderGraphRunnerError.html b/docs/api/maplibre/render/graph_runner/enum.RenderGraphRunnerError.html index 7e469122..14f21d19 100644 --- a/docs/api/maplibre/render/graph_runner/enum.RenderGraphRunnerError.html +++ b/docs/api/maplibre/render/graph_runner/enum.RenderGraphRunnerError.html @@ -16,7 +16,7 @@ expected: SlotType, actual: SlotType, }, -}

    Variants§

    §

    NodeRunError(NodeRunError)

    §

    EmptyNodeOutputSlot

    Fields

    §type_name: &'static str
    §slot_index: usize
    §slot_name: Cow<'static, str>
    §

    MissingInput

    Fields

    §slot_index: usize
    §slot_name: Cow<'static, str>
    §graph_name: Option<Cow<'static, str>>
    §

    MismatchedInputSlotType

    Fields

    §slot_index: usize
    §expected: SlotType
    §actual: SlotType

    Trait Implementations§

    source§

    impl Debug for RenderGraphRunnerError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for RenderGraphRunnerError

    source§

    fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for RenderGraphRunnerError

    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, demand: &mut Demand<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<NodeRunError> for RenderGraphRunnerError

    source§

    fn from(source: NodeRunError) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere +}

    Variants§

    §

    NodeRunError(NodeRunError)

    §

    EmptyNodeOutputSlot

    Fields

    §type_name: &'static str
    §slot_index: usize
    §slot_name: Cow<'static, str>
    §

    MissingInput

    Fields

    §slot_index: usize
    §slot_name: Cow<'static, str>
    §graph_name: Option<Cow<'static, str>>
    §

    MismatchedInputSlotType

    Fields

    §slot_index: usize
    §expected: SlotType
    §actual: SlotType

    Trait Implementations§

    source§

    impl Debug for RenderGraphRunnerError

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Display for RenderGraphRunnerError

    source§

    fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Error for RenderGraphRunnerError

    source§

    fn source(&self) -> Option<&(dyn Error + 'static)>

    The lower-level source of this error, if any. Read more
    1.0.0 · source§

    fn description(&self) -> &str

    👎Deprecated since 1.42.0: use the Display impl or to_string()
    1.0.0 · source§

    fn cause(&self) -> Option<&dyn Error>

    👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
    source§

    fn provide<'a>(&'a self, demand: &mut Demand<'a>)

    🔬This is a nightly-only experimental API. (error_generic_member_access)
    Provides type based access to context intended for error reports. Read more
    source§

    impl From<NodeRunError> for RenderGraphRunnerError

    source§

    fn from(source: NodeRunError) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for Twhere T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for Twhere T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Downcast<T> for T

    §

    fn downcast(&self) -> &T

    §

    impl<T> Downcast for Twhere diff --git a/docs/api/maplibre/render/index.html b/docs/api/maplibre/render/index.html index 7783e57d..9764e10c 100644 --- a/docs/api/maplibre/render/index.html +++ b/docs/api/maplibre/render/index.html @@ -1,4 +1,4 @@ -maplibre::render - Rust

    Module maplibre::render

    source ·
    Expand description

    This module implements the rendering algorithm of maplibre-rs. It manages the whole +maplibre::render - Rust

    Module maplibre::render

    source ·
    Expand description

    This module implements the rendering algorithm of maplibre-rs. It manages the whole communication with the GPU.

    The render in this module is largely based on the bevy_render @@ -14,4 +14,4 @@ at your option.

    We appreciate the design and implementation work which as gone into it.

    Re-exports

    Modules

    Structs

    Enums

    Constants

    \ No newline at end of file +buffers or textures simpler.
  • Settings for the renderer
  • systems 🔒
    Rendering specific systems
  • Utility for generating a tile pattern which can be used for masking.
  • Structs

    Enums

    Constants

    \ No newline at end of file diff --git a/docs/api/maplibre/render/main_graph/index.html b/docs/api/maplibre/render/main_graph/index.html index c0754c22..8714c961 100644 --- a/docs/api/maplibre/render/main_graph/index.html +++ b/docs/api/maplibre/render/main_graph/index.html @@ -1 +1 @@ -maplibre::render::main_graph - Rust
    \ No newline at end of file +maplibre::render::main_graph - Rust
    \ No newline at end of file diff --git a/docs/api/maplibre/render/main_graph/input/index.html b/docs/api/maplibre/render/main_graph/input/index.html index 93df7d07..f74689f5 100644 --- a/docs/api/maplibre/render/main_graph/input/index.html +++ b/docs/api/maplibre/render/main_graph/input/index.html @@ -1 +1 @@ -maplibre::render::main_graph::input - Rust
    \ No newline at end of file +maplibre::render::main_graph::input - Rust
    \ No newline at end of file diff --git a/docs/api/maplibre/render/main_graph/node/constant.MAIN_PASS_DEPENDENCIES.html b/docs/api/maplibre/render/main_graph/node/constant.MAIN_PASS_DEPENDENCIES.html index 2971799e..e48a796a 100644 --- a/docs/api/maplibre/render/main_graph/node/constant.MAIN_PASS_DEPENDENCIES.html +++ b/docs/api/maplibre/render/main_graph/node/constant.MAIN_PASS_DEPENDENCIES.html @@ -1 +1 @@ -MAIN_PASS_DEPENDENCIES in maplibre::render::main_graph::node - Rust
    pub const MAIN_PASS_DEPENDENCIES: &str = "main_pass_dependencies";
    \ No newline at end of file +MAIN_PASS_DEPENDENCIES in maplibre::render::main_graph::node - Rust
    pub const MAIN_PASS_DEPENDENCIES: &str = "main_pass_dependencies";
    \ No newline at end of file diff --git a/docs/api/maplibre/render/main_graph/node/constant.MAIN_PASS_DRIVER.html b/docs/api/maplibre/render/main_graph/node/constant.MAIN_PASS_DRIVER.html index f1f82456..ca711e14 100644 --- a/docs/api/maplibre/render/main_graph/node/constant.MAIN_PASS_DRIVER.html +++ b/docs/api/maplibre/render/main_graph/node/constant.MAIN_PASS_DRIVER.html @@ -1 +1 @@ -MAIN_PASS_DRIVER in maplibre::render::main_graph::node - Rust
    pub const MAIN_PASS_DRIVER: &str = "main_pass_driver";
    \ No newline at end of file +MAIN_PASS_DRIVER in maplibre::render::main_graph::node - Rust
    pub const MAIN_PASS_DRIVER: &str = "main_pass_driver";
    \ No newline at end of file diff --git a/docs/api/maplibre/render/main_graph/node/index.html b/docs/api/maplibre/render/main_graph/node/index.html index c335f838..08e540d7 100644 --- a/docs/api/maplibre/render/main_graph/node/index.html +++ b/docs/api/maplibre/render/main_graph/node/index.html @@ -1 +1 @@ -maplibre::render::main_graph::node - Rust
    \ No newline at end of file +maplibre::render::main_graph::node - Rust
    \ No newline at end of file diff --git a/docs/api/maplibre/render/render_phase/draw/trait.RenderCommand.html b/docs/api/maplibre/render/render_phase/draw/trait.RenderCommand.html index e6120b6f..a3aeeeac 100644 --- a/docs/api/maplibre/render/render_phase/draw/trait.RenderCommand.html +++ b/docs/api/maplibre/render/render_phase/draw/trait.RenderCommand.html @@ -33,15 +33,15 @@ tuple. Const generics are used to set specific bind group locations:

    world: &'w World, item: &P, pass: &mut TrackedRenderPass<'w> -) -> RenderCommandResult

    source§

    impl<P: PhaseItem, C0: RenderCommand<P>, C1: RenderCommand<P>, C2: RenderCommand<P>> RenderCommand<P> for (C0, C1, C2)

    source§

    impl<P: PhaseItem, C0: RenderCommand<P>> RenderCommand<P> for (C0,)

    source§

    fn render<'w>( world: &'w World, item: &P, pass: &mut TrackedRenderPass<'w> -) -> RenderCommandResult

    source§

    impl<P: PhaseItem, C0: RenderCommand<P>, C1: RenderCommand<P>, C2: RenderCommand<P>, C3: RenderCommand<P>> RenderCommand<P> for (C0, C1, C2, C3)

    source§

    impl<P: PhaseItem, C0: RenderCommand<P>, C1: RenderCommand<P>, C2: RenderCommand<P>> RenderCommand<P> for (C0, C1, C2)

    source§

    fn render<'w>( world: &'w World, item: &P, pass: &mut TrackedRenderPass<'w> -) -> RenderCommandResult

    source§

    impl<P: PhaseItem, C0: RenderCommand<P>> RenderCommand<P> for (C0,)

    source§

    impl<P: PhaseItem, C0: RenderCommand<P>, C1: RenderCommand<P>, C2: RenderCommand<P>, C3: RenderCommand<P>> RenderCommand<P> for (C0, C1, C2, C3)

    source§

    fn render<'w>( world: &'w World, item: &P, pass: &mut TrackedRenderPass<'w> diff --git a/docs/api/maplibre/render/render_phase/struct.LayerItem.html b/docs/api/maplibre/render/render_phase/struct.LayerItem.html index 8ead9dc1..5d3e282a 100644 --- a/docs/api/maplibre/render/render_phase/struct.LayerItem.html +++ b/docs/api/maplibre/render/render_phase/struct.LayerItem.html @@ -4,15 +4,15 @@ pub style_layer: String, pub tile: Tile, pub source_shape: TileShape, -}

    Fields§

    §draw_function: Box<dyn Draw<LayerItem>>§index: u32§style_layer: String§tile: Tile§source_shape: TileShape

    Trait Implementations§

    source§

    impl PhaseItem for LayerItem

    §

    type SortKey = u32

    The type used for ordering the items. The smallest values are drawn first.
    source§

    fn sort_key(&self) -> Self::SortKey

    Determines the order in which the items are drawn during the corresponding RenderPhase.
    source§

    fn draw_function(&self) -> &dyn Draw<LayerItem>

    source§

    impl RenderCommand<LayerItem> for DrawRasterTile

    source§

    fn render<'w>( +}

    Fields§

    §draw_function: Box<dyn Draw<LayerItem>>§index: u32§style_layer: String§tile: Tile§source_shape: TileShape

    Trait Implementations§

    source§

    impl PhaseItem for LayerItem

    §

    type SortKey = u32

    The type used for ordering the items. The smallest values are drawn first.
    source§

    fn sort_key(&self) -> Self::SortKey

    Determines the order in which the items are drawn during the corresponding RenderPhase.
    source§

    fn draw_function(&self) -> &dyn Draw<LayerItem>

    source§

    impl RenderCommand<LayerItem> for DrawRasterTile

    source§

    fn render<'w>( world: &'w World, item: &LayerItem, pass: &mut TrackedRenderPass<'w> -) -> RenderCommandResult

    Renders the PhaseItem by issuing draw calls via the TrackedRenderPass.
    source§

    impl RenderCommand<LayerItem> for DrawVectorTile

    source§

    fn render<'w>( +) -> RenderCommandResult

    Renders the PhaseItem by issuing draw calls via the TrackedRenderPass.
    source§

    impl RenderCommand<LayerItem> for DrawVectorTile

    source§

    fn render<'w>( world: &'w World, item: &LayerItem, pass: &mut TrackedRenderPass<'w> -) -> RenderCommandResult

    Renders the PhaseItem by issuing draw calls via the TrackedRenderPass.
    source§

    impl<const I: usize> RenderCommand<LayerItem> for SetRasterViewBindGroup<I>

    source§

    fn render<'w>( +) -> RenderCommandResult

    Renders the PhaseItem by issuing draw calls via the TrackedRenderPass.
    source§

    impl<const I: usize> RenderCommand<LayerItem> for SetRasterViewBindGroup<I>

    source§

    fn render<'w>( world: &'w World, item: &LayerItem, pass: &mut TrackedRenderPass<'w> diff --git a/docs/api/maplibre/render/render_phase/trait.RenderCommand.html b/docs/api/maplibre/render/render_phase/trait.RenderCommand.html index 7c64c1bb..3141128c 100644 --- a/docs/api/maplibre/render/render_phase/trait.RenderCommand.html +++ b/docs/api/maplibre/render/render_phase/trait.RenderCommand.html @@ -33,15 +33,15 @@ tuple. Const generics are used to set specific bind group locations:

    world: &'w World, item: &P, pass: &mut TrackedRenderPass<'w> -) -> RenderCommandResult

    source§

    impl<P: PhaseItem, C0: RenderCommand<P>, C1: RenderCommand<P>, C2: RenderCommand<P>> RenderCommand<P> for (C0, C1, C2)

    source§

    impl<P: PhaseItem, C0: RenderCommand<P>> RenderCommand<P> for (C0,)

    source§

    fn render<'w>( world: &'w World, item: &P, pass: &mut TrackedRenderPass<'w> -) -> RenderCommandResult

    source§

    impl<P: PhaseItem, C0: RenderCommand<P>, C1: RenderCommand<P>, C2: RenderCommand<P>, C3: RenderCommand<P>> RenderCommand<P> for (C0, C1, C2, C3)

    source§

    impl<P: PhaseItem, C0: RenderCommand<P>, C1: RenderCommand<P>, C2: RenderCommand<P>> RenderCommand<P> for (C0, C1, C2)

    source§

    fn render<'w>( world: &'w World, item: &P, pass: &mut TrackedRenderPass<'w> -) -> RenderCommandResult

    source§

    impl<P: PhaseItem, C0: RenderCommand<P>> RenderCommand<P> for (C0,)

    source§

    impl<P: PhaseItem, C0: RenderCommand<P>, C1: RenderCommand<P>, C2: RenderCommand<P>, C3: RenderCommand<P>> RenderCommand<P> for (C0, C1, C2, C3)

    source§

    fn render<'w>( world: &'w World, item: &P, pass: &mut TrackedRenderPass<'w> diff --git a/docs/api/maplibre/render/resource/enum.TextureView.html b/docs/api/maplibre/render/resource/enum.TextureView.html index ad96df7b..a468acd8 100644 --- a/docs/api/maplibre/render/resource/enum.TextureView.html +++ b/docs/api/maplibre/render/resource/enum.TextureView.html @@ -11,7 +11,7 @@ or dereferences to a wgpu TextureView
    §

    SurfaceTexture

    Fields

    §view: TextureView
    §texture: SurfaceTexture

    The value is a wgpu SurfaceTexture, but dereferences to a TextureView.

    Implementations§

    source§

    impl TextureView

    source

    pub fn take_surface_texture(self) -> Option<SurfaceTexture>

    Returns the SurfaceTexture of the texture view if it is of that type.

    -

    Trait Implementations§

    source§

    impl Debug for TextureView

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Deref for TextureView

    §

    type Target = TextureView

    The resulting type after dereferencing.
    source§

    fn deref(&self) -> &Self::Target

    Dereferences the value.
    source§

    impl From<SurfaceTexture> for TextureView

    source§

    fn from(surface_texture: SurfaceTexture) -> Self

    Converts to this type from the input type.
    source§

    impl From<TextureView> for SlotValue

    source§

    fn from(value: TextureView) -> Self

    Converts to this type from the input type.
    source§

    impl From<TextureView> for TextureView

    source§

    fn from(value: TextureView) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere +

    Trait Implementations§

    source§

    impl Debug for TextureView

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Deref for TextureView

    §

    type Target = TextureView

    The resulting type after dereferencing.
    source§

    fn deref(&self) -> &Self::Target

    Dereferences the value.
    source§

    impl From<SurfaceTexture> for TextureView

    source§

    fn from(surface_texture: SurfaceTexture) -> Self

    Converts to this type from the input type.
    source§

    impl From<TextureView> for SlotValue

    source§

    fn from(value: TextureView) -> Self

    Converts to this type from the input type.
    source§

    impl From<TextureView> for TextureView

    source§

    fn from(value: TextureView) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for Twhere T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for Twhere T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Downcast<T> for T

    §

    fn downcast(&self) -> &T

    §

    impl<T> Downcast for Twhere diff --git a/docs/api/maplibre/render/resource/texture/enum.TextureView.html b/docs/api/maplibre/render/resource/texture/enum.TextureView.html index b11f2d5e..1b5d5617 100644 --- a/docs/api/maplibre/render/resource/texture/enum.TextureView.html +++ b/docs/api/maplibre/render/resource/texture/enum.TextureView.html @@ -11,7 +11,7 @@ or dereferences to a wgpu TextureView
    §

    SurfaceTexture

    Fields

    §view: TextureView
    §texture: SurfaceTexture

    The value is a wgpu SurfaceTexture, but dereferences to a TextureView.

    Implementations§

    source§

    impl TextureView

    source

    pub fn take_surface_texture(self) -> Option<SurfaceTexture>

    Returns the SurfaceTexture of the texture view if it is of that type.

    -

    Trait Implementations§

    source§

    impl Debug for TextureView

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Deref for TextureView

    §

    type Target = TextureView

    The resulting type after dereferencing.
    source§

    fn deref(&self) -> &Self::Target

    Dereferences the value.
    source§

    impl From<SurfaceTexture> for TextureView

    source§

    fn from(surface_texture: SurfaceTexture) -> Self

    Converts to this type from the input type.
    source§

    impl From<TextureView> for SlotValue

    source§

    fn from(value: TextureView) -> Self

    Converts to this type from the input type.
    source§

    impl From<TextureView> for TextureView

    source§

    fn from(value: TextureView) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere +

    Trait Implementations§

    source§

    impl Debug for TextureView

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Deref for TextureView

    §

    type Target = TextureView

    The resulting type after dereferencing.
    source§

    fn deref(&self) -> &Self::Target

    Dereferences the value.
    source§

    impl From<SurfaceTexture> for TextureView

    source§

    fn from(surface_texture: SurfaceTexture) -> Self

    Converts to this type from the input type.
    source§

    impl From<TextureView> for SlotValue

    source§

    fn from(value: TextureView) -> Self

    Converts to this type from the input type.
    source§

    impl From<TextureView> for TextureView

    source§

    fn from(value: TextureView) -> Self

    Converts to this type from the input type.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for Twhere T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for Twhere T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Downcast<T> for T

    §

    fn downcast(&self) -> &T

    §

    impl<T> Downcast for Twhere diff --git a/docs/api/maplibre/render/shaders/struct.ShaderVertex.html b/docs/api/maplibre/render/shaders/struct.ShaderVertex.html index ff1cea2c..fd0d4f5e 100644 --- a/docs/api/maplibre/render/shaders/struct.ShaderVertex.html +++ b/docs/api/maplibre/render/shaders/struct.ShaderVertex.html @@ -1,7 +1,7 @@ ShaderVertex in maplibre::render::shaders - Rust
    #[repr(C)]
    pub struct ShaderVertex { pub position: Vec2f32, pub normal: Vec2f32, -}

    Fields§

    §position: Vec2f32§normal: Vec2f32

    Implementations§

    source§

    impl ShaderVertex

    source

    pub fn new(position: Vec2f32, normal: Vec2f32) -> Self

    Trait Implementations§

    source§

    impl Clone for ShaderVertex

    source§

    fn clone(&self) -> ShaderVertex

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Default for ShaderVertex

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl FillVertexConstructor<ShaderVertex> for VertexConstructor

    source§

    fn new_vertex(&mut self, vertex: FillVertex<'_>) -> ShaderVertex

    source§

    impl StrokeVertexConstructor<ShaderVertex> for VertexConstructor

    source§

    fn new_vertex(&mut self, vertex: StrokeVertex<'_, '_>) -> ShaderVertex

    source§

    impl Zeroable for ShaderVertex

    §

    fn zeroed() -> Self

    source§

    impl Copy for ShaderVertex

    source§

    impl Pod for ShaderVertex

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere +}

    Fields§

    §position: Vec2f32§normal: Vec2f32

    Implementations§

    source§

    impl ShaderVertex

    source

    pub fn new(position: Vec2f32, normal: Vec2f32) -> Self

    Trait Implementations§

    source§

    impl Clone for ShaderVertex

    source§

    fn clone(&self) -> ShaderVertex

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Default for ShaderVertex

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl FillVertexConstructor<ShaderVertex> for VertexConstructor

    source§

    fn new_vertex(&mut self, vertex: FillVertex<'_>) -> ShaderVertex

    source§

    impl StrokeVertexConstructor<ShaderVertex> for VertexConstructor

    source§

    fn new_vertex(&mut self, vertex: StrokeVertex<'_, '_>) -> ShaderVertex

    source§

    impl Zeroable for ShaderVertex

    §

    fn zeroed() -> Self

    source§

    impl Copy for ShaderVertex

    source§

    impl Pod for ShaderVertex

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for Twhere T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for Twhere T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> CheckedBitPattern for Twhere diff --git a/docs/api/maplibre/render/sidebar-items.js b/docs/api/maplibre/render/sidebar-items.js index 5086b93c..662ff6d4 100644 --- a/docs/api/maplibre/render/sidebar-items.js +++ b/docs/api/maplibre/render/sidebar-items.js @@ -1 +1 @@ -window.SIDEBAR_ITEMS = {"constant":["INDEX_FORMAT"],"enum":["RenderStageLabel"],"mod":["builder","camera","draw_graph","error","eventually","graph","graph_runner","main_graph","main_pass","render_commands","render_phase","resource","settings","shaders","systems","tile_view_pattern"],"struct":["MaskPipeline","RenderPlugin","RenderResources","Renderer"]}; \ No newline at end of file +window.SIDEBAR_ITEMS = {"constant":["INDEX_FORMAT"],"enum":["RenderStageLabel"],"mod":["builder","camera","draw_graph","error","eventually","graph","graph_runner","main_graph","main_pass","render_commands","render_phase","resource","settings","shaders","systems","tile_view_pattern","view_state"],"struct":["MaskPipeline","RenderPlugin","RenderResources","Renderer"]}; \ No newline at end of file diff --git a/docs/api/maplibre/render/struct.MaskPipeline.html b/docs/api/maplibre/render/struct.MaskPipeline.html index 349d64c8..ceaa2388 100644 --- a/docs/api/maplibre/render/struct.MaskPipeline.html +++ b/docs/api/maplibre/render/struct.MaskPipeline.html @@ -1,5 +1,5 @@ -MaskPipeline in maplibre::render - Rust
    pub struct MaskPipeline(pub RenderPipeline);

    Tuple Fields§

    §0: RenderPipeline

    Methods from Deref<Target = RenderPipeline>§

    pub fn get_bind_group_layout(&self, index: u32) -> BindGroupLayout

    Get an object representing the bind group layout at a given index.

    -

    Trait Implementations§

    source§

    impl Deref for MaskPipeline

    §

    type Target = RenderPipeline

    The resulting type after dereferencing.
    source§

    fn deref(&self) -> &Self::Target

    Dereferences the value.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere +MaskPipeline in maplibre::render - Rust
    pub struct MaskPipeline(pub RenderPipeline);

    Tuple Fields§

    §0: RenderPipeline

    Methods from Deref<Target = RenderPipeline>§

    pub fn get_bind_group_layout(&self, index: u32) -> BindGroupLayout

    Get an object representing the bind group layout at a given index.

    +

    Trait Implementations§

    source§

    impl Deref for MaskPipeline

    §

    type Target = RenderPipeline

    The resulting type after dereferencing.
    source§

    fn deref(&self) -> &Self::Target

    Dereferences the value.

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for Twhere T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for Twhere T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Downcast<T> for T

    §

    fn downcast(&self) -> &T

    §

    impl<T> Downcast for Twhere diff --git a/docs/api/maplibre/render/struct.RenderPlugin.html b/docs/api/maplibre/render/struct.RenderPlugin.html index bea8e169..6b4da901 100644 --- a/docs/api/maplibre/render/struct.RenderPlugin.html +++ b/docs/api/maplibre/render/struct.RenderPlugin.html @@ -1,4 +1,4 @@ -RenderPlugin in maplibre::render - Rust
    pub struct RenderPlugin;

    Trait Implementations§

    source§

    impl Default for RenderPlugin

    source§

    fn default() -> RenderPlugin

    Returns the “default value” for a type. Read more
    source§

    impl<E: Environment> Plugin<E> for RenderPlugin

    source§

    fn build( +RenderPlugin in maplibre::render - Rust
    pub struct RenderPlugin;

    Trait Implementations§

    source§

    impl Default for RenderPlugin

    source§

    fn default() -> RenderPlugin

    Returns the “default value” for a type. Read more
    source§

    impl<E: Environment> Plugin<E> for RenderPlugin

    source§

    fn build( &self, schedule: &mut Schedule, _kernel: Rc<Kernel<E>>, diff --git a/docs/api/maplibre/render/struct.RenderResources.html b/docs/api/maplibre/render/struct.RenderResources.html index a84e3aba..06a41123 100644 --- a/docs/api/maplibre/render/struct.RenderResources.html +++ b/docs/api/maplibre/render/struct.RenderResources.html @@ -1,14 +1,14 @@ -RenderResources in maplibre::render - Rust
    pub struct RenderResources {
    +RenderResources in maplibre::render - Rust
    pub struct RenderResources {
         pub surface: Surface,
         pub render_target: Eventually<TextureView>,
         pub depth_texture: Eventually<Texture>,
         pub multisampling_texture: Eventually<Option<Texture>>,
    -}

    Fields§

    §surface: Surface§render_target: Eventually<TextureView>§depth_texture: Eventually<Texture>§multisampling_texture: Eventually<Option<Texture>>

    Implementations§

    source§

    impl RenderResources

    source

    pub fn new(surface: Surface) -> Self

    source

    pub fn recreate_surface<MW>( +}

    Fields§

    §surface: Surface§render_target: Eventually<TextureView>§depth_texture: Eventually<Texture>§multisampling_texture: Eventually<Option<Texture>>

    Implementations§

    source§

    impl RenderResources

    source

    pub fn new(surface: Surface) -> Self

    source

    pub fn recreate_surface<MW>( &mut self, window: &MW, instance: &Instance ) -> Result<(), RenderError>where - MW: MapWindow + HeadedMapWindow,

    source

    pub fn surface(&self) -> &Surface

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere + MW: MapWindow + HeadedMapWindow,

    source

    pub fn surface(&self) -> &Surface

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for Twhere T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for Twhere T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Downcast<T> for T

    §

    fn downcast(&self) -> &T

    §

    impl<T> Downcast for Twhere diff --git a/docs/api/maplibre/render/struct.Renderer.html b/docs/api/maplibre/render/struct.Renderer.html index 97c2f051..052ab0bd 100644 --- a/docs/api/maplibre/render/struct.Renderer.html +++ b/docs/api/maplibre/render/struct.Renderer.html @@ -1,4 +1,4 @@ -Renderer in maplibre::render - Rust

    Struct maplibre::render::Renderer

    source ·
    pub struct Renderer {
    +Renderer in maplibre::render - Rust

    Struct maplibre::render::Renderer

    source ·
    pub struct Renderer {
         pub instance: Instance,
         pub device: Arc<Device>,
         pub queue: Queue,
    @@ -7,24 +7,24 @@
         pub settings: RendererSettings,
         pub resources: RenderResources,
         pub render_graph: RenderGraph,
    -}

    Fields§

    §instance: Instance§device: Arc<Device>§queue: Queue§adapter: Adapter§wgpu_settings: WgpuSettings§settings: RendererSettings§resources: RenderResources§render_graph: RenderGraph

    Implementations§

    source§

    impl Renderer

    source

    pub async fn initialize<MW>( +}

    Fields§

    §instance: Instance§device: Arc<Device>§queue: Queue§adapter: Adapter§wgpu_settings: WgpuSettings§settings: RendererSettings§resources: RenderResources§render_graph: RenderGraph

    Implementations§

    source§

    impl Renderer

    source

    pub async fn initialize<MW>( window: &MW, wgpu_settings: WgpuSettings, settings: RendererSettings ) -> Result<Self, RenderError>where MW: MapWindow + HeadedMapWindow,

    Initializes the renderer by retrieving and preparing the GPU instance, device and queue for the specified backend.

    -
    source

    pub async fn initialize_headless<MW>( +

    source

    pub async fn initialize_headless<MW>( window: &MW, wgpu_settings: WgpuSettings, settings: RendererSettings ) -> Result<Self, RenderError>where - MW: MapWindow,

    source

    pub fn resize_surface(&mut self, width: u32, height: u32)

    source

    async fn request_device( + MW: MapWindow,

    source

    pub fn resize_surface(&mut self, width: u32, height: u32)

    source

    async fn request_device( instance: &Instance, settings: &WgpuSettings, request_adapter_options: &RequestAdapterOptions<'_> ) -> Result<(Adapter, Device, Queue), RequestDeviceError>

    Requests a device

    -
    source

    pub fn instance(&self) -> &Instance

    source

    pub fn device(&self) -> &Device

    source

    pub fn queue(&self) -> &Queue

    source

    pub fn state(&self) -> &RenderResources

    source

    pub fn surface(&self) -> &Surface

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere +

    source

    pub fn instance(&self) -> &Instance

    source

    pub fn device(&self) -> &Device

    source

    pub fn queue(&self) -> &Queue

    source

    pub fn state(&self) -> &RenderResources

    source

    pub fn surface(&self) -> &Surface

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for Twhere T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for Twhere T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Downcast<T> for T

    §

    fn downcast(&self) -> &T

    §

    impl<T> Downcast for Twhere diff --git a/docs/api/maplibre/render/systems/tile_view_pattern_system/fn.tile_view_pattern_system.html b/docs/api/maplibre/render/systems/tile_view_pattern_system/fn.tile_view_pattern_system.html index 22133d7d..09310356 100644 --- a/docs/api/maplibre/render/systems/tile_view_pattern_system/fn.tile_view_pattern_system.html +++ b/docs/api/maplibre/render/systems/tile_view_pattern_system/fn.tile_view_pattern_system.html @@ -1 +1 @@ -tile_view_pattern_system in maplibre::render::systems::tile_view_pattern_system - Rust
    pub fn tile_view_pattern_system(_: &mut MapContext)
    \ No newline at end of file +tile_view_pattern_system in maplibre::render::systems::tile_view_pattern_system - Rust
    pub fn tile_view_pattern_system(_: &mut MapContext)
    \ No newline at end of file diff --git a/docs/api/maplibre/render/systems/tile_view_pattern_system/index.html b/docs/api/maplibre/render/systems/tile_view_pattern_system/index.html index d78d78db..c95b3aa4 100644 --- a/docs/api/maplibre/render/systems/tile_view_pattern_system/index.html +++ b/docs/api/maplibre/render/systems/tile_view_pattern_system/index.html @@ -1,2 +1,2 @@ -maplibre::render::systems::tile_view_pattern_system - Rust
    Expand description

    Extracts data from the current state.

    +maplibre::render::systems::tile_view_pattern_system - Rust
    Expand description

    Extracts data from the current state.

    Functions

    \ No newline at end of file diff --git a/docs/api/maplibre/render/tile_view_pattern/constant.DEFAULT_TILE_SIZE.html b/docs/api/maplibre/render/tile_view_pattern/constant.DEFAULT_TILE_SIZE.html new file mode 100644 index 00000000..65e1c3cb --- /dev/null +++ b/docs/api/maplibre/render/tile_view_pattern/constant.DEFAULT_TILE_SIZE.html @@ -0,0 +1,4 @@ +DEFAULT_TILE_SIZE in maplibre::render::tile_view_pattern - Rust
    pub const DEFAULT_TILE_SIZE: f64 = 512.0;
    Expand description

    If not otherwise specified, raster tiles usually are 512.0 by 512.0 pixel. +In order to support 256.0 x 256.0 raster tiles 256.0 must be used.

    +

    Vector tiles always have a size of 512.0.

    +
    \ No newline at end of file diff --git a/docs/api/maplibre/render/tile_view_pattern/constant.DEFAULT_TILE_VIEW_PATTERN_SIZE.html b/docs/api/maplibre/render/tile_view_pattern/constant.DEFAULT_TILE_VIEW_PATTERN_SIZE.html index 15be5705..d82a3e5d 100644 --- a/docs/api/maplibre/render/tile_view_pattern/constant.DEFAULT_TILE_VIEW_PATTERN_SIZE.html +++ b/docs/api/maplibre/render/tile_view_pattern/constant.DEFAULT_TILE_VIEW_PATTERN_SIZE.html @@ -1 +1 @@ -DEFAULT_TILE_VIEW_PATTERN_SIZE in maplibre::render::tile_view_pattern - Rust
    pub const DEFAULT_TILE_VIEW_PATTERN_SIZE: BufferAddress = _; // 128u64
    \ No newline at end of file +DEFAULT_TILE_VIEW_PATTERN_SIZE in maplibre::render::tile_view_pattern - Rust
    pub const DEFAULT_TILE_VIEW_PATTERN_SIZE: BufferAddress = 512;
    \ No newline at end of file diff --git a/docs/api/maplibre/render/tile_view_pattern/enum.SourceShapes.html b/docs/api/maplibre/render/tile_view_pattern/enum.SourceShapes.html index 3f901044..65d3a488 100644 --- a/docs/api/maplibre/render/tile_view_pattern/enum.SourceShapes.html +++ b/docs/api/maplibre/render/tile_view_pattern/enum.SourceShapes.html @@ -1,4 +1,4 @@ -SourceShapes in maplibre::render::tile_view_pattern - Rust
    pub enum SourceShapes {
    +SourceShapes in maplibre::render::tile_view_pattern - Rust
    pub enum SourceShapes {
         Parent(TileShape),
         Children(Vec<TileShape>),
         SourceEqTarget(TileShape),
    @@ -13,7 +13,7 @@ Similarly if we have the target (0, 0, 0) we might use
     
    §

    SourceEqTarget(TileShape)

    Source and target are equal, so no need to differentiate. We render the source shape exactly at the target.

    §

    None

    No data available so nothing to render

    -

    Trait Implementations§

    source§

    impl Clone for SourceShapes

    source§

    fn clone(&self) -> SourceShapes

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for SourceShapes

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere +

    Trait Implementations§

    source§

    impl Clone for SourceShapes

    source§

    fn clone(&self) -> SourceShapes

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for SourceShapes

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for Twhere T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for Twhere T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Downcast<T> for T

    §

    fn downcast(&self) -> &T

    §

    impl<T> Downcast for Twhere diff --git a/docs/api/maplibre/render/tile_view_pattern/index.html b/docs/api/maplibre/render/tile_view_pattern/index.html index 700b3d78..661428f4 100644 --- a/docs/api/maplibre/render/tile_view_pattern/index.html +++ b/docs/api/maplibre/render/tile_view_pattern/index.html @@ -1,7 +1,8 @@ -maplibre::render::tile_view_pattern - Rust
    Expand description

    Utility for generating a tile pattern which can be used for masking.

    +maplibre::render::tile_view_pattern - Rust
    Expand description

    Utility for generating a tile pattern which can be used for masking.

    Modules

    Structs

    • Defines the exact location where a specific tile on the map is rendered. It defines the shape of the tile with its location for the current zoom factor.
    • The tile mask pattern assigns each tile a value which can be used for stencil testing.
    • Defines the target tile and its source from which data tile data comes.

    Enums

    • This defines the source tile shaped from which the content for the target is taken. For example if the target is (0, 0, 1) (of ViewTile) , we might use SourceShapes::Parent((0, 0, 0)) as source. Similarly if we have the target (0, 0, 0) we might use -SourceShapes::Children((0, 0, 1), (0, 1, 1), (1, 0, 1), (1, 1, 1)) as sources.

    Constants

    Traits

    Type Definitions

    \ No newline at end of file +SourceShapes::Children((0, 0, 1), (0, 1, 1), (1, 0, 1), (1, 1, 1)) as sources.

    Constants

    Traits

    Type Definitions

    \ No newline at end of file diff --git a/docs/api/maplibre/render/tile_view_pattern/pattern/constant.CHILDREN_SEARCH_DEPTH.html b/docs/api/maplibre/render/tile_view_pattern/pattern/constant.CHILDREN_SEARCH_DEPTH.html index b42e0bc4..c2888e43 100644 --- a/docs/api/maplibre/render/tile_view_pattern/pattern/constant.CHILDREN_SEARCH_DEPTH.html +++ b/docs/api/maplibre/render/tile_view_pattern/pattern/constant.CHILDREN_SEARCH_DEPTH.html @@ -1 +1 @@ -CHILDREN_SEARCH_DEPTH in maplibre::render::tile_view_pattern::pattern - Rust
    pub const CHILDREN_SEARCH_DEPTH: usize = 4;
    \ No newline at end of file +CHILDREN_SEARCH_DEPTH in maplibre::render::tile_view_pattern::pattern - Rust
    pub const CHILDREN_SEARCH_DEPTH: usize = 4;
    \ No newline at end of file diff --git a/docs/api/maplibre/render/tile_view_pattern/pattern/constant.DEFAULT_TILE_VIEW_PATTERN_SIZE.html b/docs/api/maplibre/render/tile_view_pattern/pattern/constant.DEFAULT_TILE_VIEW_PATTERN_SIZE.html index 232b0896..a62e9c4d 100644 --- a/docs/api/maplibre/render/tile_view_pattern/pattern/constant.DEFAULT_TILE_VIEW_PATTERN_SIZE.html +++ b/docs/api/maplibre/render/tile_view_pattern/pattern/constant.DEFAULT_TILE_VIEW_PATTERN_SIZE.html @@ -1 +1 @@ -DEFAULT_TILE_VIEW_PATTERN_SIZE in maplibre::render::tile_view_pattern::pattern - Rust
    pub const DEFAULT_TILE_VIEW_PATTERN_SIZE: BufferAddress = _; // 128u64
    \ No newline at end of file +DEFAULT_TILE_VIEW_PATTERN_SIZE in maplibre::render::tile_view_pattern::pattern - Rust
    pub const DEFAULT_TILE_VIEW_PATTERN_SIZE: BufferAddress = 512;
    \ No newline at end of file diff --git a/docs/api/maplibre/render/tile_view_pattern/pattern/index.html b/docs/api/maplibre/render/tile_view_pattern/pattern/index.html index fde6d101..30d8e53e 100644 --- a/docs/api/maplibre/render/tile_view_pattern/pattern/index.html +++ b/docs/api/maplibre/render/tile_view_pattern/pattern/index.html @@ -1 +1 @@ -maplibre::render::tile_view_pattern::pattern - Rust

    Structs

    Constants

    \ No newline at end of file +maplibre::render::tile_view_pattern::pattern - Rust

    Structs

    Constants

    \ No newline at end of file diff --git a/docs/api/maplibre/render/tile_view_pattern/pattern/struct.BackingBuffer.html b/docs/api/maplibre/render/tile_view_pattern/pattern/struct.BackingBuffer.html index ec19005f..c0cd76f6 100644 --- a/docs/api/maplibre/render/tile_view_pattern/pattern/struct.BackingBuffer.html +++ b/docs/api/maplibre/render/tile_view_pattern/pattern/struct.BackingBuffer.html @@ -1,9 +1,9 @@ -BackingBuffer in maplibre::render::tile_view_pattern::pattern - Rust
    struct BackingBuffer<B> {
    +BackingBuffer in maplibre::render::tile_view_pattern::pattern - Rust
    struct BackingBuffer<B> {
         inner: B,
         inner_size: BufferAddress,
     }

    Fields§

    §inner: B

    The internal structure which is used for storage

    §inner_size: BufferAddress

    The size of the inner buffer

    -

    Implementations§

    source§

    impl<B> BackingBuffer<B>

    source

    fn new(inner: B, inner_size: BufferAddress) -> Self

    Trait Implementations§

    source§

    impl<B: Debug> Debug for BackingBuffer<B>

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more

    Auto Trait Implementations§

    §

    impl<B> RefUnwindSafe for BackingBuffer<B>where +

    Implementations§

    source§

    impl<B> BackingBuffer<B>

    source

    fn new(inner: B, inner_size: BufferAddress) -> Self

    Trait Implementations§

    source§

    impl<B: Debug> Debug for BackingBuffer<B>

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more

    Auto Trait Implementations§

    §

    impl<B> RefUnwindSafe for BackingBuffer<B>where B: RefUnwindSafe,

    §

    impl<B> Send for BackingBuffer<B>where B: Send,

    §

    impl<B> Sync for BackingBuffer<B>where B: Sync,

    §

    impl<B> Unpin for BackingBuffer<B>where diff --git a/docs/api/maplibre/render/tile_view_pattern/pattern/struct.TileViewPattern.html b/docs/api/maplibre/render/tile_view_pattern/pattern/struct.TileViewPattern.html index dd640c0a..be9ca2c9 100644 --- a/docs/api/maplibre/render/tile_view_pattern/pattern/struct.TileViewPattern.html +++ b/docs/api/maplibre/render/tile_view_pattern/pattern/struct.TileViewPattern.html @@ -1,15 +1,15 @@ -TileViewPattern in maplibre::render::tile_view_pattern::pattern - Rust
    pub struct TileViewPattern<Q, B> {
    +TileViewPattern in maplibre::render::tile_view_pattern::pattern - Rust
    pub struct TileViewPattern<Q, B> {
         view_tiles: Vec<ViewTile>,
         view_tiles_buffer: BackingBuffer<B>,
         phantom_q: PhantomData<Q>,
     }
    Expand description

    The tile mask pattern assigns each tile a value which can be used for stencil testing.

    -

    Fields§

    §view_tiles: Vec<ViewTile>§view_tiles_buffer: BackingBuffer<B>§phantom_q: PhantomData<Q>

    Implementations§

    source§

    impl<Q: Queue<B>, B> TileViewPattern<Q, B>

    source

    pub fn new(view_tiles_buffer: BackingBufferDescriptor<B>) -> Self

    source

    pub fn generate_pattern<T: HasTile>( +

    Fields§

    §view_tiles: Vec<ViewTile>§view_tiles_buffer: BackingBuffer<B>§phantom_q: PhantomData<Q>

    Implementations§

    source§

    impl<Q: Queue<B>, B> TileViewPattern<Q, B>

    source

    pub fn new(view_tiles_buffer: BackingBufferDescriptor<B>) -> Self

    source

    pub fn generate_pattern<T: HasTile>( &self, view_region: &ViewRegion, container: &T, zoom: Zoom, world: &World -) -> Vec<ViewTile>

    source

    pub fn update_pattern(&mut self, view_tiles: Vec<ViewTile>)

    source

    pub fn iter(&self) -> impl Iterator<Item = &ViewTile> + '_

    source

    pub fn buffer(&self) -> &B

    source

    pub fn upload_pattern(&mut self, queue: &Q, view_proj: &ViewProjection)

    Auto Trait Implementations§

    §

    impl<Q, B> RefUnwindSafe for TileViewPattern<Q, B>where +) -> Vec<ViewTile>

    source

    pub fn update_pattern(&mut self, view_tiles: Vec<ViewTile>)

    source

    pub fn iter(&self) -> impl Iterator<Item = &ViewTile> + '_

    source

    pub fn buffer(&self) -> &B

    source

    pub fn upload_pattern(&mut self, queue: &Q, view_proj: &ViewProjection)

    Auto Trait Implementations§

    §

    impl<Q, B> RefUnwindSafe for TileViewPattern<Q, B>where B: RefUnwindSafe, Q: RefUnwindSafe,

    §

    impl<Q, B> Send for TileViewPattern<Q, B>where B: Send, diff --git a/docs/api/maplibre/render/tile_view_pattern/sidebar-items.js b/docs/api/maplibre/render/tile_view_pattern/sidebar-items.js index dba3d7f5..c790fe49 100644 --- a/docs/api/maplibre/render/tile_view_pattern/sidebar-items.js +++ b/docs/api/maplibre/render/tile_view_pattern/sidebar-items.js @@ -1 +1 @@ -window.SIDEBAR_ITEMS = {"constant":["DEFAULT_TILE_VIEW_PATTERN_SIZE"],"enum":["SourceShapes"],"mod":["pattern"],"struct":["QueryHasTile","TileShape","TileViewPattern","ViewTile","ViewTileSources"],"trait":["HasTile"],"type":["WgpuTileViewPattern"]}; \ No newline at end of file +window.SIDEBAR_ITEMS = {"constant":["DEFAULT_TILE_SIZE","DEFAULT_TILE_VIEW_PATTERN_SIZE"],"enum":["SourceShapes"],"mod":["pattern"],"struct":["QueryHasTile","TileShape","TileViewPattern","ViewTile","ViewTileSources"],"trait":["HasTile"],"type":["WgpuTileViewPattern"]}; \ No newline at end of file diff --git a/docs/api/maplibre/render/tile_view_pattern/struct.QueryHasTile.html b/docs/api/maplibre/render/tile_view_pattern/struct.QueryHasTile.html index a5db8d87..037a7746 100644 --- a/docs/api/maplibre/render/tile_view_pattern/struct.QueryHasTile.html +++ b/docs/api/maplibre/render/tile_view_pattern/struct.QueryHasTile.html @@ -1,11 +1,11 @@ -QueryHasTile in maplibre::render::tile_view_pattern - Rust
    pub struct QueryHasTile<Q> {
    +QueryHasTile in maplibre::render::tile_view_pattern - Rust
    pub struct QueryHasTile<Q> {
         phantom_q: PhantomData<Q>,
    -}

    Fields§

    §phantom_q: PhantomData<Q>

    Trait Implementations§

    source§

    impl<Q: ResourceQuery> Default for QueryHasTile<Q>

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl<Q: ResourceQuery> HasTile for QueryHasTile<Q>where - for<'a> Q::Item<'a>: HasTile,

    Fields§

    §phantom_q: PhantomData<Q>

    Trait Implementations§

    source§

    impl<Q: ResourceQuery> Default for QueryHasTile<Q>

    source§

    fn default() -> Self

    Returns the “default value” for a type. Read more
    source§

    impl<Q: ResourceQuery> HasTile for QueryHasTile<Q>where + for<'a> Q::Item<'a>: HasTile,

    source§

    fn has_tile(&self, coords: WorldTileCoords, world: &World) -> bool

    source§

    fn get_available_parent( &self, coords: WorldTileCoords, world: &World -) -> Option<WorldTileCoords>

    source§

    fn get_available_children( +) -> Option<WorldTileCoords>

    source§

    fn get_available_children( &self, coords: WorldTileCoords, world: &World, diff --git a/docs/api/maplibre/render/tile_view_pattern/struct.TileShape.html b/docs/api/maplibre/render/tile_view_pattern/struct.TileShape.html index 36f8c373..221cc70e 100644 --- a/docs/api/maplibre/render/tile_view_pattern/struct.TileShape.html +++ b/docs/api/maplibre/render/tile_view_pattern/struct.TileShape.html @@ -1,11 +1,11 @@ -TileShape in maplibre::render::tile_view_pattern - Rust
    pub struct TileShape {
    +TileShape in maplibre::render::tile_view_pattern - Rust
    pub struct TileShape {
         coords: WorldTileCoords,
         zoom_factor: f64,
         transform: Matrix4<f64>,
         buffer_range: Option<Range<BufferAddress>>,
     }
    Expand description

    Defines the exact location where a specific tile on the map is rendered. It defines the shape of the tile with its location for the current zoom factor.

    -

    Fields§

    §coords: WorldTileCoords§zoom_factor: f64§transform: Matrix4<f64>§buffer_range: Option<Range<BufferAddress>>

    Implementations§

    source§

    impl TileShape

    source

    fn new(coords: WorldTileCoords, zoom: Zoom) -> Self

    source

    fn set_buffer_range(&mut self, index: u64)

    source

    pub fn buffer_range(&self) -> Option<Range<BufferAddress>>

    source

    pub fn coords(&self) -> WorldTileCoords

    Trait Implementations§

    source§

    impl Clone for TileShape

    source§

    fn clone(&self) -> TileShape

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for TileShape

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere +

    Fields§

    §coords: WorldTileCoords§zoom_factor: f64§transform: Matrix4<f64>§buffer_range: Option<Range<BufferAddress>>

    Implementations§

    source§

    impl TileShape

    source

    fn new(coords: WorldTileCoords, zoom: Zoom) -> Self

    source

    fn set_buffer_range(&mut self, index: u64)

    source

    pub fn buffer_range(&self) -> Option<Range<BufferAddress>>

    source

    pub fn coords(&self) -> WorldTileCoords

    Trait Implementations§

    source§

    impl Clone for TileShape

    source§

    fn clone(&self) -> TileShape

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for TileShape

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for Twhere T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for Twhere T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Downcast<T> for T

    §

    fn downcast(&self) -> &T

    §

    impl<T> Downcast for Twhere diff --git a/docs/api/maplibre/render/tile_view_pattern/struct.TileViewPattern.html b/docs/api/maplibre/render/tile_view_pattern/struct.TileViewPattern.html index 1d96fdfa..3cf1ec8f 100644 --- a/docs/api/maplibre/render/tile_view_pattern/struct.TileViewPattern.html +++ b/docs/api/maplibre/render/tile_view_pattern/struct.TileViewPattern.html @@ -1,15 +1,15 @@ -TileViewPattern in maplibre::render::tile_view_pattern - Rust
    pub struct TileViewPattern<Q, B> {
    +TileViewPattern in maplibre::render::tile_view_pattern - Rust
    pub struct TileViewPattern<Q, B> {
         view_tiles: Vec<ViewTile>,
         view_tiles_buffer: BackingBuffer<B>,
         phantom_q: PhantomData<Q>,
     }
    Expand description

    The tile mask pattern assigns each tile a value which can be used for stencil testing.

    -

    Fields§

    §view_tiles: Vec<ViewTile>§view_tiles_buffer: BackingBuffer<B>§phantom_q: PhantomData<Q>

    Implementations§

    source§

    impl<Q: Queue<B>, B> TileViewPattern<Q, B>

    source

    pub fn new(view_tiles_buffer: BackingBufferDescriptor<B>) -> Self

    source

    pub fn generate_pattern<T: HasTile>( +

    Fields§

    §view_tiles: Vec<ViewTile>§view_tiles_buffer: BackingBuffer<B>§phantom_q: PhantomData<Q>

    Implementations§

    source§

    impl<Q: Queue<B>, B> TileViewPattern<Q, B>

    source

    pub fn new(view_tiles_buffer: BackingBufferDescriptor<B>) -> Self

    source

    pub fn generate_pattern<T: HasTile>( &self, view_region: &ViewRegion, container: &T, zoom: Zoom, world: &World -) -> Vec<ViewTile>

    source

    pub fn update_pattern(&mut self, view_tiles: Vec<ViewTile>)

    source

    pub fn iter(&self) -> impl Iterator<Item = &ViewTile> + '_

    source

    pub fn buffer(&self) -> &B

    source

    pub fn upload_pattern(&mut self, queue: &Q, view_proj: &ViewProjection)

    Auto Trait Implementations§

    §

    impl<Q, B> RefUnwindSafe for TileViewPattern<Q, B>where +) -> Vec<ViewTile>

    source

    pub fn update_pattern(&mut self, view_tiles: Vec<ViewTile>)

    source

    pub fn iter(&self) -> impl Iterator<Item = &ViewTile> + '_

    source

    pub fn buffer(&self) -> &B

    source

    pub fn upload_pattern(&mut self, queue: &Q, view_proj: &ViewProjection)

    Auto Trait Implementations§

    §

    impl<Q, B> RefUnwindSafe for TileViewPattern<Q, B>where B: RefUnwindSafe, Q: RefUnwindSafe,

    §

    impl<Q, B> Send for TileViewPattern<Q, B>where B: Send, diff --git a/docs/api/maplibre/render/tile_view_pattern/struct.ViewTile.html b/docs/api/maplibre/render/tile_view_pattern/struct.ViewTile.html index 62b204eb..fdbadb62 100644 --- a/docs/api/maplibre/render/tile_view_pattern/struct.ViewTile.html +++ b/docs/api/maplibre/render/tile_view_pattern/struct.ViewTile.html @@ -1,9 +1,9 @@ -ViewTile in maplibre::render::tile_view_pattern - Rust
    pub struct ViewTile {
    +ViewTile in maplibre::render::tile_view_pattern - Rust
    pub struct ViewTile {
         target: WorldTileCoords,
         source: SourceShapes,
     }
    Expand description

    Defines the target tile and its source from which data tile data comes.

    -

    Fields§

    §target: WorldTileCoords§source: SourceShapes

    Implementations§

    source§

    impl ViewTile

    source

    pub fn coords(&self) -> WorldTileCoords

    source

    pub fn render<F>(&self, callback: F)where - F: FnMut(&TileShape),

    Trait Implementations§

    source§

    impl Clone for ViewTile

    source§

    fn clone(&self) -> ViewTile

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ViewTile

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere +

    Fields§

    §target: WorldTileCoords§source: SourceShapes

    Implementations§

    source§

    impl ViewTile

    source

    pub fn coords(&self) -> WorldTileCoords

    source

    pub fn render<F>(&self, callback: F)where + F: FnMut(&TileShape),

    Trait Implementations§

    source§

    impl Clone for ViewTile

    source§

    fn clone(&self) -> ViewTile

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Debug for ViewTile

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for Twhere T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for Twhere T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Downcast<T> for T

    §

    fn downcast(&self) -> &T

    §

    impl<T> Downcast for Twhere diff --git a/docs/api/maplibre/render/tile_view_pattern/struct.ViewTileSources.html b/docs/api/maplibre/render/tile_view_pattern/struct.ViewTileSources.html index 959ff8a8..09dd4714 100644 --- a/docs/api/maplibre/render/tile_view_pattern/struct.ViewTileSources.html +++ b/docs/api/maplibre/render/tile_view_pattern/struct.ViewTileSources.html @@ -1,11 +1,11 @@ -ViewTileSources in maplibre::render::tile_view_pattern - Rust
    pub struct ViewTileSources {
    +ViewTileSources in maplibre::render::tile_view_pattern - Rust
    pub struct ViewTileSources {
         items: Vec<Box<dyn HasTile>>,
    -}

    Fields§

    §items: Vec<Box<dyn HasTile>>

    Implementations§

    source§

    impl ViewTileSources

    source

    pub fn add<H: HasTile + 'static + Default>(&mut self) -> &mut Self

    source

    pub fn add_resource_query<Q: ResourceQuery + 'static>(&mut self) -> &mut Selfwhere - for<'a> Q::Item<'a>: HasTile,

    source

    pub fn clear(&mut self)

    Trait Implementations§

    source§

    impl Default for ViewTileSources

    source§

    fn default() -> ViewTileSources

    Returns the “default value” for a type. Read more
    source§

    impl HasTile for ViewTileSources

    Fields§

    §items: Vec<Box<dyn HasTile>>

    Implementations§

    source§

    impl ViewTileSources

    source

    pub fn add<H: HasTile + 'static + Default>(&mut self) -> &mut Self

    source

    pub fn add_resource_query<Q: ResourceQuery + 'static>(&mut self) -> &mut Selfwhere + for<'a> Q::Item<'a>: HasTile,

    source

    pub fn clear(&mut self)

    Trait Implementations§

    source§

    impl Default for ViewTileSources

    source§

    fn default() -> ViewTileSources

    Returns the “default value” for a type. Read more
    source§

    impl HasTile for ViewTileSources

    source§

    fn has_tile(&self, coords: WorldTileCoords, world: &World) -> bool

    source§

    fn get_available_parent( &self, coords: WorldTileCoords, world: &World -) -> Option<WorldTileCoords>

    source§

    fn get_available_children( +) -> Option<WorldTileCoords>

    source§

    fn get_available_children( &self, coords: WorldTileCoords, world: &World, diff --git a/docs/api/maplibre/render/tile_view_pattern/trait.HasTile.html b/docs/api/maplibre/render/tile_view_pattern/trait.HasTile.html index 5760b1b8..bdf6c799 100644 --- a/docs/api/maplibre/render/tile_view_pattern/trait.HasTile.html +++ b/docs/api/maplibre/render/tile_view_pattern/trait.HasTile.html @@ -1,4 +1,4 @@ -HasTile in maplibre::render::tile_view_pattern - Rust
    pub trait HasTile {
    +HasTile in maplibre::render::tile_view_pattern - Rust
    pub trait HasTile {
         // Required method
         fn has_tile(&self, coords: WorldTileCoords, world: &World) -> bool;
     
    @@ -14,15 +14,15 @@
             world: &World,
             search_depth: usize
         ) -> Option<Vec<WorldTileCoords>> { ... }
    -}

    Required Methods§

    source

    fn has_tile(&self, coords: WorldTileCoords, world: &World) -> bool

    Provided Methods§

    Required Methods§

    source

    fn has_tile(&self, coords: WorldTileCoords, world: &World) -> bool

    Provided Methods§

    Implementations on Foreign Types§

    source§

    impl<A: HasTile, B: HasTile> HasTile for (A, B)

    source§

    fn has_tile(&self, coords: WorldTileCoords, world: &World) -> bool

    source§

    impl<A: HasTile, B: HasTile, C: HasTile> HasTile for (A, B, C)

    source§

    fn has_tile(&self, coords: WorldTileCoords, world: &World) -> bool

    source§

    impl<A: HasTile> HasTile for &A

    source§

    fn has_tile(&self, coords: WorldTileCoords, world: &World) -> bool

    source§

    impl<A: HasTile> HasTile for (A,)

    source§

    fn has_tile(&self, coords: WorldTileCoords, world: &World) -> bool

    Implementors§

    Implementations on Foreign Types§

    source§

    impl<A: HasTile> HasTile for &A

    source§

    fn has_tile(&self, coords: WorldTileCoords, world: &World) -> bool

    source§

    impl<A: HasTile, B: HasTile, C: HasTile> HasTile for (A, B, C)

    source§

    fn has_tile(&self, coords: WorldTileCoords, world: &World) -> bool

    source§

    impl<A: HasTile, B: HasTile> HasTile for (A, B)

    source§

    fn has_tile(&self, coords: WorldTileCoords, world: &World) -> bool

    source§

    impl<A: HasTile> HasTile for (A,)

    source§

    fn has_tile(&self, coords: WorldTileCoords, world: &World) -> bool

    Implementors§

    source§

    impl HasTile for RasterResources

    source§

    impl HasTile for VectorTilesDone

    source§

    impl HasTile for ViewTileSources

    source§

    impl<Q: ResourceQuery> HasTile for QueryHasTile<Q>where for<'a> Q::Item<'a>: HasTile,

    source§

    impl<Q: Queue<B>, B, V: Pod, I: Pod, TM: Pod, FM: Pod> HasTile for BufferPool<Q, B, V, I, TM, FM>

    source§

    impl<T> HasTile for Eventually<T>where T: HasTile,

    \ No newline at end of file diff --git a/docs/api/maplibre/render/view_state/constant.MAX_N_TILES.html b/docs/api/maplibre/render/view_state/constant.MAX_N_TILES.html new file mode 100644 index 00000000..2678b764 --- /dev/null +++ b/docs/api/maplibre/render/view_state/constant.MAX_N_TILES.html @@ -0,0 +1 @@ +MAX_N_TILES in maplibre::render::view_state - Rust
    const MAX_N_TILES: usize = 512;
    \ No newline at end of file diff --git a/docs/api/maplibre/render/view_state/constant.VIEW_REGION_PADDING.html b/docs/api/maplibre/render/view_state/constant.VIEW_REGION_PADDING.html new file mode 100644 index 00000000..9ace0781 --- /dev/null +++ b/docs/api/maplibre/render/view_state/constant.VIEW_REGION_PADDING.html @@ -0,0 +1 @@ +VIEW_REGION_PADDING in maplibre::render::view_state - Rust
    const VIEW_REGION_PADDING: i32 = 1;
    \ No newline at end of file diff --git a/docs/api/maplibre/render/view_state/index.html b/docs/api/maplibre/render/view_state/index.html new file mode 100644 index 00000000..148019b2 --- /dev/null +++ b/docs/api/maplibre/render/view_state/index.html @@ -0,0 +1 @@ +maplibre::render::view_state - Rust
    \ No newline at end of file diff --git a/docs/api/maplibre/render/view_state/sidebar-items.js b/docs/api/maplibre/render/view_state/sidebar-items.js new file mode 100644 index 00000000..14d5b298 --- /dev/null +++ b/docs/api/maplibre/render/view_state/sidebar-items.js @@ -0,0 +1 @@ +window.SIDEBAR_ITEMS = {"constant":["MAX_N_TILES","VIEW_REGION_PADDING"],"struct":["ViewState"]}; \ No newline at end of file diff --git a/docs/api/maplibre/render/view_state/struct.ViewState.html b/docs/api/maplibre/render/view_state/struct.ViewState.html new file mode 100644 index 00000000..379f4d0a --- /dev/null +++ b/docs/api/maplibre/render/view_state/struct.ViewState.html @@ -0,0 +1,94 @@ +ViewState in maplibre::render::view_state - Rust
    pub struct ViewState {
    +    zoom: ChangeObserver<Zoom>,
    +    camera: ChangeObserver<Camera>,
    +    perspective: Perspective,
    +    width: f64,
    +    height: f64,
    +    edge_insets: EdgeInsets,
    +}

    Fields§

    §zoom: ChangeObserver<Zoom>§camera: ChangeObserver<Camera>§perspective: Perspective§width: f64§height: f64§edge_insets: EdgeInsets

    Implementations§

    source§

    impl ViewState

    source

    pub fn new<F: Into<Rad<f64>>, P: Into<Deg<f64>>>( + window_size: WindowSize, + position: WorldCoords, + zoom: Zoom, + pitch: P, + fovy: F +) -> Self

    source

    pub fn set_edge_insets(&mut self, edge_insets: EdgeInsets)

    source

    pub fn edge_insets(&self) -> &EdgeInsets

    source

    pub fn resize(&mut self, width: u32, height: u32)

    source

    pub fn create_view_region(&self, visible_level: ZoomLevel) -> Option<ViewRegion>

    source

    pub fn get_intersection_time( + ray_origin: Vector3<f64>, + ray_direction: Vector3<f64>, + plane_origin: Vector3<f64>, + plane_normal: Vector3<f64> +) -> f64

    source

    pub fn furthest_distance( + &self, + camera_height: f64, + center_offset: Point2<f64> +) -> f64

    source

    pub fn camera_to_center_distance(&self) -> f64

    source

    pub fn view_projection(&self) -> ViewProjection

    This function matches how maplibre-gl-js implements perspective and cameras at the time +of the mapbox -> maplibre fork: src/geo/transform.ts#L680

    +
    source

    pub fn zoom(&self) -> Zoom

    source

    pub fn did_zoom_change(&self) -> bool

    source

    pub fn update_zoom(&mut self, new_zoom: Zoom)

    source

    pub fn camera(&self) -> &Camera

    source

    pub fn camera_mut(&mut self) -> &mut Camera

    source

    pub fn did_camera_change(&self) -> bool

    source

    pub fn update_references(&mut self)

    source

    fn clip_to_window_transform(&self) -> Matrix4<f64>

    A transform which can be used to transform between clip and window space. +Adopted from here (Direct3D).

    +
    source

    fn clip_to_window(&self, clip: &Vector4<f64>) -> Vector4<f64>

    Transforms coordinates in clip space to window coordinates.

    +

    Adopted from here (Direct3D).

    +
    source

    fn clip_to_window_vulkan(&self, clip: &Vector4<f64>) -> Vector3<f64>

    Alternative implementation to clip_to_window. Transforms coordinates in clip space to +window coordinates.

    +

    Adopted from here +and here (Vulkan).

    +
    source

    fn window_to_world( + &self, + window: &Vector3<f64>, + inverted_view_proj: &InvertedViewProjection +) -> Vector3<f64>

    Order of transformations reversed: https://computergraphics.stackexchange.com/questions/6087/screen-space-coordinates-to-eye-space-conversion/6093 +w is lost.

    +

    OpenGL explanation: https://www.khronos.org/opengl/wiki/Compute_eye_space_from_window_space#From_window_to_ndc

    +
    source

    fn window_to_world_nalgebra( + window: &Vector3<f64>, + inverted_view_proj: &InvertedViewProjection, + width: f64, + height: f64 +) -> Vector3<f64>

    Alternative implementation to window_to_world

    +

    Adopted from here.

    +
    source

    pub fn window_to_world_at_ground( + &self, + window: &Vector2<f64>, + inverted_view_proj: &InvertedViewProjection, + bound: bool +) -> Option<Vector2<f64>>

    Gets the world coordinates for the specified window coordinates on the z=0 plane.

    +
    source

    pub fn view_region_bounding_box( + &self, + inverted_view_proj: &InvertedViewProjection +) -> Option<Aabb2<f64>>

    Calculates an Aabb2 bounding box which contains at least the visible area on the z=0 +plane. One can think of it as being the bounding box of the geometry which forms the +intersection between the viewing frustum and the z=0 plane.

    +

    This implementation works in the world 3D space. It casts rays from the corners of the +window to calculate intersections points with the z=0 plane. Then a bounding box is +calculated.

    +

    Note: It is possible that no such bounding box exists. This is the case if the z=0 plane +is not in view.

    +
    source

    pub fn view_region_bounding_box_ndc(&self) -> Option<Aabb2<f64>>

    An alternative implementation for view_bounding_box.

    +

    This implementation works in the NDC space. We are creating a plane in the world 3D space. +Then we are transforming it to the NDC space. In NDC space it is easy to calculate +the intersection points between an Aabb3 and a plane. The resulting Aabb2 is returned.

    +

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere + T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for Twhere + T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for Twhere + T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Downcast<T> for T

    §

    fn downcast(&self) -> &T

    §

    impl<T> Downcast for Twhere + T: Any,

    §

    fn into_any(self: Box<T, Global>) -> Box<dyn Any, Global>

    Convert Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can +then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.
    §

    fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>

    Convert Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be +further downcast into Rc<ConcreteType> where ConcreteType implements Trait.
    §

    fn as_any(&self) -> &(dyn Any + 'static)

    Convert &Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot +generate &Any’s vtable from &Trait’s.
    §

    fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)

    Convert &mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot +generate &mut Any’s vtable from &mut Trait’s.
    §

    impl<T> DowncastSync for Twhere + T: Any + Send + Sync,

    §

    fn into_any_arc(self: Arc<T>) -> Arc<dyn Any + Sync + Send>

    Convert Arc<Trait> (where Trait: Downcast) to Arc<Any>. Arc<Any> can then be +further downcast into Arc<ConcreteType> where ConcreteType implements Trait.
    source§

    impl<T> From<T> for T

    source§

    fn from(t: T) -> T

    Returns the argument unchanged.

    +
    source§

    impl<T> Instrument for T

    source§

    fn instrument(self, span: Span) -> Instrumented<Self>

    Instruments this type with the provided Span, returning an +Instrumented wrapper. Read more
    source§

    fn in_current_span(self) -> Instrumented<Self>

    Instruments this type with the current Span, returning an +Instrumented wrapper. Read more
    source§

    impl<T, U> Into<U> for Twhere + U: From<T>,

    source§

    fn into(self) -> U

    Calls U::from(self).

    +

    That is, this conversion is whatever the implementation of +From<T> for U chooses to do.

    +
    source§

    impl<T> Same<T> for T

    §

    type Output = T

    Should always be Self
    source§

    impl<T, U> TryFrom<U> for Twhere + U: Into<T>,

    §

    type Error = Infallible

    The type returned in the event of a conversion error.
    source§

    fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

    Performs the conversion.
    source§

    impl<T, U> TryInto<U> for Twhere + U: TryFrom<T>,

    §

    type Error = <U as TryFrom<T>>::Error

    The type returned in the event of a conversion error.
    source§

    fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

    Performs the conversion.
    §

    impl<T> Upcast<T> for T

    §

    fn upcast(&self) -> Option<&T>

    source§

    impl<T> WithSubscriber for T

    source§

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where + S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a +WithDispatch wrapper. Read more
    source§

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a +WithDispatch wrapper. Read more
    §

    impl<G1, G2> Within<G2> for G1where + G2: Contains<G1>,

    §

    fn is_within(&self, b: &G2) -> bool

    source§

    impl<T> Resource for Twhere + T: 'static,

    §

    impl<T> WasmNotSend for Twhere + T: Send,

    §

    impl<T> WasmNotSync for Twhere + T: Sync,

    \ No newline at end of file diff --git a/docs/api/maplibre/schedule/trait.StageLabel.html b/docs/api/maplibre/schedule/trait.StageLabel.html index 63c174cc..830db7fb 100644 --- a/docs/api/maplibre/schedule/trait.StageLabel.html +++ b/docs/api/maplibre/schedule/trait.StageLabel.html @@ -1,4 +1,4 @@ StageLabel in maplibre::schedule - Rust
    pub trait StageLabel: DynHash + Debug + Send + Sync + 'static { }
    Expand description

    Defines a set of strongly-typed labels for a class of objects

    Trait Implementations§

    source§

    impl Clone for Box<dyn StageLabel>

    source§

    fn clone(&self) -> Self

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Hash for dyn StageLabel

    source§

    fn hash<H: Hasher>(&self, state: &mut H)

    Feeds this value into the given Hasher. Read more
    source§

    impl PartialEq<dyn StageLabel> for dyn StageLabel

    source§

    fn eq(&self, other: &Self) -> bool

    This method tests for self and other values to be equal, and is used by ==.
    1.0.0 · source§

    fn ne(&self, other: &Rhs) -> bool

    This method tests for !=. The default implementation is almost always -sufficient, and should not be overridden without very good reason.
    source§

    impl Eq for dyn StageLabel

    Implementations on Foreign Types§

    source§

    impl StageLabel for &'static str

    source§

    impl StageLabel for Cow<'static, str>

    Implementors§

    \ No newline at end of file +sufficient, and should not be overridden without very good reason.

    source§

    impl Eq for dyn StageLabel

    Implementations on Foreign Types§

    source§

    impl StageLabel for &'static str

    source§

    impl StageLabel for Cow<'static, str>

    Implementors§

    \ No newline at end of file diff --git a/docs/api/maplibre/sidebar-items.js b/docs/api/maplibre/sidebar-items.js index e3c0a932..be1f4686 100644 --- a/docs/api/maplibre/sidebar-items.js +++ b/docs/api/maplibre/sidebar-items.js @@ -1 +1 @@ -window.SIDEBAR_ITEMS = {"macro":["define_label","multi_stage"],"mod":["benchmarking","context","coords","debug","environment","event_loop","io","kernel","map","platform","plugin","raster","render","schedule","style","tcs","tessellation","tile","util","vector","view_state","window"]}; \ No newline at end of file +window.SIDEBAR_ITEMS = {"macro":["define_label","multi_stage"],"mod":["benchmarking","context","coords","debug","environment","event_loop","io","kernel","map","platform","plugin","raster","render","schedule","style","tcs","tessellation","tile","util","vector","window"]}; \ No newline at end of file diff --git a/docs/api/maplibre/style/struct.Alpha.html b/docs/api/maplibre/style/struct.Alpha.html index 6876be77..818851ae 100644 --- a/docs/api/maplibre/style/struct.Alpha.html +++ b/docs/api/maplibre/style/struct.Alpha.html @@ -169,7 +169,7 @@ ComponentTy: Copy,

    §

    fn from(col_alpha: Alpha<YPbPr<ComponentTy>>) -> YPbPr<ComponentTy>

    Converts to this type from the input type.
    §

    impl<ComponentTy> From<Alpha<YPrimeCbCr<ComponentTy>>> for YPrimeCbCr<ComponentTy>where ComponentTy: Copy,

    §

    fn from(col_alpha: Alpha<YPrimeCbCr<ComponentTy>>) -> YPrimeCbCr<ComponentTy>

    Converts to this type from the input type.
    §

    impl<ComponentTy> From<Alpha<YPrimePbPr<ComponentTy>>> for YPrimePbPr<ComponentTy>where ComponentTy: Copy,

    §

    fn from(col_alpha: Alpha<YPrimePbPr<ComponentTy>>) -> YPrimePbPr<ComponentTy>

    Converts to this type from the input type.
    §

    impl<ComponentTy> From<Alpha<Yuv<ComponentTy>>> for Yuv<ComponentTy>where - ComponentTy: Copy,

    §

    fn from(col_alpha: Alpha<Yuv<ComponentTy>>) -> Yuv<ComponentTy>

    Converts to this type from the input type.
    §

    impl From<Color> for Alpha<EncodedSrgb<f32>>

    §

    fn from(c: Color) -> Alpha<EncodedSrgb<f32>>

    Converts to this type from the input type.
    §

    impl From<Color> for Alpha<EncodedSrgb<f64>>

    §

    fn from(c: Color) -> Alpha<EncodedSrgb<f64>>

    Converts to this type from the input type.
    §

    impl From<Color> for Alpha<EncodedSrgb<u8>>

    §

    fn from(c: Color) -> Alpha<EncodedSrgb<u8>>

    Converts to this type from the input type.
    §

    impl<ColorTy> Hash for Alpha<ColorTy>where + ComponentTy: Copy,

    §

    fn from(col_alpha: Alpha<Yuv<ComponentTy>>) -> Yuv<ComponentTy>

    Converts to this type from the input type.
    §

    impl From<Color> for Alpha<EncodedSrgb<f32>>

    §

    fn from(c: Color) -> Alpha<EncodedSrgb<f32>>

    Converts to this type from the input type.
    §

    impl From<Color> for Alpha<EncodedSrgb<f64>>

    §

    fn from(c: Color) -> Alpha<EncodedSrgb<f64>>

    Converts to this type from the input type.
    §

    impl From<Color> for Alpha<EncodedSrgb<u8>>

    §

    fn from(c: Color) -> Alpha<EncodedSrgb<u8>>

    Converts to this type from the input type.
    §

    impl<ColorTy> Hash for Alpha<ColorTy>where ColorTy: Hash + ColorType, <ColorTy as ColorType>::ComponentTy: Hash,

    §

    fn hash<__H>(&self, state: &mut __H)where __H: Hasher,

    Feeds this value into the given Hasher. Read more
    1.3.0 · source§

    fn hash_slice<H>(data: &[Self], state: &mut H)where diff --git a/docs/api/maplibre/tcs/resources/trait.ResourceQuery.html b/docs/api/maplibre/tcs/resources/trait.ResourceQuery.html index 30de31da..3080f48e 100644 --- a/docs/api/maplibre/tcs/resources/trait.ResourceQuery.html +++ b/docs/api/maplibre/tcs/resources/trait.ResourceQuery.html @@ -10,25 +10,25 @@ }

    Required Associated Types§

    source

    type Item<'r>

    source

    type State<'s>: QueryState<'s>

    Required Methods§

    source

    fn query<'r, 's>( resources: &'r Resources, state: Self::State<'s> -) -> Option<Self::Item<'r>>

    Implementations on Foreign Types§

    source§

    impl<R1: ResourceQuery, R2: ResourceQuery, R3: ResourceQuery, R4: ResourceQuery, R5: ResourceQuery, R6: ResourceQuery> ResourceQuery for (R1, R2, R3, R4, R5, R6)

    §

    type Item<'r> = (<R1 as ResourceQuery>::Item<'r>, <R2 as ResourceQuery>::Item<'r>, <R3 as ResourceQuery>::Item<'r>, <R4 as ResourceQuery>::Item<'r>, <R5 as ResourceQuery>::Item<'r>, <R6 as ResourceQuery>::Item<'r>)

    §

    type State<'s> = EphemeralQueryState<'s>

    source§

    fn query<'r, 's>( +) -> Option<Self::Item<'r>>

    Implementations on Foreign Types§

    source§

    impl<R1: ResourceQuery, R2: ResourceQuery> ResourceQuery for (R1, R2)

    §

    type Item<'r> = (<R1 as ResourceQuery>::Item<'r>, <R2 as ResourceQuery>::Item<'r>)

    §

    type State<'s> = EphemeralQueryState<'s>

    source§

    fn query<'r, 's>( resources: &'r Resources, state: Self::State<'s> -) -> Option<Self::Item<'r>>

    source§

    impl<R1: ResourceQuery> ResourceQuery for (R1,)

    §

    type Item<'r> = (<R1 as ResourceQuery>::Item<'r>,)

    §

    type State<'s> = EphemeralQueryState<'s>

    source§

    fn query<'r, 's>( +) -> Option<Self::Item<'r>>

    source§

    impl<R1: ResourceQuery, R2: ResourceQuery, R3: ResourceQuery> ResourceQuery for (R1, R2, R3)

    §

    type Item<'r> = (<R1 as ResourceQuery>::Item<'r>, <R2 as ResourceQuery>::Item<'r>, <R3 as ResourceQuery>::Item<'r>)

    §

    type State<'s> = EphemeralQueryState<'s>

    source§

    fn query<'r, 's>( resources: &'r Resources, state: Self::State<'s> -) -> Option<Self::Item<'r>>

    source§

    impl<R1: ResourceQuery, R2: ResourceQuery, R3: ResourceQuery, R4: ResourceQuery> ResourceQuery for (R1, R2, R3, R4)

    §

    type Item<'r> = (<R1 as ResourceQuery>::Item<'r>, <R2 as ResourceQuery>::Item<'r>, <R3 as ResourceQuery>::Item<'r>, <R4 as ResourceQuery>::Item<'r>)

    §

    type State<'s> = EphemeralQueryState<'s>

    source§

    fn query<'r, 's>( +) -> Option<Self::Item<'r>>

    source§

    impl<R1: ResourceQuery, R2: ResourceQuery, R3: ResourceQuery, R4: ResourceQuery, R5: ResourceQuery, R6: ResourceQuery> ResourceQuery for (R1, R2, R3, R4, R5, R6)

    §

    type Item<'r> = (<R1 as ResourceQuery>::Item<'r>, <R2 as ResourceQuery>::Item<'r>, <R3 as ResourceQuery>::Item<'r>, <R4 as ResourceQuery>::Item<'r>, <R5 as ResourceQuery>::Item<'r>, <R6 as ResourceQuery>::Item<'r>)

    §

    type State<'s> = EphemeralQueryState<'s>

    source§

    fn query<'r, 's>( resources: &'r Resources, state: Self::State<'s> -) -> Option<Self::Item<'r>>

    source§

    impl<R1: ResourceQuery, R2: ResourceQuery> ResourceQuery for (R1, R2)

    §

    type Item<'r> = (<R1 as ResourceQuery>::Item<'r>, <R2 as ResourceQuery>::Item<'r>)

    §

    type State<'s> = EphemeralQueryState<'s>

    source§

    fn query<'r, 's>( +) -> Option<Self::Item<'r>>

    source§

    impl<R1: ResourceQuery, R2: ResourceQuery, R3: ResourceQuery, R4: ResourceQuery, R5: ResourceQuery> ResourceQuery for (R1, R2, R3, R4, R5)

    §

    type Item<'r> = (<R1 as ResourceQuery>::Item<'r>, <R2 as ResourceQuery>::Item<'r>, <R3 as ResourceQuery>::Item<'r>, <R4 as ResourceQuery>::Item<'r>, <R5 as ResourceQuery>::Item<'r>)

    §

    type State<'s> = EphemeralQueryState<'s>

    source§

    fn query<'r, 's>( resources: &'r Resources, state: Self::State<'s> ) -> Option<Self::Item<'r>>

    source§

    impl<'a, R: Resource> ResourceQuery for &'a R

    §

    type Item<'r> = &'r R

    §

    type State<'s> = EphemeralQueryState<'s>

    source§

    fn query<'r, 's>( resources: &'r Resources, _state: Self::State<'s> -) -> Option<Self::Item<'r>>

    source§

    impl<R1: ResourceQuery, R2: ResourceQuery, R3: ResourceQuery, R4: ResourceQuery, R5: ResourceQuery> ResourceQuery for (R1, R2, R3, R4, R5)

    §

    type Item<'r> = (<R1 as ResourceQuery>::Item<'r>, <R2 as ResourceQuery>::Item<'r>, <R3 as ResourceQuery>::Item<'r>, <R4 as ResourceQuery>::Item<'r>, <R5 as ResourceQuery>::Item<'r>)

    §

    type State<'s> = EphemeralQueryState<'s>

    source§

    fn query<'r, 's>( +) -> Option<Self::Item<'r>>

    source§

    impl<R1: ResourceQuery, R2: ResourceQuery, R3: ResourceQuery, R4: ResourceQuery> ResourceQuery for (R1, R2, R3, R4)

    §

    type Item<'r> = (<R1 as ResourceQuery>::Item<'r>, <R2 as ResourceQuery>::Item<'r>, <R3 as ResourceQuery>::Item<'r>, <R4 as ResourceQuery>::Item<'r>)

    §

    type State<'s> = EphemeralQueryState<'s>

    source§

    fn query<'r, 's>( resources: &'r Resources, state: Self::State<'s> -) -> Option<Self::Item<'r>>

    source§

    impl<R1: ResourceQuery, R2: ResourceQuery, R3: ResourceQuery> ResourceQuery for (R1, R2, R3)

    §

    type Item<'r> = (<R1 as ResourceQuery>::Item<'r>, <R2 as ResourceQuery>::Item<'r>, <R3 as ResourceQuery>::Item<'r>)

    §

    type State<'s> = EphemeralQueryState<'s>

    source§

    fn query<'r, 's>( +) -> Option<Self::Item<'r>>

    source§

    impl<R1: ResourceQuery> ResourceQuery for (R1,)

    §

    type Item<'r> = (<R1 as ResourceQuery>::Item<'r>,)

    §

    type State<'s> = EphemeralQueryState<'s>

    source§

    fn query<'r, 's>( resources: &'r Resources, state: Self::State<'s> ) -> Option<Self::Item<'r>>

    Implementors§

    \ No newline at end of file diff --git a/docs/api/maplibre/tcs/resources/trait.ResourceQueryMut.html b/docs/api/maplibre/tcs/resources/trait.ResourceQueryMut.html index 348126b1..16774a8d 100644 --- a/docs/api/maplibre/tcs/resources/trait.ResourceQueryMut.html +++ b/docs/api/maplibre/tcs/resources/trait.ResourceQueryMut.html @@ -10,28 +10,28 @@ }

    Required Associated Types§

    source

    type MutItem<'r>

    source

    type State<'s>: QueryState<'s>

    Required Methods§

    source

    fn query_mut<'r, 's>( resources: &'r mut Resources, state: Self::State<'s> -) -> Option<Self::MutItem<'r>>

    Implementations on Foreign Types§

    source§

    impl<R1: ResourceQueryMut + ResourceQueryUnsafe + 'static, R2: ResourceQueryMut + ResourceQueryUnsafe + 'static> ResourceQueryMut for (R1, R2)

    §

    type MutItem<'r> = (<R1 as ResourceQueryMut>::MutItem<'r>, <R2 as ResourceQueryMut>::MutItem<'r>)

    §

    type State<'s> = EphemeralQueryState<'s>

    source§

    fn query_mut<'r, 's>( +) -> Option<Self::MutItem<'r>>

    Implementations on Foreign Types§

    source§

    impl<R1: ResourceQueryMut + ResourceQueryUnsafe + 'static, R2: ResourceQueryMut + ResourceQueryUnsafe + 'static, R3: ResourceQueryMut + ResourceQueryUnsafe + 'static, R4: ResourceQueryMut + ResourceQueryUnsafe + 'static, R5: ResourceQueryMut + ResourceQueryUnsafe + 'static, R6: ResourceQueryMut + ResourceQueryUnsafe + 'static> ResourceQueryMut for (R1, R2, R3, R4, R5, R6)

    §

    type MutItem<'r> = (<R1 as ResourceQueryMut>::MutItem<'r>, <R2 as ResourceQueryMut>::MutItem<'r>, <R3 as ResourceQueryMut>::MutItem<'r>, <R4 as ResourceQueryMut>::MutItem<'r>, <R5 as ResourceQueryMut>::MutItem<'r>, <R6 as ResourceQueryMut>::MutItem<'r>)

    §

    type State<'s> = EphemeralQueryState<'s>

    source§

    fn query_mut<'r, 's>( resources: &'r mut Resources, state: Self::State<'s> -) -> Option<Self::MutItem<'r>>

    source§

    impl<'a, R: Resource> ResourceQueryMut for &'a R

    §

    type MutItem<'r> = &'r R

    §

    type State<'s> = EphemeralQueryState<'s>

    source§

    fn query_mut<'r, 's>( +) -> Option<Self::MutItem<'r>>

    source§

    impl<R1: ResourceQueryMut + ResourceQueryUnsafe + 'static, R2: ResourceQueryMut + ResourceQueryUnsafe + 'static, R3: ResourceQueryMut + ResourceQueryUnsafe + 'static, R4: ResourceQueryMut + ResourceQueryUnsafe + 'static, R5: ResourceQueryMut + ResourceQueryUnsafe + 'static> ResourceQueryMut for (R1, R2, R3, R4, R5)

    §

    type MutItem<'r> = (<R1 as ResourceQueryMut>::MutItem<'r>, <R2 as ResourceQueryMut>::MutItem<'r>, <R3 as ResourceQueryMut>::MutItem<'r>, <R4 as ResourceQueryMut>::MutItem<'r>, <R5 as ResourceQueryMut>::MutItem<'r>)

    §

    type State<'s> = EphemeralQueryState<'s>

    source§

    fn query_mut<'r, 's>( resources: &'r mut Resources, state: Self::State<'s> ) -> Option<Self::MutItem<'r>>

    source§

    impl<R1: ResourceQueryMut + ResourceQueryUnsafe + 'static> ResourceQueryMut for (R1,)

    §

    type MutItem<'r> = (<R1 as ResourceQueryMut>::MutItem<'r>,)

    §

    type State<'s> = EphemeralQueryState<'s>

    source§

    fn query_mut<'r, 's>( resources: &'r mut Resources, state: Self::State<'s> -) -> Option<Self::MutItem<'r>>

    source§

    impl<'a, R: Resource> ResourceQueryMut for &'a mut R

    §

    type MutItem<'r> = &'r mut R

    §

    type State<'s> = EphemeralQueryState<'s>

    source§

    fn query_mut<'r, 's>( +) -> Option<Self::MutItem<'r>>

    source§

    impl<R1: ResourceQueryMut + ResourceQueryUnsafe + 'static, R2: ResourceQueryMut + ResourceQueryUnsafe + 'static, R3: ResourceQueryMut + ResourceQueryUnsafe + 'static, R4: ResourceQueryMut + ResourceQueryUnsafe + 'static> ResourceQueryMut for (R1, R2, R3, R4)

    §

    type MutItem<'r> = (<R1 as ResourceQueryMut>::MutItem<'r>, <R2 as ResourceQueryMut>::MutItem<'r>, <R3 as ResourceQueryMut>::MutItem<'r>, <R4 as ResourceQueryMut>::MutItem<'r>)

    §

    type State<'s> = EphemeralQueryState<'s>

    source§

    fn query_mut<'r, 's>( + resources: &'r mut Resources, + state: Self::State<'s> +) -> Option<Self::MutItem<'r>>

    source§

    impl<'a, R: Resource> ResourceQueryMut for &'a R

    §

    type MutItem<'r> = &'r R

    §

    type State<'s> = EphemeralQueryState<'s>

    source§

    fn query_mut<'r, 's>( + resources: &'r mut Resources, + state: Self::State<'s> +) -> Option<Self::MutItem<'r>>

    source§

    impl<R1: ResourceQueryMut + ResourceQueryUnsafe + 'static, R2: ResourceQueryMut + ResourceQueryUnsafe + 'static> ResourceQueryMut for (R1, R2)

    §

    type MutItem<'r> = (<R1 as ResourceQueryMut>::MutItem<'r>, <R2 as ResourceQueryMut>::MutItem<'r>)

    §

    type State<'s> = EphemeralQueryState<'s>

    source§

    fn query_mut<'r, 's>( + resources: &'r mut Resources, + state: Self::State<'s> +) -> Option<Self::MutItem<'r>>

    source§

    impl<R1: ResourceQueryMut + ResourceQueryUnsafe + 'static, R2: ResourceQueryMut + ResourceQueryUnsafe + 'static, R3: ResourceQueryMut + ResourceQueryUnsafe + 'static> ResourceQueryMut for (R1, R2, R3)

    §

    type MutItem<'r> = (<R1 as ResourceQueryMut>::MutItem<'r>, <R2 as ResourceQueryMut>::MutItem<'r>, <R3 as ResourceQueryMut>::MutItem<'r>)

    §

    type State<'s> = EphemeralQueryState<'s>

    source§

    fn query_mut<'r, 's>( + resources: &'r mut Resources, + state: Self::State<'s> +) -> Option<Self::MutItem<'r>>

    source§

    impl<'a, R: Resource> ResourceQueryMut for &'a mut R

    §

    type MutItem<'r> = &'r mut R

    §

    type State<'s> = EphemeralQueryState<'s>

    source§

    fn query_mut<'r, 's>( resources: &'r mut Resources, _state: Self::State<'s> -) -> Option<Self::MutItem<'r>>

    source§

    impl<R1: ResourceQueryMut + ResourceQueryUnsafe + 'static, R2: ResourceQueryMut + ResourceQueryUnsafe + 'static, R3: ResourceQueryMut + ResourceQueryUnsafe + 'static> ResourceQueryMut for (R1, R2, R3)

    §

    type MutItem<'r> = (<R1 as ResourceQueryMut>::MutItem<'r>, <R2 as ResourceQueryMut>::MutItem<'r>, <R3 as ResourceQueryMut>::MutItem<'r>)

    §

    type State<'s> = EphemeralQueryState<'s>

    source§

    fn query_mut<'r, 's>( - resources: &'r mut Resources, - state: Self::State<'s> -) -> Option<Self::MutItem<'r>>

    source§

    impl<R1: ResourceQueryMut + ResourceQueryUnsafe + 'static, R2: ResourceQueryMut + ResourceQueryUnsafe + 'static, R3: ResourceQueryMut + ResourceQueryUnsafe + 'static, R4: ResourceQueryMut + ResourceQueryUnsafe + 'static, R5: ResourceQueryMut + ResourceQueryUnsafe + 'static> ResourceQueryMut for (R1, R2, R3, R4, R5)

    §

    type MutItem<'r> = (<R1 as ResourceQueryMut>::MutItem<'r>, <R2 as ResourceQueryMut>::MutItem<'r>, <R3 as ResourceQueryMut>::MutItem<'r>, <R4 as ResourceQueryMut>::MutItem<'r>, <R5 as ResourceQueryMut>::MutItem<'r>)

    §

    type State<'s> = EphemeralQueryState<'s>

    source§

    fn query_mut<'r, 's>( - resources: &'r mut Resources, - state: Self::State<'s> -) -> Option<Self::MutItem<'r>>

    source§

    impl<R1: ResourceQueryMut + ResourceQueryUnsafe + 'static, R2: ResourceQueryMut + ResourceQueryUnsafe + 'static, R3: ResourceQueryMut + ResourceQueryUnsafe + 'static, R4: ResourceQueryMut + ResourceQueryUnsafe + 'static> ResourceQueryMut for (R1, R2, R3, R4)

    §

    type MutItem<'r> = (<R1 as ResourceQueryMut>::MutItem<'r>, <R2 as ResourceQueryMut>::MutItem<'r>, <R3 as ResourceQueryMut>::MutItem<'r>, <R4 as ResourceQueryMut>::MutItem<'r>)

    §

    type State<'s> = EphemeralQueryState<'s>

    source§

    fn query_mut<'r, 's>( - resources: &'r mut Resources, - state: Self::State<'s> -) -> Option<Self::MutItem<'r>>

    source§

    impl<R1: ResourceQueryMut + ResourceQueryUnsafe + 'static, R2: ResourceQueryMut + ResourceQueryUnsafe + 'static, R3: ResourceQueryMut + ResourceQueryUnsafe + 'static, R4: ResourceQueryMut + ResourceQueryUnsafe + 'static, R5: ResourceQueryMut + ResourceQueryUnsafe + 'static, R6: ResourceQueryMut + ResourceQueryUnsafe + 'static> ResourceQueryMut for (R1, R2, R3, R4, R5, R6)

    §

    type MutItem<'r> = (<R1 as ResourceQueryMut>::MutItem<'r>, <R2 as ResourceQueryMut>::MutItem<'r>, <R3 as ResourceQueryMut>::MutItem<'r>, <R4 as ResourceQueryMut>::MutItem<'r>, <R5 as ResourceQueryMut>::MutItem<'r>, <R6 as ResourceQueryMut>::MutItem<'r>)

    §

    type State<'s> = EphemeralQueryState<'s>

    source§

    fn query_mut<'r, 's>( - resources: &'r mut Resources, - state: Self::State<'s> ) -> Option<Self::MutItem<'r>>

    Implementors§

    \ No newline at end of file diff --git a/docs/api/maplibre/tcs/system/trait.System.html b/docs/api/maplibre/tcs/system/trait.System.html index c3f92705..01cdcb16 100644 --- a/docs/api/maplibre/tcs/system/trait.System.html +++ b/docs/api/maplibre/tcs/system/trait.System.html @@ -4,5 +4,5 @@ fn run(&mut self, context: &mut MapContext); }
    Expand description

    An system that can be added to a Schedule

    Required Methods§

    source

    fn name(&self) -> Cow<'static, str>

    Returns the system’s name.

    -
    source

    fn run(&mut self, context: &mut MapContext)

    Implementors§

    source§

    impl System for GraphRunnerSystem

    source§

    impl System for ResourceSystem

    source§

    impl<E: Environment, T: RasterTransferables> System for maplibre::raster::populate_world_system::PopulateWorldSystem<E, T>

    source§

    impl<E: Environment, T: RasterTransferables> System for maplibre::raster::request_system::RequestSystem<E, T>

    source§

    impl<E: Environment, T: VectorTransferables> System for maplibre::vector::populate_world_system::PopulateWorldSystem<E, T>

    source§

    impl<E: Environment, T: VectorTransferables> System for maplibre::vector::request_system::RequestSystem<E, T>

    source§

    impl<F> System for FunctionSystem<F>where +

    source

    fn run(&mut self, context: &mut MapContext)

    Implementors§

    source§

    impl System for GraphRunnerSystem

    source§

    impl System for ResourceSystem

    source§

    impl<E: Environment, T: RasterTransferables> System for maplibre::raster::populate_world_system::PopulateWorldSystem<E, T>

    source§

    impl<E: Environment, T: RasterTransferables> System for maplibre::raster::request_system::RequestSystem<E, T>

    source§

    impl<E: Environment, T: VectorTransferables> System for maplibre::vector::populate_world_system::PopulateWorldSystem<E, T>

    source§

    impl<E: Environment, T: VectorTransferables> System for maplibre::vector::request_system::RequestSystem<E, T>

    source§

    impl<F> System for FunctionSystem<F>where F: FnMut(&mut MapContext) + 'static,

    \ No newline at end of file diff --git a/docs/api/maplibre/tcs/tiles/trait.ComponentQueryMut.html b/docs/api/maplibre/tcs/tiles/trait.ComponentQueryMut.html index 0065673d..9926fdb8 100644 --- a/docs/api/maplibre/tcs/tiles/trait.ComponentQueryMut.html +++ b/docs/api/maplibre/tcs/tiles/trait.ComponentQueryMut.html @@ -16,12 +16,12 @@ tiles: &'t mut Tiles, tile: Tile, state: Self::State<'s> -) -> Option<Self::MutItem<'t>>

    source§

    impl<'a, T: TileComponent> ComponentQueryMut for &'a mut T

    §

    type MutItem<'t> = &'t mut T

    §

    type State<'s> = EphemeralQueryState<'s>

    source§

    fn query_mut<'t, 's>( - tiles: &'t mut Tiles, - tile: Tile, - _state: Self::State<'s> -) -> Option<Self::MutItem<'t>>

    source§

    impl<'a, T: TileComponent> ComponentQueryMut for &'a T

    §

    type MutItem<'t> = &'t T

    §

    type State<'s> = EphemeralQueryState<'s>

    source§

    fn query_mut<'t, 's>( +) -> Option<Self::MutItem<'t>>

    source§

    impl<'a, T: TileComponent> ComponentQueryMut for &'a T

    §

    type MutItem<'t> = &'t T

    §

    type State<'s> = EphemeralQueryState<'s>

    source§

    fn query_mut<'t, 's>( tiles: &'t mut Tiles, tile: Tile, state: Self::State<'s> +) -> Option<Self::MutItem<'t>>

    source§

    impl<'a, T: TileComponent> ComponentQueryMut for &'a mut T

    §

    type MutItem<'t> = &'t mut T

    §

    type State<'s> = EphemeralQueryState<'s>

    source§

    fn query_mut<'t, 's>( + tiles: &'t mut Tiles, + tile: Tile, + _state: Self::State<'s> ) -> Option<Self::MutItem<'t>>

    Implementors§

    \ No newline at end of file diff --git a/docs/api/maplibre/tcs/tiles/trait.ComponentQueryUnsafe.html b/docs/api/maplibre/tcs/tiles/trait.ComponentQueryUnsafe.html index 216c1087..ac321fd3 100644 --- a/docs/api/maplibre/tcs/tiles/trait.ComponentQueryUnsafe.html +++ b/docs/api/maplibre/tcs/tiles/trait.ComponentQueryUnsafe.html @@ -9,13 +9,13 @@ tiles: &'t Tiles, tile: Tile, state: Self::State<'s> -) -> Option<Self::MutItem<'t>>

    Implementations on Foreign Types§

    source§

    impl<'a, T: TileComponent> ComponentQueryUnsafe for &'a mut T

    source§

    unsafe fn query_unsafe<'t, 's>( +) -> Option<Self::MutItem<'t>>

    Implementations on Foreign Types§

    source§

    impl<'a, T: TileComponent> ComponentQueryUnsafe for &'a T

    source§

    unsafe fn query_unsafe<'t, 's>( + tiles: &'t Tiles, + tile: Tile, + state: Self::State<'s> +) -> Option<Self::MutItem<'t>>

    source§

    impl<'a, T: TileComponent> ComponentQueryUnsafe for &'a mut T

    source§

    unsafe fn query_unsafe<'t, 's>( tiles: &'t Tiles, tile: Tile, state: Self::State<'s> ) -> Option<Self::MutItem<'t>>

    SAFETY: Safe if tiles is borrowed mutably.

    -
    source§

    impl<'a, T: TileComponent> ComponentQueryUnsafe for &'a T

    source§

    unsafe fn query_unsafe<'t, 's>( - tiles: &'t Tiles, - tile: Tile, - state: Self::State<'s> -) -> Option<Self::MutItem<'t>>

    Implementors§

    \ No newline at end of file +

    Implementors§

    \ No newline at end of file diff --git a/docs/api/maplibre/tessellation/struct.VertexConstructor.html b/docs/api/maplibre/tessellation/struct.VertexConstructor.html index d199ce53..d56cee0f 100644 --- a/docs/api/maplibre/tessellation/struct.VertexConstructor.html +++ b/docs/api/maplibre/tessellation/struct.VertexConstructor.html @@ -1,5 +1,5 @@ VertexConstructor in maplibre::tessellation - Rust
    pub struct VertexConstructor {}
    Expand description

    Constructor for Fill and Stroke vertices.

    -

    Trait Implementations§

    source§

    impl FillVertexConstructor<ShaderVertex> for VertexConstructor

    source§

    fn new_vertex(&mut self, vertex: FillVertex<'_>) -> ShaderVertex

    source§

    impl StrokeVertexConstructor<ShaderVertex> for VertexConstructor

    source§

    fn new_vertex(&mut self, vertex: StrokeVertex<'_, '_>) -> ShaderVertex

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere +

    Trait Implementations§

    source§

    impl FillVertexConstructor<ShaderVertex> for VertexConstructor

    source§

    fn new_vertex(&mut self, vertex: FillVertex<'_>) -> ShaderVertex

    source§

    impl StrokeVertexConstructor<ShaderVertex> for VertexConstructor

    source§

    fn new_vertex(&mut self, vertex: StrokeVertex<'_, '_>) -> ShaderVertex

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for Twhere T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for Twhere T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Downcast<T> for T

    §

    fn downcast(&self) -> &T

    §

    impl<T> Downcast for Twhere diff --git a/docs/api/maplibre/util/trait.SignificantlyDifferent.html b/docs/api/maplibre/util/trait.SignificantlyDifferent.html index e9adac5d..7225d96a 100644 --- a/docs/api/maplibre/util/trait.SignificantlyDifferent.html +++ b/docs/api/maplibre/util/trait.SignificantlyDifferent.html @@ -4,4 +4,4 @@ // Required method fn ne(&self, other: &Rhs, epsilon: Self::Epsilon) -> bool; }

    Required Associated Types§

    Required Methods§

    source

    fn ne(&self, other: &Rhs, epsilon: Self::Epsilon) -> bool

    This method tests for self and other values to be significantly different

    -

    Implementors§

    \ No newline at end of file +

    Implementors§

    source§

    impl SignificantlyDifferent<Zoom> for Zoom

    §

    type Epsilon = f64

    source§

    impl SignificantlyDifferent<Camera> for Camera

    §

    type Epsilon = f64

    \ No newline at end of file diff --git a/docs/api/maplibre/vector/request_system/fn.fetch_vector_apc.html b/docs/api/maplibre/vector/request_system/fn.fetch_vector_apc.html index 8ccede36..af2c9af9 100644 --- a/docs/api/maplibre/vector/request_system/fn.fetch_vector_apc.html +++ b/docs/api/maplibre/vector/request_system/fn.fetch_vector_apc.html @@ -1,4 +1,4 @@ -fetch_vector_apc in maplibre::vector::request_system - Rust
    pub fn fetch_vector_apc<K: OffscreenKernelEnvironment, T: VectorTransferables, C: Context + Clone + Send>(
    +fetch_vector_apc in maplibre::vector::request_system - Rust
    pub fn fetch_vector_apc<K: OffscreenKernelEnvironment, T: VectorTransferables, C: Context + Clone + Send>(
         input: Input,
         context: C,
         kernel: K
    diff --git a/docs/api/maplibre/vector/request_system/index.html b/docs/api/maplibre/vector/request_system/index.html
    index e512aac3..782d31bb 100644
    --- a/docs/api/maplibre/vector/request_system/index.html
    +++ b/docs/api/maplibre/vector/request_system/index.html
    @@ -1,2 +1,2 @@
    -maplibre::vector::request_system - Rust
    Expand description

    Requests tiles which are currently in view

    +maplibre::vector::request_system - Rust
    Expand description

    Requests tiles which are currently in view

    Structs

    Functions

    \ No newline at end of file diff --git a/docs/api/maplibre/vector/request_system/struct.RequestSystem.html b/docs/api/maplibre/vector/request_system/struct.RequestSystem.html index 09f6f65f..e9d98673 100644 --- a/docs/api/maplibre/vector/request_system/struct.RequestSystem.html +++ b/docs/api/maplibre/vector/request_system/struct.RequestSystem.html @@ -1,7 +1,7 @@ -RequestSystem in maplibre::vector::request_system - Rust
    pub struct RequestSystem<E: Environment, T> {
    +RequestSystem in maplibre::vector::request_system - Rust
    pub struct RequestSystem<E: Environment, T> {
         kernel: Rc<Kernel<E>>,
         phantom_t: PhantomData<T>,
    -}

    Fields§

    §kernel: Rc<Kernel<E>>§phantom_t: PhantomData<T>

    Implementations§

    source§

    impl<E: Environment, T> RequestSystem<E, T>

    source

    pub fn new(kernel: &Rc<Kernel<E>>) -> Self

    Trait Implementations§

    source§

    impl<E: Environment, T: VectorTransferables> System for RequestSystem<E, T>

    source§

    fn name(&self) -> Cow<'static, str>

    Returns the system’s name.
    source§

    fn run(&mut self, _: &mut MapContext)

    Auto Trait Implementations§

    §

    impl<E, T> RefUnwindSafe for RequestSystem<E, T>where +}

    Fields§

    §kernel: Rc<Kernel<E>>§phantom_t: PhantomData<T>

    Implementations§

    source§

    impl<E: Environment, T> RequestSystem<E, T>

    source

    pub fn new(kernel: &Rc<Kernel<E>>) -> Self

    Trait Implementations§

    source§

    impl<E: Environment, T: VectorTransferables> System for RequestSystem<E, T>

    source§

    fn name(&self) -> Cow<'static, str>

    Returns the system’s name.
    source§

    fn run(&mut self, _: &mut MapContext)

    Auto Trait Implementations§

    §

    impl<E, T> RefUnwindSafe for RequestSystem<E, T>where T: RefUnwindSafe, <E as Environment>::AsyncProcedureCall: RefUnwindSafe, <E as Environment>::HttpClient: RefUnwindSafe, diff --git a/docs/api/maplibre/vector/resource/buffer_pool/struct.BufferPool.html b/docs/api/maplibre/vector/resource/buffer_pool/struct.BufferPool.html index 51baf885..0444ec20 100644 --- a/docs/api/maplibre/vector/resource/buffer_pool/struct.BufferPool.html +++ b/docs/api/maplibre/vector/resource/buffer_pool/struct.BufferPool.html @@ -50,11 +50,11 @@ is not enough space available. queue: &Q, entry: &IndexEntry, feature_metadata: &[FM] -)

    source

    pub fn index(&self) -> &RingIndex

    Trait Implementations§

    source§

    impl<Q: Debug, B: Debug, V: Debug, I: Debug, TM: Debug, FM: Debug> Debug for BufferPool<Q, B, V, I, TM, FM>

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<Q: Queue<B>, B, V: Pod, I: Pod, TM: Pod, FM: Pod> HasTile for BufferPool<Q, B, V, I, TM, FM>

    source§

    fn has_tile(&self, coords: WorldTileCoords, _world: &World) -> bool

    source§

    fn get_available_parent( +)

    source

    pub fn index(&self) -> &RingIndex

    Trait Implementations§

    source§

    impl<Q: Debug, B: Debug, V: Debug, I: Debug, TM: Debug, FM: Debug> Debug for BufferPool<Q, B, V, I, TM, FM>

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl<Q: Queue<B>, B, V: Pod, I: Pod, TM: Pod, FM: Pod> HasTile for BufferPool<Q, B, V, I, TM, FM>

    source§

    fn has_tile(&self, coords: WorldTileCoords, _world: &World) -> bool

    source§

    fn get_available_parent( &self, coords: WorldTileCoords, world: &World -) -> Option<WorldTileCoords>

    source§

    fn get_available_children( +) -> Option<WorldTileCoords>

    source§

    fn get_available_children( &self, coords: WorldTileCoords, world: &World, diff --git a/docs/api/maplibre/vector/struct.VectorTilesDone.html b/docs/api/maplibre/vector/struct.VectorTilesDone.html index 946c4c81..37ad97b9 100644 --- a/docs/api/maplibre/vector/struct.VectorTilesDone.html +++ b/docs/api/maplibre/vector/struct.VectorTilesDone.html @@ -1,8 +1,8 @@ -VectorTilesDone in maplibre::vector - Rust
    struct VectorTilesDone;

    Trait Implementations§

    source§

    impl Default for VectorTilesDone

    source§

    fn default() -> VectorTilesDone

    Returns the “default value” for a type. Read more
    source§

    impl HasTile for VectorTilesDone

    source§

    fn has_tile(&self, coords: WorldTileCoords, world: &World) -> bool

    source§

    fn get_available_parent( +VectorTilesDone in maplibre::vector - Rust
    struct VectorTilesDone;

    Trait Implementations§

    source§

    impl Default for VectorTilesDone

    source§

    fn default() -> VectorTilesDone

    Returns the “default value” for a type. Read more
    source§

    impl HasTile for VectorTilesDone

    source§

    fn has_tile(&self, coords: WorldTileCoords, world: &World) -> bool

    source§

    fn get_available_parent( &self, coords: WorldTileCoords, world: &World -) -> Option<WorldTileCoords>

    source§

    fn get_available_children( +) -> Option<WorldTileCoords>

    source§

    fn get_available_children( &self, coords: WorldTileCoords, world: &World, diff --git a/docs/api/maplibre/vector/upload_system/fn.upload_system.html b/docs/api/maplibre/vector/upload_system/fn.upload_system.html index ba521c9c..e827ddeb 100644 --- a/docs/api/maplibre/vector/upload_system/fn.upload_system.html +++ b/docs/api/maplibre/vector/upload_system/fn.upload_system.html @@ -1 +1 @@ -upload_system in maplibre::vector::upload_system - Rust
    pub fn upload_system(_: &mut MapContext)
    \ No newline at end of file +upload_system in maplibre::vector::upload_system - Rust
    pub fn upload_system(_: &mut MapContext)
    \ No newline at end of file diff --git a/docs/api/maplibre/vector/upload_system/fn.upload_tesselated_layer.html b/docs/api/maplibre/vector/upload_system/fn.upload_tesselated_layer.html index b1a5337a..00296dba 100644 --- a/docs/api/maplibre/vector/upload_system/fn.upload_tesselated_layer.html +++ b/docs/api/maplibre/vector/upload_system/fn.upload_tesselated_layer.html @@ -1,4 +1,4 @@ -upload_tesselated_layer in maplibre::vector::upload_system - Rust
    fn upload_tesselated_layer(
    +upload_tesselated_layer in maplibre::vector::upload_system - Rust
    fn upload_tesselated_layer(
         buffer_pool: &mut VectorBufferPool,
         _device: &Device,
         queue: &Queue,
    diff --git a/docs/api/maplibre/vector/upload_system/index.html b/docs/api/maplibre/vector/upload_system/index.html
    index 5f779dfd..a80aa136 100644
    --- a/docs/api/maplibre/vector/upload_system/index.html
    +++ b/docs/api/maplibre/vector/upload_system/index.html
    @@ -1,2 +1,2 @@
    -maplibre::vector::upload_system - Rust
    Expand description

    Uploads data to the GPU which is needed for rendering.

    +maplibre::vector::upload_system - Rust
    Expand description

    Uploads data to the GPU which is needed for rendering.

    Functions

    \ No newline at end of file diff --git a/docs/api/maplibre/view_state/constant.VIEW_REGION_PADDING.html b/docs/api/maplibre/view_state/constant.VIEW_REGION_PADDING.html deleted file mode 100644 index 6a89c930..00000000 --- a/docs/api/maplibre/view_state/constant.VIEW_REGION_PADDING.html +++ /dev/null @@ -1 +0,0 @@ -VIEW_REGION_PADDING in maplibre::view_state - Rust
    const VIEW_REGION_PADDING: i32 = 1;
    \ No newline at end of file diff --git a/docs/api/maplibre/view_state/index.html b/docs/api/maplibre/view_state/index.html deleted file mode 100644 index e8f4696f..00000000 --- a/docs/api/maplibre/view_state/index.html +++ /dev/null @@ -1 +0,0 @@ -maplibre::view_state - Rust

    Module maplibre::view_state

    source ·

    Structs

    Constants

    \ No newline at end of file diff --git a/docs/api/maplibre/view_state/sidebar-items.js b/docs/api/maplibre/view_state/sidebar-items.js deleted file mode 100644 index a1dcb504..00000000 --- a/docs/api/maplibre/view_state/sidebar-items.js +++ /dev/null @@ -1 +0,0 @@ -window.SIDEBAR_ITEMS = {"constant":["VIEW_REGION_PADDING"],"struct":["ViewState"]}; \ No newline at end of file diff --git a/docs/api/maplibre/view_state/struct.ViewState.html b/docs/api/maplibre/view_state/struct.ViewState.html deleted file mode 100644 index 4f5b6bfe..00000000 --- a/docs/api/maplibre/view_state/struct.ViewState.html +++ /dev/null @@ -1,38 +0,0 @@ -ViewState in maplibre::view_state - Rust
    pub struct ViewState {
    -    zoom: ChangeObserver<Zoom>,
    -    camera: ChangeObserver<Camera>,
    -    perspective: Perspective,
    -}
    Expand description

    Stores the camera configuration.

    -

    Fields§

    §zoom: ChangeObserver<Zoom>§camera: ChangeObserver<Camera>§perspective: Perspective

    Implementations§

    source§

    impl ViewState

    source

    pub fn new<F: Into<Rad<f64>>, P: Into<Deg<f64>>>( - window_size: WindowSize, - position: WorldCoords, - zoom: Zoom, - pitch: P, - fovy: F -) -> Self

    source

    pub fn resize(&mut self, width: u32, height: u32)

    source

    pub fn create_view_region(&self) -> Option<ViewRegion>

    source

    pub fn view_projection(&self) -> ViewProjection

    source

    pub fn visible_level(&self) -> ZoomLevel

    source

    pub fn zoom(&self) -> Zoom

    source

    pub fn did_zoom_change(&self) -> bool

    source

    pub fn update_zoom(&mut self, new_zoom: Zoom)

    source

    pub fn camera(&self) -> &Camera

    source

    pub fn camera_mut(&mut self) -> &mut Camera

    source

    pub fn did_camera_change(&self) -> bool

    source

    pub fn update_references(&mut self)

    Auto Trait Implementations§

    Blanket Implementations§

    source§

    impl<T> Any for Twhere - T: 'static + ?Sized,

    source§

    fn type_id(&self) -> TypeId

    Gets the TypeId of self. Read more
    source§

    impl<T> Borrow<T> for Twhere - T: ?Sized,

    source§

    fn borrow(&self) -> &T

    Immutably borrows from an owned value. Read more
    source§

    impl<T> BorrowMut<T> for Twhere - T: ?Sized,

    source§

    fn borrow_mut(&mut self) -> &mut T

    Mutably borrows from an owned value. Read more
    §

    impl<T> Downcast<T> for T

    §

    fn downcast(&self) -> &T

    §

    impl<T> Downcast for Twhere - T: Any,

    §

    fn into_any(self: Box<T, Global>) -> Box<dyn Any, Global>

    Convert Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can -then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.
    §

    fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>

    Convert Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be -further downcast into Rc<ConcreteType> where ConcreteType implements Trait.
    §

    fn as_any(&self) -> &(dyn Any + 'static)

    Convert &Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot -generate &Any’s vtable from &Trait’s.
    §

    fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)

    Convert &mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot -generate &mut Any’s vtable from &mut Trait’s.
    §

    impl<T> DowncastSync for Twhere - T: Any + Send + Sync,

    §

    fn into_any_arc(self: Arc<T>) -> Arc<dyn Any + Sync + Send>

    Convert Arc<Trait> (where Trait: Downcast) to Arc<Any>. Arc<Any> can then be -further downcast into Arc<ConcreteType> where ConcreteType implements Trait.
    source§

    impl<T> From<T> for T

    source§

    fn from(t: T) -> T

    Returns the argument unchanged.

    -
    source§

    impl<T> Instrument for T

    source§

    fn instrument(self, span: Span) -> Instrumented<Self>

    Instruments this type with the provided Span, returning an -Instrumented wrapper. Read more
    source§

    fn in_current_span(self) -> Instrumented<Self>

    Instruments this type with the current Span, returning an -Instrumented wrapper. Read more
    source§

    impl<T, U> Into<U> for Twhere - U: From<T>,

    source§

    fn into(self) -> U

    Calls U::from(self).

    -

    That is, this conversion is whatever the implementation of -From<T> for U chooses to do.

    -
    source§

    impl<T> Same<T> for T

    §

    type Output = T

    Should always be Self
    source§

    impl<T, U> TryFrom<U> for Twhere - U: Into<T>,

    §

    type Error = Infallible

    The type returned in the event of a conversion error.
    source§

    fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

    Performs the conversion.
    source§

    impl<T, U> TryInto<U> for Twhere - U: TryFrom<T>,

    §

    type Error = <U as TryFrom<T>>::Error

    The type returned in the event of a conversion error.
    source§

    fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

    Performs the conversion.
    §

    impl<T> Upcast<T> for T

    §

    fn upcast(&self) -> Option<&T>

    source§

    impl<T> WithSubscriber for T

    source§

    fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where - S: Into<Dispatch>,

    Attaches the provided Subscriber to this type, returning a -WithDispatch wrapper. Read more
    source§

    fn with_current_subscriber(self) -> WithDispatch<Self>

    Attaches the current default Subscriber to this type, returning a -WithDispatch wrapper. Read more
    §

    impl<G1, G2> Within<G2> for G1where - G2: Contains<G1>,

    §

    fn is_within(&self, b: &G2) -> bool

    source§

    impl<T> Resource for Twhere - T: 'static,

    §

    impl<T> WasmNotSend for Twhere - T: Send,

    §

    impl<T> WasmNotSync for Twhere - T: Sync,

    \ No newline at end of file diff --git a/docs/api/search-index.js b/docs/api/search-index.js index 346d5e33..482d78a3 100644 --- a/docs/api/search-index.js +++ b/docs/api/search-index.js @@ -1,5 +1,5 @@ var searchIndex = JSON.parse('{\ -"maplibre":{"doc":"Maplibre-rs","t":"AAAAOAAAAAOAAAAAAAAAAAAAAAGDDMMADMMMMMMDLLLLLLLLLLMLMLLLLMMDRRRDDRDRDDDDRDDLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLFLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLMLLMMMLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMLMDDDLLLLLLLLLLLLLAALLLLLLMALLLLLLLLLLLLLLLLLAAALMLLLLLLLLLLLLFDLLLLLLLLLLLLLLLLLLLRAARRFDGDLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLFQIQQQIQQKKNIIIQQQELLLLKKLLLLLLLLLLKKLLLLLDAMMAMMAAAMMGIGENIQNNNNEIDEINEQNDDNENNNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMKLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLKLMKLMLLMLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMEDDDNNNNELLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLMLLLLLLLLLLLMMLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLMMDNEINLLLLLLLLLLLLLLLLLLLLLLLLKLLLLLLLLLLGIDDDLLLLLLLLLLLLLLLLLLLKLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLNDENDLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLMMDDLMMLLLLLLLLLLLLLLMLLLLLLLLLLLMMLLMMLMLLLLLLLLLLLLENDENNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLMLLLMLLLLLLLLLLLLLLMLMMRDAAFAADMDLLLLLLLALLLLLFALALLLLDLLLLMLLLLLLLLLLLLLLLLDLLLLLLLLLLLLLLLLLLDIKNDDIQIQNDEDDILLLLLLLLLLLLLLLLLLLLLKKKKMMLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLMKKAAAAAAAMMKKALLLLLLLLLLLLLLLLLLLLADLLLLLLLLLLMLLMLLLLLDENDLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLMFLLLLLLLLLLLLLLFDGDDLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLDLLLLLFLLLLLMLLMLLLLLADLLLLLMLLLLLLLLLLMLLMMLLLLFDDDINQINQEILLLLLLLLLLLLLLLLLLKKLLLLLLKKLLMMLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLMKKLLKKLLLLLLLLLLLLLLLLLLLLFFNNRDNNNNDDEDCMLLLLLLLLLLLLLLLLLLLLLLLAALLLMLLMLLLLLALLLLLLAALLLLLLAALLLLMLLLLLLLLLLLLLLLLLLLLLLLLLAAMLLMLAMAMLLAMAMALLLMAALLLLLLLLLLLLLLLLLLLLLMNENDDNDLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMLLLLLLLLLLLLLLLLLLMMLLDRDRRDRDDLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLMLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLMMMRAARNNENNLLLLLLLLLLLLLLLLLLLLLLLLLQEINNLLLLLLLLKLLLLLLLLLLLLLNNNENNEDDNDNNENNNNNNNNNNNNNNINDNEEDENDDDEDENNNNDDEEENNNNNNLLLLLMAMMLLAMLLLLLLLAMMMMMMMMMLLLLLMMMAMMMAMMMMLKMMMMLLLLMLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMENNNNNNNEDDENLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLMMLLLLLLLLLLLLLLLLLLLLLLLMLMLMLLLLMLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMNEENNNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMDSDLLLLLLLLLLLLMLLLLLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLMMLLLLLLLMLLLLLLLLLLDDNNNIDEEDNDNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLMLLLLMMLLLLKLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLNNNNNNDDEEENNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLMMLLLLLLLLLLLLLLLLLLLLLLLLLNNNNDELLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMAARRDDLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLDGDLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLIDNDIIEDQNDLLLLLLLLLLLLLLLLLLAKKLLMMLLLMLLLLLLLLLLLLLLMMMKLLKLLMMMMLLLLLLLLLLLLIDNIIEQNLLLLLLLLLLKLKLLLLLLLLLLLLLMMKOKLLLLLLLLDDDDENNIIDDNDENDDDDDMMAMMMMMMKMMMMMMMMMMMMMMMAMMMMAMMMMMMAMMAMMMMMAAMMMMMMMKMMDLLLLMLLMLLLLLLLLLLIDLLLLMKLMLLLLLLLMMMMLLLLMDDDMLLLLLLLMLLLLLLMLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLMMMMLLLLLLLLLLLLLLLDDENNDDLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLMLMLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMLLLLLLMMLMLMMMMLLLLLLLLLLLLLLLMLLLLLMNDENLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLMLLLLLLLLMMMDLLLLMMLLMLLLLLLMMLMMLLLLMMMDLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLSSNSSDNNNNNNNNNNNNNNNNSSSSSSNNNNNNNNNNNNNNNDSNNNSDNSSSSSDNSSSSSSENNNNNNNNNNNNSDNNNNNNNNNNNNNNNNNNNNNNNNNNNNSSSSSSSSSNESSSSSSSSSESSSSDLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLMMLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLMMMLLLLLMLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMGDIDDDDDDDDGGGDLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLMMLLLKLLLKLLLLLLLLLLLLLMLMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMAAAAAAFDLLLLLLLLLLLLLLLLLLDLLLLLLLLLLLLLLLLLLFFFNRINNDNEDDDDGLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLMLLLLLLLLLLLLLLLLLKLLLLLLLLLLLLLLLLLLLLLLLLLLMLAMMLLMMLLLMLLLLLLLLLLLLLLLLLLLLMMMDRRDLLLLLLLLLLLLLLLMMLLLLLLLLLLLLLMLLLLLLLLLLMMGDDDIILLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKLLLLLMMMLLLLLLLLLLLLDNDNDNDNDDNDNDNDNDNQIIQDNDNDNDNDNDNDNDNDNDNDNDNDNDNDNDNDNDNSDNDNDDNSEDDNDNDNDNDNDNMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMAMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMAMMAMALLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMNDNDENDNDLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLNNDELLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMLLLLLLLLLLLLNENEGGNDNLLLLLLMLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMLLLMLLLLLLLLLLLLLLLDLLLLMLLLLLLLLLLLLMMMMLMLLLLLMMDDILLLLLLLLKLKLLLLLLLLLLLLLLLLMAMAALLLLLLLLAQQIIIIDQQLLLLLLLLLLLLLLLOMLLLLLLLKLKLKMLLLLGIIDLLLLLLALLLKLLKLKAMLLLLDIQLLLLLLMLLLLKLLLLLLLDLLLLLLLLLLLLLMLLLLLIIIDDQQIQQDIDDLLLLLLLLLLLLLLLLLLLLLLLKLMMKLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLMKLKLKLMMMMLLLLLLLLLLLLLLLLLLLLLDLLLLLLLLLLLMMLLLLIRGDDKKLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMAGDLLLLMMLLLLMLLLLMLLLLLLLLLMMLLLLLLLLLLLLDEDNNNNDLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLMMLMLLLLLLLLLLLMLLMLMLLLLLLLLLLLLLLLLLLLLLMMLLLLLMLMMLLLLLLLLLLLLLLLLMLLLLLMLLLLMMDQDILLLLLLLLLAMLAMLLLLLAAKLMMLLLLLDLLLLLLMLLLLLLLMLLLLLFFIIKKKKDDDDLLLLLLLLLLLLLLLLLFLLLMFFFLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLFMMFMMMLLLLLLLLLLLLLLLLLLLLLLLNDDIQIQIQNDDENNIQGEDDDDDILLLLLLLLLLLLLLLLLLLLLLLLLLLLMLKKKKMKKKKMMMLLLLMLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKLLLLLLLKMMKKKKMAAFAAAAAMMKKKALLLLLLLLLLLLLLLLLLLLLLLLLLLLADLLLLLLLLLLMLLMLLLLLDENNDLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLMLMFLLLLLLLLLLLLLLLLFDGDLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLDLLLLLFLLLLLMLLMLLLLLADEDRNRDNRNDDRNLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMLLLLLLMLLLLLLLLMLLLLLLLLLLLLLLLLLLLLMLMLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLMMLLLLLMMMMMLLMLLMLLLLLLLLLLLLMLLLLLLLLLLLLLLMLMLFDDDDDINQINQINQINQEILLLLLLLLLLLLLLLLLLLLLLLLLLMKKKKLLLLLLLLLLKKKKLLLLMMMMLLLLLLLLLLLLMLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLKLLLLLLLMKLMKKKKLLLLKKLLLLLKLLLLLLLLLLLLLLLLLLLLLLLLLFFRDLLLLLMLLLLLLLLLLLLMLLLLLLLLLLMIIQIQDLLLLLLLKLLLLLLLLMLKLLLLLLKKKLLLLLLML","n":["benchmarking","context","coords","debug","define_label","environment","event_loop","io","kernel","map","multi_stage","platform","plugin","raster","render","schedule","style","tcs","tessellation","tile","util","vector","view_state","window","io","tessellation","IndexDataType","OverAlignedVertexBuffer","VertexConstructor","buffer","usable_indices","zero_tessellator","ZeroTessellator","buffer","current_index","feature_indices","is_point","path_builder","path_open","MapContext","as_any","as_any_mut","borrow","borrow_mut","downcast","from","into","into_any","into_any_rc","is_within","renderer","resize","style","try_from","try_into","type_id","upcast","view_state","world","AlignedWorldTileCoords","EXTENT","EXTENT_SINT","EXTENT_UINT","InnerCoords","LatLon","MAX_ZOOM","Quadkey","TILE_SIZE","TileCoords","ViewRegion","WorldCoords","WorldTileCoords","ZOOM_BOUNDS","Zoom","ZoomLevel","add","add","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_dyn_eq","as_dyn_eq","as_dyn_eq","at_ground","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build_quad_key","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","cmp","cmp","cmp","create_zoom_bounds","default","default","default","default","default","default","default","deserialize","deserialize","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_hash","dyn_hash","dyn_hash","eq","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_lat_lon","get_children","get_parent","hash","hash","hash","into","into","into","into","into","into","into","into","into","into","into_aligned","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_tile","into_world_tile","into_world_tile","is_in_view","is_root","is_valid_bit_pattern","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","iter","latitude","level","longitude","lower_left","lower_right","max_n_tiles","max_tile","min_tile","ne","new","new","new","new","new","padding","partial_cmp","partial_cmp","partial_cmp","scale_delta","scale_to_tile","scale_to_zoom_level","serialize","serialize","stencil_reference_value_3d","sub","sub","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","to_string","transform_for_zoom","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upper_left","upper_right","x","x","x","x","y","y","y","y","z","z","zoom_level","zoom_level","DebugPipeline","DebugPlugin","TileDebugItem","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","cleanup_system","debug_pass","default","deref","downcast","downcast","downcast","draw_function","draw_function","draw_graph","from","from","from","into","into","into","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","queue_system","render_commands","resource_system","sort_key","source_shape","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","upcast","upcast","upcast","cleanup_system","DebugPassNode","as_any","as_any_mut","borrow","borrow_mut","downcast","from","input","into","into_any","into_any_arc","into_any_rc","is_within","new","run","try_from","try_into","type_id","upcast","update","NAME","input","node","DEBUG_PASS","MAIN_PASS","queue_system","DrawDebugOutline","DrawDebugOutlines","SetDebugPipeline","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","downcast","downcast","from","from","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","render","render","try_from","try_from","try_into","try_into","type_id","type_id","upcast","upcast","resource_system","AsyncProcedureCall","Environment","HttpClient","HttpClient","MapWindowConfig","OffscreenKernelEnvironment","OffscreenKernelEnvironment","Scheduler","create","source_client","Closed","EventLoop","EventLoopConfig","EventLoopProxy","EventLoopProxy","EventLoopProxy","EventType","SendEventError","as_any","as_any_mut","borrow","borrow_mut","create_proxy","create_proxy","downcast","fmt","fmt","from","into","into_any","into_any_arc","into_any_rc","is_within","provide","run","send_event","to_string","try_from","try_into","type_id","upcast","RawLayer","apc","extent","features","geometry_index","keys","name","scheduler","source_client","source_type","values","version","AsyncProcedure","AsyncProcedureCall","AsyncProcedureFuture","CallError","CastError","Context","Context","Deserialize","DeserializeInput","Execution","IncompatibleInput","Input","IntoMessage","Message","MessageError","MessageTag","NotYetImplemented","ProcedureError","ReceiveIterator","Schedule","SchedulerAsyncProcedureCall","SchedulerContext","Send","SendError","Serialize","TileRequest","Transmission","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","buffer","call","call","channel","clone","clone","clone_into","clone_into","deserialize","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","eq","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","has_tag","hash","into","into","into","into","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_transferable","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","new","new","phantom_k","provide","provide","provide","provide","receive","receive","scheduler","send","send","sender","serialize","tag","tag","to_owned","to_owned","to_string","to_string","to_string","to_string","transferable","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","coords","style","ExactGeometry","GeometryIndex","IndexProcessor","IndexedGeometry","LineString","Linear","Polygon","Spatial","TileIndex","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","bounds","build_tree","clone","clone","clone_into","clone_into","contains_point","dataset_begin","dataset_end","default","default","distance_2","downcast","downcast","downcast","downcast","downcast","envelope","exact","feature_begin","feature_end","fmt","fmt","from","from","from","from","from","from_linestring","from_polygon","geo_writer","geometries","geometry_begin","geometry_end","get_geometries","index","index_tile","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","is_within","is_within","linestring_begin","linestring_end","multilinestring_begin","multilinestring_end","multipoint_begin","multipolygon_begin","multipolygon_end","new","new","point_begin","point_end","point_query","polygon_begin","polygon_end","properties","properties","properties_begin","properties_end","property","query_point","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","upcast","upcast","upcast","upcast","upcast","xy","list","tree","NopScheduler","NotImplemented","ScheduleError","Scheduler","Scheduling","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","downcast","downcast","fmt","fmt","from","from","into","into","into_any","into_any","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","provide","schedule","schedule","to_string","try_from","try_from","try_into","try_into","type_id","type_id","upcast","upcast","HTTPClientFactory","HttpClient","HttpSourceClient","SourceClient","SourceFetchError","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","downcast","downcast","downcast","fetch","fetch","fetch","fmt","fmt","from","from","from","from","from","http","inner_client","into","into","into","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","new","new","provide","source","to_owned","to_owned","to_string","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","upcast","upcast","upcast","Raster","RasterSource","SourceType","Tessellate","TessellateSource","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone_into","clone_into","clone_into","default","default","downcast","downcast","downcast","filetype","filetype","format","format","format","from","from","from","into","into","into","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","key","new","new","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","upcast","upcast","upcast","url","url","Kernel","KernelBuilder","apc","apc","apc","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","build","default","downcast","downcast","from","from","http_client","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","map_window_config","map_window_config","map_window_config","new","scheduler","scheduler","scheduler","source_client","source_client","try_from","try_from","try_into","try_into","type_id","type_id","upcast","upcast","with_apc","with_http_client","with_map_window_config","with_scheduler","CurrentMapContext","DeviceInit","Map","MapError","Pending","Ready","RenderGraphInit","RendererAlreadySet","RendererNotReady","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","context","context_mut","downcast","downcast","downcast","fmt","fmt","from","from","from","initialize_renderer","into","into","into","into_any","into_any","into_any","into_any_arc","into_any_rc","into_any_rc","into_any_rc","is_initialized","is_within","is_within","is_within","kernel","kernel","map_context","new","plugins","provide","reset","run_schedule","schedule","to_string","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","upcast","upcast","upcast","window","window","window_mut","renderer_builder","style","MIN_WEBGL_BUFFER_SIZE","ReqwestOffscreenKernelEnvironment","http_client","noweb","run_multithreaded","scheduler","trace","ReqwestHttpClient","client","ReqwestOffscreenKernelEnvironment","as_any","as_any_mut","borrow","borrow_mut","create","downcast","from","http_client","into","into_any","into_any_arc","into_any_rc","is_within","run_multithreaded","scheduler","source_client","trace","try_from","try_into","type_id","upcast","ReqwestHttpClient","as_any","as_any_mut","borrow","borrow_mut","client","clone","clone_into","downcast","fetch","from","into","into_any","into_any_arc","into_any_rc","is_within","new","to_owned","try_from","try_into","type_id","upcast","TokioScheduler","as_any","as_any_mut","borrow","borrow_mut","default","downcast","from","into","into_any","into_any_arc","into_any_rc","is_within","new","schedule","try_from","try_into","type_id","upcast","TokioScheduler","Plugin","build","Available","AvailableRasterLayerData","DefaultRasterTransferables","LayerRaster","LayerRaster","LayerRasterMissing","LayerRasterMissing","Missing","MissingRasterLayerData","RasterLayerData","RasterLayersDataComponent","RasterPlugin","RasterTransferables","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","build_from","build_from","coords","coords","coords","coords","default","default","downcast","downcast","downcast","downcast","downcast","from","from","from","from","from","image","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","is_within","is_within","layers","message_tag","message_tag","populate_world_system","process_raster","queue_system","render_commands","request_system","resource","resource_system","source_layer","source_layer","to_layer","to_layer","transferables","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","upcast","upcast","upcast","upcast","upcast","upload_system","PopulateWorldSystem","as_any","as_any_mut","borrow","borrow_mut","downcast","from","into","into_any","into_any_rc","is_within","kernel","name","new","phantom_t","run","try_from","try_into","type_id","upcast","ProcessRasterContext","ProcessRasterError","Processing","RasterTileRequest","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","context","coords","downcast","downcast","downcast","fmt","fmt","from","from","from","into","into","into","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","layer_raster_finished","new","phantom_t","process_raster_tile","provide","to_string","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","upcast","upcast","upcast","queue_system","DrawRasterTile","DrawRasterTiles","SetRasterTilePipeline","SetRasterViewBindGroup","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","downcast","downcast","downcast","from","from","from","into","into","into","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","render","render","render","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","upcast","upcast","upcast","RequestSystem","as_any","as_any_mut","borrow","borrow_mut","downcast","fetch_raster_apc","from","into","into_any","into_any_rc","is_within","kernel","name","new","phantom_t","run","try_from","try_into","type_id","upcast","raster","RasterResources","as_any","as_any_mut","bind_texture","borrow","borrow_mut","bound_textures","create_texture","downcast","from","get_bound_texture","has_tile","into","into_any","into_any_arc","into_any_rc","is_within","msaa","new","pipeline","pipeline","sampler","try_from","try_into","type_id","upcast","resource_system","DefaultLayerRaster","DefaultLayerRasterMissing","DefaultRasterTransferables","LayerRaster","LayerRaster","LayerRaster","LayerRasterMissing","LayerRasterMissing","LayerRasterMissing","RasterMessageTag","RasterTransferables","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_dyn_eq","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build_from","build_from","build_from","build_from","clone","clone","clone_into","clone_into","coords","coords","coords","coords","coords","coords","downcast","downcast","downcast","downcast","dyn_eq","dyn_hash","eq","equivalent","equivalent","equivalent","fmt","fmt","fmt","from","from","from","from","hash","image","into","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","is_within","layer_name","message_tag","message_tag","message_tag","message_tag","to_layer","to_layer","to_layer","to_layer","to_owned","to_owned","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","upcast","upcast","upcast","upcast","upload_raster_layer","upload_system","Cleanup","Extract","INDEX_FORMAT","MaskPipeline","PhaseSort","Prepare","Queue","Render","RenderPlugin","RenderResources","RenderStageLabel","Renderer","ShaderVertex","adapter","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_dyn_eq","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","builder","camera","clone","clone_into","default","depth_texture","deref","device","device","downcast","downcast","downcast","downcast","downcast","draw_graph","dyn_eq","dyn_hash","eq","equivalent","equivalent","equivalent","error","eventually","fmt","from","from","from","from","from","graph","graph_runner","hash","initialize","initialize_headless","instance","instance","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","is_within","is_within","main_graph","main_pass","multisampling_texture","new","queue","queue","recreate_surface","render_commands","render_graph","render_phase","render_target","request_device","resize_surface","resource","resources","settings","settings","shaders","state","surface","surface","surface","systems","tile_view_pattern","to_owned","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","upcast","upcast","upcast","upcast","upcast","wgpu_settings","Gone","InitializationResult","Initialized","InitializedRenderer","RendererBuilder","Uninitialized","UninitializedRenderer","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","default","default","downcast","downcast","downcast","downcast","from","from","from","from","initialize_renderer","into","into","into","into","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_option","is_within","is_within","is_within","is_within","new","renderer","renderer_settings","renderer_settings","to_owned","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","unwrap_renderer","upcast","upcast","upcast","upcast","wgpu_settings","wgpu_settings","with_renderer_settings","with_wgpu_settings","Camera","FLIP_Y","InvertedViewProjection","MAX_PITCH","MIN_PITCH","ModelViewProjection","OPENGL_TO_WGPU_MATRIX","Perspective","ViewProjection","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","calc_matrix","calc_matrix","calc_view_proj","clip_to_window","clip_to_window_transform","clip_to_window_vulkan","clone","clone_into","current_projection","downcast","downcast","downcast","downcast","downcast","downcast","downcast","fmt","fmt","fovy","from","from","from","from","from","height","homogenous_position","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","invert","is_within","is_within","is_within","is_within","is_within","move_relative","move_to","ne","new","new","pitch","pitch","position","position","position_vector","project","project","resize","resize","rotate","tilt","to_model_view_projection","to_owned","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","upcast","upcast","upcast","upcast","upcast","view_region_bounding_box","view_region_bounding_box_ndc","width","window_to_world","window_to_world_at_ground","window_to_world_nalgebra","yaw","yaw","zfar","znear","NAME","input","node","MAIN_PASS","CreateSurfaceError","Graph","RenderError","RequestDevice","Surface","as_any","as_any_mut","borrow","borrow_mut","downcast","fmt","fmt","from","from","from","from","from","into","into_any","into_any_arc","into_any_rc","is_within","provide","should_exit","source","to_string","try_from","try_into","type_id","upcast","Criteria","Eventually","HasChanged","Initialized","Uninitialized","as_any","as_any_mut","borrow","borrow_mut","default","downcast","expect_initialized_mut","from","has_changed","has_tile","initialize","into","into_any","into_any_arc","into_any_rc","is_within","reinitialize","take","try_from","try_into","type_id","upcast","Buffer","Buffer","DoesNotExist","Edge","EdgeAlreadyExists","EdgeDoesNotExist","EdgeExistence","Edges","EmptyNode","Exists","GraphInputNode","Id","Index","InputSlotError","InputSlotError","InvalidInputNodeSlot","InvalidNode","InvalidOutputNodeSlot","InvalidSlot","InvalidSlot","MismatchedInputSlotType","MismatchedNodeSlots","MismatchedSlotType","MismatchedSlotType","MissingInput","MissingSubGraph","Name","Name","Node","NodeEdge","NodeId","NodeInputSlotAlreadyOccupied","NodeLabel","NodeRunError","NodeState","OutputSlotError","OutputSlotError","RenderContext","RenderGraph","RenderGraphContext","RenderGraphError","RunSubGraph","RunSubGraphError","RunSubGraphError","Sampler","Sampler","SlotEdge","SlotInfo","SlotInfos","SlotLabel","SlotType","SlotValue","SubGraphHasNoInputs","TextureView","TextureView","UnconnectedNodeInputSlot","UnconnectedNodeOutputSlot","WrongNodeType","as_any","as_any","as_any_mut","borrow","borrow_mut","command_encoder","context","current_id","device","downcast","dyn_eq","edge","edges","eq","equivalent","equivalent","equivalent","fmt","fmt","from","graph","graph","id","id","input_edges","input_node","input_slots","inputs","inputs","inputs","into","into_any","into_any_arc","into_any_rc","is_within","name","name","name","node","node","node","node_names","node_slot","nodes","output_edges","output_slots","outputs","provide","run","run_sub_graphs","slot_type","slots","sub_graphs","to_string","try_from","try_into","type_id","type_name","upcast","input_index","input_node","input_node","output_index","output_node","output_node","actual","expected","label","actual","expected","label","input_node","input_slot","input_slot","input_slot","node","node","node","occupied_by_node","output_node","output_slot","output_slot","actual","expected","graph_name","graph_name","label","slot_index","slot_index","slot_name","InputSlotError","InvalidSlot","InvalidSlot","MismatchedInputSlotType","MismatchedSlotType","MismatchedSlotType","MissingInput","MissingSubGraph","OutputSlotError","RenderGraphContext","RunSubGraph","RunSubGraphError","SubGraphHasNoInputs","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","downcast","downcast","downcast","downcast","downcast","dyn_eq","dyn_eq","dyn_eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","finish","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","get_input","get_input_buffer","get_input_sampler","get_input_texture","graph","input_info","inputs","inputs","inputs","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","is_within","is_within","name","new","node","output_info","outputs","provide","provide","provide","run_sub_graph","run_sub_graphs","set_output","to_string","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","upcast","upcast","upcast","upcast","upcast","actual","expected","label","actual","expected","label","actual","expected","graph_name","graph_name","label","slot_index","slot_index","slot_name","DoesNotExist","Edge","EdgeExistence","Exists","NodeEdge","SlotEdge","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","clone","clone_into","downcast","downcast","dyn_eq","dyn_eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","from","from","get_input_node","get_output_node","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","upcast","upcast","input_index","input_node","input_node","output_index","output_node","output_node","GraphInputNode","INPUT_NODE_NAME","RenderGraph","add_node","add_node_edge","add_slot_edge","add_sub_graph","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","current_id","default","downcast","downcast","fmt","from","from","get_node","get_node_id","get_node_mut","get_node_state","get_node_state_mut","get_sub_graph","get_sub_graph_mut","has_edge","input","input_node","input_node","inputs","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","iter_node_inputs","iter_node_outputs","iter_nodes","iter_nodes_mut","iter_sub_graphs","iter_sub_graphs_mut","node_names","nodes","output","remove_node","remove_node_edge","remove_slot_edge","remove_sub_graph","run","set_input","sub_graphs","try_from","try_from","try_into","try_into","type_id","type_id","upcast","upcast","update","validate_edge","Edges","EmptyNode","Id","InputSlotError","Name","Node","NodeId","NodeLabel","NodeRunError","NodeState","OutputSlotError","RenderContext","RunSubGraphError","add_input_edge","add_output_edge","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_dyn_eq","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","cmp","command_encoder","device","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast_mut","downcast_rc","downcast_ref","dyn_eq","dyn_eq","dyn_eq","dyn_hash","edges","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","get_input_slot_edge","get_output_slot_edge","has_input_edge","has_output_edge","hash","id","id","id","input","input","input_edges","input_edges","input_slots","into","into","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is","is_within","is_within","is_within","is_within","is_within","is_within","is_within","name","new","new","node","node","node_mut","output","output","output_edges","output_edges","output_slots","partial_cmp","provide","remove_input_edge","remove_output_edge","run","run","source","to_owned","to_owned","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_name","upcast","upcast","upcast","upcast","upcast","upcast","upcast","update","update","validate_input_slots","validate_output_slots","Buffer","Buffer","Index","Name","Sampler","Sampler","SlotInfo","SlotInfos","SlotLabel","SlotType","SlotValue","TextureView","TextureView","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","default","downcast","downcast","downcast","downcast","downcast","dyn_eq","dyn_eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","get_slot","get_slot_index","get_slot_mut","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_empty","is_within","is_within","is_within","is_within","is_within","iter","len","name","new","slot_type","slot_type","slots","to_owned","to_owned","to_owned","to_owned","to_string","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","upcast","upcast","upcast","upcast","upcast","EmptyNodeOutputSlot","MismatchedInputSlotType","MissingInput","NodeRunError","RenderGraphRunner","RenderGraphRunnerError","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","downcast","downcast","fmt","fmt","from","from","from","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","provide","run","run_graph","source","to_string","try_from","try_from","try_into","try_into","type_id","type_id","upcast","upcast","actual","expected","graph_name","label","slot_index","slot_index","slot_index","slot_name","slot_name","type_name","input","node","MAIN_PASS_DEPENDENCIES","MAIN_PASS_DRIVER","MainPassDriverNode","MainPassNode","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","downcast","downcast","from","from","input","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","new","run","run","try_from","try_from","try_into","try_into","type_id","type_id","upcast","upcast","update","DrawMask","DrawMasks","SetMaskPipeline","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","downcast","downcast","from","from","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","render","render","try_from","try_from","try_into","try_into","type_id","type_id","upcast","upcast","Draw","DrawState","Failure","LayerItem","PhaseItem","RenderCommand","RenderCommandResult","RenderPhase","SortKey","Success","TileMaskItem","add","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clear","default","downcast","downcast","downcast","draw","draw","draw_function","draw_function","draw_function","draw_function","draw_function","from","from","from","index","into","into","into","into_any","into_any","into_any","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_iter","is_within","is_within","is_within","items","phantom_c","phantom_p","render","size","sort","sort_key","sort_key","sort_key","source_shape","source_shape","style_layer","tile","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","upcast","upcast","upcast","Draw","DrawState","Failure","PhaseItem","RenderCommand","RenderCommandResult","SortKey","Success","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","downcast","downcast","draw","draw","draw_function","from","from","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","new","phantom_c","phantom_p","render","render_command_tuple_impl","sort_key","try_from","try_from","try_into","try_into","type_id","type_id","upcast","upcast","BackingBufferDescriptor","BufferDimensions","BufferedTextureHead","FragmentState","Head","Headed","Headless","Queue","RenderPipeline","RenderPipelineDescriptor","Surface","SurfaceTexture","Texture","TextureView","TextureView","TilePipeline","TrackedRenderPass","VertexBufferLayout","VertexState","WindowHead","array_stride","attributes","buffer","buffer","buffer_dimensions","buffers","debug_stencil","depth_stencil","depth_stencil_enabled","describe_render_pipeline","entry_point","entry_point","fragment","fragment_state","head","height","inner_size","label","layout","msaa","multisample","name","output_buffer","padded_bytes_per_row","pass","pipeline","present_mode","primitive","raster","settings","shader","size","size","size","source","source","step_mode","surface","surface","targets","texture","texture","texture","texture_format","texture_format","texture_format_features","tile_pipeline","tracked_render_pass","unpadded_bytes_per_row","update_stencil","vertex","vertex_state","view","width","wireframe","write_buffer","texture","view","BackingBufferDescriptor","as_any","as_any_mut","borrow","borrow_mut","buffer","downcast","from","inner_size","into","into_any","into_any_arc","into_any_rc","is_within","new","try_from","try_into","type_id","upcast","RenderPipeline","RenderPipelineDescriptor","as_any","as_any_mut","borrow","borrow_mut","depth_stencil","describe_render_pipeline","downcast","fragment","from","initialize","into","into_any","into_any_arc","into_any_rc","is_within","label","layout","multisample","primitive","try_from","try_into","type_id","upcast","vertex","FragmentState","VertexBufferLayout","VertexState","array_stride","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","attributes","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","buffers","clone","clone","clone","clone_into","clone_into","clone_into","downcast","downcast","downcast","dyn_eq","entry_point","entry_point","eq","equivalent","equivalent","equivalent","fmt","fmt","fmt","from","from","from","into","into","into","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","source","source","step_mode","targets","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","upcast","upcast","upcast","BufferDimensions","BufferedTextureHead","Head","Headed","Headless","Surface","WindowHead","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","buffer_dimensions","configure","create_view","downcast","downcast","downcast","downcast","downcast","from","from","from","from","from","from_image","from_surface","has_changed","head","head","head_mut","height","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_multisampling_supported","is_within","is_within","is_within","is_within","is_within","new","output_buffer","padded_bytes_per_row","present_mode","reconfigure","recreate","recreate_surface","resize","resize_and_configure","size","size","size","surface","surface","surface_format","texture","texture_format","texture_format","texture_format_features","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","unpadded_bytes_per_row","upcast","upcast","upcast","upcast","upcast","width","SurfaceTexture","Texture","TextureView","TextureView","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","deref","downcast","downcast","fmt","from","from","from","from","has_changed","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","new","size","take_surface_texture","texture","try_from","try_from","try_into","try_into","type_id","type_id","upcast","upcast","view","texture","view","TilePipeline","as_any","as_any_mut","borrow","borrow_mut","debug_stencil","depth_stencil_enabled","describe_render_pipeline","downcast","fragment_state","from","into","into_any","into_any_arc","into_any_rc","is_within","msaa","name","new","raster","settings","try_from","try_into","type_id","upcast","update_stencil","vertex_state","wireframe","TrackedRenderPass","as_any","as_any_mut","borrow","borrow_mut","downcast","draw","draw_indexed","draw_indexed_indirect","draw_indirect","from","insert_debug_marker","into","into_any","into_any_arc","into_any_rc","is_within","new","pass","pop_debug_group","push_debug_group","set_bind_group","set_blend_constant","set_index_buffer","set_push_constants","set_render_pipeline","set_scissor_rect","set_stencil_reference","set_vertex_buffer","set_viewport","try_from","try_into","type_id","upcast","ADDRESS_MODE_CLAMP_TO_BORDER","ADDRESS_MODE_CLAMP_TO_ZERO","Astc","BROWSER_WEBGPU","BUFFER_BINDING_ARRAY","Backends","Bc1RgbaUnorm","Bc1RgbaUnormSrgb","Bc2RgbaUnorm","Bc2RgbaUnormSrgb","Bc3RgbaUnorm","Bc3RgbaUnormSrgb","Bc4RSnorm","Bc4RUnorm","Bc5RgSnorm","Bc5RgUnorm","Bc6hRgbFloat","Bc6hRgbUfloat","Bc7RgbaUnorm","Bc7RgbaUnormSrgb","Bgra8Unorm","Bgra8UnormSrgb","CLEAR_TEXTURE","CONSERVATIVE_RASTERIZATION","DEPTH32FLOAT_STENCIL8","DEPTH_CLIP_CONTROL","DX11","DX12","Depth16Unorm","Depth24Plus","Depth24PlusStencil8","Depth32Float","Depth32FloatStencil8","EacR11Snorm","EacR11Unorm","EacRg11Snorm","EacRg11Unorm","Etc2Rgb8A1Unorm","Etc2Rgb8A1UnormSrgb","Etc2Rgb8Unorm","Etc2Rgb8UnormSrgb","Etc2Rgba8Unorm","Etc2Rgba8UnormSrgb","Features","GL","Headed","Headless","HighPerformance","INDIRECT_FIRST_INSTANCE","Limits","LowPower","MAPPABLE_PRIMARY_BUFFERS","METAL","MULTIVIEW","MULTI_DRAW_INDIRECT","MULTI_DRAW_INDIRECT_COUNT","Msaa","None","PARTIALLY_BOUND_BINDING_ARRAY","PIPELINE_STATISTICS_QUERY","POLYGON_MODE_LINE","POLYGON_MODE_POINT","PRIMARY","PUSH_CONSTANTS","PowerPreference","R16Float","R16Sint","R16Snorm","R16Uint","R16Unorm","R32Float","R32Sint","R32Uint","R8Sint","R8Snorm","R8Uint","R8Unorm","RG11B10UFLOAT_RENDERABLE","RendererSettings","Rg11b10Float","Rg16Float","Rg16Sint","Rg16Snorm","Rg16Uint","Rg16Unorm","Rg32Float","Rg32Sint","Rg32Uint","Rg8Sint","Rg8Snorm","Rg8Uint","Rg8Unorm","Rgb10a2Unorm","Rgb9e5Ufloat","Rgba16Float","Rgba16Sint","Rgba16Snorm","Rgba16Uint","Rgba16Unorm","Rgba32Float","Rgba32Sint","Rgba32Uint","Rgba8Sint","Rgba8Snorm","Rgba8Uint","Rgba8Unorm","Rgba8UnormSrgb","SAMPLED_TEXTURE_AND_STORAGE_BUFFER_ARRAY_NON_UNIFORM_INDEXING","SECONDARY","SHADER_EARLY_DEPTH_TEST","SHADER_F16","SHADER_F64","SHADER_I16","SHADER_PRIMITIVE_INDEX","SPIRV_SHADER_PASSTHROUGH","STORAGE_RESOURCE_BINDING_ARRAY","Stencil8","SurfaceType","TEXTURE_ADAPTER_SPECIFIC_FORMAT_FEATURES","TEXTURE_BINDING_ARRAY","TEXTURE_COMPRESSION_ASTC","TEXTURE_COMPRESSION_ASTC_HDR","TEXTURE_COMPRESSION_BC","TEXTURE_COMPRESSION_ETC2","TEXTURE_FORMAT_16BIT_NORM","TIMESTAMP_QUERY","TIMESTAMP_QUERY_INSIDE_PASSES","TextureFormat","UNIFORM_BUFFER_AND_STORAGE_TEXTURE_ARRAY_NON_UNIFORM_INDEXING","VERTEX_ATTRIBUTE_64BIT","VERTEX_WRITABLE_STORAGE","VULKAN","WgpuSettings","add_srgb_suffix","all","all","all_native_mask","all_webgpu_mask","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","aspect_specific_format","backends","bitand","bitand","bitand_assign","bitand_assign","bitor","bitor","bitor_assign","bitor_assign","bits","bits","bits","bits","bitxor","bitxor","bitxor_assign","bitxor_assign","block_dimensions","block_size","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","check_limits","check_limits_with_fail_fn","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","complement","complement","components","components_with_aspect","constrained_limits","contains","contains","contains_invalid_bits","contains_invalid_bits","default","default","default","default","default","default","depth_texture_format","device_label","difference","difference","disabled_features","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downlevel_defaults","downlevel_webgl2_defaults","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","empty","empty","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","extend","extend","features","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from_bits","from_bits","from_bits_retain","from_bits_retain","from_bits_retain","from_bits_retain","from_bits_truncate","from_bits_truncate","from_iter","from_iter","from_name","from_name","guaranteed_format_features","has_color_aspect","has_depth_aspect","has_stencil_aspect","hash","hash","hash","hash","hash","insert","insert","intersection","intersection","intersects","intersects","into","into","into","into","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_iter","into_iter","is_all","is_all","is_combined_depth_stencil_format","is_compressed","is_depth_stencil_component","is_depth_stencil_format","is_empty","is_empty","is_multisampling","is_srgb","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","iter","iter","iter_names","iter_names","limits","max_bind_groups","max_bindings_per_bind_group","max_buffer_size","max_compute_invocations_per_workgroup","max_compute_workgroup_size_x","max_compute_workgroup_size_y","max_compute_workgroup_size_z","max_compute_workgroup_storage_size","max_compute_workgroups_per_dimension","max_dynamic_storage_buffers_per_pipeline_layout","max_dynamic_uniform_buffers_per_pipeline_layout","max_inter_stage_shader_components","max_push_constant_size","max_sampled_textures_per_shader_stage","max_samplers_per_shader_stage","max_storage_buffer_binding_size","max_storage_buffers_per_shader_stage","max_storage_textures_per_shader_stage","max_texture_array_layers","max_texture_dimension_1d","max_texture_dimension_2d","max_texture_dimension_3d","max_uniform_buffer_binding_size","max_uniform_buffers_per_shader_stage","max_vertex_attributes","max_vertex_buffer_array_stride","max_vertex_buffers","min_storage_buffer_offset_alignment","min_uniform_buffer_offset_alignment","msaa","not","not","power_preference","present_mode","record_trace","remove","remove","remove_srgb_suffix","required_features","sample_type","samples","set","set","sub","sub","sub_assign","sub_assign","symmetric_difference","symmetric_difference","texture_format","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","toggle","toggle","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","union","union","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","using_alignment","using_resolution","block","channel","Mat4x4f32","RasterTileShader","Shader","ShaderCamera","ShaderFeatureStyle","ShaderGlobals","ShaderLayerMetadata","ShaderTextureVertex","ShaderTileMetadata","ShaderVertex","TileMaskShader","Vec2f32","Vec3f32","Vec4f32","VectorTileShader","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","camera","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","color","debug_lines","default","default","default","describe_fragment","describe_fragment","describe_fragment","describe_fragment","describe_vertex","describe_vertex","describe_vertex","describe_vertex","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","draw_colors","fmt","format","format","format","from","from","from","from","from","from","from","from","from","from","from","into","into","into","into","into","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","new","new","new","new","new","new","normal","position","position","tex_coords","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","transform","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","view_position","view_proj","z_index","zoom_factor","cleanup_system","graph_runner_system","resource_system","sort_phase_system","tile_view_pattern_system","upload_system","cleanup_system","GraphRunnerSystem","as_any","as_any_mut","borrow","borrow_mut","default","downcast","from","into","into_any","into_any_arc","into_any_rc","is_within","name","run","try_from","try_into","type_id","upcast","ResourceSystem","as_any","as_any_mut","borrow","borrow_mut","default","downcast","from","into","into_any","into_any_arc","into_any_rc","is_within","name","run","try_from","try_into","type_id","upcast","sort_phase_system","tile_view_pattern_system","upload_system","Children","DEFAULT_TILE_VIEW_PATTERN_SIZE","HasTile","None","Parent","QueryHasTile","SourceEqTarget","SourceShapes","TileShape","TileViewPattern","ViewTile","ViewTileSources","WgpuTileViewPattern","add","add_resource_query","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","buffer_range","buffer_range","clear","clone","clone","clone","clone_into","clone_into","clone_into","coords","coords","coords","default","default","downcast","downcast","downcast","downcast","downcast","fmt","fmt","fmt","from","from","from","from","from","get_available_children","get_available_parent","has_tile","has_tile","has_tile","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","is_within","is_within","items","new","pattern","phantom_q","phantom_q","render","set_buffer_range","source","target","to_owned","to_owned","to_owned","transform","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","upcast","upcast","upcast","upcast","upcast","view_tiles","view_tiles_buffer","zoom_factor","BackingBuffer","CHILDREN_SEARCH_DEPTH","DEFAULT_TILE_VIEW_PATTERN_SIZE","TileViewPattern","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","buffer","downcast","downcast","fmt","from","from","generate_pattern","inner","inner_size","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","iter","new","new","phantom_q","try_from","try_from","try_into","try_into","type_id","type_id","upcast","upcast","update_pattern","upload_pattern","view_tiles","view_tiles_buffer","BoxedStageLabel","MultiStage","NopStage","Schedule","Stage","StageLabel","add_stage","add_stage_after","add_stage_before","add_system_to_stage","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clear","default","downcast","downcast","downcast","downcast","downcast_mut","downcast_rc","downcast_ref","eq","from","from","from","get_stage","get_stage_mut","hash","into","into","into","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","is","is_within","is_within","is_within","iter_stages","new","remove_stage","run","run","run","run","run_once","stage","stage_order","stages","stages","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","upcast","upcast","upcast","Aces2065","Aces2065","AcesCc","AcesCc","AcesCct","AcesCct","AcesCg","AcesCg","Alpha","Bt2020","Bt2020","Bt2100","Bt2100","CieLCh","CieLCh","CieLab","CieLab","CieXYZ","CieXYZ","CintTy","ColorInterop","ColorType","ComponentTy","DciP3","DciP3","DciXYZPrime","DciXYZPrime","DisplayP3","DisplayP3","EncodedBt2020","EncodedBt2020","EncodedBt2100HLG","EncodedBt2100HLG","EncodedBt2100PQ","EncodedBt2100PQ","EncodedDisplayP3","EncodedDisplayP3","EncodedRec709","EncodedRec709","EncodedSrgb","EncodedSrgb","GenericColor1","GenericColor1","GenericColor3","GenericColor3","Hsl","Hsl","Hsv","Hsv","ICtCpHLG","ICtCpHLG","ICtCpPQ","ICtCpPQ","LinearSrgb","LinearSrgb","Luma","Luma","Luminance","Luminance","NUM_COMPONENTS","Oklab","Oklab","Oklch","Oklch","PremultipliedAlpha","Rec709","Rec709","SPACE","Spaces","Style","YCbCr","YCbCr","YCxCz","YCxCz","YPbPr","YPbPr","YPrimeCbCr","YPrimeCbCr","YPrimePbPr","YPrimePbPr","Yuv","Yuv","a","a","alpha","alpha","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","b","b","b","b","b","b","b","b","b","b","b","b","b","b","b","b","b","b","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","c","c","cb","cb","center","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","color","color","cp","cp","cr","cr","ct","ct","cx","cz","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_cint","g","g","g","g","g","g","g","g","g","g","g","g","g","g","g","g","h","h","h","h","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","i","i","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_cint","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","l","l","l","l","l","l","l","layer","layers","metadata","name","num_components","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","pb","pb","pitch","pr","pr","r","r","r","r","r","r","r","r","r","r","r","r","r","r","r","r","raster","s","s","source","sources","style","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","u","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","v","v","version","x","x","x","x","y","y","y","y","y","y","y","y","y","z","z","z","zoom","Background","BackgroundPaint","Fill","FillPaint","LayerPaint","Line","LinePaint","Raster","StyleLayer","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","background_color","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","default","deserialize","deserialize","deserialize","deserialize","deserialize","downcast","downcast","downcast","downcast","downcast","fill_color","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","get_color","id","index","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","is_within","is_within","line_color","maxzoom","metadata","minzoom","paint","serialize","serialize","serialize","serialize","serialize","source","source_layer","to_owned","to_owned","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","upcast","upcast","upcast","upcast","upcast","Linear","Nearest","RasterLayer","RasterResampling","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","default","deserialize","deserialize","downcast","downcast","fmt","fmt","from","from","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","raster_brightness_max","raster_brightness_min","raster_contrast","raster_fade_duration","raster_hue_rotate","raster_opacity","raster_resampling","raster_saturation","serialize","serialize","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","upcast","upcast","Raster","Source","TMS","TileAddressingScheme","TileJSONUrl","TileUrl","Vector","VectorSource","XYZ","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","attribution","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","bounds","clone","clone","clone","clone_into","clone_into","clone_into","default","deserialize","deserialize","deserialize","downcast","downcast","downcast","fmt","fmt","fmt","from","from","from","into","into","into","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","maxzoom","minzoom","scheme","serialize","serialize","serialize","tiles","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","upcast","upcast","upcast","Style","as_any","as_any_mut","borrow","borrow_mut","center","clone","clone_into","default","deserialize","downcast","fmt","from","into","into_any","into_any_arc","into_any_rc","is_within","layers","metadata","name","pitch","serialize","sources","to_owned","try_from","try_into","type_id","upcast","version","zoom","EphemeralQueryState","GlobalQueryState","QueryState","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","clone_to","clone_to","create","create","default","downcast","downcast","from","from","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","mutably_borrowed","resources","state","system","tiles","try_from","try_from","try_into","try_into","type_id","type_id","upcast","upcast","world","Item","MutItem","Resource","ResourceQuery","ResourceQueryMut","ResourceQueryUnsafe","Resources","State","State","as_any","as_any_mut","borrow","borrow_mut","default","downcast","downcast","downcast_mut","downcast_rc","downcast_ref","exists","from","get","get_mut","get_or_init_mut","impl_resource_query","index","init","insert","into","into_any","into_any_rc","is","is_within","query","query","query_mut","query_mut","query_unsafe","resources","try_from","try_into","type_id","upcast","BoxedSystem","IntoSystemContainer","System","SystemContainer","as_any","as_any_mut","borrow","borrow_mut","downcast","from","function","into","into_any","into_any_rc","into_container","into_container","is_within","name","new","run","stage","system","try_from","try_into","type_id","upcast","FunctionSystem","IntoSystem","System","as_any","as_any_mut","borrow","borrow_mut","downcast","from","func","into","into_any","into_any_arc","into_any_rc","into_system","is_within","name","run","try_from","try_into","type_id","upcast","SystemStage","add_system","as_any","as_any_mut","borrow","borrow_mut","default","downcast","from","into","into_any","into_any_rc","is_within","run","systems","try_from","try_into","type_id","upcast","with_system","ComponentQuery","ComponentQueryMut","ComponentQueryUnsafe","EphemeralQueryState","GlobalQueryState","Item","MutItem","QueryState","State","State","Tile","TileComponent","TileSpawnResult","Tiles","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clear","clone","clone_into","clone_to","clone_to","components","coords","create","create","default","default","downcast","downcast","downcast","downcast","downcast","downcast","downcast_mut","downcast_rc","downcast_ref","exists","fmt","from","from","from","from","from","geometry_index","insert","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is","is_within","is_within","is_within","is_within","is_within","mutably_borrowed","query","query","query_mut","query_mut","query_unsafe","spawn_mut","state","tile","tiles","tiles","to_owned","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","upcast","upcast","upcast","upcast","upcast","World","as_any","as_any_mut","borrow","borrow_mut","default","downcast","from","into","into_any","into_any_rc","is_within","resources","tiles","try_from","try_into","type_id","upcast","Align","DEFAULT_TOLERANCE","IndexDataType","OverAlignedVertexBuffer","VertexConstructor","align_indices","align_vertices","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","buffer","clone","clone_into","downcast","downcast","empty","from","from","from","from_iters","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","new_vertex","new_vertex","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","upcast","upcast","usable_indices","zero_tessellator","GeoResult","ZeroTessellator","as_any","as_any_mut","borrow","borrow_mut","buffer","current_index","default","downcast","end","feature_end","feature_indices","from","into","into_any","into_any_rc","is_point","is_within","linestring_begin","linestring_end","multilinestring_begin","multilinestring_end","multipoint_begin","multipoint_end","multipolygon_begin","multipolygon_end","path_builder","path_open","point_begin","point_end","polygon_begin","polygon_end","tessellate_fill","tessellate_strokes","try_from","try_into","type_id","upcast","update_feature_indices","xy","Feature","GeomType","Layer","Linestring","Point","Polygon","Unknown","Value","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_dyn_eq","as_str_name","bool_value","bool_value","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clear","clear","clear","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","cmp","default","default","default","default","double_value","double_value","downcast","downcast","downcast","downcast","dyn_eq","dyn_hash","encoded_len","encoded_len","encoded_len","eq","eq","eq","eq","equivalent","equivalent","equivalent","extent","extent","features","float_value","float_value","fmt","fmt","fmt","fmt","from","from","from","from","from","from_i32","from_str_name","geometry","hash","id","id","int_value","int_value","into","into","into","into","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_valid","is_within","is_within","is_within","is_within","keys","name","partial_cmp","process","process_geom","set_type","sint_value","sint_value","string_value","string_value","tags","to_geo","to_mvt","to_mvt_unscaled","to_owned","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type","type","type_id","type_id","type_id","type_id","uint_value","uint_value","upcast","upcast","upcast","upcast","values","version","ChangeObserver","Epsilon","FPSMeter","SignificantlyDifferent","as_any","as_any_mut","borrow","borrow_mut","default","deref","deref_mut","did_change","downcast","fps_meter","frame_count","from","grid","inner","into","into_any","into_any_arc","into_any_rc","is_within","label","math","ne","new","next_report","reference_value","try_from","try_into","type_id","upcast","update_reference","FPSMeter","as_any","as_any_mut","borrow","borrow_mut","default","downcast","frame_count","from","into","into_any","into_any_arc","into_any_rc","is_within","new","next_report","try_from","try_into","type_id","upcast","update_and_print","google_mercator","tile_coordinates_bavaria","DynEq","DynHash","as_any","as_dyn_eq","dyn_eq","dyn_hash","Aabb2","Aabb3","FloatOrd","Plane","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","bounds_from_points","clone","clone_into","cmp","d","div_away","div_ceil","div_floor","downcast","downcast","downcast","downcast","dyn_eq","eq","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","from","from","from","from","from_point_normal","from_points","intersection_distance_ray","intersection_points_aabb3","intersection_polygon_aabb3","into","into","into","into","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","is_within","max","max","max","min","min","min","n","new","new","new","partial_cmp","to_corners","to_corners","to_owned","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","upcast","upcast","upcast","upcast","Available","AvailableVectorLayerData","DefaultVectorTransferables","LayerIndexed","LayerIndexed","LayerMissing","LayerMissing","LayerTessellated","LayerTessellated","Missing","MissingVectorLayerData","ProcessVectorContext","ProcessVectorError","Processing","SendError","TileTessellated","TileTessellated","VectorBufferPool","VectorLayerData","VectorLayersDataComponent","VectorPipeline","VectorPlugin","VectorTileRequest","VectorTilesDone","VectorTransferables","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","buffer","build","build_from","build_from","build_from","build_from","context","coords","coords","coords","coords","coords","coords","coords","default","default","default","deref","done","downcast","downcast","downcast","downcast","downcast","downcast","downcast","feature_indices","from","from","from","from","from","from","from","has_tile","into","into","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_empty","is_within","is_within","is_within","is_within","is_within","is_within","is_within","layer_name","layers","layers","message_tag","message_tag","message_tag","message_tag","phantom_t","populate_world_system","process_vector","process_vector_tile","queue_system","render_commands","request_system","resource","resource_system","source_layer","source_layer","to_layer","to_layer","to_tile_index","transferables","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upload_system","PopulateWorldSystem","as_any","as_any_mut","borrow","borrow_mut","downcast","from","into","into_any","into_any_rc","is_within","kernel","name","new","phantom_t","run","try_from","try_into","type_id","upcast","ProcessVectorContext","ProcessVectorError","Processing","SendError","VectorTileRequest","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","context","coords","downcast","downcast","downcast","fmt","fmt","from","from","from","into","into","into","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","layer_indexing_finished","layer_missing","layer_tesselation_finished","layers","new","phantom_t","process_vector_tile","provide","take_context","tile_finished","to_string","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","upcast","upcast","upcast","queue_system","DrawVectorTile","DrawVectorTiles","SetVectorTilePipeline","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","downcast","downcast","from","from","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","render","render","try_from","try_from","try_into","try_into","type_id","type_id","upcast","upcast","RequestSystem","as_any","as_any_mut","borrow","borrow_mut","downcast","fetch_vector_apc","from","into","into_any","into_any_rc","is_within","kernel","name","new","phantom_t","run","try_from","try_into","type_id","upcast","buffer_pool","BackingBuffer","BackingBufferType","BufferPool","FEATURE_METADATA_SIZE","FeatureMetadata","INDICES_SIZE","IndexEntry","Indices","LAYER_METADATA_SIZE","Metadata","RingIndex","RingIndexEntry","VERTEX_SIZE","Vertices","align","allocate_layer_geometry","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","back","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","buffer_feature_metadata","buffer_indices","buffer_layer_metadata","buffer_vertices","clear","clear","clone","clone","clone_into","clone_into","coords","default","downcast","downcast","downcast","downcast","downcast","downcast","feature_metadata","feature_metadata","feature_metadata_buffer_range","find_largest_gap","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from_device","front","get_layers","get_loaded_source_layers_at","has_tile","index","index","indices","indices","indices_buffer_range","indices_range","inner","inner_size","into","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","is_within","is_within","is_within","iter","layer_metadata","layer_metadata_buffer_range","layers","linear_index","make_room","metadata","new","new","new","phantom_fm","phantom_i","phantom_m","phantom_q","phantom_v","pop_front","push_back","style_layer","to_owned","to_owned","tree_index","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","typ","type_id","type_id","type_id","type_id","type_id","type_id","upcast","upcast","upcast","upcast","upcast","upcast","update_feature_metadata","update_layer_metadata","usable_indices","vertices","vertices","vertices_buffer_range","resource_system","DefaultLayerIndexed","DefaultLayerMissing","DefaultLayerTesselated","DefaultTileTessellated","DefaultVectorTransferables","LayerIndexed","LayerIndexed","LayerIndexed","LayerMissing","LayerMissing","LayerMissing","LayerTessellated","LayerTessellated","LayerTessellated","TileTessellated","TileTessellated","TileTessellated","VectorMessageTag","VectorTransferables","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_dyn_eq","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","buffer","build_from","build_from","build_from","build_from","build_from","build_from","build_from","build_from","clone","clone","clone","clone_into","clone_into","clone_into","coords","coords","coords","coords","coords","coords","coords","coords","coords","coords","coords","coords","downcast","downcast","downcast","downcast","downcast","downcast","dyn_eq","dyn_hash","eq","equivalent","equivalent","equivalent","feature_indices","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","hash","index","into","into","into","into","into","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_empty","is_empty","is_within","is_within","is_within","is_within","is_within","is_within","layer_data","layer_name","layer_name","layer_name","message_tag","message_tag","message_tag","message_tag","message_tag","message_tag","message_tag","message_tag","to_layer","to_layer","to_layer","to_layer","to_owned","to_owned","to_owned","to_tile_index","to_tile_index","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","upcast","upcast","upcast","upcast","upcast","upcast","upload_system","upload_tesselated_layer","VIEW_REGION_PADDING","ViewState","as_any","as_any_mut","borrow","borrow_mut","camera","camera","camera_mut","create_view_region","did_camera_change","did_zoom_change","downcast","from","into","into_any","into_any_arc","into_any_rc","is_within","new","perspective","resize","try_from","try_into","type_id","upcast","update_references","update_zoom","view_projection","visible_level","zoom","zoom","HeadedMapWindow","MapWindow","MapWindow","MapWindowConfig","RawWindow","WindowSize","as_any","as_any","as_any_mut","borrow","borrow_mut","clone","clone_into","create","downcast","dyn_eq","eq","equivalent","equivalent","equivalent","from","height","height","height_non_zero","id","into","into_any","into_any_arc","into_any_rc","is_within","new","raw","request_redraw","size","to_owned","try_from","try_into","type_id","upcast","width","width","width_non_zero"],"q":[[0,"maplibre"],[24,"maplibre::benchmarking"],[26,"maplibre::benchmarking::tessellation"],[32,"maplibre::benchmarking::tessellation::zero_tessellator"],[39,"maplibre::context"],[59,"maplibre::coords"],[381,"maplibre::debug"],[441,"maplibre::debug::cleanup_system"],[442,"maplibre::debug::debug_pass"],[462,"maplibre::debug::draw_graph"],[465,"maplibre::debug::draw_graph::node"],[467,"maplibre::debug::queue_system"],[468,"maplibre::debug::render_commands"],[503,"maplibre::debug::resource_system"],[504,"maplibre::environment"],[514,"maplibre::event_loop"],[545,"maplibre::io"],[557,"maplibre::io::apc"],[746,"maplibre::io::apc::Input"],[748,"maplibre::io::geometry_index"],[882,"maplibre::io::geometry_index::TileIndex"],[884,"maplibre::io::scheduler"],[924,"maplibre::io::source_client"],[993,"maplibre::io::source_type"],[1064,"maplibre::kernel"],[1115,"maplibre::map"],[1186,"maplibre::map::CurrentMapContext"],[1188,"maplibre::platform"],[1195,"maplibre::platform::http_client"],[1197,"maplibre::platform::noweb"],[1219,"maplibre::platform::noweb::http_client"],[1241,"maplibre::platform::noweb::scheduler"],[1260,"maplibre::platform::scheduler"],[1261,"maplibre::plugin"],[1263,"maplibre::raster"],[1377,"maplibre::raster::populate_world_system"],[1397,"maplibre::raster::process_raster"],[1455,"maplibre::raster::queue_system"],[1456,"maplibre::raster::render_commands"],[1508,"maplibre::raster::request_system"],[1529,"maplibre::raster::resource"],[1530,"maplibre::raster::resource::raster"],[1556,"maplibre::raster::resource_system"],[1557,"maplibre::raster::transferables"],[1668,"maplibre::raster::upload_system"],[1670,"maplibre::render"],[1814,"maplibre::render::builder"],[1898,"maplibre::render::camera"],[2027,"maplibre::render::draw_graph"],[2030,"maplibre::render::draw_graph::node"],[2031,"maplibre::render::error"],[2061,"maplibre::render::eventually"],[2088,"maplibre::render::graph"],[2205,"maplibre::render::graph::Edge"],[2211,"maplibre::render::graph::InputSlotError"],[2214,"maplibre::render::graph::OutputSlotError"],[2217,"maplibre::render::graph::RenderGraphError"],[2228,"maplibre::render::graph::RunSubGraphError"],[2236,"maplibre::render::graph::context"],[2370,"maplibre::render::graph::context::InputSlotError"],[2373,"maplibre::render::graph::context::OutputSlotError"],[2376,"maplibre::render::graph::context::RunSubGraphError"],[2384,"maplibre::render::graph::edge"],[2438,"maplibre::render::graph::edge::Edge"],[2444,"maplibre::render::graph::graph"],[2514,"maplibre::render::graph::node"],[2719,"maplibre::render::graph::node_slot"],[2858,"maplibre::render::graph_runner"],[2902,"maplibre::render::graph_runner::RenderGraphRunnerError"],[2912,"maplibre::render::main_graph"],[2914,"maplibre::render::main_graph::node"],[2916,"maplibre::render::main_pass"],[2953,"maplibre::render::render_commands"],[2988,"maplibre::render::render_phase"],[3067,"maplibre::render::render_phase::draw"],[3114,"maplibre::render::resource"],[3190,"maplibre::render::resource::TextureView"],[3192,"maplibre::render::resource::buffer"],[3211,"maplibre::render::resource::pipeline"],[3237,"maplibre::render::resource::shader"],[3312,"maplibre::render::resource::surface"],[3426,"maplibre::render::resource::texture"],[3470,"maplibre::render::resource::texture::TextureView"],[3472,"maplibre::render::resource::tile_pipeline"],[3500,"maplibre::render::resource::tracked_render_pass"],[3534,"maplibre::render::settings"],[4037,"maplibre::render::settings::TextureFormat"],[4039,"maplibre::render::shaders"],[4267,"maplibre::render::systems"],[4273,"maplibre::render::systems::cleanup_system"],[4274,"maplibre::render::systems::graph_runner_system"],[4293,"maplibre::render::systems::resource_system"],[4312,"maplibre::render::systems::sort_phase_system"],[4313,"maplibre::render::systems::tile_view_pattern_system"],[4314,"maplibre::render::systems::upload_system"],[4315,"maplibre::render::tile_view_pattern"],[4442,"maplibre::render::tile_view_pattern::pattern"],[4489,"maplibre::schedule"],[4566,"maplibre::style"],[6443,"maplibre::style::layer"],[6570,"maplibre::style::raster"],[6625,"maplibre::style::source"],[6704,"maplibre::style::style"],[6735,"maplibre::tcs"],[6779,"maplibre::tcs::resources"],[6822,"maplibre::tcs::system"],[6848,"maplibre::tcs::system::function"],[6870,"maplibre::tcs::system::stage"],[6890,"maplibre::tcs::tiles"],[7009,"maplibre::tcs::world"],[7027,"maplibre::tessellation"],[7075,"maplibre::tessellation::zero_tessellator"],[7116,"maplibre::tile"],[7262,"maplibre::util"],[7296,"maplibre::util::fps_meter"],[7317,"maplibre::util::grid"],[7319,"maplibre::util::label"],[7325,"maplibre::util::math"],[7426,"maplibre::vector"],[7601,"maplibre::vector::populate_world_system"],[7621,"maplibre::vector::process_vector"],[7685,"maplibre::vector::queue_system"],[7686,"maplibre::vector::render_commands"],[7721,"maplibre::vector::request_system"],[7742,"maplibre::vector::resource"],[7743,"maplibre::vector::resource::buffer_pool"],[7913,"maplibre::vector::resource_system"],[7914,"maplibre::vector::transferables"],[8093,"maplibre::vector::upload_system"],[8095,"maplibre::view_state"],[8127,"maplibre::window"]],"d":["Collection of utilities used to perform certain …","","Provides utilities related to coordinates.","","Macro to define a new label trait","","","Handles IO related processing as well as multithreading.","","","","Handles platform specific code. Depending on the …","","","This module implements the rendering algorithm of …","","Vector tile format styling.","","Tessellation for lines and polygons is implemented here.","Nested message and enum types in Tile.","Utils which are used internally","","","Utilities for the window system.","Re-export of the io module.","Re-export of the tessellation module.","Vertex buffers index data type.","Vertex buffer which includes additional padding to fulfill …","Constructor for Fill and Stroke vertices.","","","Tessellator implementation.","Build tessellations with vectors.","","","","","","","Stores the context of the map.","","","","","","Returns the argument unchanged.","Calls U::from(self).","","","","","","","","","","","","","An aligned world tile coordinate aligns a world coordinate …","","","","Within each tile there is a separate coordinate system. …","","","Represents the position of a node within a quad tree. The …","","Every tile has tile coordinates. These tile coordinates …","Defines a bounding box on a tiled map with a ZoomLevel and …","Actual coordinates within the 3D world. The z value of the …","Every tile has tile coordinates. Every tile coordinate can …","","Zoom is an exponential scale that defines the zoom of the …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Adopted from tilebelt","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Returns the argument unchanged.","","Returns the argument unchanged.","Returns the argument unchanged.","","","","Returns the argument unchanged.","","Returns the argument unchanged.","","Adopted from tilebelt","Get the tile which is one zoom level lower and contains …","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the tile coords according to an addressing scheme. …","Transforms the tile coordinates as defined by the tile …","","","","","","","","","","","","","","","","","","","","","The maximum amount of tiles this view region contains","","","","","","","","","Padding around this view region","","","","","","","","","Returns unique stencil reference values for …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","At which zoom level does this region exist","","","","","","","","","","","","","","","","","","","","","","","","","","Labels for the “draw” graph","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","Queues PhaseItems for rendering.","Specifies the instructions which are going to be sent to …","Prepares GPU-owned resources by initializing them if they …","","","","","","","","","","","","","","","","Pass which renders debug information on top of the map.","","","","","","Returns the argument unchanged.","","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","The environment defines which types must be injected into …","","","","","","","","","The event loop was already closed","","","","","","","When sending events to an event loop errors can occur.","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self).","","","","","","","","","","","","","Layers are described in section 4.1 of the specification","","Although this is an “optional” field it is required by …","The actual features in this tile.","Geometry index.","Dictionary encoding for keys","","Scheduling.","HTTP client.","","Dictionary encoding for values","Any compliant implementation must first read the version …","Type definitions for asynchronous procedure calls. These …","APCs define an interface for performing work …","","","","Allows sending messages from workers to back to the caller.","","","","","The Input is not compatible with the procedure","Inputs for an AsyncProcedure","","The result of the tessellation of a tile. This is sent as …","","Defines a set of strongly-typed labels for a class of …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Call an AsyncProcedure using some Input. This function is …","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Try to receive a message non-blocking.","","","Send a message back to the caller.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Contains either a polygon or line vector.","A quad tree storing the currently loaded tiles.","A processor able to create geometries using …","An indexed geometry contains an exact vector geometry, …","","","","","Index of tiles which can be of two types: spatial or …","","","","","","","","","","","","","","","","","","","","","","","","","","","","Begin of dataset processing.","End of dataset processing.","","","","","","","","","","","Begin of feature processing.","End of feature processing.","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","Begin of feature geometry processing.","End of feature geometry processing.","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Begin of feature property processing.","End of feature property processing.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Async/await scheduler. Can schedule a task from a future …","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","A closure that returns a HTTP client.","On the web platform futures are not thread-safe (i.e. not …","Gives access to the HTTP client which can be of multiple …","Defines the different types of HTTP clients such as basic …","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","Returns the argument unchanged.","","Returns the argument unchanged.","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Represents a source from which the raster tile are fetched.","Represents the tiles’ different types of source.","","Represents a source from which the vector tile are fetched.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Holds references to core constructs of maplibre. Based on …","A convenient builder for Kernels.","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","No need to set renderer again","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","Resets the complete state of this map - a new renderer and …","","","","","","","","","","","","","","","","","","","","","Minimum WebGPU buffer size","","Http client for non-web targets.","Module which is used target platform is not web related.","","Scheduler for non-web targets.","","","","","","","","","","","Returns the argument unchanged.","","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self).","","","","","cache_path: Under which path should we cache requests.","","","","","","Multi-threading with Tokio.","","","","","","","Returns the argument unchanged.","Calls U::from(self).","","","","","","","","","","","Multi-threading with Tokio.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","Queues PhaseItems for rendering.","","Requests tiles which are currently in view","","Prepares GPU-owned resources by initializing them if they …","","","","","","","","","","","","","","","","","","","","","","","","","","Uploads data to the GPU which is needed for rendering.","","","","","","","Returns the argument unchanged.","Calls U::from(self).","","","","","","","","","","","","","","","Error during processing of the pipeline","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self).","","","","","","","","","","","","","","Holds the resources necessary for the raster tiles such as …","","","Creates a bind group for each fetched raster tile and …","","","","","","Returns the argument unchanged.","","","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","Calls U::from(self).","Calls U::from(self).","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Cleanup render resources here.","Extract data from the world.","","","Sort the RenderPhases here.","Prepare render resources from the extracted data for the …","Queues PhaseItems that depend on Prepare data and queue up …","Actual rendering happens here. In most cases, only the …","","","The labels of the default App rendering stages.","","","","","","","","","","","","","","","","","","","","","","","","","","","","Main camera","","","","","","","","","","","","","Labels for the “draw” graph","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Executes a RenderGraph","","Initializes the renderer by retrieving and preparing the …","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","The main render pass for this application.","","","","","","Specifies the instructions which are going to be sent to …","","Describes the concept of a RenderPhase and PhaseItem","","Requests a device","","Utilities which holds references to GPU-owned. Usually a …","","Settings for the renderer","","","","","","","Rendering specific systems","Utility for generating a tile pattern which can be used …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Initializes the whole rendering pipeline for the given …","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Transforms coordinates in clip space to window coordinates.","A transform which can be used to transform between clip …","Alternative implementation to clip_to_window. Transforms …","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Calculates an Aabb2 bounding box which contains at least …","An alternative implementation for view_bounding_box.","","Order of transformations reversed: …","Gets the world coordinates for the specified window …","Alternative implementation to window_to_world","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","","Calls U::from(self).","","","","","","","","","","","","","","Wrapper around a resource which can be initialized or …","","","","","","","","","","","Returns the argument unchanged.","","","","Calls U::from(self).","","","","","","","","","","","A GPU-accessible [Buffer].","A GPU-accessible [Buffer].","","An edge, which connects two Nodes in a RenderGraph.","","","","A collection of input and output Edges for a Node.","A Node without any inputs, outputs and subgraphs, which …","","A Node which acts as an entry point for a RenderGraph with …","","","","","","","","","","","","","","","","","","A render node that can be added to a RenderGraph.","An edge describing to ordering of both nodes (output_node …","A Node identifier. It automatically generates its own …","","A NodeLabel is used to reference a NodeState by either its …","","The internal representation of a Node, with all data …","","","The context with all information required to interact with …","The render graph configures the modular, parallel and …","The context with all graph information required to run a …","","A command that signals the graph runner to run the sub …","","","A texture [Sampler] defines how a pipeline will sample …","A texture [Sampler] defines how a pipeline will sample …","An edge describing to ordering of both nodes (output_node …","The internal representation of a slot, which specifies its …","A collection of input or output SlotInfos for a NodeState.","A SlotLabel is used to reference a slot by either its name …","Describes the render resources created (output) or used …","A value passed between render Nodes. Corresponds to the …","","A TextureView describes a texture used in a pipeline.","A TextureView describes a texture used in a pipeline.","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","","","","","","","","Calls U::from(self).","","","","","","","","","","","","","","","","","","Runs the graph node logic, issues draw calls, updates the …","","","","","","","","","The name of the type that implements Node.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The context with all graph information required to run a …","A command that signals the graph runner to run the sub …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Finishes the context for this Node by returning the sub …","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Retrieves the input slot value referenced by the label.","Retrieves the input slot value referenced by the label as …","Retrieves the input slot value referenced by the label as …","Retrieves the input slot value referenced by the label as …","","Returns the SlotInfos of the inputs.","Returns the input slot values for the node.","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","Creates a new render graph context for the node.","","Returns the SlotInfos of the outputs.","","","","","Queues up a sub graph for execution after the node has …","","Sets the output slot value referenced by the label.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","An edge, which connects two Nodes in a RenderGraph.","","","An edge describing to ordering of both nodes (output_node …","An edge describing to ordering of both nodes (output_node …","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the id of the input_node.","Returns the id of the output_node.","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","A Node which acts as an entry point for a RenderGraph with …","The name of the GraphInputNode of this graph. Used to …","The render graph configures the modular, parallel and …","Adds the node with the name to the graph. If the name is …","Adds the Edge::NodeEdge to the graph. This guarantees that …","Adds the Edge::SlotEdge to the graph. This guarantees that …","Adds the sub_graph with the name to the graph. If the name …","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Retrieves the Node referenced by the label.","Retrieves the NodeId referenced by the label.","Retrieves the Node referenced by the label mutably.","Retrieves the NodeState referenced by the label.","Retrieves the NodeState referenced by the label mutably.","Retrieves the sub graph corresponding to the name.","Retrieves the sub graph corresponding to the name mutably.","Checks whether the edge already exists in the graph.","","Returns the NodeState of the input node of this graph..","","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","Returns an iterator over a tuple of the input edges and …","Returns an iterator over a tuple of the output edges and …","Returns an iterator over the NodeStates.","Returns an iterator over the NodeStates, that allows …","Returns an iterator over the sub graphs.","Returns an iterator over the sub graphs, that allows …","","","","Removes the node with the name from the graph. If the name …","Removes the Edge::NodeEdge from the graph. If either node …","Removes the Edge::SlotEdge from the graph. If any nodes or …","Removes the sub_graph with the name from the graph. If the …","","Creates an GraphInputNode with the specified slots if not …","","","","","","","","","","Updates all nodes and sub graphs of the render graph. …","Verifies that the edge existence is as expected and checks …","A collection of input and output Edges for a Node.","A Node without any inputs, outputs and subgraphs, which …","","","","A render node that can be added to a RenderGraph.","A Node identifier. It automatically generates its own …","A NodeLabel is used to reference a NodeState by either its …","","The internal representation of a Node, with all data …","","The context with all information required to interact with …","","Adds an edge to the input_edges if it does not already …","Adds an edge to the output_edges if it does not already …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns a boxed object from a boxed trait object if the …","","","","","","","Returns a mutable reference to the object within the trait …","Returns an Rc-ed object from an Rc-ed trait object if the …","Returns a reference to the object within the trait object …","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Returns the argument unchanged.","","","Returns the argument unchanged.","","","","","Returns the argument unchanged.","Searches the input_edges for a Edge::SlotEdge, which …","Searches the output_edges for a Edge::SlotEdge, which …","Checks whether the input edge already exists.","Checks whether the output edge already exists.","","Returns this node’s id.","","","Specifies the required input slots for this node. They …","Specifies the required input slots for this node. They …","Returns all “input edges” (edges going “in”) for …","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","Returns true if the trait object wraps an object of type …","","","","","","","","","Creates an NodeState without edges, but the input_slots …","","Retrieves the Node.","","Retrieves the Node mutably.","Specifies the produced output slots for this node. They …","Specifies the produced output slots for this node. They …","Returns all “output edges” (edges going “out”) for …","","","","","Removes an edge from the input_edges if it exists.","Removes an edge from the output_edges if it exists.","Runs the graph node logic, issues draw calls, updates the …","","","","","","","","","","","","","","","","","","","","","","","","","","","The name of the type that implements Node.","","","","","","","","Updates internal node state using the current …","Updates internal node state using the current …","Validates that each input slot corresponds to an input …","Validates that each output slot corresponds to an output …","A GPU-accessible [Buffer].","A GPU-accessible [Buffer].","","","A texture [Sampler] defines how a pipeline will sample …","A texture [Sampler] defines how a pipeline will sample …","The internal representation of a slot, which specifies its …","A collection of input or output SlotInfos for a NodeState.","A SlotLabel is used to reference a slot by either its name …","Describes the render resources created (output) or used …","A value passed between render Nodes. Corresponds to the …","A TextureView describes a texture used in a pipeline.","A TextureView describes a texture used in a pipeline.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","Returns the argument unchanged.","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","Retrieves the SlotInfo for the provided label.","Retrieves the index (inside input or output slots) of the …","Retrieves the SlotInfo for the provided label mutably.","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","Returns true if there are no slots.","","","","","","Returns an iterator over the slot infos.","Returns the count of slots.","","","Returns the SlotType of this value.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","A draw function which is used to draw a specific PhaseItem.","","","","An item which will be drawn to the screen. A phase item …","RenderCommand is a trait that runs an ECS query and …","","A resource to collect and sort draw requests for specific …","The type used for ordering the items. The smallest values …","","","Adds a PhaseItem to this render phase.","","","","","","","","","","","","","","","","","","","Draws the PhaseItem by issuing draw calls via the …","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","Renders the PhaseItem by issuing draw calls via the …","","Sorts all of its PhaseItems.","Determines the order in which the items are drawn during …","","","","","","","","","","","","","","","","","","","A draw function which is used to draw a specific PhaseItem.","","","An item which will be drawn to the screen. A phase item …","RenderCommand is a trait that runs an ECS query and …","","The type used for ordering the items. The smallest values …","","","","","","","","","","","","Draws the PhaseItem by issuing draw calls via the …","Prepares data for the wrapped RenderCommand and then …","","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","Renders the PhaseItem by issuing draw calls via the …","","Determines the order in which the items are drawn during …","","","","","","","","","","","","Describes the fragment process in a render pipeline.","","","","","","","","The value is a wgpu SurfaceTexture, but dereferences to a …","","Describes a TextureView.","The value is an actual wgpu TextureView.","","A [RenderPass], which tracks the current pipeline state to …","Describes how the vertex buffer is interpreted.","","","The stride, in bytes, between elements of this buffer.","The list of attributes which comprise a single vertex.","","The buffer which is used","","The format of any vertex buffers used with this pipeline.","Force a write and ignore stencil","The effect of draw calls on the depth and stencil aspects …","Is the depth stencil used?","","The name of the entry point in the compiled shader. There …","The name of the entry point in the compiled shader. There …","The compiled fragment stage, its entry point, and the …","","","","The size of buffer","Debug label of the pipeline. This will show up in graphics …","The layout of bind groups for this pipeline.","","The multi-sampling properties of the pipeline.","","","","","Utility for creating RenderPipelines","","The properties of the pipeline at the primitive assembly …","","","Utilities for creating shader states.","","","","The shader source","The shader source","How often this vertex buffer is “stepped” forward.","Utilities for handling surfaces which can be either …","","The color state of the render targets.","Utility for a texture view which can either be created by …","","","","","","Utility for declaring pipelines.","A render pass which allows tracking, for example using a …","","This pipeline updates the stenctil","The compiled vertex stage, its entry point, and the input …","","","","","","","","","","","","","The buffer which is used","","Returns the argument unchanged.","The size of buffer","Calls U::from(self).","","","","","","","","","","","","","","","","The effect of draw calls on the depth and stencil aspects …","","","The compiled fragment stage, its entry point, and the …","Returns the argument unchanged.","","Calls U::from(self).","","","","","Debug label of the pipeline. This will show up in graphics …","The layout of bind groups for this pipeline.","The multi-sampling properties of the pipeline.","The properties of the pipeline at the primitive assembly …","","","","","The compiled vertex stage, its entry point, and the input …","Describes the fragment process in a render pipeline.","Describes how the vertex buffer is interpreted.","","The stride, in bytes, between elements of this buffer.","","","","","","","","The list of attributes which comprise a single vertex.","","","","","","","The format of any vertex buffers used with this pipeline.","","","","","","","","","","","The name of the entry point in the compiled shader. There …","The name of the entry point in the compiled shader. There …","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","The shader source","The shader source","How often this vertex buffer is “stepped” forward.","The color state of the render targets.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The value is a wgpu SurfaceTexture, but dereferences to a …","","Describes a TextureView.","The value is an actual wgpu TextureView.","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","Returns the SurfaceTexture of the texture view if it is of …","","","","","","","","","","","","","","","","","","Force a write and ignore stencil","Is the depth stencil used?","","","","Returns the argument unchanged.","Calls U::from(self).","","","","","","","","","","","","","","This pipeline updates the stenctil","","","A [RenderPass], which tracks the current pipeline state to …","","","","","","Draws primitives from the active vertex buffer(s).","Draws indexed primitives using the active index buffer and …","Draws indexed primitives using the active index buffer and …","Draws primitives from the active vertex buffer(s) based on …","Returns the argument unchanged.","Insert a single debug marker.","Calls U::from(self).","","","","","Tracks the supplied render pass.","","End the current debug group.","Start a new debug group.","Sets the active [BindGroup] for a given bind group index. …","","Sets the active index buffer.","Set push constant data.","Sets the active [RenderPipeline].","Sets the scissor region.","Sets the stencil reference.","Assign a vertex buffer to a slot.","Set the rendering viewport.","","","","","Allows the use of AddressMode::ClampToBorder with a border …","Allows the use of AddressMode::ClampToBorder with a border …","block compressed texture. 16 bytes per block.","Supported when targeting the web through webassembly","Allows the user to create arrays of buffers in shaders:","Represents the backends that wgpu will use.","4x4 block compressed texture. 8 bytes per block (4 …","4x4 block compressed texture. 8 bytes per block (4 …","4x4 block compressed texture. 16 bytes per block (8 …","4x4 block compressed texture. 16 bytes per block (8 …","4x4 block compressed texture. 16 bytes per block (8 …","4x4 block compressed texture. 16 bytes per block (8 …","4x4 block compressed texture. 8 bytes per block (4 …","4x4 block compressed texture. 8 bytes per block (4 …","4x4 block compressed texture. 16 bytes per block (8 …","4x4 block compressed texture. 16 bytes per block (8 …","4x4 block compressed texture. 16 bytes per block (8 …","4x4 block compressed texture. 16 bytes per block (8 …","4x4 block compressed texture. 16 bytes per block (8 …","4x4 block compressed texture. 16 bytes per block (8 …","Blue, green, red, and alpha channels. 8 bit integer per …","Blue, green, red, and alpha channels. 8 bit integer per …","Enables clear to zero for textures.","Allows the user to set a …","Allows for explicit creation of textures of format …","By default, polygon depth is clipped to 0-1 range …","Supported on Windows 7+","Supported on Windows 10","Special depth format with 16 bit integer depth.","Special depth format with at least 24 bit integer depth.","Special depth/stencil format with at least 24 bit integer …","Special depth format with 32 bit floating point depth.","Special depth/stencil format with 32 bit floating point …","4x4 block compressed texture. 8 bytes per block (4 …","4x4 block compressed texture. 8 bytes per block (4 …","4x4 block compressed texture. 16 bytes per block (8 …","4x4 block compressed texture. 16 bytes per block (8 …","4x4 block compressed texture. 8 bytes per block (4 …","4x4 block compressed texture. 8 bytes per block (4 …","4x4 block compressed texture. 8 bytes per block (4 …","4x4 block compressed texture. 8 bytes per block (4 …","4x4 block compressed texture. 16 bytes per block (8 …","4x4 block compressed texture. 16 bytes per block (8 …","Features that are not guaranteed to be supported.","Supported on Linux/Android, the web through webassembly …","","","Adapter that has the highest performance. This is often a …","Allows non-zero value for the “first instance” in …","Represents the sets of limits an adapter/device supports.","Adapter that uses the least possible power. This is often …","Webgpu only allows the MAP_READ and MAP_WRITE buffer usage …","Supported on macOS/iOS","Enables multiview render passes and builtin(view_index) in …","Allows the user to call RenderPass::multi_draw_indirect …","Allows the user to call …","Configuration resource for Multi-Sample Anti-Aliasing.","Power usage is not considered when choosing an adapter.","Allows the user to create bind groups continaing arrays …","Enables use of Pipeline Statistics Queries. These queries …","Allows the user to set PolygonMode::Line in …","Allows the user to set PolygonMode::Point in …","All the apis that wgpu offers first tier of support for.","Allows the use of push constants: small, fast bits of …","Power Preference when choosing a physical adapter.","Red channel only. 16 bit float per channel. Float in …","Red channel only. 16 bit integer per channel. Signed in …","Red channel only. 16 bit integer per channel. [0, 65535] …","Red channel only. 16 bit integer per channel. Unsigned in …","Red channel only. 16 bit integer per channel. [0, 65535] …","Red channel only. 32 bit float per channel. Float in …","Red channel only. 32 bit integer per channel. Signed in …","Red channel only. 32 bit integer per channel. Unsigned in …","Red channel only. 8 bit integer per channel. Signed in …","Red channel only. 8 bit integer per channel. [-127, 127] …","Red channel only. 8 bit integer per channel. Unsigned in …","Red channel only. 8 bit integer per channel. [0, 255] …","Allows for usage of textures of format …","","Red, green, and blue channels. 11 bit float with no sign …","Red and green channels. 16 bit float per channel. Float in …","Red and green channels. 16 bit integer per channel. Signed …","Red and green channels. 16 bit integer per channel. [0, …","Red and green channels. 16 bit integer per channel. …","Red and green channels. 16 bit integer per channel. [0, …","Red and green channels. 32 bit float per channel. Float in …","Red and green channels. 32 bit integer per channel. Signed …","Red and green channels. 32 bit integer per channel. …","Red and green channels. 8 bit integer per channel. Signed …","Red and green channels. 8 bit integer per channel. [-127, …","Red and green channels. 8 bit integer per channel. …","Red and green channels. 8 bit integer per channel. [0, 255]…","Red, green, blue, and alpha channels. 10 bit integer for …","Packed unsigned float with 9 bits mantisa for each RGB …","Red, green, blue, and alpha channels. 16 bit float per …","Red, green, blue, and alpha channels. 16 bit integer per …","Red, green, blue, and alpha. 16 bit integer per channel. […","Red, green, blue, and alpha channels. 16 bit integer per …","Red, green, blue, and alpha channels. 16 bit integer per …","Red, green, blue, and alpha channels. 32 bit float per …","Red, green, blue, and alpha channels. 32 bit integer per …","Red, green, blue, and alpha channels. 32 bit integer per …","Red, green, blue, and alpha channels. 8 bit integer per …","Red, green, blue, and alpha channels. 8 bit integer per …","Red, green, blue, and alpha channels. 8 bit integer per …","Red, green, blue, and alpha channels. 8 bit integer per …","Red, green, blue, and alpha channels. 8 bit integer per …","Allows shaders to index sampled texture and storage buffer …","All the apis that wgpu offers second tier of support for. …","Allows shaders to use the early_depth_test attribute.","Allows shaders to acquire the FP16 ability","Enables 64-bit floating point types in SPIR-V shaders.","Allows shaders to use i16. Not currently supported in naga…","Enables builtin(primitive_index) in fragment shaders.","Enables creating shader modules from SPIR-V binary data …","Allows the user to create uniform arrays of storage …","Stencil format with 8 bit integer stencil.","","Enables device specific texture format features.","Allows the user to create uniform arrays of textures in …","Enables ASTC family of compressed textures. ASTC textures …","Enables ASTC HDR family of compressed textures.","Enables BCn family of compressed textures. All BCn …","Enables ETC family of compressed textures. All ETC …","Enables normalized 16-bit texture formats.","Enables use of Timestamp Queries. These queries tell the …","Allows for timestamp queries inside render passes.","Underlying texture data format.","Allows shaders to index uniform buffer and storage texture …","Enables using 64-bit types for vertex attributes.","Enables bindings of writable storage buffers and textures …","Supported on Windows, Linux/Android, and macOS/iOS via …","Provides configuration for renderer initialization. Use …","Adds an Srgb suffix to the given texture format, if the …","Get a flags value with all known bits set.","Get a flags value with all known bits set.","Mask of all features that are only available when …","Mask of all features which are part of the upstream WebGPU …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the aspect-specific format of the original format","","The bitwise and (&) of the bits in two flags values.","The bitwise and (&) of the bits in two flags values.","The bitwise and (&) of the bits in two flags values.","The bitwise and (&) of the bits in two flags values.","The bitwise or (|) of the bits in two flags values.","The bitwise or (|) of the bits in two flags values.","The bitwise or (|) of the bits in two flags values.","The bitwise or (|) of the bits in two flags values.","","Get the underlying bits value.","Get the underlying bits value.","","The bitwise exclusive-or (^) of the bits in two flags …","The bitwise exclusive-or (^) of the bits in two flags …","The bitwise exclusive-or (^) of the bits in two flags …","The bitwise exclusive-or (^) of the bits in two flags …","Returns the dimension of a block of texels.","Returns the texel block size of this format.","","","","","","","","","","","","","","","","","","","Compares every limits within self is within the limits …","Compares every limits within self is within the limits …","","","","","","","","","","","","","","","","","","","The bitwise negation (!) of the bits in a flags value, …","The bitwise negation (!) of the bits in a flags value, …","Returns the number of components this format has.","Returns the number of components this format has taking …","The constraints on limits allowed regardless of what the …","Whether all set bits in a source flags value are also set …","Whether all set bits in a source flags value are also set …","Returns true if the bitflags contains bits that are not …","Returns true if the bitflags contains bits that are not …","","","","","","","","","The intersection of a source flags value with the …","The intersection of a source flags value with the …","The features to ensure are disabled regardless of what the …","","","","","","","","","","These default limits are guaranteed to be compatible with …","These default limits are guaranteed to be compatible with …","","","","","","","","","","","Get a flags value with all bits unset.","Get a flags value with all bits unset.","","","","","","","","","","","","","","","","","","","","","The bitwise or (|) of the bits in each flags value.","The bitwise or (|) of the bits in each flags value.","The features to ensure are enabled regardless of what the …","","","","","","","","","","","","","","Returns the argument unchanged.","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Convert from a bits value.","Convert from a bits value.","","Convert from a bits value exactly.","","Convert from a bits value exactly.","Convert from a bits value, unsetting any unknown bits.","Convert from a bits value, unsetting any unknown bits.","The bitwise or (|) of the bits in each flags value.","The bitwise or (|) of the bits in each flags value.","Get a flags value with the bits of a flag with the given …","Get a flags value with the bits of a flag with the given …","Returns the format features guaranteed by the WebGPU spec.","Returns true if the format has a color aspect","Returns true if the format has a depth aspect","Returns true if the format has a stencil aspect","","","","","","The bitwise or (|) of the bits in two flags values.","The bitwise or (|) of the bits in two flags values.","The bitwise and (&) of the bits in two flags values.","The bitwise and (&) of the bits in two flags values.","Whether any set bits in a source flags value are also set …","Whether any set bits in a source flags value are also set …","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Whether all known bits in this flags value are set.","Whether all known bits in this flags value are set.","Returns true if the format is a combined depth-stencil …","Returns true for compressed formats.","Returns true if self is a depth or stencil component of …","Returns true if the format is a depth and/or stencil format","Whether all bits in this flags value are unset.","Whether all bits in this flags value are unset.","","Returns true for srgb formats.","","","","","","","","","","Yield a set of contained flags values.","Yield a set of contained flags values.","Yield a set of contained named flags values.","Yield a set of contained named flags values.","The imposed limits.","Amount of bind groups that can be attached to a pipeline …","Maximum binding index allowed in create_bind_group_layout. …","A limit above which buffer allocations are guaranteed to …","Maximum value of the product of the workgroup_size …","The maximum value of the workgroup_size X dimension for a …","The maximum value of the workgroup_size Y dimension for a …","The maximum value of the workgroup_size Z dimension for a …","Maximum number of bytes used for workgroup memory in a …","The maximum value for each dimension of a …","Amount of storage buffer bindings that can be dynamic in a …","Amount of uniform buffer bindings that can be dynamic in a …","Maximum allowed number of components (scalars) of input or …","Amount of storage available for push constants in bytes. …","Amount of sampled textures visible in a single shader …","Amount of samplers visible in a single shader stage. …","Maximum size in bytes of a binding to a storage buffer. …","Amount of storage buffers visible in a single shader …","Amount of storage textures visible in a single shader …","Maximum allowed value for the size.depth_or_array_layers …","Maximum allowed value for the size.width of a texture …","Maximum allowed value for the size.width and size.height …","Maximum allowed value for the size.width, size.height, and …","Maximum size in bytes of a binding to a uniform buffer. …","Amount of uniform buffers visible in a single shader …","Maximum length of VertexBufferLayout::attributes, summed …","Maximum value for VertexBufferLayout::array_stride when …","Maximum length of VertexState::buffers when creating a …","Required BufferBindingType::Storage alignment for …","Required BufferBindingType::Uniform alignment for …","","The bitwise negation (!) of the bits in a flags value, …","The bitwise negation (!) of the bits in a flags value, …","","Present mode for surfaces if a surface is used.","Whether a trace is recorded an stored in the current …","The intersection of a source flags value with the …","The intersection of a source flags value with the …","Strips the Srgb suffix from the given texture format.","Returns the required features (if any) in order to use the …","Returns the sample type compatible with this format and …","The number of samples to run for Multi-Sample …","Call insert when value is true or remove when value is …","Call insert when value is true or remove when value is …","The intersection of a source flags value with the …","The intersection of a source flags value with the …","The intersection of a source flags value with the …","The intersection of a source flags value with the …","The bitwise exclusive-or (^) of the bits in two flags …","The bitwise exclusive-or (^) of the bits in two flags …","Explicitly set a texture format or let the renderer …","","","","","","","","","","The bitwise exclusive-or (^) of the bits in two flags …","The bitwise exclusive-or (^) of the bits in two flags …","","","","","","","","","","","","","","","","","","","","","","","","","","","","The bitwise or (|) of the bits in two flags values.","The bitwise or (|) of the bits in two flags values.","","","","","","","","","","Modify the current limits to use the buffer alignment …","Modify the current limits to use the resolution limits of …","compressed block dimensions","ASTC RGBA channel","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Executes the [RenderGraph] current render graph.","Prepares GPU-owned resources by initializing them if they …","","Extracts data from the current state.","Uploads data to the GPU which is needed for rendering.","","Updates the [RenderGraph] with all of its nodes and then …","","","","","","","Returns the argument unchanged.","Calls U::from(self).","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self).","","","","","","","","","","","This system sorts all RenderPhases for the [PhaseItem] …","","","Children are the source. We construct the target from …","","","No data available so nothing to render","Parent tile is the source. We construct the target from …","","Source and target are equal, so no need to differentiate. …","This defines the source tile shaped from which the content …","Defines the exact location where a specific tile on the …","The tile mask pattern assigns each tile a value which can …","Defines the target tile and its source from which data …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The tile mask pattern assigns each tile a value which can …","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","The internal structure which is used for storage","The size of the inner buffer","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","A container of Stages set to be run in a linear order.","","Defines a set of strongly-typed labels for a class of …","Adds the given stage at the last position of the schedule.","Adds the given stage immediately after the target stage.","Adds the given stage immediately before the target stage.","Adds a system to the Stage identified by stage_label.","","","","","","","","","","","","","","","","","Returns a boxed object from a boxed trait object if the …","","Returns a mutable reference to the object within the trait …","Returns an Rc-ed object from an Rc-ed trait object if the …","Returns a reference to the object within the trait object …","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns a shared reference to the stage identified by label…","Returns a unique, mutable reference to the stage …","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","Returns true if the trait object wraps an object of type …","","","","Iterates over all of schedule’s stages and their labels, …","","","Runs the stage; this happens once per update. Implementors …","","","","Executes each Stage contained in the schedule, one at a …","Fetches the Stage of type T marked with label, then …","","","","","","","","","","","","","","","","A color in the ACES 2065-1 color space.","A color in the ACES 2065-1 color space.","A color in the ACEScc color space.","A color in the ACEScc color space.","A color in the ACEScct color space.","A color in the ACEScct color space.","A color in the ACEScg color space.","A color in the ACEScg color space.","A color with an alpha component.","A color in the BT.2020 color space.","A color in the BT.2020 color space.","A color in the BT.2100 color space.","A color in the BT.2100 color space.","A color in the CIE L*C*h° color space.","A color in the CIE L*C*h° color space.","A color in the CIE L*a*b* color space.","A color in the CIE L*a*b* color space.","A color in the CIE XYZ color space.","A color in the CIE XYZ color space.","","A trait that should be implemented by provider crates on …","A trait used to simpify the interface of the Alpha and …","","A color in the DCI-P3 (aka P3 DCI and P3 D60) color space.","A color in the DCI-P3 (aka P3 DCI and P3 D60) color space.","A color in the X’Y’Z’ color space, a DCI …","A color in the X’Y’Z’ color space, a DCI …","A color in the Display P3 (aka P3 D65) color space.","A color in the Display P3 (aka P3 D65) color space.","A color in the encoded BT.2020 color space.","A color in the encoded BT.2020 color space.","A color in the encoded BT.2100 color space with HLG …","A color in the encoded BT.2100 color space with HLG …","A color in the encoded BT.2100 color space with PQ …","A color in the encoded BT.2100 color space with PQ …","A color in the Display P3 (aka P3 D65) color space.","A color in the Display P3 (aka P3 D65) color space.","A color in the encoded Rec.709/BT.709 color space.","A color in the encoded Rec.709/BT.709 color space.","A color in the encoded sRGB color space.","A color in the encoded sRGB color space.","A color in a generic color space that can be represented …","A color in a generic color space that can be represented …","A color in a generic color space that can be represented …","A color in a generic color space that can be represented …","A color in the HSL color space.","A color in the HSL color space.","A color in the HSV color space.","A color in the HSV color space.","A color in the ICtCp color space with HLG (Hybrid …","A color in the ICtCp color space with HLG (Hybrid …","A color in the ICtCp color space with PQ (Perceptual …","A color in the ICtCp color space with PQ (Perceptual …","A color in the linear (decoded) sRGB color space.","A color in the linear (decoded) sRGB color space.","A single-channel CIE luma (non-linear transform from …","A single-channel CIE luma (non-linear transform from …","A single-channel CIE luminance.","A single-channel CIE luminance.","","A color in the Oklab color space.","A color in the Oklab color space.","A color in the Oklch color space (a transformation from …","A color in the Oklch color space (a transformation from …","A premultiplied color with an alpha component.","A color in the Rec.709/BT.709 color space.","A color in the Rec.709/BT.709 color space.","","An enum with a variant for each of the color spaces …","Stores the style for a multi-layered map.","A color in the YCbCr color space. See discussion of the …","A color in the YCbCr color space. See discussion of the …","A color in the YCxCz (also called YyCxCz) color space, …","A color in the YCxCz (also called YyCxCz) color space, …","A color in the YPbPr color space. See discussion of the …","A color in the YPbPr color space. See discussion of the …","A color in the Y’CbCr color space. See discussion of the …","A color in the Y’CbCr color space. See discussion of the …","A color in the Y’PbPr color space. See discussion of the …","A color in the Y’PbPr color space. See discussion of the …","A color in the YUV color space. See discussion of the …","A color in the YUV color space. See discussion of the …","The a component, representing green-red chroma difference.","The a component, representing green-red chroma difference.","The alpha component.","The alpha component.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The blue component.","The blue component.","The blue component.","The blue component.","The blue component.","The blue component.","The blue component.","The blue component.","The blue component.","The blue component.","The blue component.","The blue component.","The blue component.","The blue component.","The blue component.","The blue component.","The b component, representing blue-yellow chroma …","The b component, representing blue-yellow chroma …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The C (chroma) component. Varies from 0 to a hue dependent …","The C (chroma) component. Varies from 0 to a hue dependent …","The Cb (chroma-blue/yellow) component.","The Cb (chroma-blue/yellow) component.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The contained color, which is completely separate from the …","The contained color, which has been premultiplied with …","The Cp (chroma-protan) component.","The Cp (chroma-protan) component.","The Cr (chroma-red/green) component.","The Cr (chroma-red/green) component.","The Ct (chroma-tritan) component.","The Ct (chroma-tritan) component.","The Cx (chroma difference blue/yellow) component","The Cz (chroma difference red/green) component","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","","","","Returns the argument unchanged.","","Returns the argument unchanged.","","","Returns the argument unchanged.","","","","","","","Returns the argument unchanged.","","","Returns the argument unchanged.","","Returns the argument unchanged.","","","","","Returns the argument unchanged.","","","","","","Returns the argument unchanged.","","Returns the argument unchanged.","","","","","Returns the argument unchanged.","","","","Returns the argument unchanged.","","","","","Returns the argument unchanged.","","","Returns the argument unchanged.","","","","","Returns the argument unchanged.","","Returns the argument unchanged.","","","","Returns the argument unchanged.","","","","","Returns the argument unchanged.","","","","","Returns the argument unchanged.","","Returns the argument unchanged.","","","","Returns the argument unchanged.","","","Returns the argument unchanged.","","","","","","","Returns the argument unchanged.","","","Returns the argument unchanged.","","","Returns the argument unchanged.","","","","","Returns the argument unchanged.","","Returns the argument unchanged.","","","","Returns the argument unchanged.","","","","","","","Returns the argument unchanged.","","Returns the argument unchanged.","","","Returns the argument unchanged.","","","","","Returns the argument unchanged.","","","Returns the argument unchanged.","","","","","Returns the argument unchanged.","","","","","Returns the argument unchanged.","","","","Returns the argument unchanged.","","","","Returns the argument unchanged.","","Convert self into its canonical cint type.","The green component.","The green component.","The green component.","The green component.","The green component.","The green component.","The green component.","The green component.","The green component.","The green component.","The green component.","The green component.","The green component.","The green component.","The green component.","The green component.","The h (hue) component. Varies from -PI to PI.","The h (hue) component. Varies from -PI to PI.","The H (hue) component. Varies from 0 to 1.","The H (hue) component. Varies from 0 to 1.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The I (intensity) component.","The I (intensity) component.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Calls U::from(self).","","","","","","","","","","","","","","","","","","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","Calls U::from(self).","","Calls U::from(self).","","Calls U::from(self).","Calls U::from(self).","","","Calls U::from(self).","Calls U::from(self).","","Calls U::from(self).","","","Calls U::from(self).","Calls U::from(self).","","Calls U::from(self).","","","Calls U::from(self).","Calls U::from(self).","","Calls U::from(self).","","Calls U::from(self).","","Calls U::from(self).","","","Calls U::from(self).","","Calls U::from(self).","","Calls U::from(self).","Calls U::from(self).","","","Calls U::from(self).","Calls U::from(self).","","Calls U::from(self).","","","Calls U::from(self).","Calls U::from(self).","","","Calls U::from(self).","","Calls U::from(self).","Calls U::from(self).","","","Calls U::from(self).","","Calls U::from(self).","Calls U::from(self).","","","Calls U::from(self).","","Calls U::from(self).","Calls U::from(self).","","","Calls U::from(self).","Calls U::from(self).","","Calls U::from(self).","","","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Create a Self from its canonical cint type.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","CIE luminance.","CIE luminance.","The L (lightness) component. Varies from 0 to 100.","The L (lightness) component. Varies from 0 to 100.","The L (lightness) component. Varies from 0 to 1","The L (lightness) component. Varies from 0 to 1.","The L (lightness) component. Varies from 0 to 1.","Vector tile layer drawing utilities.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The Pb (chroma-blue/yellow) component.","The Pb (chroma-blue/yellow) component.","","The Pr (chroma-red/green) component.","The Pr (chroma-red/green) component.","The red component.","The red component.","The red component.","The red component.","The red component.","The red component.","The red component.","The red component.","The red component.","The red component.","The red component.","The red component.","The red component.","The red component.","The red component.","The red component.","Raster tile layer description","The S (saturation) component. Varies from 0 to 1.","The S (saturation) component. Varies from 0 to 1.","Vector tile data utilities.","","Default vector tile styles configuration.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The U (chroma-blue/yellow) component.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The V (value) component. Varies from 0 to 1.","The V (chroma-red/green) component.","","The first component.","The first component.","The X’ component.","The X component.","The second component.","The Y’ component.","The Y component.","The Y (luminance) component.","The Y’ (luma) component.","The Y (luminance) component.","The Y’ (luma) component.","The Y (luminance) component.","The Yy (luminance) component.","The third component.","The Z’ component.","The Z component.","","","","","","The different types of paints.","","","","Stores all the styles for a specific layer.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Tiles can be positioned using either the xyz coordinates …","String url to a JSON tile.","String url to a tile.","","Source properties for tiles or rasters.","","","","","","","","String which contains attribution information for the used …","","","","","","","The bounds in which tiles are available.","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","Max zoom level at which tiles are available.","Min zoom level at which tiles are available.","","","","","Array of URLs which can contain place holders like {x}, …","","","","","","","","","","","","","","","","Stores the style for a multi-layered map.","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns a boxed object from a boxed trait object if the …","","Returns a mutable reference to the object within the trait …","Returns an Rc-ed object from an Rc-ed trait object if the …","Returns a reference to the object within the trait object …","","Returns the argument unchanged.","","","","","","","","Calls U::from(self).","","","Returns true if the trait object wraps an object of type …","","","","","","","","","","","","A convenience type alias for a boxed System trait object.","","An system that can be added to a Schedule","","","","","","","Returns the argument unchanged.","","Calls U::from(self).","","","","","","Returns the system’s name.","","","","","","","","","","Conversion trait to turn something into a System.","","","","","","","Returns the argument unchanged.","","Calls U::from(self).","","","","Turns this value into its corresponding System.","","","","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","A component is data associated with an Entity. Each entity …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns a boxed object from a boxed trait object if the …","","","","","","Returns a mutable reference to the object within the trait …","Returns an Rc-ed object from an Rc-ed trait object if the …","Returns a reference to the object within the trait object …","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","Returns true if the trait object wraps an object of type …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self).","","","","","","","","","","","","Vertex buffers index data type.","Vertex buffer which includes additional padding to fulfill …","Constructor for Fill and Stroke vertices.","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","Tessellator implementation.","","Build tessellations with vectors.","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","Features are described in section 4.2 of the specification","GeomType is described in section 4.3.4 of the specification","Layers are described in section 4.1 of the specification","","","","","Variant type encoding The use of values is described in …","","","","","","","","","","","String value of the enum field names used in the ProtoBuf …","Returns the value of bool_value, or the default value if …","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the value of double_value, or the default value if …","","","","","","","","","","","","","","","","","","Returns the value of extent, or the default value if extent…","Although this is an “optional” field it is required by …","The actual features in this tile.","Returns the value of float_value, or the default value if …","","","","","","Returns the argument unchanged.","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Converts an i32 to a GeomType, or None if value is not a …","Creates an enum from field names used in the ProtoBuf …","Contains a stream of commands and parameters (vertices). A …","","Returns the value of id, or the default value if id is …","","Returns the value of int_value, or the default value if …","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","Returns true if value is a variant of GeomType.","","","","","Dictionary encoding for keys","","","","","Sets type to the provided enum value.","Returns the value of sint_value, or the default value if …","","Returns the value of string_value, or the default value if …","Exactly one of these values must be present in a valid …","Tags of this feature are encoded as repeated pairs of …","","","","","","","","","","","","","","","","Returns the enum value of type, or the default if the …","The type of geometry stored in this feature.","","","","","Returns the value of uint_value, or the default value if …","","","","","","Dictionary encoding for values","Any compliant implementation must first read the version …","","","Measures the frames per second.","","","","","","","","","","","","","Returns the argument unchanged.","","","Calls U::from(self).","","","","","Traits used by label implementations","","This method tests for self and other values to be …","","","","","","","","","Measures the frames per second.","","","","","","","","Returns the argument unchanged.","Calls U::from(self).","","","","","","","","","","","","","Returns coordinates for tiles within bavaria according to …","","","","","","","A two-dimensional AABB, aka a rectangle.","A three-dimensional AABB, aka a rectangular prism.","A wrapper type that enables ordering floats. This is a …","A 3-dimensional plane formed from the equation: …","","","","","","","","","","","","","","","","","","","","","","Plane distance value","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Construct a plane from a point and a normal vector. The …","Constructs a plane that passes through the the three …","","Returns unsorted intersection points with an Aabb3 Adopted …","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","Maximum point of the AABB","Maximum point of the AABB","","Minimum point of the AABB","Minimum point of the AABB","Plane normal","Construct a plane from a normal vector and a scalar …","Construct a new axis-aligned bounding box from two points.","Construct a new axis-aligned bounding box from two points.","","Compute corners.","Compute corners.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Error during processing of the pipeline","Sending of results failed","","","","","","","","A request for a tile at the given coordinates and in the …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Holds for each feature the count of indices.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Queues PhaseItems for rendering.","Specifies the instructions which are going to be sent to …","Requests tiles which are currently in view","","Prepares GPU-owned resources by initializing them if they …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Uploads data to the GPU which is needed for rendering.","","","","","","","Returns the argument unchanged.","Calls U::from(self).","","","","","","","","","","","","","","","Error during processing of the pipeline","Sending of results failed","A request for a tile at the given coordinates and in the …","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self).","","","","","","","","","","","","","A ring-buffer like pool of buffers.","","","This is inspired by the memory pool in Vulkan documented …","","","","","","","","","","","","The VertexBuffers can contain padding elements. Not …","Allocates","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","","","","","The internal structure which is used for storage","The size of the inner buffer","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Holds for each feature the count of indices.","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","Calls U::from(self).","Calls U::from(self).","","","Calls U::from(self).","Calls U::from(self).","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Stores the camera configuration.","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self).","","","","","","","","","","","","","","","","","","Window which references a physical RawWindow. This is only …","Window of a certain WindowSize. This can either be a …","","A configuration for a window which determines the …","","Window size with a width and an height in pixels.","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","","Calls U::from(self).","","","","","","","","","","","","","","","",""],"i":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,345,345,0,0,355,355,355,355,355,355,0,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,13,30,18,18,11,11,19,13,20,21,21,17,17,16,28,30,18,11,19,13,20,21,17,16,28,11,21,17,16,30,18,11,19,13,20,21,17,16,28,30,18,11,19,13,20,21,17,16,28,17,18,11,19,13,20,21,17,16,18,11,19,13,20,21,17,16,18,11,17,0,11,19,13,20,21,17,16,11,17,30,18,11,19,13,20,21,17,16,28,18,11,21,17,11,21,17,18,11,20,21,17,16,18,18,18,11,11,11,21,21,21,17,17,17,18,11,11,19,19,13,13,20,21,21,17,17,16,16,28,30,18,11,11,19,13,13,20,21,21,17,17,16,16,16,16,28,16,17,17,11,21,17,30,18,11,19,13,20,21,17,16,28,17,30,18,11,19,13,20,21,17,16,28,30,18,11,19,13,20,21,17,16,28,30,18,11,19,13,20,21,17,16,28,17,21,16,28,11,11,30,18,11,19,13,20,21,17,16,28,28,19,13,19,30,30,28,28,28,13,18,11,19,13,28,28,18,11,17,13,13,13,11,17,17,11,13,18,11,19,13,20,21,17,16,11,19,13,21,17,16,17,30,18,11,19,13,20,21,17,16,28,30,18,11,19,13,20,21,17,16,28,30,18,11,19,13,20,21,17,16,28,30,18,11,19,13,20,21,17,16,28,30,30,20,21,17,16,20,21,17,16,21,17,28,28,0,0,0,47,48,41,47,48,41,47,48,41,47,48,41,41,0,0,41,47,47,48,41,48,48,0,47,48,41,47,48,41,47,48,41,47,41,47,48,41,47,48,41,0,0,0,48,48,47,48,41,47,48,41,47,48,41,47,48,41,0,0,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,0,0,0,0,0,0,0,0,0,408,409,408,409,408,409,408,409,408,409,408,409,408,409,408,409,408,409,408,409,408,409,408,409,408,409,408,409,408,409,408,409,0,43,0,43,68,43,0,43,43,68,68,61,0,0,0,410,411,410,0,61,61,61,61,410,411,61,61,61,61,61,61,61,61,61,61,411,412,61,61,61,61,61,0,0,360,360,0,360,360,0,0,0,360,360,0,0,0,0,73,0,413,67,67,76,76,0,0,0,0,0,65,0,413,67,0,0,76,0,67,65,75,70,73,74,65,75,76,67,71,70,73,74,65,75,76,67,71,70,73,74,65,75,76,67,71,70,73,74,65,75,76,67,71,70,413,70,70,65,71,65,71,65,70,73,74,65,75,76,67,71,72,73,73,74,75,75,76,76,67,67,70,73,74,65,75,76,67,71,74,72,78,70,73,74,65,75,76,67,71,70,73,74,65,75,76,67,71,70,65,75,71,70,73,74,65,75,76,67,71,74,70,73,74,65,75,76,67,71,70,74,70,73,75,76,67,413,70,70,129,71,71,65,74,74,65,71,73,75,76,67,74,70,73,74,65,75,76,67,71,70,73,74,65,75,76,67,71,70,73,74,65,75,76,67,71,70,73,74,65,75,76,67,71,414,414,0,0,0,0,86,95,86,95,0,90,95,79,80,86,90,95,79,80,86,90,95,79,80,86,90,95,79,80,86,80,79,80,86,80,86,80,79,79,90,79,80,90,95,79,80,86,80,80,79,79,80,86,90,95,79,80,86,80,80,79,79,79,79,79,90,90,90,95,79,80,86,90,95,79,80,86,90,95,79,80,86,90,95,79,80,86,90,95,79,80,86,79,79,79,79,79,79,79,90,79,79,79,95,79,79,79,80,79,79,79,90,80,86,90,95,79,80,86,90,95,79,80,86,90,95,79,80,86,90,95,79,80,86,79,415,416,0,97,0,0,97,100,97,100,97,100,97,100,97,100,97,97,97,100,97,100,97,100,97,100,100,97,100,97,97,69,100,97,100,97,100,97,100,97,100,97,0,0,0,0,0,102,106,60,102,106,60,102,106,60,102,106,60,102,60,102,60,102,106,60,101,102,60,106,106,102,106,106,106,60,60,102,102,106,60,102,106,60,102,60,102,106,60,102,106,60,102,60,106,106,102,60,106,102,106,60,102,106,60,102,106,60,102,106,60,105,0,0,105,0,110,111,105,110,111,105,110,111,105,110,111,105,110,111,105,110,111,105,110,111,110,111,105,110,111,110,111,105,110,111,105,110,111,105,110,111,105,110,111,105,110,111,105,110,111,105,111,110,111,110,111,105,110,111,105,110,111,105,110,111,105,110,111,105,110,111,0,0,44,44,112,44,112,44,112,44,112,44,112,112,112,44,112,44,112,112,44,112,44,112,44,112,44,112,44,112,44,44,112,112,44,44,112,44,44,44,112,44,112,44,112,44,112,112,112,112,112,0,113,0,0,417,417,113,113,113,417,63,113,417,63,113,417,63,113,417,63,113,63,63,417,63,113,113,113,417,63,113,63,417,63,113,417,63,113,113,417,63,113,63,417,63,113,63,63,63,63,63,113,63,63,63,113,417,63,113,417,63,113,417,63,113,417,63,113,63,63,63,418,418,0,0,0,0,0,0,0,0,118,0,117,117,117,117,117,117,117,0,117,117,117,117,117,0,0,117,0,117,117,117,117,0,118,118,118,118,118,118,118,118,118,118,118,118,118,118,118,118,118,118,118,118,118,0,119,119,119,119,119,119,119,119,119,119,119,119,119,119,119,119,119,119,0,0,116,419,0,0,0,120,0,120,419,0,0,0,0,0,121,124,125,419,123,121,124,125,419,123,121,124,125,419,123,121,124,125,419,123,121,420,421,420,421,124,125,121,123,121,124,125,419,123,121,124,125,419,123,124,121,124,125,419,123,121,124,125,419,123,121,124,125,419,123,121,124,125,419,123,121,124,125,419,123,123,420,421,0,0,0,0,0,0,0,124,125,420,421,0,121,124,125,419,123,121,124,125,419,123,121,124,125,419,123,121,124,125,419,123,0,0,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,0,0,128,0,131,130,128,131,130,128,131,130,128,131,130,128,130,131,131,130,128,128,128,131,130,128,131,130,128,131,130,128,131,130,131,130,128,131,130,128,130,130,130,0,128,128,131,130,128,131,130,128,131,130,128,131,130,128,0,0,0,0,0,422,423,424,422,423,424,422,423,424,422,423,424,422,423,424,422,423,424,422,423,424,422,423,424,422,423,424,422,423,424,422,423,424,422,423,424,422,423,424,422,423,424,422,423,424,422,423,424,0,134,134,134,134,134,0,134,134,134,134,134,134,134,134,134,134,134,134,134,134,0,0,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,0,0,0,0,0,146,120,0,146,120,0,0,144,145,146,146,147,144,145,146,147,146,144,145,146,147,144,145,146,147,420,421,144,145,146,147,146,147,420,421,144,145,144,145,144,145,146,147,146,146,146,146,146,146,144,145,146,144,145,146,147,146,144,144,144,145,145,146,147,144,145,146,147,144,145,146,147,144,145,146,147,144,145,146,147,144,420,421,144,145,420,421,144,145,146,147,144,145,146,147,144,145,146,147,144,145,146,147,144,145,146,147,0,0,151,151,0,0,151,151,151,151,0,0,0,0,0,153,55,153,152,151,151,150,55,153,152,151,150,151,55,153,152,151,150,55,153,152,151,150,150,0,0,151,151,150,55,152,153,153,55,153,152,151,150,0,151,151,151,151,151,151,0,0,151,55,153,152,151,150,0,0,151,153,153,153,153,55,153,152,151,150,55,153,152,151,150,55,153,152,151,150,55,153,152,151,150,55,153,152,151,150,0,0,55,55,153,153,55,0,153,0,55,153,153,0,153,0,153,0,153,55,153,55,0,0,151,55,153,152,151,150,55,153,152,151,150,55,153,152,151,150,55,153,152,151,150,153,164,0,164,0,0,164,0,164,163,165,115,164,163,165,115,164,163,165,115,164,163,165,115,115,115,115,164,115,164,163,165,115,164,163,165,115,163,164,163,165,115,164,163,165,115,164,163,165,115,164,163,165,115,164,164,163,165,115,115,165,163,115,115,164,163,165,115,164,163,165,115,164,163,165,115,164,164,163,165,115,163,115,115,115,0,0,0,0,0,0,0,0,0,174,172,168,169,167,174,172,168,169,167,174,172,168,169,167,174,172,168,169,167,168,167,167,167,167,167,167,167,168,174,172,172,168,169,169,167,169,167,168,174,172,168,169,167,167,167,174,172,168,169,167,174,172,168,169,167,174,172,168,169,167,174,172,168,169,167,169,174,172,168,169,167,167,167,167,168,167,167,167,167,167,167,174,169,168,167,167,167,169,167,174,172,168,169,167,174,172,168,169,167,174,172,168,169,167,174,172,168,169,167,167,167,167,167,167,167,167,167,168,168,0,0,0,0,158,158,0,158,158,158,158,158,158,158,158,158,158,158,158,158,158,158,158,158,158,158,158,158,158,158,158,158,158,158,182,0,0,180,180,180,180,180,180,180,180,180,180,182,180,180,180,180,180,180,180,180,180,180,180,180,180,188,203,195,0,177,177,0,0,0,195,0,198,187,0,56,177,177,177,184,185,183,177,184,185,183,183,198,187,0,194,0,177,0,0,0,0,56,0,0,0,0,0,0,56,188,203,194,0,0,0,0,0,183,188,203,177,177,177,177,177,177,177,177,54,0,46,54,177,177,0,193,177,177,177,177,177,177,177,0,53,193,201,201,46,193,186,53,200,177,177,177,177,177,186,193,51,0,53,193,46,0,46,201,193,53,177,197,53,51,192,46,177,177,177,177,193,177,425,425,426,425,425,426,427,427,427,428,428,428,429,429,430,431,430,432,431,431,429,429,432,433,433,434,433,433,434,433,434,0,184,185,183,184,185,183,183,0,0,0,0,183,186,53,183,183,184,184,185,185,186,53,183,184,185,186,53,183,184,185,186,53,183,184,185,186,53,183,184,185,183,184,185,183,184,185,183,183,183,184,184,184,185,185,185,53,183,183,184,184,185,185,186,53,183,184,185,53,53,53,53,53,53,53,186,53,186,53,183,184,185,186,53,183,184,185,183,184,185,186,53,183,184,185,186,53,183,184,185,186,53,53,53,53,183,184,185,53,53,53,183,184,185,186,53,183,184,185,186,53,183,184,185,186,53,183,184,185,186,53,183,184,185,427,427,427,428,428,428,433,433,434,433,433,434,433,434,195,0,0,195,194,194,194,194,195,195,194,195,194,195,194,195,194,194,194,195,194,195,194,195,194,194,194,195,195,195,194,194,195,194,194,194,195,194,195,194,195,194,195,194,195,194,194,195,194,195,194,195,194,195,425,425,426,425,425,426,0,46,0,46,46,46,46,200,46,200,46,200,46,200,46,46,46,200,46,46,200,46,46,46,46,46,46,46,46,46,200,46,46,200,200,46,200,46,200,46,200,46,200,46,46,46,46,46,46,46,46,46,200,46,46,46,46,200,46,46,200,46,200,46,200,46,200,46,46,46,0,0,198,56,198,0,0,0,0,0,56,0,56,201,201,54,193,202,196,196,56,56,201,198,198,54,193,202,196,56,201,198,196,54,193,202,196,56,201,198,54,193,202,196,56,201,198,196,198,196,198,196,54,54,54,197,193,202,196,56,201,198,197,197,197,196,56,198,196,193,196,56,198,196,196,196,56,56,56,198,198,198,193,196,56,56,201,198,54,193,202,196,56,56,56,56,201,198,198,198,198,198,201,201,201,201,196,201,193,201,197,197,201,201,193,54,193,202,196,56,201,198,54,193,202,196,56,201,198,54,193,202,196,56,201,198,54,193,202,196,56,201,198,197,54,193,202,196,56,201,198,193,193,196,193,193,193,197,197,201,201,193,196,56,201,201,197,202,56,196,198,56,54,193,202,196,56,201,198,54,193,202,196,56,201,198,54,193,202,196,56,201,198,193,54,193,202,196,56,201,198,197,197,193,193,188,203,187,187,188,203,0,0,0,0,0,188,203,188,203,203,187,187,51,192,188,203,187,51,192,188,203,187,51,192,188,203,187,51,192,188,203,187,51,188,203,187,51,192,188,203,187,51,192,203,187,203,187,203,203,203,187,187,187,188,203,203,187,51,192,188,188,188,188,203,187,187,187,187,187,187,51,192,192,192,192,192,188,203,187,51,192,188,203,187,51,192,203,187,51,192,188,203,187,51,192,192,188,203,187,51,192,192,192,51,51,188,51,192,188,203,187,51,203,188,203,187,51,192,188,203,187,51,192,188,203,187,51,192,188,203,187,51,192,205,205,205,205,0,0,435,205,435,205,435,205,435,205,435,205,205,205,435,205,205,435,205,435,205,435,205,435,205,435,205,205,435,435,205,205,435,205,435,205,435,205,435,205,436,436,437,436,438,437,436,438,437,438,0,0,0,0,0,0,206,207,206,207,206,207,206,207,206,207,206,207,206,206,207,206,207,206,207,206,207,206,207,206,206,207,206,207,206,207,206,207,206,207,206,0,0,0,439,440,439,440,439,440,439,440,439,440,439,440,439,440,439,440,439,440,439,440,439,440,439,440,439,440,439,440,439,440,439,440,0,0,59,0,0,0,0,0,57,59,0,209,209,132,208,209,132,208,209,132,208,209,132,208,209,209,209,132,208,0,49,57,132,208,132,208,209,132,208,132,209,132,208,209,132,208,209,209,132,208,209,209,132,208,209,211,211,210,209,209,57,132,208,132,208,132,132,209,132,208,209,132,208,209,132,208,209,132,208,0,0,59,0,0,0,57,59,59,211,59,211,59,211,59,211,59,211,49,211,57,59,211,59,211,59,211,59,211,59,211,59,211,211,211,211,210,0,57,59,211,59,211,59,211,59,211,0,0,0,0,0,221,221,0,0,0,0,191,0,0,191,0,0,0,0,0,215,215,0,214,441,217,226,212,226,442,216,217,212,226,160,223,214,212,212,226,212,226,441,223,58,0,218,212,226,226,0,218,160,137,216,217,215,0,218,216,0,441,137,218,441,218,0,0,223,226,212,226,137,223,226,267,443,443,0,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,0,0,212,212,212,212,212,442,212,212,212,212,212,212,212,212,212,212,212,212,212,212,212,212,212,212,0,0,0,215,215,216,216,217,215,216,217,215,215,216,217,215,216,217,217,215,216,217,215,216,217,215,216,217,216,216,217,216,216,216,216,215,216,217,215,216,217,215,216,217,215,216,217,215,216,217,215,216,217,215,216,217,216,217,215,216,215,216,217,215,216,217,215,216,217,215,216,217,215,216,217,0,0,0,221,221,0,0,223,218,441,221,160,223,218,441,221,160,223,218,441,221,160,223,218,441,221,160,441,218,160,223,218,441,221,160,223,218,441,221,160,160,160,218,160,160,160,223,223,218,441,221,160,223,218,441,221,160,223,218,441,221,160,223,218,441,221,160,160,223,218,441,221,160,223,441,223,218,160,160,218,160,218,160,218,160,218,218,160,441,218,441,218,223,218,441,221,160,223,218,441,221,160,223,218,441,221,160,223,223,218,441,221,160,223,191,0,0,191,137,191,137,191,137,191,137,191,191,137,191,191,137,191,191,191,137,137,191,137,191,137,191,137,191,137,191,137,137,191,137,137,191,137,191,137,191,137,191,137,443,443,0,226,226,226,226,226,226,226,226,226,226,226,226,226,226,226,226,226,226,226,226,226,226,226,226,226,226,226,0,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,234,234,139,233,234,0,139,139,139,139,139,139,139,139,139,139,139,139,139,139,139,139,234,234,234,234,233,233,139,139,139,139,139,139,139,139,139,139,139,139,139,139,139,0,233,238,238,237,234,0,237,234,233,234,234,234,0,237,234,234,234,234,233,234,0,139,139,139,139,139,139,139,139,139,139,139,139,234,0,139,139,139,139,139,139,139,139,139,139,139,139,139,139,139,139,139,139,139,139,139,139,139,139,139,139,139,139,234,233,234,234,234,234,234,234,234,139,0,234,234,234,234,234,234,234,234,234,0,234,234,234,233,0,139,233,234,234,234,237,237,233,233,234,234,236,236,139,139,156,238,142,157,237,233,234,236,139,156,238,142,157,237,233,234,236,139,139,156,233,234,233,234,233,234,233,234,233,233,234,234,233,234,233,234,139,139,237,233,234,236,139,156,238,142,157,237,233,234,236,139,156,238,142,157,236,236,237,233,234,236,139,156,238,142,157,237,233,234,236,139,156,238,142,157,233,234,139,139,156,233,234,233,234,237,234,236,156,142,157,157,156,233,234,156,237,233,234,236,139,156,238,142,157,236,236,237,233,234,236,139,237,233,234,236,139,233,234,237,233,234,236,139,237,237,237,233,233,233,234,234,234,236,236,236,139,139,139,233,234,156,237,233,233,233,233,233,234,234,234,234,234,236,139,237,233,233,234,236,139,156,238,142,157,233,234,233,233,234,234,233,234,233,234,233,234,139,139,139,139,237,233,234,236,139,233,234,233,234,233,234,237,233,234,236,139,156,238,142,157,237,233,234,236,139,156,238,142,157,237,233,234,236,139,156,238,142,157,237,233,234,236,139,156,238,142,157,233,234,233,234,139,139,139,139,233,234,142,139,237,233,234,236,139,156,238,142,157,233,234,233,234,156,236,236,236,236,236,236,236,236,236,236,236,236,236,236,236,236,236,236,236,236,236,236,236,236,236,236,236,236,236,157,233,234,156,157,156,233,234,139,139,139,142,233,234,233,234,233,234,233,234,157,237,233,234,236,139,156,238,142,157,233,234,237,233,234,236,139,156,238,142,157,237,233,234,236,139,156,238,142,157,237,233,234,236,139,156,238,142,157,233,234,237,233,234,236,139,156,238,142,157,236,236,444,444,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,252,253,254,245,246,247,248,249,250,251,252,253,254,245,246,247,248,249,250,251,252,253,254,245,246,247,248,249,250,251,252,253,254,245,246,247,248,249,250,251,246,245,246,247,248,249,250,251,245,246,247,248,249,250,251,248,252,245,247,251,445,252,253,254,445,252,253,254,252,253,254,245,246,247,248,249,250,251,252,248,252,253,254,255,252,253,254,245,246,247,248,249,250,251,252,253,254,245,246,247,248,249,250,251,252,253,254,245,246,247,248,249,250,251,252,253,254,245,246,247,248,249,250,251,252,253,254,245,246,247,248,249,250,251,245,246,247,248,249,250,251,252,253,254,245,246,247,248,249,250,251,245,246,247,249,250,251,247,247,251,251,245,246,247,248,249,250,251,250,252,253,254,245,246,247,248,249,250,251,252,253,254,245,246,247,248,249,250,251,252,253,254,245,246,247,248,249,250,251,252,253,254,245,246,247,248,249,250,251,245,245,249,250,0,0,0,0,0,0,0,0,259,259,259,259,259,259,259,259,259,259,259,259,259,259,259,259,259,259,0,260,260,260,260,260,260,260,260,260,260,260,260,260,260,260,260,260,260,0,0,0,263,0,0,263,263,0,263,0,0,0,0,0,0,261,261,266,263,264,262,261,266,263,264,262,261,266,263,264,262,261,266,263,264,262,261,262,262,261,263,264,262,263,264,262,264,262,262,266,261,266,263,264,262,261,263,264,262,266,263,264,262,261,181,181,181,266,261,266,263,264,262,261,266,263,264,262,261,266,263,264,262,266,263,264,262,261,266,263,264,262,261,261,262,0,268,266,264,262,264,264,263,264,262,262,266,263,264,262,261,266,263,264,262,261,266,263,264,262,261,266,263,264,262,261,268,268,262,0,0,0,0,268,269,268,269,268,269,268,269,268,268,269,269,268,269,268,269,269,268,269,268,269,268,269,268,269,268,269,268,268,269,268,268,269,268,269,268,269,268,269,268,268,268,268,0,0,0,0,0,0,42,42,42,42,274,273,42,274,273,42,274,273,42,274,273,42,42,42,274,273,271,42,271,271,271,270,274,273,42,42,42,270,274,273,42,274,273,42,274,273,274,273,42,271,274,273,42,42,273,42,271,274,273,42,42,42,42,273,42,274,273,42,274,273,42,274,273,42,274,273,42,0,315,0,315,0,315,0,315,0,0,315,0,315,0,315,0,315,0,315,446,0,0,314,0,315,0,315,0,315,0,315,0,315,0,315,0,315,0,315,0,315,0,315,0,315,0,315,0,315,0,315,0,315,0,315,0,315,0,315,314,0,315,0,315,0,0,315,314,0,0,0,315,0,315,0,315,0,315,0,315,0,315,285,295,277,313,277,277,313,313,315,315,289,289,292,292,288,288,306,306,282,282,305,305,304,304,294,294,298,298,278,278,299,299,276,276,293,293,307,307,291,291,280,280,311,311,308,308,283,283,301,301,287,287,290,290,281,281,300,300,285,285,297,297,295,295,303,303,284,284,296,296,302,302,279,279,310,310,312,312,309,309,286,286,277,313,315,289,292,288,306,282,305,304,294,298,278,299,276,293,307,291,280,311,308,283,301,287,290,281,300,285,297,295,303,284,296,302,279,310,312,309,286,277,313,315,289,292,288,306,282,305,304,294,298,278,299,276,293,307,291,280,311,308,283,301,287,290,281,300,285,297,295,303,284,296,302,279,310,312,309,286,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,289,292,288,306,282,305,304,294,298,278,299,276,293,307,291,280,311,308,283,301,287,290,281,300,285,297,295,303,284,296,302,279,310,312,309,286,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,289,292,288,306,282,305,304,294,298,278,299,276,293,307,291,280,311,308,283,301,287,290,281,300,285,297,295,303,284,296,302,279,310,312,309,286,289,292,288,306,298,278,299,276,293,307,291,311,308,283,301,287,285,295,277,313,315,289,292,288,306,282,305,304,294,298,278,299,276,293,307,291,280,311,308,283,301,287,290,281,300,285,297,295,303,284,296,302,279,310,312,309,286,277,313,315,289,292,288,306,282,305,304,294,298,278,299,276,293,307,291,280,311,308,283,301,287,290,281,300,285,297,295,303,284,296,302,279,310,312,309,286,297,303,302,279,114,277,313,315,289,292,288,306,282,305,304,294,298,278,299,276,293,307,291,280,311,308,283,301,287,290,281,300,285,297,295,303,284,296,302,279,310,312,309,286,277,313,315,289,292,288,306,282,305,304,294,298,278,299,276,293,307,291,280,311,308,283,301,287,290,281,300,285,297,295,303,284,296,302,279,310,312,309,286,289,292,288,306,282,305,304,294,298,278,299,276,293,307,291,280,311,308,283,301,287,290,281,300,285,297,295,303,284,296,302,279,310,312,309,286,277,313,290,281,302,279,290,281,286,286,277,313,315,289,292,288,306,282,305,304,294,298,278,299,276,293,307,291,280,311,308,283,301,287,290,281,300,285,297,295,303,284,296,302,279,310,312,309,286,277,313,315,289,292,288,306,282,305,304,294,298,278,299,276,293,307,291,280,311,308,283,301,287,290,281,300,285,297,295,303,284,296,302,279,310,312,309,286,277,313,315,289,292,288,306,282,305,304,294,298,278,299,276,293,307,291,280,311,308,283,301,287,290,281,300,285,297,295,303,284,296,302,279,310,312,309,286,277,313,315,289,292,288,306,282,305,304,294,298,278,299,276,293,307,291,280,311,308,283,301,287,290,281,300,285,297,295,303,284,296,302,279,310,312,309,286,277,277,277,313,313,313,315,315,315,289,289,289,292,292,292,288,288,288,306,306,306,282,282,282,305,305,305,304,304,304,294,294,294,298,298,298,278,278,278,299,299,299,276,276,276,293,293,293,307,307,307,291,291,291,280,280,280,311,311,311,308,308,308,283,283,283,301,301,301,287,287,287,290,290,290,281,281,281,300,300,300,285,285,285,297,297,297,295,295,295,303,303,303,284,284,284,296,296,296,302,302,302,279,279,279,310,310,310,312,312,312,309,309,309,286,286,286,277,313,315,289,292,288,306,282,305,304,294,298,278,299,276,293,307,291,280,311,308,283,301,287,290,281,300,285,297,295,303,284,296,302,279,310,312,309,286,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,315,289,289,289,289,289,289,289,292,292,292,292,288,288,288,288,306,306,306,306,282,282,282,282,305,305,305,305,304,304,304,304,294,294,294,294,298,298,298,298,278,278,278,278,299,299,299,299,276,276,276,276,293,293,293,293,307,307,307,307,291,291,291,291,280,280,280,280,311,311,311,311,308,308,308,308,283,283,283,283,301,301,301,301,287,287,287,287,290,290,290,290,281,281,281,281,300,300,300,300,285,285,285,285,297,297,297,297,295,295,295,295,303,303,303,303,284,284,284,284,296,296,296,296,302,302,302,302,279,279,279,279,310,310,310,310,312,312,312,312,309,309,309,309,286,286,286,286,446,289,292,288,306,298,278,299,276,293,307,291,311,308,283,301,287,297,303,284,296,277,313,315,289,292,288,306,282,305,304,294,298,278,299,276,293,307,291,280,311,308,283,301,287,290,281,300,285,297,295,303,284,296,302,279,310,312,309,286,290,281,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,277,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,313,315,289,289,292,292,288,288,306,306,282,282,305,305,304,304,294,294,298,298,278,278,299,299,276,276,293,293,307,307,291,291,280,280,311,311,308,308,283,283,301,301,287,287,290,290,281,281,300,300,285,285,297,297,295,295,303,303,284,284,296,296,302,302,279,279,310,310,312,312,309,309,286,286,277,313,315,289,292,288,306,282,305,304,294,298,278,299,276,293,307,291,280,311,308,283,301,287,290,281,300,285,297,295,303,284,296,302,279,310,312,309,286,277,313,315,289,292,288,306,282,305,304,294,298,278,299,276,293,307,291,280,311,308,283,301,287,290,281,300,285,297,295,303,284,296,302,279,310,312,309,286,277,313,315,289,292,288,306,282,305,304,294,298,278,299,276,293,307,291,280,311,308,283,301,287,290,281,300,285,297,295,303,284,296,302,279,310,312,309,286,446,277,313,315,289,292,288,306,282,305,304,294,298,278,299,276,293,307,291,280,311,308,283,301,287,290,281,300,285,297,295,303,284,296,302,279,310,312,309,286,304,294,285,297,295,303,284,0,114,114,114,315,289,292,288,306,282,305,304,294,298,278,299,276,293,307,291,280,311,308,283,301,287,290,281,300,285,297,295,303,284,296,302,279,310,312,309,286,310,312,114,310,312,289,292,288,306,298,278,299,276,293,307,291,311,308,283,301,287,0,284,296,0,114,0,277,313,315,289,292,288,306,282,305,304,294,298,278,299,276,293,307,291,280,311,308,283,301,287,290,281,300,285,297,295,303,284,296,302,279,310,312,309,286,277,313,315,289,292,288,306,282,305,304,294,298,278,299,276,293,307,291,280,311,308,283,301,287,290,281,300,285,297,295,303,284,296,302,279,310,312,309,286,277,313,315,289,292,288,306,282,305,304,294,298,278,299,276,293,307,291,280,311,308,283,301,287,290,281,300,285,297,295,303,284,296,302,279,310,312,309,286,277,313,315,289,292,288,306,282,305,304,294,298,278,299,276,293,307,291,280,311,308,283,301,287,290,281,300,285,297,295,303,284,296,302,279,310,312,309,286,309,277,313,315,289,292,288,306,282,305,304,294,298,278,299,276,293,307,291,280,311,308,283,301,287,290,281,300,285,297,295,303,284,296,302,279,310,312,309,286,296,309,114,282,305,280,300,282,280,300,302,279,310,312,309,286,282,280,300,114,323,0,323,0,0,323,0,323,0,320,321,322,323,324,320,321,322,323,324,320,320,321,322,323,324,320,321,322,323,324,320,321,322,323,324,320,321,322,323,324,324,320,321,322,323,324,320,321,322,323,324,321,320,321,322,323,324,320,321,322,323,324,323,324,324,320,321,322,323,324,320,321,322,323,324,320,321,322,323,324,320,321,322,323,324,320,321,322,323,324,322,324,324,324,324,320,321,322,323,324,324,324,320,321,322,323,324,320,321,322,323,324,320,321,322,323,324,320,321,322,323,324,320,321,322,323,324,325,325,0,0,325,326,325,326,325,326,325,326,325,326,325,326,326,325,326,325,326,325,326,325,326,325,326,325,326,325,326,325,326,325,326,326,326,326,326,326,326,326,326,325,326,325,326,325,326,325,326,325,326,325,326,328,0,32,0,0,0,328,0,32,32,327,328,32,327,328,327,32,327,328,32,327,328,327,32,327,328,32,327,328,32,32,327,328,32,327,328,32,327,328,32,327,328,32,327,328,32,327,328,32,327,328,32,327,328,32,327,328,327,327,327,32,327,328,327,32,327,328,32,327,328,32,327,328,32,327,328,32,327,328,0,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,0,0,0,330,331,330,331,330,331,330,331,329,330,329,330,331,330,331,330,331,330,331,330,331,330,331,330,331,330,331,331,0,330,0,0,330,331,330,331,330,331,330,331,0,265,447,0,0,0,0,0,265,447,332,332,332,332,332,333,332,333,333,333,332,332,332,332,332,0,332,332,332,332,332,332,333,332,265,332,447,332,448,332,332,332,332,332,0,0,0,0,335,335,335,335,335,335,0,335,335,335,272,335,335,336,335,336,0,335,335,335,335,335,0,0,449,337,337,337,337,337,337,337,337,337,337,337,449,337,337,337,337,337,337,337,0,338,338,338,338,338,338,338,338,338,338,338,338,338,338,338,338,338,338,338,0,0,0,0,0,450,451,0,450,451,0,0,0,0,344,341,339,149,342,344,341,339,149,342,344,341,339,149,342,344,341,339,149,342,149,339,339,340,341,149,339,340,341,149,342,343,344,341,339,149,342,343,343,343,149,339,344,341,339,149,342,149,344,344,341,339,149,342,344,341,339,149,342,341,339,342,344,341,339,149,342,343,344,341,339,149,342,342,450,149,451,149,452,149,341,344,344,149,339,344,341,339,149,342,344,341,339,149,342,344,341,339,149,342,344,341,339,149,342,0,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,0,0,0,0,0,453,453,348,345,348,345,348,345,348,345,345,345,345,348,345,345,348,345,345,345,348,345,348,345,348,345,348,345,348,345,348,348,345,348,345,348,345,348,345,348,345,345,0,0,0,355,355,355,355,355,355,355,355,355,355,355,355,355,355,355,355,355,355,355,355,355,355,355,355,355,355,355,355,355,355,355,355,355,355,355,355,355,355,355,0,0,0,357,357,357,357,0,358,359,360,357,357,358,359,360,357,357,357,358,358,358,359,360,357,358,359,360,357,358,359,360,358,359,360,357,358,359,360,357,357,358,359,360,357,358,358,358,359,360,357,357,357,358,359,360,358,359,360,357,357,357,357,360,360,360,358,358,358,359,360,357,358,358,359,360,357,357,357,359,357,359,359,358,358,358,359,360,357,358,359,360,357,358,359,360,357,358,359,360,357,357,358,359,360,357,360,360,357,360,359,359,358,358,358,358,359,359,359,359,358,359,360,357,358,359,360,357,358,359,360,357,359,359,358,359,360,357,358,358,358,359,360,357,360,360,0,367,0,0,366,366,366,366,366,366,366,366,366,0,368,366,0,366,366,366,366,366,366,0,0,367,366,368,366,366,366,366,366,366,0,368,368,368,368,368,368,368,368,368,368,368,368,368,368,368,368,368,368,368,368,0,0,0,0,14,454,14,454,0,0,0,0,372,35,374,370,370,372,35,374,370,372,35,374,370,372,35,374,370,0,370,370,370,372,0,0,0,372,35,374,370,370,370,370,370,370,372,35,374,370,372,35,374,370,372,372,372,372,372,372,35,374,370,372,35,374,370,372,35,374,370,372,35,374,370,372,35,374,370,0,35,374,0,35,374,372,372,35,374,370,35,374,370,372,35,374,370,372,35,374,370,372,35,374,370,372,35,374,370,455,0,0,0,376,0,376,0,376,455,0,0,0,385,385,0,376,0,0,0,0,0,0,0,0,382,377,387,386,455,380,381,382,377,387,386,455,380,381,382,377,387,386,455,380,381,382,377,387,386,455,380,381,387,377,456,457,458,459,384,456,457,458,459,383,387,386,377,380,381,382,381,382,377,387,386,455,380,381,387,382,377,387,386,455,380,381,380,382,377,387,386,455,380,381,382,377,387,386,455,380,381,382,377,387,386,455,380,381,382,377,387,386,455,380,381,458,382,377,387,386,455,380,381,457,383,381,456,457,458,459,384,0,0,0,0,0,0,0,0,387,386,457,458,459,0,382,377,387,386,455,380,381,382,377,387,386,455,380,381,382,377,387,386,455,380,381,382,377,387,386,455,380,381,0,0,388,388,388,388,388,388,388,388,388,388,388,388,388,388,388,388,388,388,388,0,0,385,385,0,383,384,385,383,384,385,383,384,385,383,384,385,384,383,383,384,385,385,385,383,384,385,383,384,385,383,384,385,383,384,383,384,385,383,384,385,384,384,384,383,384,384,0,385,384,384,385,383,384,385,383,384,385,383,384,385,383,384,385,0,0,0,0,460,461,460,461,460,461,460,461,460,461,460,461,460,461,460,461,460,461,460,461,460,461,460,461,460,461,460,461,460,461,460,461,0,389,389,389,389,389,0,389,389,389,389,389,389,389,389,389,389,389,389,389,389,0,0,0,0,0,393,0,0,393,0,393,0,0,0,393,390,390,390,393,394,392,395,391,390,393,394,392,395,391,391,390,393,394,392,395,391,390,393,394,392,395,391,392,392,392,392,390,391,393,392,393,392,392,391,390,393,394,392,395,391,390,390,392,391,390,393,394,392,395,391,390,393,394,392,395,391,390,391,391,390,390,390,390,390,390,392,392,394,394,390,393,394,392,395,391,390,393,394,392,395,391,390,393,394,392,395,391,390,393,394,392,395,391,390,393,394,392,395,391,391,390,392,395,391,391,390,390,394,391,390,390,390,390,390,391,391,392,393,392,391,390,393,394,392,395,391,390,393,394,392,395,391,394,390,393,394,392,395,391,390,393,394,392,395,391,390,390,392,390,390,392,0,0,0,0,0,0,0,402,376,0,402,376,0,402,376,0,402,376,0,0,398,399,400,402,402,401,403,398,399,400,402,401,403,402,398,399,400,402,401,403,398,399,400,402,401,403,401,456,457,458,459,398,399,400,401,402,401,403,402,401,403,456,457,458,459,398,399,400,401,398,399,400,401,398,399,400,402,401,403,402,402,402,402,402,402,401,398,399,400,402,401,398,399,400,402,401,403,402,400,398,398,399,399,400,400,402,401,401,403,398,399,400,402,401,403,398,399,400,402,401,403,398,399,400,402,401,403,458,401,398,399,400,402,401,403,401,457,399,399,456,457,458,459,398,399,400,401,457,458,399,401,402,401,403,459,400,398,399,400,402,401,403,398,399,400,402,401,403,398,399,400,402,401,403,398,399,400,402,401,403,0,0,0,0,405,405,405,405,405,405,405,405,405,405,405,405,405,405,405,405,405,405,405,405,405,405,405,405,405,405,405,405,405,405,0,0,462,0,155,0,222,222,222,222,222,222,222,462,222,222,222,222,222,222,222,222,222,222,155,222,222,222,222,222,222,155,155,154,222,222,222,222,222,222,222,222],"f":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[4,[[4,[1]]]],[[],5],0,[[6,7,7]],0,[[],8],[[],8],[[],9],[[],10],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[11,12]],[[13,13]],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],14],[[],14],[[],14],[[15,15],16],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[17,[[10,[18]]]],[18,18],[11,11],[19,19],[13,13],[20,20],[21,21],[17,17],[16,16],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[18,18],22],[[11,11],22],[[17,17],22],[[],[[23,[7]]]],[[],11],[[],19],[[],13],[[],20],[[],21],[[],17],[[],16],[24,[[8,[11]]]],[24,[[8,[17]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[14,5],[14,5],[14,5],[14,5],[25],[25],[25],[[18,18],5],[[11,11],5],[[20,20],5],[[21,21],5],[[17,17],5],[[16,16],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[18,26],27],[[11,26],27],[[11,26],27],[[19,26],27],[[19,26],27],[[13,26],27],[[13,26],27],[[20,26],27],[[21,26],27],[[21,26],27],[[17,26],27],[[17,26],27],[[16,26],27],[[16,26],27],[[28,26],27],[[]],[[]],[12,11],[[]],[[]],[[]],[11,13],[[]],[[],21],[[]],[[]],[[],17],[[[29,[15]]],16],[[],16],[[]],[[],16],[[]],[[19,13],16],[17,[[23,[17]]]],[17,[[10,[17]]]],[[11,25]],[[21,25]],[[17,25]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[17,30],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[17,32],[[10,[21]]]],[[21,32],[[10,[17]]]],[[16,11,13],17],[[28,17],5],[11,5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[28,33],0,[13,11],0,[30,17],[30,17],0,0,0,[[13,13],5],[[[34,[11]]],18],[12,11],[[15,15],19],[15,13],[[[35,[15]],36,37,13,11],28],0,[[18,18],[[10,[22]]]],[[11,11],[[10,[22]]]],[[17,17],[[10,[22]]]],[[13,13],15],[[13,17],15],[[13,11],15],[[11,38],8],[[17,38],8],[17,12],[[11,12]],[[13,13]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],39],[[],39],[[],39],[[],39],[[],39],[[],39],[[17,13],[[40,[15]]]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[30,17],[30,17],0,0,0,0,0,0,0,0,0,0,[28,11],0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[41,42,[4,[[44,[43]]]],45,46]],0,0,[[],41],[47],[[]],[[]],[[]],[48,49],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[],5],0,0,0,[48],0,[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],[6],0,[[],1],[[],1],[[]],[[]],[[]],[[]],[50,[[52,[51]]]],[[]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[[],5],[[],50],[[50,53,54,55,45],[[8,[56]]]],[[],8],[[],8],[[],9],[[],10],[[50,55]],0,0,0,0,0,[6],0,0,0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[45,57,58],59],[[45,48,58],59],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],10],[[],10],[6],0,0,0,0,0,0,0,0,[[]],[[],60],0,0,0,0,0,0,0,0,[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[61,26],27],[[61,26],27],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[[],5],[62],[[[63,[43]],[10,[64]]]],[[],[[8,[61]]]],[[],39],[[],8],[[],8],[[],9],[[],10],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[65,66],[[8,[67]]]],[[[70,[68,69]],65,[66,[68]]],[[8,[67]]]],0,[65,65],[71,71],[[]],[[]],[24,[[8,[65]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[72,72],5],[[73,26],27],[[73,26],27],[[74,26],27],[[75,26],27],[[75,26],27],[[76,26],27],[[76,26],27],[[67,26],27],[[67,26],27],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[74,72],5],[[72,25]],[[],74],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[74,3],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[69,[[70,[68,69]]]],[[72,[3,[1]]],74],0,[62],[62],[62],[62],[77],[[[70,[68,69]],77]],0,[78,[[8,[75]]]],[[71,78],[[8,[75]]]],0,[[65,38],8],[74,72],0,[[]],[[]],[[],39],[[],39],[[],39],[[],39],0,[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[79,[[81,[[80,[15]]]]]],[[[80,[[0,[82,83,84,85]]]]],[[80,[[0,[82,83,84,85]]]]]],[[[86,[[0,[82,83,84,85]]]]],[[86,[[0,[82,83,84,85]]]]]],[[]],[[]],[[[80,[[0,[82,83,84,87]]]]],5],[[79,[10,[88]]],[[8,[89]]]],[79,[[8,[89]]]],[[],90],[[],79],[[[80,[[0,[82,83,84,87]]]]]],[[]],[[]],[[]],[[]],[[]],[[[80,[[0,[82,83,84,87]]]]]],0,[[79,64],[[8,[89]]]],[[79,64],[[8,[89]]]],[[[80,[[0,[82,83,84,91]]]],26],27],[[[86,[[0,[82,83,84,91]]]],26],27],[[]],[[]],[[]],[[]],[[]],[[[92,[[0,[82,83,84,87]]]],[93,[39,39]]],[[10,[[80,[[0,[82,83,84,87]]]]]]]],[[[94,[[0,[82,83,84,87]]]],[93,[39,39]]],[[10,[[80,[[0,[82,83,84,87]]]]]]]],0,0,[79,[[8,[89]]]],[79,[[8,[89]]]],[79,[[52,[[80,[15]]]]]],0,[[90,17,95]],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[],5],[[],5],[[],5],[[79,5,37,37],[[8,[89]]]],[[79,5,37],[[8,[89]]]],[[79,37,37],[[8,[89]]]],[[79,37],[[8,[89]]]],[[79,37,37],[[8,[89]]]],[[79,37,37],[[8,[89]]]],[[79,37],[[8,[89]]]],[[],90],[[],79],[[79,37],[[8,[89]]]],[[79,37],[[8,[89]]]],[[95,20],[[52,[[80,[15]]]]]],[[79,5,37,37],[[8,[89]]]],[[79,5,37],[[8,[89]]]],0,0,[79,[[8,[89]]]],[79,[[8,[89]]]],[[79,37,88,96],[[8,[5,89]]]],[[90,16,11,13],[[10,[[52,[[80,[15]]]]]]]],[[]],[[]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],[[],10],[[],10],[[79,15,15,37],[[8,[89]]]],0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[97,26],27],[[97,26],27],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[62],[[[0,[98,99]]],[[8,[97]]]],[[100,[0,[98,99]]],[[8,[97]]]],[[],39],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],10],[[],10],0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[[102,[[0,[101,85]]]]],[[102,[[0,[101,85]]]]]],[[[60,[[0,[101,85]]]]],[[60,[[0,[101,85]]]]]],[[]],[[]],[[]],[[]],[[]],[88,[[104,[[3,[103]]]]]],[[[102,[101]],17,105],[[8,[[52,[12]],106]]]],[[[60,[101]],17,105],[[8,[[52,[12]],106]]]],[[106,26],27],[[106,26],27],[[]],[107,106],[[]],[108,106],[[]],0,0,[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[],5],[101,[[102,[101]]]],[[[102,[101]]],[[60,[101]]]],[62],[106,[[10,[109]]]],[[]],[[]],[[],39],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[110,110],[111,111],[105,105],[[]],[[]],[[]],[[],110],[[],111],[[]],[[]],[[]],0,0,[[110,17],39],[[111,17],39],[[105,17],39],[[]],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[],5],0,[[88,88],110],[[88,88,88],111],[[]],[[]],[[]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],0,0,0,0,[[[44,[43]]]],0,0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[[112,[43]]],[[44,[43]]]],[[],[[112,[43]]]],[[]],[[]],[[]],[[]],0,[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[[44,[43]]]],0,0,[[],[[112,[43]]]],[[[44,[43]]]],0,0,[[[44,[43]]],60],0,[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],10],[[],10],[[[112,[43]]],[[112,[43]]]],[[[112,[43]]],[[112,[43]]]],[[[112,[43]]],[[112,[43]]]],[[[112,[43]]],[[112,[43]]]],0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[[63,[43]]],[[8,[6,113]]]],[[[63,[43]]],[[8,[6,113]]]],[[]],[[]],[[]],[[113,26],27],[[113,26],27],[[]],[[]],[[]],[[[63,[43]]],[[8,[113]]]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[[63,[43]]],5],[[],5],[[],5],[[],5],[[[63,[43]]],[[4,[[44,[43]]]]]],0,0,[[114,[44,[43]],115,[52,[[3,[116]]]]],[[8,[[63,[43]],113]]]],0,[62],[[[63,[43]]]],[[[63,[43]]],[[8,[113]]]],0,[[],39],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],[[[63,[43]]]],0,[[[63,[43]]]],0,0,0,0,0,0,[103],0,0,0,0,0,[[],1],[[],1],[[]],[[]],[[],117],[[]],[[]],0,[[]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[[],5],[103],0,[117,60],0,[[],8],[[],8],[[],9],[[],10],0,[[],1],[[],1],[[]],[[]],0,[118,118],[[]],[[]],[[118,88],[[104,[[3,[103]]]]]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[[],5],[[[10,[39]]],118],[[]],[[],8],[[],8],[[],9],[[],10],0,[[],1],[[],1],[[]],[[]],[[],119],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[[],5],[[],119],[[119,98],[[8,[97]]]],[[],8],[[],8],[[],9],[[],10],0,0,[[42,[4,[44]],45,46]],0,0,0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[121,[120]],42,[4,[[44,[43]]]],45,46]],[[17,39,122]],[17],[[],17],[[],17],0,0,[[],[[121,[120]]]],[[],123],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[],5],[[],5],[[],5],0,[[],72],[[],72],0,0,0,0,0,0,0,0,0,[[],124],[[],125],0,[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],[[],10],[[],10],0,0,[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[4,[[4,[1]]]],[[],5],0,[[[126,[43,120]]],[[127,[88]]]],[[[4,[[44,[43]]]]],[[126,[43]]]],0,[[[126,[43,120]],6]],[[],8],[[],8],[[],9],[[],10],0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[[]],[[]],[[]],[[128,26],27],[[128,26],27],[[]],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[],5],[[[130,[120,129]],17,39,122],[[8,[128]]]],[129,[[130,[120,129]]]],0,[[[34,[12]],131,[130,[120,129]]],[[8,[128]]]],[62],[[],39],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],[6],0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[],5],[[45,57,58],59],[[45,132,58],59],[[45,132,58],59],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],0,[[],1],[[],1],[[]],[[]],[[]],[[65,[0,[129,85,99]],68],133],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[4,[[4,[1]]]],[[],5],0,[[[134,[43,120]]],[[127,[88]]]],[[[4,[[44,[43]]]]],[[134,[43,120]]]],0,[[[134,[43,120]],6]],[[],8],[[],8],[[],9],[[],10],0,0,[[],1],[[],1],[[135,136,17,137]],[[]],[[]],0,[[135,138,136,139,7,7,140],137],[[]],[[]],[[135,17],[[10,[141]]]],[[135,17,45],5],[[]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[[],5],0,[[142,136,143],135],[135,143],0,0,[[],8],[[],8],[[],9],[[],10],[6],0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],14],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[17,39,122]],[17],[[17,39,122],144],[17,145],[146,146],[147,147],[[]],[[]],[[],17],[[],17],[144,17],[145,17],0,0,[[]],[[]],[[]],[[]],[14,5],[25],[[146,146],5],[[],5],[[],5],[[],5],[[144,26],27],[[145,26],27],[[146,26],27],[[]],[[]],[[]],[[]],[[146,25]],0,[144,74],[[]],[[]],[145,74],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[],5],[[],5],0,[[],72],[[],72],[[],72],[[],72],[[],124],[[],125],[144,124],[145,125],[[]],[[]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],[[],10],[[135,136,148,149,114,28]],[6],0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],14],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[150,42,[4,[[44,[43]]]],45,46]],0,0,[151,151],[[]],[[],150],0,[152],[153,136],0,[[]],[[]],[[]],[[]],[[]],0,[14,5],[25],[[151,151],5],[[],5],[[],5],[[],5],0,0,[[151,26],27],[[]],[[]],[[]],[[]],[[]],0,0,[[151,25]],[[[0,[154,155]],156,157],[[8,[153,158]]]],[[154,156,157],[[8,[153,158]]]],[153,159],0,[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[],5],[[],5],[[],5],0,0,0,[160,55],[153,148],0,[[55,[0,[154,155]],159],[[8,[158]]]],0,0,0,0,[[159,156,161],[[8,[162]]]],[[153,7,7]],0,0,0,0,0,[153,55],[55,160],[153,160],0,0,0,[[]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],[[],10],[[],10],0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[115,163],[115,115],[[]],[[],164],[[],115],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[163,[[8,[164,158]]]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[164,[[10,[153]]]],[[],5],[[],5],[[],5],[[],5],[[],115],0,0,0,[[]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[164,165],[[],10],[[],10],[[],10],[[],10],0,0,[[115,157],115],[[115,156],115],0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[15,[166,[15]],15,15],[[40,[15]]]],[167,[[40,[15]]]],[[167,168],169],[[167,[170,[15]]],[[170,[15]]]],[167,[[40,[15]]]],[[167,[170,[15]]],[[171,[15]]]],[167,167],[[]],0,[[]],[172,[[40,[173]]]],[[]],[[]],[169,[[40,[173]]]],[[]],[[]],[[169,26],27],[[167,26],27],0,[[]],[[]],[[]],[[]],[[]],0,[167,[[170,[15]]]],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[169,174],[[],5],[[],5],[[],5],[[],5],[[],5],[[167,[171,[15]]]],[[167,[29,[15]]]],[[167,167],5],[[7,7,[175,[[166,[15]]]],15,15],168],[[[175,[[29,[15]]]],[175,[[166,[15]]]],[175,[[166,[15]]]],7,7],167],[167,[[166,[15]]]],0,[167,[[29,[15]]]],0,[167,[[171,[15]]]],[[174,[170,[15]]],[[170,[15]]]],[[169,[170,[15]]],[[170,[15]]]],[[168,7,7]],[[167,7,7]],[[167,[175,[[166,[15]]]]]],[[167,[175,[[166,[15]]]]]],[[169,[40,[15]]],172],[[]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],[[],10],[[],10],[[167,174],[[10,[[35,[15]]]]]],[[167,168],[[10,[[35,[15]]]]]],0,[[167,[171,[15]],174],[[171,[15]]]],[[167,[176,[15]],174,5],[[10,[[171,[15]]]]]],[[[171,[15]],174,15,15],[[171,[15]]]],[167,[[166,[15]]]],0,0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[]],[[]],[[]],[[158,26],27],[[158,26],27],[[]],[177,158],[178,158],[179,158],[162,158],[[]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[[],5],[62],[158,5],[158,[[10,[109]]]],[[],39],[[],8],[[],8],[[],9],[[],10],0,0,0,0,0,[[],1],[[],1],[[]],[[]],[[],180],[[]],[[180,88]],[[]],[[],5],[[[180,[181]],17,45],5],[[180,98]],[[]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[[],5],[[[180,[182]],98]],[180,180],[[],8],[[],8],[[],9],[[],10],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[]],[[]],0,0,0,0,[[]],[14,5],0,0,[[177,177],5],[[],5],[[],5],[[],5],[[177,26],27],[[177,26],27],[[]],0,0,0,0,0,0,0,0,0,0,[[]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[[],5],0,0,0,0,0,0,0,0,0,0,0,0,[62],[[53,54,55,45],[[8,[56]]]],0,0,0,0,[[],39],[[],8],[[],8],[[],9],0,[[],10],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[14,5],[14,5],[14,5],[[183,183],5],[[184,184],5],[[185,185],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[53,[[52,[186]]]],[[183,26],27],[[183,26],27],[[184,26],27],[[184,26],27],[[185,26],27],[[185,26],27],[[]],[[]],[[]],[[]],[[]],[[53,[175,[187]]],[[8,[188,185]]]],[[53,[175,[187]]],[[8,[189,185]]]],[[53,[175,[187]]],[[8,[190,185]]]],[[53,[175,[187]]],[[8,[191,185]]]],0,[53,192],[53,[[34,[188]]]],0,0,[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[],5],[[],5],[[],5],0,[[46,193,[34,[188]],[34,[[10,[188]]]]],53],0,[53,192],0,[62],[62],[62],[[53,[175,[[127,[88]]]],[52,[188]]],[[8,[183]]]],0,[[53,[175,[187]],[175,[188]]],[[8,[184]]]],[[],39],[[],39],[[],39],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],[[],10],[[],10],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[194,194],[[]],[[]],[[]],[14,5],[14,5],[[194,194],5],[[195,195],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[194,26],27],[[]],[[]],[194,196],[194,196],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[]],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],10],[[],10],0,0,0,0,0,0,0,0,0,[[46,[175,[[127,[88]]]],197],196],[[46,[175,[198]],[175,[198]]],[[8,[177]]]],[[46,[175,[198]],[175,[187]],[175,[198]],[175,[187]]],[[8,[177]]]],[[46,[175,[[127,[88]]]],46]],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],0,[[],46],[[]],[[]],[[46,26],27],[[]],[[]],[[46,[175,[198]]],[[8,[197,177]]]],[[46,[175,[198]]],[[8,[196,177]]]],[[46,[175,[198]]],[[8,[197,177]]]],[[46,[175,[198]]],[[8,[193,177]]]],[[46,[175,[198]]],[[8,[193,177]]]],[[46,[199,[88]]],[[10,[46]]]],[[46,[199,[88]]],[[10,[46]]]],[[46,194],5],[200,[[52,[51]]]],[46,[[10,[193]]]],0,0,[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[46,[175,[198]]],[[8,[33,177]]]],[[46,[175,[198]]],[[8,[33,177]]]],[46,33],[46,33],[46,33],[46,33],0,0,[200,[[52,[51]]]],[[46,[175,[[127,[88]]]]],[[8,[177]]]],[[46,[175,[198]],[175,[198]]],[[8,[177]]]],[[46,[175,[198]],[175,[187]],[175,[198]],[175,[187]]],[[8,[177]]]],[[46,[175,[[127,[88]]]]]],[[200,53,54,55,45],[[8,[56]]]],[[46,[52,[51]]],196],0,[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],10],[[],10],[[46,55]],[[46,194,195],[[8,[177]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,[[201,194],[[8,[177]]]],[[201,194],[[8,[177]]]],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],14],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[196,196],[198,198],[[]],[[]],[[196,196],22],0,0,[[]],[[[3,[197]]],[[8,[[3,[197]],[3,[197]]]]]],[[]],[[]],[[]],[[]],[[]],[[]],[197,[[10,[197]]]],[[[4,[197]]],[[8,[[4,[197]],[4,[197]]]]]],[197,[[10,[197]]]],[14,5],[14,5],[14,5],[25],0,[[196,196],5],[[56,56],5],[[198,198],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[193,26],27],[[196,26],27],[[56,26],27],[[56,26],27],[[201,26],27],[[198,26],27],[[]],[[]],[[]],[[]],[183,56],[[]],[185,56],[184,56],[[]],[39,198],[88,198],[196,198],[198,198],[[]],[[201,37],[[8,[194,177]]]],[[201,37],[[8,[194,177]]]],[[201,194],5],[[201,194],5],[[196,25]],[201,196],0,0,[[],[[52,[51]]]],[[],[[52,[51]]]],[201,[[34,[194]]]],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[197,5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],0,[[196,197],193],[37,196],[193,[[8,[197,177]]]],0,[193,[[8,[197,177]]]],[[],[[52,[51]]]],[[],[[52,[51]]]],[201,[[34,[194]]]],0,0,[[196,196],[[10,[22]]]],[62],[[201,194],[[8,[177]]]],[[201,194],[[8,[177]]]],[[53,54,55,45],[[8,[56]]]],[[202,53,54,55,45],[[8,[56]]]],[56,[[10,[109]]]],[[]],[[]],[[],39],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],0,[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[55],[55],[193,[[8,[177]]]],[193,[[8,[177]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[188,188],[203,203],[187,187],[51,51],[[]],[[]],[[]],[[]],[[],192],[[]],[[]],[[]],[[]],[[]],[14,5],[14,5],[[203,203],5],[[187,187],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[188,26],27],[[203,26],27],[[203,26],27],[[187,26],27],[[51,26],27],[[192,26],27],[189,188],[191,188],[190,188],[[]],[[]],[39,187],[[]],[187,187],[37,187],[88,187],[[[127,[88]]],187],[[]],[[]],[204,192],[[192,[175,[187]]],[[10,[51]]]],[[192,[175,[187]]],[[10,[37]]]],[[192,[175,[187]]],[[10,[51]]]],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[192,5],[[],5],[[],5],[[],5],[[],5],[[],5],[192,33],[192,37],0,[[[175,[[127,[88]]]],203],51],[188,203],0,0,[[]],[[]],[[]],[[]],[[],39],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],[[],10],[[],10],0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[205,26],27],[[205,26],27],[[]],[[]],[56,205],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[62],[[46,136,148,55,45],[[8,[205]]]],[[46,[10,[[127,[88]]]],54,55,45,[34,[188]]],[[8,[205]]]],[205,[[10,[109]]]],[[],39],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],10],[[],10],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[206,[[52,[51]]]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[],206],[[206,53,54,55,45],[[8,[56]]]],[[207,53,54,55,45],[[8,[56]]]],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],10],[[],10],[[206,55]],0,0,0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[45,57,58],59],[[45,208,58],59],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],10],[[],10],0,0,0,0,0,0,0,0,0,0,0,[[[209,[57]],57]],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[[209,[57]]]],[[],[[209,[57]]]],[[]],[[]],[[]],0,[[58,45]],[[],49],[132,49],[208,49],0,0,[[]],[[]],[[]],0,[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[[209,[57]]]],[[],5],[[],5],[[],5],0,0,0,[[45,58],59],[[[209,[57]]],37],[[[209,[57]]]],[[]],[132],[208],0,0,0,0,[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[58,45]],[[[211,[57,[210,[57]]]],58,45,57]],[[],49],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[],211],0,0,[[45,58],59],0,[[]],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],10],[[],10],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],212],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[213,[34,[12]]]],0,0,0,[[],1],[[],1],[[]],[[]],0,[[]],[[]],0,[[]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[[],5],[213,214],[[],8],[[],8],[[],9],[[],10],0,0,[[],1],[[],1],[[]],[[]],0,[[],212],[[]],0,[[]],[[212,136],143],[[]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[[],5],0,0,0,0,[[],8],[[],8],[[],9],[[],10],0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],0,[[]],[[]],[[]],[[]],[[]],[[]],0,[215,215],[216,216],[217,217],[[]],[[]],[[]],[[]],[[]],[[]],[14,5],0,0,[[216,216],5],[[],5],[[],5],[[],5],[[215,26],27],[[216,26],27],[[217,26],27],[[]],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[],5],0,0,0,0,[[]],[[]],[[]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[218,136]],[[160,136],191],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[136,154,157],160],[[219,220,[0,[154,155]],157],160],[218,5],[160,221],0,[160,221],0,[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[160,142],5],[[],5],[[],5],[[],5],[[],5],[[],5],[222,223],0,0,0,[[160,136]],[[160,[0,[154,155]],159],[[8,[158]]]],[[218,[0,[154,155]],159],[[8,[158]]]],[[160,7,7]],[[218,7,7,136]],[160,222],0,0,[218,219],0,[160,139],0,0,0,0,[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],9],0,[[],10],[[],10],[[],10],[[],10],[[],10],0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[191],[[]],[[]],[[191,26],27],[[]],[[]],[224,191],[225,191],[137,5],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[138,136,139,7,7,142,140],137],0,[191,[[10,[225]]]],0,[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],10],[[],10],0,0,0,0,[[],1],[[],1],[[]],[[]],0,0,[226,212],[[]],0,[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[[],5],0,0,[[[127,[88]],157,217,216,5,5,5,5,5,5],226],0,0,[[],8],[[],8],[[],9],[[],10],0,0,0,0,[[],1],[[],1],[[]],[[]],[[]],[[58,[227,[7]],[227,[7]]]],[[58,[227,[7]],36,[227,[7]]]],[[58,189,64]],[[58,189,64]],[[]],[[58,88]],[[]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[[],5],[228,58],0,[58],[[58,88]],[[58,37,141,[34,[7]]]],[[58,229]],[[58,230,231]],[[58,232,7,[34,[12]]]],[[58,143]],[[58,7,7,7,7]],[[58,7]],[[58,37,230]],[[58,173,173,173,173,173,173]],[[],8],[[],8],[[],9],[[],10],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[139,139],[[],233],[[],234],[[],234],[[],234],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],14],[[],14],[[],14],[[],14],[[],14],[[139,235],[[10,[139]]]],0,[[233,233],233],[[234,234],234],[[233,233]],[[234,234]],[[233,233],233],[[234,234],234],[[233,233]],[[234,234]],[233,7],[233,7],[234,64],[234,64],[[233,233],233],[[234,234],234],[[233,233]],[[234,234]],[139],[[139,[10,[235]]],[[10,[7]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[236,236],5],[[236,236,5,77]],[237,237],[233,233],[234,234],[236,236],[139,139],[156,156],[238,238],[142,142],[157,157],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[233,233],[234,234],[139,12],[[139,235],12],0,[[233,233],5],[[234,234],5],[233,5],[234,5],[[],237],[[],234],[[],236],[[],156],[[],142],[[],157],0,0,[[233,233],233],[[234,234],234],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],236],[[],236],[14,5],[14,5],[14,5],[14,5],[14,5],[25],[25],[25],[25],[25],[[],233],[[],234],[[237,237],5],[[233,233],5],[[234,234],5],[[236,236],5],[[139,139],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[233,204]],[[234,204]],0,[[237,26],[[8,[239]]]],[[233,26],[[8,[239]]]],[[233,26],[[8,[239]]]],[[233,26],[[8,[239]]]],[[233,26],[[8,[239]]]],[[233,26],[[8,[239]]]],[[234,26],[[8,[239]]]],[[234,26],[[8,[239]]]],[[234,26],[[8,[239]]]],[[234,26],[[8,[239]]]],[[234,26],[[8,[239]]]],[[236,26],[[8,[239]]]],[[139,26],[[8,[239]]]],[[]],[240,233],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[7,[[10,[233]]]],[64,[[10,[234]]]],[7,233],[7,233],[64,234],[64,234],[7,233],[64,234],[204,233],[204,234],[88,[[10,[233]]]],[88,[[10,[234]]]],[[139,234],241],[139,5],[139,5],[139,5],[[237,25]],[[233,25]],[[234,25]],[[236,25]],[[139,25]],[[233,233]],[[234,234]],[[233,233],233],[[234,234],234],[[233,233],5],[[234,234],5],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[233],[234],[233,5],[234,5],[139,5],[139,5],[[139,139],5],[139,5],[233,5],[234,5],[142,5],[139,5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[233,[[242,[233]]]],[234,[[242,[234]]]],[233,[[243,[233]]]],[234,[[243,[234]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[233,233],[234,234],0,0,0,[[233,233]],[[234,234]],[139,139],[139,234],[[139,[10,[235]]],[[10,[244]]]],0,[[233,233,5]],[[234,234,5]],[[233,233],233],[[234,234],234],[[233,233]],[[234,234]],[[233,233],233],[[234,234],234],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[233,233]],[[234,234]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[233,233],233],[[234,234],234],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[236,236],236],[[236,236],236],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[245,245],[246,246],[247,247],[248,248],[249,249],[250,250],[251,251],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[[],245],[[],247],[[],251],[[],216],[252,216],[253,216],[254,216],[[],217],[252,217],[253,217],[254,217],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[248,26],27],0,0,0,[16,255],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[256,257],245],[245,246],[[258,258],247],[173,249],[[256,173],250],[[258,258],251],0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],0,0,0,0,0,0,0,0,0,0,[6],0,[[],1],[[],1],[[]],[[]],[[],259],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[[],5],[259,[[127,[88]]]],[[259,6]],[[],8],[[],8],[[],9],[[],10],0,[[],1],[[],1],[[]],[[]],[[],260],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[[],5],[260,[[127,[88]]]],[[260,6]],[[],8],[[],8],[[],9],[[],10],[6],[6],[6],0,0,0,0,0,0,0,0,0,0,0,0,0,[261,261],[261,261],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[262,[[10,[[227,[213]]]]]],0,[261],[263,263],[264,264],[262,262],[[]],[[]],[[]],[264,17],[262,17],0,[[],[[266,[265]]]],[[],261],[[]],[[]],[[]],[[]],[[]],[[263,26],27],[[264,26],27],[[262,26],27],[[]],[[]],[[]],[[]],[[]],[[17,45,37],[[10,[[52,[17]]]]]],[[17,45],[[10,[17]]]],[[17,45],5],[[[266,[265]],17,45],5],[[261,17,45],5],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[],5],[[],5],[[],5],0,[[17,13],262],0,0,0,[[264,77]],[[262,64]],0,0,[[]],[[]],[[]],0,[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],[[],10],[[],10],0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[[268,[267]]]],[[]],[[]],[[[269,[91]],26],27],[[]],[[]],[[[268,[267]],28,181,13,45],[[52,[264]]]],0,0,[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[[268,[267]]],33],[214,[[268,[267]]]],[213,269],0,[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],10],[[],10],[[[268,[267]],[52,[264]]]],[[[268,[267]],267,169]],0,0,0,0,0,0,0,0,[[42,270,271],42],[[42,270,270,271],42],[[42,270,270,271],42],[[42,270,272],42],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[42],[[],42],[[]],[[]],[[[3,[271]]],[[8,[[3,[271]],[3,[271]]]]]],[[]],[271,[[10,[271]]]],[[[4,[271]]],[[8,[[4,[271]],[4,[271]]]]]],[271,[[10,[271]]]],[[270,270],5],[[]],[[]],[[]],[[42,270],[[10,[271]]]],[[42,270],[[10,[271]]]],[[270,25]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[271,5],[[],5],[[],5],[[],5],[42,33],[[[23,[271]]],[[273,[271]]]],[[42,270],42],[6],[[274,6]],[[[273,[271]],6]],[[42,6]],[[42,6]],[[42,270,98],42],0,0,0,[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[[277,[[276,[275]]]]],[[23,[275]]]],[[[277,[[278,[275]]]]],[[23,[275]]]],[[[277,[[279,[275]]]]],[[23,[275]]]],[[[277,[[280,[275]]]]],[[23,[275]]]],[[[277,[[281,[275]]]]],[[23,[275]]]],[[[277,[[282,[275]]]]],[[23,[275]]]],[[[277,[[283,[275]]]]],[[23,[275]]]],[[[277,[[284,[275]]]]],[[23,[275]]]],[[[277,[[285,[275]]]]],[[23,[275]]]],[[[277,[[286,[275]]]]],[[23,[275]]]],[[[277,[[287,[275]]]]],[[23,[275]]]],[[[277,[[288,[275]]]]],[[23,[275]]]],[[[277,[[289,[275]]]]],[[23,[275]]]],[[[277,[[290,[275]]]]],[[23,[275]]]],[[[277,[[291,[275]]]]],[[23,[275]]]],[[[277,[[292,[275]]]]],[[23,[275]]]],[[[277,[[293,[275]]]]],[[23,[275]]]],[[[277,[[294,[275]]]]],[[23,[275]]]],[[[277,[[295,[275]]]]],[[23,[275]]]],[[[277,[[296,[275]]]]],[[23,[275]]]],[[[277,[[297,[275]]]]],[[23,[275]]]],[[[277,[[298,[275]]]]],[[23,[275]]]],[[[277,[[299,[275]]]]],[[23,[275]]]],[[[277,[[300,[275]]]]],[[23,[275]]]],[[[277,[[301,[275]]]]],[[23,[275]]]],[[[277,[[302,[275]]]]],[[23,[275]]]],[[[277,[[303,[275]]]]],[[23,[275]]]],[[[277,[[304,[275]]]]],[[23,[275]]]],[[[277,[[305,[275]]]]],[[23,[275]]]],[[[277,[[306,[275]]]]],[[23,[275]]]],[[[277,[[307,[275]]]]],[[23,[275]]]],[[[277,[[308,[275]]]]],[[23,[275]]]],[[[277,[[309,[275]]]]],[[23,[275]]]],[[[277,[[310,[275]]]]],[[23,[275]]]],[[[277,[[311,[275]]]]],[[23,[275]]]],[[[277,[[312,[275]]]]],[[23,[275]]]],[[[313,[[293,[275]]]]],[[23,[275]]]],[[[313,[[307,[275]]]]],[[23,[275]]]],[[[313,[[299,[275]]]]],[[23,[275]]]],[[[313,[[286,[275]]]]],[[23,[275]]]],[[[313,[[290,[275]]]]],[[23,[275]]]],[[[313,[[294,[275]]]]],[[23,[275]]]],[[[313,[[298,[275]]]]],[[23,[275]]]],[[[313,[[295,[275]]]]],[[23,[275]]]],[[[313,[[305,[275]]]]],[[23,[275]]]],[[[313,[[289,[275]]]]],[[23,[275]]]],[[[313,[[278,[275]]]]],[[23,[275]]]],[[[313,[[291,[275]]]]],[[23,[275]]]],[[[313,[[276,[275]]]]],[[23,[275]]]],[[[313,[[281,[275]]]]],[[23,[275]]]],[[[313,[[300,[275]]]]],[[23,[275]]]],[[[313,[[287,[275]]]]],[[23,[275]]]],[[[313,[[292,[275]]]]],[[23,[275]]]],[[[313,[[280,[275]]]]],[[23,[275]]]],[[[313,[[284,[275]]]]],[[23,[275]]]],[[[313,[[304,[275]]]]],[[23,[275]]]],[[[313,[[301,[275]]]]],[[23,[275]]]],[[[313,[[302,[275]]]]],[[23,[275]]]],[[[313,[[306,[275]]]]],[[23,[275]]]],[[[313,[[285,[275]]]]],[[23,[275]]]],[[[313,[[288,[275]]]]],[[23,[275]]]],[[[313,[[310,[275]]]]],[[23,[275]]]],[[[313,[[279,[275]]]]],[[23,[275]]]],[[[313,[[282,[275]]]]],[[23,[275]]]],[[[313,[[296,[275]]]]],[[23,[275]]]],[[[313,[[283,[275]]]]],[[23,[275]]]],[[[313,[[308,[275]]]]],[[23,[275]]]],[[[313,[[309,[275]]]]],[[23,[275]]]],[[[313,[[311,[275]]]]],[[23,[275]]]],[[[313,[[297,[275]]]]],[[23,[275]]]],[[[313,[[303,[275]]]]],[[23,[275]]]],[[[313,[[312,[275]]]]],[[23,[275]]]],[289,23],[292,23],[288,23],[306,23],[282,23],[305,23],[304,23],[294,23],[298,23],[278,23],[299,23],[276,23],[293,23],[307,23],[291,23],[280,23],[311,23],[308,23],[283,23],[301,23],[287,23],[290,23],[281,23],[300,23],[285,23],[297,23],[295,23],[303,23],[284,23],[296,23],[302,23],[279,23],[310,23],[312,23],[309,23],[286,23],[[[277,[[301,[275]]]]],[[23,[275]]]],[[[277,[[283,[275]]]]],[[23,[275]]]],[[[277,[[300,[275]]]]],[[23,[275]]]],[[[277,[[307,[275]]]]],[[23,[275]]]],[[[277,[[298,[275]]]]],[[23,[275]]]],[[[277,[[296,[275]]]]],[[23,[275]]]],[[[277,[[306,[275]]]]],[[23,[275]]]],[[[277,[[286,[275]]]]],[[23,[275]]]],[[[277,[[310,[275]]]]],[[23,[275]]]],[[[277,[[297,[275]]]]],[[23,[275]]]],[[[277,[[299,[275]]]]],[[23,[275]]]],[[[277,[[276,[275]]]]],[[23,[275]]]],[[[277,[[290,[275]]]]],[[23,[275]]]],[[[277,[[288,[275]]]]],[[23,[275]]]],[[[277,[[287,[275]]]]],[[23,[275]]]],[[[277,[[280,[275]]]]],[[23,[275]]]],[[[277,[[285,[275]]]]],[[23,[275]]]],[[[277,[[279,[275]]]]],[[23,[275]]]],[[[277,[[292,[275]]]]],[[23,[275]]]],[[[277,[[305,[275]]]]],[[23,[275]]]],[[[277,[[303,[275]]]]],[[23,[275]]]],[[[277,[[281,[275]]]]],[[23,[275]]]],[[[277,[[308,[275]]]]],[[23,[275]]]],[[[277,[[293,[275]]]]],[[23,[275]]]],[[[277,[[278,[275]]]]],[[23,[275]]]],[[[277,[[309,[275]]]]],[[23,[275]]]],[[[277,[[289,[275]]]]],[[23,[275]]]],[[[277,[[282,[275]]]]],[[23,[275]]]],[[[277,[[295,[275]]]]],[[23,[275]]]],[[[277,[[304,[275]]]]],[[23,[275]]]],[[[277,[[291,[275]]]]],[[23,[275]]]],[[[277,[[284,[275]]]]],[[23,[275]]]],[[[277,[[302,[275]]]]],[[23,[275]]]],[[[277,[[311,[275]]]]],[[23,[275]]]],[[[277,[[312,[275]]]]],[[23,[275]]]],[[[277,[[294,[275]]]]],[[23,[275]]]],[[[313,[[284,[275]]]]],[[23,[275]]]],[[[313,[[302,[275]]]]],[[23,[275]]]],[[[313,[[310,[275]]]]],[[23,[275]]]],[[[313,[[276,[275]]]]],[[23,[275]]]],[[[313,[[296,[275]]]]],[[23,[275]]]],[[[313,[[278,[275]]]]],[[23,[275]]]],[[[313,[[283,[275]]]]],[[23,[275]]]],[[[313,[[297,[275]]]]],[[23,[275]]]],[[[313,[[311,[275]]]]],[[23,[275]]]],[[[313,[[285,[275]]]]],[[23,[275]]]],[[[313,[[279,[275]]]]],[[23,[275]]]],[[[313,[[293,[275]]]]],[[23,[275]]]],[[[313,[[281,[275]]]]],[[23,[275]]]],[[[313,[[305,[275]]]]],[[23,[275]]]],[[[313,[[292,[275]]]]],[[23,[275]]]],[[[313,[[300,[275]]]]],[[23,[275]]]],[[[313,[[290,[275]]]]],[[23,[275]]]],[[[313,[[289,[275]]]]],[[23,[275]]]],[[[313,[[312,[275]]]]],[[23,[275]]]],[[[313,[[298,[275]]]]],[[23,[275]]]],[[[313,[[280,[275]]]]],[[23,[275]]]],[[[313,[[308,[275]]]]],[[23,[275]]]],[[[313,[[286,[275]]]]],[[23,[275]]]],[[[313,[[299,[275]]]]],[[23,[275]]]],[[[313,[[282,[275]]]]],[[23,[275]]]],[[[313,[[304,[275]]]]],[[23,[275]]]],[[[313,[[291,[275]]]]],[[23,[275]]]],[[[313,[[294,[275]]]]],[[23,[275]]]],[[[313,[[301,[275]]]]],[[23,[275]]]],[[[313,[[307,[275]]]]],[[23,[275]]]],[[[313,[[287,[275]]]]],[[23,[275]]]],[[[313,[[295,[275]]]]],[[23,[275]]]],[[[313,[[306,[275]]]]],[[23,[275]]]],[[[313,[[309,[275]]]]],[[23,[275]]]],[[[313,[[288,[275]]]]],[[23,[275]]]],[[[313,[[303,[275]]]]],[[23,[275]]]],[289,23],[292,23],[288,23],[306,23],[282,23],[305,23],[304,23],[294,23],[298,23],[278,23],[299,23],[276,23],[293,23],[307,23],[291,23],[280,23],[311,23],[308,23],[283,23],[301,23],[287,23],[290,23],[281,23],[300,23],[285,23],[297,23],[295,23],[303,23],[284,23],[296,23],[302,23],[279,23],[310,23],[312,23],[309,23],[286,23],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,[[[277,[[0,[85,314]]]]],[[277,[[0,[85,314]]]]]],[[[313,[[0,[85,314]]]]],[[313,[[0,[85,314]]]]]],[315,315],[[[289,[85]]],[[289,[85]]]],[[[292,[85]]],[[292,[85]]]],[[[288,[85]]],[[288,[85]]]],[[[306,[85]]],[[306,[85]]]],[[[282,[85]]],[[282,[85]]]],[[[305,[85]]],[[305,[85]]]],[[[304,[85]]],[[304,[85]]]],[[[294,[85]]],[[294,[85]]]],[[[298,[85]]],[[298,[85]]]],[[[278,[85]]],[[278,[85]]]],[[[299,[85]]],[[299,[85]]]],[[[276,[85]]],[[276,[85]]]],[[[293,[85]]],[[293,[85]]]],[[[307,[85]]],[[307,[85]]]],[[[291,[85]]],[[291,[85]]]],[[[280,[85]]],[[280,[85]]]],[[[311,[85]]],[[311,[85]]]],[[[308,[85]]],[[308,[85]]]],[[[283,[85]]],[[283,[85]]]],[[[301,[85]]],[[301,[85]]]],[[[287,[85]]],[[287,[85]]]],[[[290,[85]]],[[290,[85]]]],[[[281,[85]]],[[281,[85]]]],[[[300,[85]]],[[300,[85]]]],[[[285,[85]]],[[285,[85]]]],[[[297,[85]]],[[297,[85]]]],[[[295,[85]]],[[295,[85]]]],[[[303,[85]]],[[303,[85]]]],[[[284,[85]]],[[284,[85]]]],[[[296,[85]]],[[296,[85]]]],[[[302,[85]]],[[302,[85]]]],[[[279,[85]]],[[279,[85]]]],[[[310,[85]]],[[310,[85]]]],[[[312,[85]]],[[312,[85]]]],[[[309,[85]]],[[309,[85]]]],[[[286,[85]]],[[286,[85]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[289,[316]],[289,[316]]],22],[[[292,[316]],[292,[316]]],22],[[[288,[316]],[288,[316]]],22],[[[306,[316]],[306,[316]]],22],[[[282,[316]],[282,[316]]],22],[[[305,[316]],[305,[316]]],22],[[[304,[316]],[304,[316]]],22],[[[294,[316]],[294,[316]]],22],[[[298,[316]],[298,[316]]],22],[[[278,[316]],[278,[316]]],22],[[[299,[316]],[299,[316]]],22],[[[276,[316]],[276,[316]]],22],[[[293,[316]],[293,[316]]],22],[[[307,[316]],[307,[316]]],22],[[[291,[316]],[291,[316]]],22],[[[280,[316]],[280,[316]]],22],[[[311,[316]],[311,[316]]],22],[[[308,[316]],[308,[316]]],22],[[[283,[316]],[283,[316]]],22],[[[301,[316]],[301,[316]]],22],[[[287,[316]],[287,[316]]],22],[[[290,[316]],[290,[316]]],22],[[[281,[316]],[281,[316]]],22],[[[300,[316]],[300,[316]]],22],[[[285,[316]],[285,[316]]],22],[[[297,[316]],[297,[316]]],22],[[[295,[316]],[295,[316]]],22],[[[303,[316]],[303,[316]]],22],[[[284,[316]],[284,[316]]],22],[[[296,[316]],[296,[316]]],22],[[[302,[316]],[302,[316]]],22],[[[279,[316]],[279,[316]]],22],[[[310,[316]],[310,[316]]],22],[[[312,[316]],[312,[316]]],22],[[[309,[316]],[309,[316]]],22],[[[286,[316]],[286,[316]]],22],0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[[[277,[[0,[[317,[[0,[[317,[[0,[[317,[[0,[317,314]]]],314]]]],314]]]],314]]]],[277,[[0,[[317,[[0,[[317,[[0,[[317,[[0,[317,314]]]],314]]]],314]]]],314]]]]],5],[[[313,[[0,[[317,[[0,[[317,[[0,[[317,[[0,[317,314]]]],314]]]],314]]]],314]]]],[313,[[0,[[317,[[0,[[317,[[0,[[317,[[0,[317,314]]]],314]]]],314]]]],314]]]]],5],[[315,315],5],[[[289,[[317,[[317,[[317,[317]]]]]]]],[289,[[317,[[317,[[317,[317]]]]]]]]],5],[[[292,[[317,[[317,[[317,[317]]]]]]]],[292,[[317,[[317,[[317,[317]]]]]]]]],5],[[[288,[[317,[[317,[[317,[317]]]]]]]],[288,[[317,[[317,[[317,[317]]]]]]]]],5],[[[306,[[317,[[317,[[317,[317]]]]]]]],[306,[[317,[[317,[[317,[317]]]]]]]]],5],[[[282,[[317,[[317,[[317,[317]]]]]]]],[282,[[317,[[317,[[317,[317]]]]]]]]],5],[[[305,[[317,[[317,[[317,[317]]]]]]]],[305,[[317,[[317,[[317,[317]]]]]]]]],5],[[[304,[[317,[[317,[[317,[317]]]]]]]],[304,[[317,[[317,[[317,[317]]]]]]]]],5],[[[294,[[317,[[317,[[317,[317]]]]]]]],[294,[[317,[[317,[[317,[317]]]]]]]]],5],[[[298,[[317,[[317,[[317,[317]]]]]]]],[298,[[317,[[317,[[317,[317]]]]]]]]],5],[[[278,[[317,[[317,[[317,[317]]]]]]]],[278,[[317,[[317,[[317,[317]]]]]]]]],5],[[[299,[[317,[[317,[[317,[317]]]]]]]],[299,[[317,[[317,[[317,[317]]]]]]]]],5],[[[276,[[317,[[317,[[317,[317]]]]]]]],[276,[[317,[[317,[[317,[317]]]]]]]]],5],[[[293,[[317,[[317,[[317,[317]]]]]]]],[293,[[317,[[317,[[317,[317]]]]]]]]],5],[[[307,[[317,[[317,[[317,[317]]]]]]]],[307,[[317,[[317,[[317,[317]]]]]]]]],5],[[[291,[[317,[[317,[[317,[317]]]]]]]],[291,[[317,[[317,[[317,[317]]]]]]]]],5],[[[280,[[317,[[317,[[317,[317]]]]]]]],[280,[[317,[[317,[[317,[317]]]]]]]]],5],[[[311,[[317,[[317,[[317,[317]]]]]]]],[311,[[317,[[317,[[317,[317]]]]]]]]],5],[[[308,[[317,[[317,[[317,[317]]]]]]]],[308,[[317,[[317,[[317,[317]]]]]]]]],5],[[[283,[[317,[[317,[[317,[317]]]]]]]],[283,[[317,[[317,[[317,[317]]]]]]]]],5],[[[301,[[317,[[317,[[317,[317]]]]]]]],[301,[[317,[[317,[[317,[317]]]]]]]]],5],[[[287,[[317,[[317,[[317,[317]]]]]]]],[287,[[317,[[317,[[317,[317]]]]]]]]],5],[[[290,[[317,[[317,[[317,[317]]]]]]]],[290,[[317,[[317,[[317,[317]]]]]]]]],5],[[[281,[[317,[[317,[[317,[317]]]]]]]],[281,[[317,[[317,[[317,[317]]]]]]]]],5],[[[300,[[317,[[317,[[317,[317]]]]]]]],[300,[[317,[[317,[[317,[317]]]]]]]]],5],[[[285,[[317,[[317,[[317,[317]]]]]]]],[285,[[317,[[317,[[317,[317]]]]]]]]],5],[[[297,[[317,[[317,[[317,[317]]]]]]]],[297,[[317,[[317,[[317,[317]]]]]]]]],5],[[[295,[[317,[[317,[[317,[317]]]]]]]],[295,[[317,[[317,[[317,[317]]]]]]]]],5],[[[303,[[317,[[317,[[317,[317]]]]]]]],[303,[[317,[[317,[[317,[317]]]]]]]]],5],[[[284,[[317,[[317,[[317,[317]]]]]]]],[284,[[317,[[317,[[317,[317]]]]]]]]],5],[[[296,[[317,[[317,[[317,[317]]]]]]]],[296,[[317,[[317,[[317,[317]]]]]]]]],5],[[[302,[[317,[[317,[[317,[317]]]]]]]],[302,[[317,[[317,[[317,[317]]]]]]]]],5],[[[279,[[317,[[317,[[317,[317]]]]]]]],[279,[[317,[[317,[[317,[317]]]]]]]]],5],[[[310,[[317,[[317,[[317,[317]]]]]]]],[310,[[317,[[317,[[317,[317]]]]]]]]],5],[[[312,[[317,[[317,[[317,[317]]]]]]]],[312,[[317,[[317,[[317,[317]]]]]]]]],5],[[[309,[[317,[[317,[[317,[317]]]]]]]],[309,[[317,[[317,[[317,[317]]]]]]]]],5],[[[286,[[317,[[317,[[317,[317]]]]]]]],[286,[[317,[[317,[[317,[317]]]]]]]]],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[[277,[[0,[91,314]]]],26],[[8,[239]]]],[[[313,[[0,[91,314]]]],26],[[8,[239]]]],[[315,26],[[8,[239]]]],[[[289,[91]],26],[[8,[239]]]],[[[292,[91]],26],[[8,[239]]]],[[[288,[91]],26],[[8,[239]]]],[[[306,[91]],26],[[8,[239]]]],[[[282,[91]],26],[[8,[239]]]],[[[305,[91]],26],[[8,[239]]]],[[[304,[91]],26],[[8,[239]]]],[[[294,[91]],26],[[8,[239]]]],[[[298,[91]],26],[[8,[239]]]],[[[278,[91]],26],[[8,[239]]]],[[[299,[91]],26],[[8,[239]]]],[[[276,[91]],26],[[8,[239]]]],[[[293,[91]],26],[[8,[239]]]],[[[307,[91]],26],[[8,[239]]]],[[[291,[91]],26],[[8,[239]]]],[[[280,[91]],26],[[8,[239]]]],[[[311,[91]],26],[[8,[239]]]],[[[308,[91]],26],[[8,[239]]]],[[[283,[91]],26],[[8,[239]]]],[[[301,[91]],26],[[8,[239]]]],[[[287,[91]],26],[[8,[239]]]],[[[290,[91]],26],[[8,[239]]]],[[[281,[91]],26],[[8,[239]]]],[[[300,[91]],26],[[8,[239]]]],[[[285,[91]],26],[[8,[239]]]],[[[297,[91]],26],[[8,[239]]]],[[[295,[91]],26],[[8,[239]]]],[[[303,[91]],26],[[8,[239]]]],[[[284,[91]],26],[[8,[239]]]],[[[296,[91]],26],[[8,[239]]]],[[[302,[91]],26],[[8,[239]]]],[[[279,[91]],26],[[8,[239]]]],[[[310,[91]],26],[[8,[239]]]],[[[312,[91]],26],[[8,[239]]]],[[[309,[91]],26],[[8,[239]]]],[[[286,[91]],26],[[8,[239]]]],[[[23,[275]]],[[277,[[308,[275]]]]]],[[[23,[275]]],[[277,[[278,[275]]]]]],[[[23,[275]]],[[277,[[294,[275]]]]]],[[[23,[275]]],[[277,[[292,[275]]]]]],[[[23,[275]]],[[277,[[287,[275]]]]]],[[[23,[275]]],[[277,[[289,[275]]]]]],[[[23,[275]]],[[277,[[285,[275]]]]]],[[[23,[275]]],[[277,[[290,[275]]]]]],[[[23,[275]]],[[277,[[283,[275]]]]]],[[[23,[275]]],[[277,[[276,[275]]]]]],[[[23,[275]]],[[277,[[288,[275]]]]]],[[]],[318,[[277,[[289,[173]]]]]],[[[23,[275]]],[[277,[[296,[275]]]]]],[[[23,[275]]],[[277,[[295,[275]]]]]],[318,[[277,[[289,[15]]]]]],[[[23,[275]]],[[277,[[306,[275]]]]]],[[[23,[275]]],[[277,[[302,[275]]]]]],[[[23,[275]]],[[277,[[303,[275]]]]]],[318,[[277,[[289,[12]]]]]],[[[23,[275]]],[[277,[[301,[275]]]]]],[[[23,[275]]],[[277,[[307,[275]]]]]],[[[23,[275]]],[[277,[[286,[275]]]]]],[[[23,[275]]],[[277,[[282,[275]]]]]],[[[23,[275]]],[[277,[[291,[275]]]]]],[[[23,[275]]],[[277,[[279,[275]]]]]],[[[23,[275]]],[[277,[[312,[275]]]]]],[[[23,[275]]],[[277,[[293,[275]]]]]],[[[23,[275]]],[[277,[[284,[275]]]]]],[[[23,[275]]],[[277,[[304,[275]]]]]],[[[23,[275]]],[[277,[[297,[275]]]]]],[[[23,[275]]],[[277,[[300,[275]]]]]],[[[23,[275]]],[[277,[[310,[275]]]]]],[[[23,[275]]],[[277,[[280,[275]]]]]],[[[23,[275]]],[[277,[[281,[275]]]]]],[[[23,[275]]],[[277,[[298,[275]]]]]],[[[23,[275]]],[[277,[[309,[275]]]]]],[[[23,[275]]],[[277,[[299,[275]]]]]],[[[23,[275]]],[[277,[[305,[275]]]]]],[[[23,[275]]],[[277,[[311,[275]]]]]],[[[23,[275]]],[[313,[[300,[275]]]]]],[[[23,[275]]],[[313,[[296,[275]]]]]],[[]],[[[23,[275]]],[[313,[[293,[275]]]]]],[[[23,[275]]],[[313,[[291,[275]]]]]],[[[23,[275]]],[[313,[[298,[275]]]]]],[[[23,[275]]],[[313,[[303,[275]]]]]],[[[23,[275]]],[[313,[[310,[275]]]]]],[[[23,[275]]],[[313,[[279,[275]]]]]],[[[23,[275]]],[[313,[[312,[275]]]]]],[[[23,[275]]],[[313,[[301,[275]]]]]],[[[23,[275]]],[[313,[[285,[275]]]]]],[[[23,[275]]],[[313,[[295,[275]]]]]],[[[23,[275]]],[[313,[[288,[275]]]]]],[[[23,[275]]],[[313,[[305,[275]]]]]],[[[23,[275]]],[[313,[[304,[275]]]]]],[[[23,[275]]],[[313,[[280,[275]]]]]],[[[23,[275]]],[[313,[[276,[275]]]]]],[[[23,[275]]],[[313,[[286,[275]]]]]],[[[23,[275]]],[[313,[[284,[275]]]]]],[[[23,[275]]],[[313,[[282,[275]]]]]],[[[23,[275]]],[[313,[[302,[275]]]]]],[[[23,[275]]],[[313,[[297,[275]]]]]],[[[23,[275]]],[[313,[[309,[275]]]]]],[[[23,[275]]],[[313,[[294,[275]]]]]],[[[23,[275]]],[[313,[[299,[275]]]]]],[[[23,[275]]],[[313,[[281,[275]]]]]],[[[23,[275]]],[[313,[[306,[275]]]]]],[[[23,[275]]],[[313,[[311,[275]]]]]],[[[23,[275]]],[[313,[[292,[275]]]]]],[[[23,[275]]],[[313,[[290,[275]]]]]],[[[23,[275]]],[[313,[[308,[275]]]]]],[[[23,[275]]],[[313,[[278,[275]]]]]],[[[23,[275]]],[[313,[[283,[275]]]]]],[[[23,[275]]],[[313,[[289,[275]]]]]],[[[23,[275]]],[[313,[[307,[275]]]]]],[[[23,[275]]],[[313,[[287,[275]]]]]],[[]],[318,[[289,[173]]]],[318,[[289,[12]]]],[[[313,[[289,[275]]]]],[[289,[275]]]],[318,[[289,[15]]]],[[[277,[[289,[275]]]]],[[289,[275]]]],[23,289],[[]],[[[277,[[292,[275]]]]],[[292,[275]]]],[[]],[[[313,[[292,[275]]]]],[[292,[275]]]],[23,292],[[]],[[[277,[[288,[275]]]]],[[288,[275]]]],[[[313,[[288,[275]]]]],[[288,[275]]]],[23,288],[23,306],[[[277,[[306,[275]]]]],[[306,[275]]]],[[[313,[[306,[275]]]]],[[306,[275]]]],[[]],[[[277,[[282,[275]]]]],[[282,[275]]]],[23,282],[[]],[[[313,[[282,[275]]]]],[[282,[275]]]],[[]],[[[313,[[305,[275]]]]],[[305,[275]]]],[[[277,[[305,[275]]]]],[[305,[275]]]],[23,305],[23,304],[[]],[[[313,[[304,[275]]]]],[[304,[275]]]],[[[277,[[304,[275]]]]],[[304,[275]]]],[23,294],[[[277,[[294,[275]]]]],[[294,[275]]]],[[[313,[[294,[275]]]]],[[294,[275]]]],[[]],[[[313,[[298,[275]]]]],[[298,[275]]]],[[]],[23,298],[[[277,[[298,[275]]]]],[[298,[275]]]],[[[313,[[278,[275]]]]],[[278,[275]]]],[[[277,[[278,[275]]]]],[[278,[275]]]],[[]],[23,278],[[[277,[[299,[275]]]]],[[299,[275]]]],[[[313,[[299,[275]]]]],[[299,[275]]]],[[]],[23,299],[[[277,[[276,[275]]]]],[[276,[275]]]],[23,276],[[[313,[[276,[275]]]]],[[276,[275]]]],[[]],[[[277,[[293,[275]]]]],[[293,[275]]]],[23,293],[[]],[[[313,[[293,[275]]]]],[[293,[275]]]],[23,307],[[[313,[[307,[275]]]]],[[307,[275]]]],[[[277,[[307,[275]]]]],[[307,[275]]]],[[]],[[[313,[[291,[275]]]]],[[291,[275]]]],[[]],[[[277,[[291,[275]]]]],[[291,[275]]]],[23,291],[[[277,[[280,[275]]]]],[[280,[275]]]],[[]],[23,280],[[[313,[[280,[275]]]]],[[280,[275]]]],[[[313,[[311,[275]]]]],[[311,[275]]]],[23,311],[[]],[[[277,[[311,[275]]]]],[[311,[275]]]],[[[277,[[308,[275]]]]],[[308,[275]]]],[23,308],[[[313,[[308,[275]]]]],[[308,[275]]]],[[]],[[[313,[[283,[275]]]]],[[283,[275]]]],[[]],[[[277,[[283,[275]]]]],[[283,[275]]]],[23,283],[23,301],[[]],[[[277,[[301,[275]]]]],[[301,[275]]]],[[[313,[[301,[275]]]]],[[301,[275]]]],[[]],[[[277,[[287,[275]]]]],[[287,[275]]]],[23,287],[[[313,[[287,[275]]]]],[[287,[275]]]],[23,290],[[[313,[[290,[275]]]]],[[290,[275]]]],[[[277,[[290,[275]]]]],[[290,[275]]]],[[]],[[[277,[[281,[275]]]]],[[281,[275]]]],[[[313,[[281,[275]]]]],[[281,[275]]]],[[]],[23,281],[23,300],[[]],[[[313,[[300,[275]]]]],[[300,[275]]]],[[[277,[[300,[275]]]]],[[300,[275]]]],[[[313,[[285,[275]]]]],[[285,[275]]]],[23,285],[[]],[[[277,[[285,[275]]]]],[[285,[275]]]],[[]],[[[313,[[297,[275]]]]],[[297,[275]]]],[23,297],[[[277,[[297,[275]]]]],[[297,[275]]]],[[]],[[[313,[[295,[275]]]]],[[295,[275]]]],[[[277,[[295,[275]]]]],[[295,[275]]]],[23,295],[[[313,[[303,[275]]]]],[[303,[275]]]],[[[277,[[303,[275]]]]],[[303,[275]]]],[23,303],[[]],[23,284],[[]],[[[313,[[284,[275]]]]],[[284,[275]]]],[[[277,[[284,[275]]]]],[[284,[275]]]],[[]],[[[313,[[296,[275]]]]],[[296,[275]]]],[[[277,[[296,[275]]]]],[[296,[275]]]],[23,296],[23,302],[[]],[[[277,[[302,[275]]]]],[[302,[275]]]],[[[313,[[302,[275]]]]],[[302,[275]]]],[[]],[[[277,[[279,[275]]]]],[[279,[275]]]],[[[313,[[279,[275]]]]],[[279,[275]]]],[23,279],[[[277,[[310,[275]]]]],[[310,[275]]]],[[]],[[[313,[[310,[275]]]]],[[310,[275]]]],[23,310],[[[313,[[312,[275]]]]],[[312,[275]]]],[[[277,[[312,[275]]]]],[[312,[275]]]],[[]],[23,312],[[[313,[[309,[275]]]]],[[309,[275]]]],[23,309],[[]],[[[277,[[309,[275]]]]],[[309,[275]]]],[[[313,[[286,[275]]]]],[[286,[275]]]],[23,286],[[]],[[[277,[[286,[275]]]]],[[286,[275]]]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[[277,[[0,[319,314]]]],25]],[[[313,[[0,[319,314]]]],25]],[[315,25]],[[[289,[319]],25]],[[[292,[319]],25]],[[[288,[319]],25]],[[[306,[319]],25]],[[[282,[319]],25]],[[[305,[319]],25]],[[[304,[319]],25]],[[[294,[319]],25]],[[[298,[319]],25]],[[[278,[319]],25]],[[[299,[319]],25]],[[[276,[319]],25]],[[[293,[319]],25]],[[[307,[319]],25]],[[[291,[319]],25]],[[[280,[319]],25]],[[[311,[319]],25]],[[[308,[319]],25]],[[[283,[319]],25]],[[[301,[319]],25]],[[[287,[319]],25]],[[[290,[319]],25]],[[[281,[319]],25]],[[[300,[319]],25]],[[[285,[319]],25]],[[[297,[319]],25]],[[[295,[319]],25]],[[[303,[319]],25]],[[[284,[319]],25]],[[[296,[319]],25]],[[[302,[319]],25]],[[[279,[319]],25]],[[[310,[319]],25]],[[[312,[319]],25]],[[[309,[319]],25]],[[[286,[319]],25]],0,0,[[[277,[[281,[275]]]]],[[23,[275]]]],[[[277,[[294,[275]]]]],[[23,[275]]]],[[[277,[[305,[275]]]]],[[23,[275]]]],[[[277,[[298,[275]]]]],[[23,[275]]]],[[[277,[[302,[275]]]]],[[23,[275]]]],[[[277,[[292,[275]]]]],[[23,[275]]]],[[[277,[[293,[275]]]]],[[23,[275]]]],[[[277,[[309,[275]]]]],[[23,[275]]]],[[[277,[[286,[275]]]]],[[23,[275]]]],[[[277,[[296,[275]]]]],[[23,[275]]]],[[[277,[[295,[275]]]]],[[23,[275]]]],[[[277,[[283,[275]]]]],[[23,[275]]]],[[[277,[[299,[275]]]]],[[23,[275]]]],[[[277,[[306,[275]]]]],[[23,[275]]]],[[[277,[[291,[275]]]]],[[23,[275]]]],[[[277,[[279,[275]]]]],[[23,[275]]]],[[[277,[[308,[275]]]]],[[23,[275]]]],[[[277,[[307,[275]]]]],[[23,[275]]]],[[[277,[[297,[275]]]]],[[23,[275]]]],[[[277,[[290,[275]]]]],[[23,[275]]]],[[[277,[[276,[275]]]]],[[23,[275]]]],[[[277,[[304,[275]]]]],[[23,[275]]]],[[[277,[[285,[275]]]]],[[23,[275]]]],[[[277,[[289,[275]]]]],[[23,[275]]]],[[[277,[[300,[275]]]]],[[23,[275]]]],[[[277,[[282,[275]]]]],[[23,[275]]]],[[[277,[[287,[275]]]]],[[23,[275]]]],[[[277,[[280,[275]]]]],[[23,[275]]]],[[[277,[[303,[275]]]]],[[23,[275]]]],[[]],[[[277,[[310,[275]]]]],[[23,[275]]]],[[[277,[[288,[275]]]]],[[23,[275]]]],[[[277,[[311,[275]]]]],[[23,[275]]]],[[[277,[[301,[275]]]]],[[23,[275]]]],[[[277,[[284,[275]]]]],[[23,[275]]]],[[[277,[[312,[275]]]]],[[23,[275]]]],[[[277,[[278,[275]]]]],[[23,[275]]]],[[[313,[[297,[275]]]]],[[23,[275]]]],[[[313,[[288,[275]]]]],[[23,[275]]]],[[[313,[[294,[275]]]]],[[23,[275]]]],[[[313,[[310,[275]]]]],[[23,[275]]]],[[[313,[[291,[275]]]]],[[23,[275]]]],[[[313,[[299,[275]]]]],[[23,[275]]]],[[[313,[[279,[275]]]]],[[23,[275]]]],[[[313,[[305,[275]]]]],[[23,[275]]]],[[[313,[[280,[275]]]]],[[23,[275]]]],[[[313,[[308,[275]]]]],[[23,[275]]]],[[]],[[[313,[[281,[275]]]]],[[23,[275]]]],[[[313,[[278,[275]]]]],[[23,[275]]]],[[[313,[[306,[275]]]]],[[23,[275]]]],[[[313,[[289,[275]]]]],[[23,[275]]]],[[[313,[[301,[275]]]]],[[23,[275]]]],[[[313,[[296,[275]]]]],[[23,[275]]]],[[[313,[[284,[275]]]]],[[23,[275]]]],[[[313,[[300,[275]]]]],[[23,[275]]]],[[[313,[[309,[275]]]]],[[23,[275]]]],[[[313,[[292,[275]]]]],[[23,[275]]]],[[[313,[[285,[275]]]]],[[23,[275]]]],[[[313,[[303,[275]]]]],[[23,[275]]]],[[[313,[[311,[275]]]]],[[23,[275]]]],[[[313,[[312,[275]]]]],[[23,[275]]]],[[[313,[[298,[275]]]]],[[23,[275]]]],[[[313,[[286,[275]]]]],[[23,[275]]]],[[[313,[[283,[275]]]]],[[23,[275]]]],[[[313,[[282,[275]]]]],[[23,[275]]]],[[[313,[[293,[275]]]]],[[23,[275]]]],[[[313,[[287,[275]]]]],[[23,[275]]]],[[[313,[[307,[275]]]]],[[23,[275]]]],[[[313,[[295,[275]]]]],[[23,[275]]]],[[[313,[[304,[275]]]]],[[23,[275]]]],[[[313,[[276,[275]]]]],[[23,[275]]]],[[[313,[[302,[275]]]]],[[23,[275]]]],[[[313,[[290,[275]]]]],[[23,[275]]]],[[]],[289,23],[[]],[292,23],[[]],[[]],[288,23],[306,23],[[]],[[]],[282,23],[[]],[305,23],[304,23],[[]],[[]],[294,23],[[]],[298,23],[278,23],[[]],[[]],[299,23],[[]],[276,23],[[]],[293,23],[[]],[307,23],[291,23],[[]],[280,23],[[]],[311,23],[[]],[[]],[308,23],[283,23],[[]],[[]],[301,23],[[]],[287,23],[290,23],[[]],[[]],[281,23],[300,23],[[]],[285,23],[[]],[[]],[297,23],[295,23],[[]],[303,23],[[]],[[]],[284,23],[296,23],[[]],[302,23],[[]],[[]],[279,23],[310,23],[[]],[[]],[312,23],[[]],[309,23],[286,23],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[]],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],0,0,0,0,0,0,0,0,0,0,0,[315,37],[[[289,[[87,[[87,[[87,[87]]]]]]]],[289,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[292,[[87,[[87,[[87,[87]]]]]]]],[292,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[288,[[87,[[87,[[87,[87]]]]]]]],[288,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[306,[[87,[[87,[[87,[87]]]]]]]],[306,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[282,[[87,[[87,[[87,[87]]]]]]]],[282,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[305,[[87,[[87,[[87,[87]]]]]]]],[305,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[304,[[87,[[87,[[87,[87]]]]]]]],[304,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[294,[[87,[[87,[[87,[87]]]]]]]],[294,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[298,[[87,[[87,[[87,[87]]]]]]]],[298,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[278,[[87,[[87,[[87,[87]]]]]]]],[278,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[299,[[87,[[87,[[87,[87]]]]]]]],[299,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[276,[[87,[[87,[[87,[87]]]]]]]],[276,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[293,[[87,[[87,[[87,[87]]]]]]]],[293,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[307,[[87,[[87,[[87,[87]]]]]]]],[307,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[291,[[87,[[87,[[87,[87]]]]]]]],[291,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[280,[[87,[[87,[[87,[87]]]]]]]],[280,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[311,[[87,[[87,[[87,[87]]]]]]]],[311,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[308,[[87,[[87,[[87,[87]]]]]]]],[308,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[283,[[87,[[87,[[87,[87]]]]]]]],[283,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[301,[[87,[[87,[[87,[87]]]]]]]],[301,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[287,[[87,[[87,[[87,[87]]]]]]]],[287,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[290,[[87,[[87,[[87,[87]]]]]]]],[290,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[281,[[87,[[87,[[87,[87]]]]]]]],[281,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[300,[[87,[[87,[[87,[87]]]]]]]],[300,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[285,[[87,[[87,[[87,[87]]]]]]]],[285,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[297,[[87,[[87,[[87,[87]]]]]]]],[297,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[295,[[87,[[87,[[87,[87]]]]]]]],[295,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[303,[[87,[[87,[[87,[87]]]]]]]],[303,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[284,[[87,[[87,[[87,[87]]]]]]]],[284,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[296,[[87,[[87,[[87,[87]]]]]]]],[296,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[302,[[87,[[87,[[87,[87]]]]]]]],[302,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[279,[[87,[[87,[[87,[87]]]]]]]],[279,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[310,[[87,[[87,[[87,[87]]]]]]]],[310,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[312,[[87,[[87,[[87,[87]]]]]]]],[312,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[309,[[87,[[87,[[87,[87]]]]]]]],[309,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[286,[[87,[[87,[[87,[87]]]]]]]],[286,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],0,[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[320,320],[321,321],[322,322],[323,323],[324,324],[[]],[[]],[[]],[[]],[[]],[[],324],[24,[[8,[320]]]],[24,[[8,[321]]]],[24,[[8,[322]]]],[24,[[8,[323]]]],[24,[[8,[324]]]],[[]],[[]],[[]],[[]],[[]],0,[[320,26],27],[[321,26],27],[[322,26],27],[[323,26],27],[[324,26],27],[[]],[[]],[[]],[[]],[[]],[323,[[10,[[277,[[289,[173]]]]]]]],0,0,[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[],5],[[],5],[[],5],0,0,0,0,0,[[320,38],8],[[321,38],8],[[322,38],8],[[323,38],8],[[324,38],8],0,0,[[]],[[]],[[]],[[]],[[]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],[[],10],[[],10],0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[325,325],[326,326],[[]],[[]],[[],326],[24,[[8,[325]]]],[24,[[8,[326]]]],[[]],[[]],[[325,26],27],[[326,26],27],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],0,0,0,0,0,0,0,0,[[325,38],8],[[326,38],8],[[]],[[]],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],10],[[],10],0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],0,[[]],[[]],[[]],[[]],[[]],[[]],0,[32,32],[327,327],[328,328],[[]],[[]],[[]],[[],32],[24,[[8,[32]]]],[24,[[8,[327]]]],[24,[[8,[328]]]],[[]],[[]],[[]],[[32,26],27],[[327,26],27],[[328,26],27],[[]],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[],5],0,0,0,[[32,38],8],[[327,38],8],[[328,38],8],0,[[]],[[]],[[]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],0,[[],1],[[],1],[[]],[[]],0,[114,114],[[]],[[],114],[24,[[8,[114]]]],[[]],[[114,26],27],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[[],5],0,0,0,0,[[114,38],8],0,[[]],[[],8],[[],8],[[],9],[[],10],0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[],329],[330,329],[331],[331,330],[[],331],[[]],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],0,0,0,0,0,[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],10],[[],10],0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[]],[[]],[[],332],[[[3,[333]]],[[8,[[3,[333]],[3,[333]]]]]],[[]],[333,[[10,[333]]]],[[[4,[333]]],[[8,[[4,[333]],[4,[333]]]]]],[333,[[10,[333]]]],[332,5],[[]],[332,[[10,[333]]]],[332,[[10,[333]]]],[332,[[0,[333,334]]]],0,0,[332],[[332,333]],[[]],[[[3,[2]]],[[3,[1,2]]]],[4,[[4,[1]]]],[333,5],[[],5],[332,10],[332,10],[332,10],[332,10],[332,10],0,[[],8],[[],8],[[],9],[[],10],0,0,0,0,[[],1],[[],1],[[]],[[]],[[]],[[]],0,[[]],[[[3,[2]]],[[3,[1,2]]]],[4,[[4,[1]]]],[[],335],[335,335],[[],5],[[],[[127,[88]]]],[336,335],[6],0,0,[[],8],[[],8],[[],9],[[],10],0,0,0,[[],1],[[],1],[[]],[[]],[[]],[[]],0,[[]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[[]],[[],5],[[[337,[77]]],[[127,[88]]]],[[[337,[77]],6]],[[],8],[[],8],[[],9],[[],10],0,[[338,272],338],[[],1],[[],1],[[]],[[]],[[],338],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[4,[[4,[1]]]],[[],5],[[338,6]],0,[[],8],[[],8],[[],9],[[],10],[[338,272],338],0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[149],[339,339],[[]],[[],340],[341,340],0,0,[342],[342,341],[[],149],[[],342],[[[3,[343]]],[[8,[[3,[343]],[3,[343]]]]]],[[]],[[]],[[]],[[]],[[]],[343,[[10,[343]]]],[[[4,[343]]],[[8,[[4,[343]],[4,[343]]]]]],[343,[[10,[343]]]],[[149,17],5],[[339,26],27],[[]],[[]],[[]],[[]],[[]],0,[[344,343],344],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[343,5],[[],5],[[],5],[[],5],[[],5],[[],5],0,[[149,339],10],[[149,17],10],[[149,339],10],[[149,17],10],[[149,339],10],[[149,17],[[10,[344]]]],0,0,0,0,[[]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],[[],10],[[],10],0,[[],1],[[],1],[[]],[[]],[[],45],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[4,[[4,[1]]]],[[],5],0,0,[[],8],[[],8],[[],9],[[],10],0,0,0,0,0,[[]],[[]],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],0,[[[345,[85,85]]],[[345,[85,85]]]],[[]],[[]],[[]],[[],345],[[]],[[]],[[[347,[346,346]]],[[345,[346,346]]]],[[204,204,7],345],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[348,349],247],[[348,350],247],[[]],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],10],[[],10],0,0,0,0,[[],1],[[],1],[[]],[[]],0,0,[[],[[355,[[0,[351,[353,[352]],354]]]]]],[[]],[[[355,[[0,[351,[353,[352]],354]]]],5]],[[[355,[[0,[351,[353,[352]],354]]]],64],356],0,[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[4,[[4,[1]]]],0,[[],5],[[[355,[[0,[351,[353,[352]],354]]]],5,37,37],356],[[[355,[[0,[351,[353,[352]],354]]]],5,37],356],[[[355,[[0,[351,[353,[352]],354]]]],37,37],356],[[[355,[[0,[351,[353,[352]],354]]]],37],356],[[[355,[[0,[351,[353,[352]],354]]]],37,37],356],[[[355,[[0,[351,[353,[352]],354]]]],37],356],[[[355,[[0,[351,[353,[352]],354]]]],37,37],356],[[[355,[[0,[351,[353,[352]],354]]]],37],356],0,0,[[[355,[[0,[351,[353,[352]],354]]]],37],356],[[[355,[[0,[351,[353,[352]],354]]]],37],356],[[[355,[[0,[351,[353,[352]],354]]]],5,37,37],356],[[[355,[[0,[351,[353,[352]],354]]]],5,37],356],[[[355,[[0,[351,[353,[352]],354]]]]]],[[[355,[[0,[351,[353,[352]],354]]]]]],[[],8],[[],8],[[],9],[[],10],[[[355,[[0,[351,[353,[352]],354]]]]]],[[[355,[[0,[351,[353,[352]],354]]]],15,15,37],356],0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],14],[357,88],[358,5],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[358],[359],[360],[358,358],[359,359],[360,360],[357,357],[[]],[[]],[[]],[[]],[[357,357],22],[[],358],[[],359],[[],360],[[],357],[358,15],0,[[]],[[]],[[]],[[]],[14,5],[25],[358,37],[359,37],[360,37],[[358,358],5],[[359,359],5],[[360,360],5],[[357,357],5],[[],5],[[],5],[[],5],[360,7],0,0,[358,173],0,[[358,26],[[8,[239]]]],[[359,26],[[8,[239]]]],[[360,26],[[8,[239]]]],[[357,26],[[8,[239]]]],[[]],[361,358],[[]],[[]],[[]],[36,[[10,[357]]]],[88,[[10,[357]]]],0,[[357,25]],[359,64],0,[358,362],0,[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[36,5],[[],5],[[],5],[[],5],[[],5],0,0,[[357,357],[[10,[22]]]],[[360,363],[[8,[89]]]],[[359,364],[[8,[89]]]],[[359,357]],[358,362],0,[358,88],0,0,[[],[[8,[[365,[15]],89]]]],[[7,15,15,15,15],[[8,[359,89]]]],[[],[[8,[359,89]]]],[[]],[[]],[[]],[[]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[359,357],0,[[],9],[[],9],[[],9],[[],9],[358,64],0,[[],10],[[],10],[[],10],[[],10],0,0,0,0,0,0,[[],1],[[],1],[[]],[[]],[[],[[366,[334]]]],[366],[366],[[[366,[[0,[85,367]]]]],5],[[]],0,0,[[]],0,0,[[]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[[],5],0,0,[[],5],[[],366],0,0,[[],8],[[],8],[[],9],[[],10],[[[366,[[0,[85,367]]]]]],0,[[],1],[[],1],[[]],[[]],[[],368],[[]],0,[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[[],5],[[],368],0,[[],8],[[],8],[[],9],[[],10],[368],[[],369],[[369,12],52],0,0,[[],1],[[],14],[14,5],[25],0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[33,10],[370,370],[[]],[[370,370],22],0,[[36,36],36],[[36,36],36],[[36,36],36],[[]],[[]],[[]],[[]],[14,5],[[370,370],5],[[],5],[[],5],[[],5],[[[372,[371]],26],27],[[[35,[373]],26],27],[[[374,[373]],26],27],[[370,26],27],[[]],[[]],[[]],[[]],[[[29,[371]],[171,[371]]],[[372,[371]]]],[[[29,[371]],[29,[371]],[29,[371]]],[[10,[[372,[371]]]]]],[[[372,[371]],[171,[371]],[171,[371]]],[[10,[371]]]],[[[372,[371]],[374,[371]]],[[52,[[171,[371]]]]]],[[[372,[371]],[374,[371]]],[[52,[[171,[371]]]]]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[],5],[[],5],[[[0,[87,275]],[0,[87,275]]],[[0,[87,275]]]],0,0,[[[0,[87,275]],[0,[87,275]]],[[0,[87,275]]]],0,0,0,[[[171,[371]],371],[[372,[371]]]],[[[375,[373]],[375,[373]]],[[35,[373]]]],[[[29,[373]],[29,[373]]],[[374,[373]]]],[[370,370],[[10,[22]]]],[[[35,[373]]],[[23,[[375,[373]]]]]],[[[374,[373]]],[[23,[[29,[373]]]]]],[[]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],[[],10],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[[377,[376]],42,[4,[[44,[43]]]],45,46]],[17,378],[[17,39],378],[[17,[345,[247,379]],[52,[7]],360],378],[[17,95],378],0,[[],17],[[],17],[[],17],[[],17],0,0,0,[[],[[377,[376]]]],[[],380],[[],381],[382],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[380,17,45],5],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],88],0,0,[[],72],[[],72],[[],72],[[],72],0,0,0,[[[34,[12]],383,[384,[376,129]]],[[8,[385]]]],0,0,0,0,0,0,0,[[],386],[[],387],[[],95],0,[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],0,0,[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[4,[[4,[1]]]],[[],5],0,[[[388,[43,376]]],[[127,[88]]]],[[[4,[[44,[43]]]]],[[388,[43]]]],0,[[[388,[43,376]],6]],[[],8],[[],8],[[],9],[[],10],0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[[]],[[]],[[]],[[385,26],27],[[385,26],27],[[]],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[],5],[[[384,[376,129]],17,[52,[[80,[15]]]]],[[8,[385]]]],[[[384,[376,129]],17,88],[[8,[385]]]],[[[384,[376,129]],17,[345,[247,379]],[52,[7]],360],[[8,[385]]]],0,[129,[[384,[376,129]]]],0,[[[34,[12]],383,[384,[376,129]]],[[8,[385]]]],[62],[[[384,[376,129]]],129],[[[384,[376,129]],17],[[8,[385]]]],[[],39],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],[6],0,0,0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[45,57,58],59],[[45,132,58],59],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],10],[[],10],0,[[],1],[[],1],[[]],[[]],[[]],[[65,[0,[129,85,99]],68],133],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[4,[[4,[1]]]],[[],5],0,[[[389,[43,376]]],[[127,[88]]]],[[[4,[[44,[43]]]]],[[389,[43]]]],0,[[[389,[43,376]],6]],[[],8],[[],8],[[],9],[[],10],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[213,213,213]],[[[390,[267,346,346,346,346]],267,17,324,[345,[346,346]],346,[34,[346]]]],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[391,[[10,[392]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,[[[390,[267,346,346,346,346]]]],[391],[393,393],[392,392],[[]],[[]],0,[[],391],[[]],[[]],[[]],[[]],[[]],[[]],[[[390,[267,346,346,346,346]]]],0,[392,[[227,[213]]]],[[391,393,213],[[227,[213]]]],[[[390,[91,91,91,91,91,91]],26],27],[[393,26],27],[[[394,[91]],26],27],[[392,26],27],[[395,26],27],[[391,26],27],[[]],[[]],[[]],[[]],[[]],[[]],[136,[[390,[148,189,346,346,346,346]]]],[391,[[10,[392]]]],[[391,17],[[10,[[396,[392]]]]]],[[[390,[267,346,346,346,346]],17],[[10,[[397,[88]]]]]],[[[390,[267,346,346,346,346]],17,45],5],[[[390,[267,346,346,346,346]]],391],0,[[[390,[267,346,346,346,346]]]],0,[392,[[227,[213]]]],[392,[[227,[7]]]],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[391,33],0,[392,[[227,[213]]]],0,0,[[391,213,393,213],[[227,[213]]]],[[[390,[267,346,346,346,346]]]],[[214,214,214,214],[[390,[267,346,346,346,346]]]],[[213,393],394],[[],391],0,0,0,0,0,[391,[[10,[392]]]],[[391,392]],0,[[]],[[]],0,[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],0,[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[[390,[267,346,346,346,346]],267,392,[34,[346]]]],[[[390,[267,346,346,346,346]],267,392,346]],0,[[[390,[267,346,346,346,346]]]],0,[392,[[227,[213]]]],[6],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],14],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[17,378],[[17,39],378],[[17,[345,[247,379]],[52,[7]],360],378],[[17,95],378],[17,398],[[17,39],399],[[17,95],400],[[17,[345,[247,379]],[52,[7]],360],401],[402,402],[401,401],[403,403],[[]],[[]],[[]],[[],17],[[],17],[[],17],[[],17],[398,17],[399,17],[400,17],[401,17],0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[14,5],[25],[[402,402],5],[[],5],[[],5],[[],5],0,[[398,26],27],[[399,26],27],[[400,26],27],[[402,26],27],[[401,26],27],[[]],[[]],[[]],[[]],[[]],[[]],[[402,25]],0,[398,74],[[]],[[]],[399,74],[400,74],[[]],[[]],[401,74],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[401,5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],0,[[],88],[399,88],0,[[],72],[[],72],[[],72],[[],72],[[],72],[[],72],[[],72],[[],72],[[],386],[[],387],[399,386],[401,387],[[]],[[]],[[]],[[],95],[400,95],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[6],[[404,136,148,149,114,28]],0,0,[[],1],[[],1],[[]],[[]],[405,167],0,[405,167],[405,[[10,[28]]]],[405,5],[405,5],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[[],5],[[222,16,13,[175,[[406,[15]]]],[175,[[166,[15]]]]],405],0,[[405,7,7]],[[],8],[[],8],[[],9],[[],10],[405],[[405,13]],[405,169],[405,11],[405,13],0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[]],[[]],[222,222],[[]],[[]],[[]],[14,5],[[222,222],5],[[],5],[[],5],[[],5],[[]],[222,7],0,[222,407],[[],64],[[]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[[],5],[[7,7],[[10,[222]]]],[[]],[[]],[[],222],[[]],[[],8],[[],8],[[],9],[[],10],[222,7],0,[222,407]],"c":[],"p":[[8,"Any"],[3,"Global"],[3,"Box"],[3,"Rc"],[15,"bool"],[3,"MapContext"],[15,"u32"],[4,"Result"],[3,"TypeId"],[4,"Option"],[3,"ZoomLevel"],[15,"u8"],[3,"Zoom"],[8,"DynEq"],[15,"f64"],[3,"WorldCoords"],[3,"WorldTileCoords"],[3,"Quadkey"],[3,"LatLon"],[3,"InnerCoords"],[3,"TileCoords"],[4,"Ordering"],[15,"array"],[8,"Deserializer"],[8,"Hasher"],[3,"Formatter"],[6,"Result"],[3,"ViewRegion"],[3,"Point3"],[3,"AlignedWorldTileCoords"],[3,"Arc"],[4,"TileAddressingScheme"],[8,"Iterator"],[15,"slice"],[3,"Aabb2"],[15,"i32"],[15,"usize"],[8,"Serializer"],[3,"String"],[3,"Matrix4"],[3,"DebugPlugin"],[3,"Schedule"],[8,"Environment"],[3,"Kernel"],[3,"World"],[3,"RenderGraph"],[3,"DebugPipeline"],[3,"TileDebugItem"],[8,"Draw"],[3,"DebugPassNode"],[3,"SlotInfo"],[3,"Vec"],[3,"RenderGraphContext"],[3,"RenderContext"],[3,"RenderResources"],[4,"NodeRunError"],[8,"PhaseItem"],[3,"TrackedRenderPass"],[4,"RenderCommandResult"],[3,"SourceClient"],[4,"SendEventError"],[3,"Demand"],[3,"Map"],[15,"u64"],[4,"Input"],[6,"AsyncProcedure"],[4,"CallError"],[8,"OffscreenKernelEnvironment"],[8,"Scheduler"],[3,"SchedulerAsyncProcedureCall"],[3,"SchedulerContext"],[8,"MessageTag"],[4,"MessageError"],[3,"Message"],[4,"SendError"],[4,"ProcedureError"],[8,"FnMut"],[8,"IntoMessage"],[3,"IndexProcessor"],[3,"IndexedGeometry"],[3,"RTree"],[8,"CoordFloat"],[8,"Bounded"],[8,"Signed"],[8,"Clone"],[4,"ExactGeometry"],[8,"PartialOrd"],[15,"str"],[4,"GeozeroError"],[3,"GeometryIndex"],[8,"Debug"],[3,"LineString"],[3,"HashMap"],[3,"Polygon"],[4,"TileIndex"],[4,"ColumnValue"],[4,"ScheduleError"],[8,"FnOnce"],[8,"Send"],[3,"NopScheduler"],[8,"HttpClient"],[3,"HttpSourceClient"],[8,"Future"],[3,"Pin"],[4,"SourceType"],[3,"SourceFetchError"],[3,"Error"],[4,"Error"],[8,"Error"],[3,"TessellateSource"],[3,"RasterSource"],[3,"KernelBuilder"],[4,"MapError"],[3,"Style"],[3,"RendererBuilder"],[8,"Plugin"],[3,"ReqwestOffscreenKernelEnvironment"],[3,"ReqwestHttpClient"],[3,"TokioScheduler"],[8,"RasterTransferables"],[3,"RasterPlugin"],[6,"RgbaImage"],[3,"RasterLayersDataComponent"],[3,"AvailableRasterLayerData"],[3,"MissingRasterLayerData"],[3,"PopulateWorldSystem"],[4,"Cow"],[4,"ProcessRasterError"],[8,"Context"],[3,"ProcessRasterContext"],[3,"RasterTileRequest"],[3,"LayerItem"],[6,"AsyncProcedureFuture"],[3,"RequestSystem"],[3,"RasterResources"],[3,"Device"],[3,"Texture"],[6,"Label"],[4,"TextureFormat"],[3,"TextureUsages"],[3,"BindGroup"],[3,"Msaa"],[3,"RenderPipeline"],[3,"DefaultLayerRaster"],[3,"DefaultLayerRasterMissing"],[4,"RasterMessageTag"],[3,"DefaultRasterTransferables"],[3,"Queue"],[3,"Tiles"],[3,"RenderPlugin"],[4,"RenderStageLabel"],[3,"MaskPipeline"],[3,"Renderer"],[8,"MapWindow"],[8,"HeadedMapWindow"],[3,"WgpuSettings"],[3,"RendererSettings"],[4,"RenderError"],[3,"Instance"],[3,"Surface"],[6,"RequestAdapterOptions"],[3,"RequestDeviceError"],[3,"UninitializedRenderer"],[4,"InitializationResult"],[3,"InitializedRenderer"],[3,"Rad"],[3,"Camera"],[3,"Perspective"],[3,"ViewProjection"],[3,"Vector4"],[3,"Vector3"],[3,"ModelViewProjection"],[15,"f32"],[3,"InvertedViewProjection"],[8,"Into"],[3,"Vector2"],[4,"RenderGraphError"],[3,"CreateSurfaceError"],[4,"SurfaceError"],[4,"Eventually"],[8,"HasTile"],[8,"HasChanged"],[4,"RunSubGraphError"],[4,"OutputSlotError"],[4,"InputSlotError"],[3,"RunSubGraph"],[4,"SlotLabel"],[4,"SlotValue"],[3,"Buffer"],[3,"Sampler"],[4,"TextureView"],[3,"SlotInfos"],[3,"NodeState"],[4,"Edge"],[4,"EdgeExistence"],[3,"NodeId"],[8,"Node"],[4,"NodeLabel"],[8,"AsRef"],[3,"GraphInputNode"],[3,"Edges"],[3,"EmptyNode"],[4,"SlotType"],[8,"IntoIterator"],[4,"RenderGraphRunnerError"],[3,"MainPassNode"],[3,"MainPassDriverNode"],[3,"TileMaskItem"],[3,"RenderPhase"],[8,"RenderCommand"],[3,"DrawState"],[3,"RenderPipelineDescriptor"],[6,"BufferAddress"],[3,"BackingBufferDescriptor"],[3,"VertexBufferLayout"],[3,"FragmentState"],[3,"VertexState"],[3,"WindowHead"],[3,"Surface"],[3,"Adapter"],[4,"Head"],[3,"WindowSize"],[3,"BufferDimensions"],[3,"TextureView"],[3,"SurfaceTexture"],[3,"TilePipeline"],[3,"Range"],[3,"RenderPass"],[3,"Color"],[3,"BufferSlice"],[4,"IndexFormat"],[3,"ShaderStages"],[3,"Backends"],[3,"Features"],[4,"TextureAspect"],[3,"Limits"],[4,"PowerPreference"],[4,"SurfaceType"],[3,"Error"],[4,"Backend"],[3,"TextureFormatFeatures"],[3,"Iter"],[3,"IterNames"],[4,"TextureSampleType"],[3,"ShaderCamera"],[3,"ShaderGlobals"],[3,"ShaderVertex"],[3,"ShaderFeatureStyle"],[3,"ShaderLayerMetadata"],[3,"ShaderTileMetadata"],[3,"ShaderTextureVertex"],[3,"TileMaskShader"],[3,"VectorTileShader"],[3,"RasterTileShader"],[6,"Vec3f32"],[6,"Mat4x4f32"],[6,"Vec4f32"],[6,"Vec2f32"],[3,"GraphRunnerSystem"],[3,"ResourceSystem"],[3,"ViewTileSources"],[3,"TileShape"],[4,"SourceShapes"],[3,"ViewTile"],[8,"ResourceQuery"],[3,"QueryHasTile"],[8,"Queue"],[3,"TileViewPattern"],[3,"BackingBuffer"],[8,"StageLabel"],[8,"Stage"],[8,"IntoSystemContainer"],[3,"MultiStage"],[3,"NopStage"],[8,"Copy"],[3,"AcesCct"],[3,"Alpha"],[3,"Aces2065"],[3,"YPrimeCbCr"],[3,"DciXYZPrime"],[3,"ICtCpHLG"],[3,"GenericColor3"],[3,"Bt2100"],[3,"Hsl"],[3,"CieLab"],[3,"YCxCz"],[3,"EncodedBt2100HLG"],[3,"EncodedRec709"],[3,"EncodedSrgb"],[3,"ICtCpPQ"],[3,"DciP3"],[3,"LinearSrgb"],[3,"DisplayP3"],[3,"Luma"],[3,"Oklab"],[3,"Hsv"],[3,"CieLCh"],[3,"AcesCg"],[3,"AcesCc"],[3,"CieXYZ"],[3,"EncodedBt2100PQ"],[3,"YCbCr"],[3,"Oklch"],[3,"Luminance"],[3,"GenericColor1"],[3,"Rec709"],[3,"EncodedDisplayP3"],[3,"EncodedBt2020"],[3,"Yuv"],[3,"YPbPr"],[3,"Bt2020"],[3,"YPrimePbPr"],[3,"PremultipliedAlpha"],[8,"ColorType"],[4,"Spaces"],[8,"Ord"],[8,"PartialEq"],[3,"Color"],[8,"Hash"],[3,"BackgroundPaint"],[3,"FillPaint"],[3,"LinePaint"],[4,"LayerPaint"],[3,"StyleLayer"],[4,"RasterResampling"],[3,"RasterLayer"],[3,"VectorSource"],[4,"Source"],[8,"QueryState"],[3,"EphemeralQueryState"],[3,"GlobalQueryState"],[3,"Resources"],[8,"Resource"],[8,"Default"],[3,"SystemContainer"],[8,"System"],[3,"FunctionSystem"],[3,"SystemStage"],[3,"Tile"],[8,"QueryState"],[3,"EphemeralQueryState"],[3,"GlobalQueryState"],[8,"TileComponent"],[3,"TileSpawnResult"],[3,"OverAlignedVertexBuffer"],[8,"Pod"],[3,"VertexBuffers"],[3,"VertexConstructor"],[3,"StrokeVertex"],[3,"FillVertex"],[8,"Add"],[3,"VertexId"],[8,"From"],[8,"MaxIndex"],[3,"ZeroTessellator"],[6,"Result"],[4,"GeomType"],[3,"Value"],[3,"Feature"],[3,"Layer"],[4,"TileValue"],[15,"i64"],[8,"FeatureProcessor"],[8,"GeomProcessor"],[4,"Geometry"],[3,"ChangeObserver"],[8,"SignificantlyDifferent"],[3,"FPSMeter"],[3,"Grid"],[3,"FloatOrd"],[8,"BaseFloat"],[3,"Plane"],[8,"BaseNum"],[3,"Aabb3"],[3,"Point2"],[8,"VectorTransferables"],[3,"VectorPlugin"],[8,"Sized"],[6,"IndexDataType"],[3,"VectorTilesDone"],[3,"VectorLayersDataComponent"],[3,"VectorPipeline"],[3,"VectorTileRequest"],[3,"ProcessVectorContext"],[4,"ProcessVectorError"],[3,"MissingVectorLayerData"],[3,"AvailableVectorLayerData"],[3,"PopulateWorldSystem"],[3,"RequestSystem"],[3,"BufferPool"],[3,"RingIndex"],[3,"IndexEntry"],[4,"BackingBufferType"],[3,"BackingBuffer"],[3,"RingIndexEntry"],[3,"VecDeque"],[3,"HashSet"],[3,"DefaultTileTessellated"],[3,"DefaultLayerMissing"],[3,"DefaultLayerIndexed"],[3,"DefaultLayerTesselated"],[4,"VectorMessageTag"],[3,"DefaultVectorTransferables"],[6,"VectorBufferPool"],[3,"ViewState"],[3,"Deg"],[3,"NonZeroU32"],[3,"SetDebugPipeline"],[3,"DrawDebugOutline"],[8,"EventLoopConfig"],[8,"EventLoop"],[8,"EventLoopProxy"],[8,"AsyncProcedureCall"],[13,"TileRequest"],[13,"Linear"],[13,"Spatial"],[4,"CurrentMapContext"],[13,"Pending"],[4,"RasterLayerData"],[8,"LayerRaster"],[8,"LayerRasterMissing"],[3,"SetRasterTilePipeline"],[3,"SetRasterViewBindGroup"],[3,"DrawRasterTile"],[13,"SlotEdge"],[13,"NodeEdge"],[13,"MismatchedSlotType"],[13,"MismatchedSlotType"],[13,"MismatchedNodeSlots"],[13,"UnconnectedNodeInputSlot"],[13,"NodeInputSlotAlreadyOccupied"],[13,"UnconnectedNodeOutputSlot"],[13,"MismatchedInputSlotType"],[13,"MissingInput"],[3,"RenderGraphRunner"],[13,"MismatchedInputSlotType"],[13,"MissingInput"],[13,"EmptyNodeOutputSlot"],[3,"SetMaskPipeline"],[3,"DrawMask"],[3,"BufferedTextureHead"],[8,"RenderPipeline"],[13,"SurfaceTexture"],[13,"Astc"],[8,"Shader"],[8,"ColorInterop"],[8,"ResourceQueryMut"],[8,"ResourceQueryUnsafe"],[8,"IntoSystem"],[8,"ComponentQuery"],[8,"ComponentQueryMut"],[8,"ComponentQueryUnsafe"],[8,"Align"],[8,"DynHash"],[4,"VectorLayerData"],[8,"TileTessellated"],[8,"LayerMissing"],[8,"LayerTessellated"],[8,"LayerIndexed"],[3,"SetVectorTilePipeline"],[3,"DrawVectorTile"],[8,"MapWindowConfig"]]}\ +"maplibre":{"doc":"Maplibre-rs","t":"AAAAOAAAAAOAAAAAAAAAAAAAAGDDMMADMMMMMMDLLLLLLLLLLMLMLLLLMMDSSRRRDDRDRDDDDRDDLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLFLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLMMLLLMLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMLLMDDDLLLLLLLLLLLLLAALLLLLLMALLLLLLLLLLLLLLLLLAAALMLLLLLLLLLLLLFDLLLLLLLLLLLLLLLLLLLRAARRFDGDLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLFQIQQQIQQKKNIIIQQQELLLLKKLLLLLLLLLLKKLLLLLDAMMAMMAAAMMGIGENIQNNNNEIDEINEQNDDNENNNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMKLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLKLMKLMLLMLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMEDDDNNNNELLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLMLLLLLLLLLLLMMLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLMMDNEINLLLLLLLLLLLLLLLLLLLLLLLLKLLLLLLLLLLGIDDDLLLLLLLLLLLLLLLLLLLKLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLNDENDLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLMMDDLMMLLLLLLLLLLLLLLMLLLLLLLLLLLMMLLMMLMLLLLLLLLLLLLENDENNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLMLLLMLLLLLLLLLLLLLLMLMMRDAAFAADMDLLLLLLLALLLLLFALALLLLDLLLLMLLLLLLLLLLLLLLLLDLLLLLLLLLLLLLLLLLLDIKNDDIQIQNDEDDILLLLLLLLLLLLLLLLLLLLLKKKKMMLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLMKKAAAAAAAMMKKALLLLLLLLLLLLLLLLLLLLADLLLLLLLLLLMLLMLLLLLDENDLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLMFLLLLLLLLLLLLLLFDGDDLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLDLLLLLFLLLLLMLLMLLLLLADLLLLLMLLLLLLLLLLMLLMMLLLLFDDDINQINQEILLLLLLLLLLLLLLLLLLKKLLLLLLKKLLMMLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLMKKLLKKLLLLLLLLLLLLLLLLLLLLFFNNRDNNNNDDEDCMLLLLLLLLLLLLLLLLLLLLLLLAALLLMLLMLLLLLALLLLLLAALLLLLLAALLLLMLLLLLLLLLLLLLLLLLLLLLLLLLAAMLLMLAMAMLLAMAMALLLMAALLLLLLLLLLLLLLLLLLLLLAMNENDDNDLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMLLLLLLLLLLLLLLLLLLMMLLDDRDRRRRDRDDLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLMLMLLLMLMLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLMRAARNNENNLLLLLLLLLLLLLLLLLLLLLLLLLQEINNLLLLLLLLKLLLLLLLLLLLLLNNNENNEDDNDNNENNNNNNNNNNNNNNINDNEEDENDDDEDENNNNDDEEENNNNNNLLLLLMAMMLLAMLLLLLLLAMMMMMMMMMLLLLLMMMAMMMAMMMMLKMMMMLLLLMLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMENNNNNNNEDDENLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLMMLLLLLLLLLLLLLLLLLLLLLLLMLMLMLLLLMLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMNEENNNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMDSDLLLLLLLLLLLLMLLLLLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLMMLLLLLLLMLLLLLLLLLLDDNNNIDEEDNDNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLMLLLLMMLLLLKLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLNNNNNNDDEEENNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLMMLLLLLLLLLLLLLLLLLLLLLLLLLNNNNDELLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMAARRDDLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLDGDLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLIDNDIIEDQNDLLLLLLLLLLLLLLLLLLAKKLLMMLLLMLLLLLLLLLLLLLLMMMKLLKLLMMMMLLLLLLLLLLLLIDNIIEQNLLLLLLLLLLKLKLLLLLLLLLLLLLMMKOKLLLLLLLLDDDDENNIIDDNDENDDDDDMMAMMMMMMKMMMMMMMMMMMMMMMAMMMMAMMMMMMAMMAMMMMMAAMMMMMMMKMMDLLLLMLLMLLLLLLLLLLIDLLLLMKLMLLLLLLLMMMMLLLLMDDDMLLLLLLLMLLLLLLMLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLMMMMLLLLLLLLLLLLLLLDDENNDDLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLMLMLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMLLLLLLMMLMLMMMMLLLLLLLLLLLLLLLMLLLLLMNDENLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLMLLLLLLLLMMMDLLLLMMLLMLLLLLLMMLMMLLLLMMMDLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLSSNSSDNNNNNNNNNNNNNNNNSSSSSSNNNNNNNNNNNNNNNDSNNNSDNSSSSSDNSSSSSSENNNNNNNNNNNNSDNNNNNNNNNNNNNNNNNNNNNNNNNNNNSSSSSSSSSNESSSSSSSSSESSSSDLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLMMLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLLMMMLLLLLMLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMGDIDDDDDDDDGGGDLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLMMLLLKLLLKLLLLLLLLLLLLLMLMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMAAAAAAFDLLLLLLLLLLLLLLLLLLDLLLLLLLLLLLLLLLLLLFFFNRRINNDNEDDDDGLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLMLLLLLLLLLLLLLLLLLKLLLLLLLLLLLLLLLLLLLLLLLLLLMLAMMLLMMLLLMLLLLLLLLLLLLLLLLLLLLMMMDRRDLLLLLLLLLLLLLLLMMLLLLLLLLLLLLLMLLLLLLLLLLMMRRDLLLLLMLLLLLLLLLLMLLLMLLLLLLMLLLLLLLLLLLMLLLLMGDDDIILLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKLLLLLMMMLLLLLLLLLLLLDNDNDNDNDDNDNDNDNDNQIIQDNDNDNDNDNDNDNDNDNDNDNDNDNDNDNDNDNDNSDNDNDDNSEDDNDNDNDNDNDNMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMAMMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMAMMAMALLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMNDNDENDNDLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLNNDELLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMLLLLLLLLLLLLNENEGGNDNLLLLLLMLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMLLLMLLLLLLLLLLLLLLLDLLLLMLLLLLLLLLLLLMMMMLMLLLLLMMDDILLLLLLLLKLKLLLLLLLLLLLLLLLLMAMAALLLLLLLLAQQIIIIDQQLLLLLLLLLLLLLLLOMLLLLLLLKLKLKMLLLLGIIDLLLLLLALLLKLLKLKAMLLLLDIQLLLLLLMLLLLKLLLLLLLDLLLLLLLLLLLLLMLLLLLIIIDDQQIQQDIDDLLLLLLLLLLLLLLLLLLLLLLLKLMMKLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLMKLKLKLMMMMLLLLLLLLLLLLLLLLLLLLLDLLLLLLLLLLLMMLLLLIRGDDKKLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMAGDLLLLMMLLLLMLLLLMLLLLLLLLLMMLLLLLLLLLLLLDEDNNNNDLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLMMLMLLLLLLLLLLLMLLMLMLLLLLLLLLLLLLLLLLLLLLMMLLLLLMLMMLLLLLLLLLLLLLLLLMLLLLLMLLLLMMDQDILLLLLLLLLAMLAMLLLLLAAKLMMLLLLLDLLLLLLMLLLLLLLMLLLLLFFIIKKKKDDDDLLLLLLLLLLLLLLLLLFLLLMFFFLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLFMMFMMMLLLLLLLLLLLLLLLLLLLLLLLNDDIQIQIQNDDENNIQGEDDDDDILLLLLLLLLLLLLLLLLLLLLLLLLLLLMLKKKKMKKKKMMMLLLLMLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKLLLLLLLKMMKKKKMAAFAAAAAMMKKKALLLLLLLLLLLLLLLLLLLLLLLLLLLLADLLLLLLLLLLMLLMLLLLLDENNDLLLLLLLLLLLLMMLLLLLLLLLLLLLLLLLLLLLLLLLMLMFLLLLLLLLLLLLLLLLFDGDLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLDLLLLLFLLLLLMLLMLLLLLADEDRNRDNRNDDRNLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMLLLLLLMLLLLLLLLMLLLLLLLLLLLLLLLLLLLLMLMLLMMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLMMLLLLLMMMMMLLMLLMLLLLLLLLLLLLMLLLLLLLLLLLLLLMLMLFDDDDDINQINQINQINQEILLLLLLLLLLLLLLLLLLLLLLLLLLMKKKKLLLLLLLLLLKKKKLLLLMMMMLLLLLLLLLLLLMLLLLLLLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLKLLLLLLLMKLMKKKKLLLLKKLLLLLKLLLLLLLLLLLLLLLLLLLLLLLLLFFIIQIQDLLLLLLLKLLLLLLLLMLKLLLLLLKKKLLLLLLML","n":["benchmarking","context","coords","debug","define_label","environment","event_loop","io","kernel","map","multi_stage","platform","plugin","raster","render","schedule","style","tcs","tessellation","tile","util","vector","window","io","tessellation","IndexDataType","OverAlignedVertexBuffer","VertexConstructor","buffer","usable_indices","zero_tessellator","ZeroTessellator","buffer","current_index","feature_indices","is_point","path_builder","path_open","MapContext","as_any","as_any_mut","borrow","borrow_mut","downcast","from","into","into_any","into_any_rc","is_within","renderer","resize","style","try_from","try_into","type_id","upcast","view_state","world","AlignedWorldTileCoords","EARTH_CIRCUMFRENCE","EARTH_RADIUS","EXTENT","EXTENT_SINT","EXTENT_UINT","InnerCoords","LatLon","MAX_ZOOM","Quadkey","TILE_SIZE","TileCoords","ViewRegion","WorldCoords","WorldTileCoords","ZOOM_BOUNDS","Zoom","ZoomLevel","add","add","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_dyn_eq","as_dyn_eq","as_dyn_eq","at_ground","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build_quad_key","circumference_at_latitude","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","cmp","cmp","cmp","create_zoom_bounds","default","default","default","default","default","default","default","deserialize","deserialize","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_hash","dyn_hash","dyn_hash","eq","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_lat_lon","get_children","get_parent","hash","hash","hash","into","into","into","into","into","into","into","into","into","into","into_aligned","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_tile","into_world_tile","into_world_tile","is_in_view","is_root","is_valid_bit_pattern","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","iter","latitude","longitude","lower_left","lower_right","max_n_tiles","max_tile","mercator_x_from_lng","mercator_y_from_lat","mercator_z_from_altitude","min_tile","ne","new","new","new","new","new","padding","partial_cmp","partial_cmp","partial_cmp","scale_delta","scale_to_tile","scale_to_zoom_level","serialize","serialize","stencil_reference_value_3d","sub","sub","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_string","to_string","to_string","to_string","to_string","to_string","transform_for_zoom","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upper_left","upper_right","x","x","x","x","y","y","y","y","z","z","zoom_level","zoom_level","zoom_level","DebugPipeline","DebugPlugin","TileDebugItem","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","build","cleanup_system","debug_pass","default","deref","downcast","downcast","downcast","draw_function","draw_function","draw_graph","from","from","from","into","into","into","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","queue_system","render_commands","resource_system","sort_key","source_shape","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","upcast","upcast","upcast","cleanup_system","DebugPassNode","as_any","as_any_mut","borrow","borrow_mut","downcast","from","input","into","into_any","into_any_arc","into_any_rc","is_within","new","run","try_from","try_into","type_id","upcast","update","NAME","input","node","DEBUG_PASS","MAIN_PASS","queue_system","DrawDebugOutline","DrawDebugOutlines","SetDebugPipeline","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","downcast","downcast","from","from","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","render","render","try_from","try_from","try_into","try_into","type_id","type_id","upcast","upcast","resource_system","AsyncProcedureCall","Environment","HttpClient","HttpClient","MapWindowConfig","OffscreenKernelEnvironment","OffscreenKernelEnvironment","Scheduler","create","source_client","Closed","EventLoop","EventLoopConfig","EventLoopProxy","EventLoopProxy","EventLoopProxy","EventType","SendEventError","as_any","as_any_mut","borrow","borrow_mut","create_proxy","create_proxy","downcast","fmt","fmt","from","into","into_any","into_any_arc","into_any_rc","is_within","provide","run","send_event","to_string","try_from","try_into","type_id","upcast","RawLayer","apc","extent","features","geometry_index","keys","name","scheduler","source_client","source_type","values","version","AsyncProcedure","AsyncProcedureCall","AsyncProcedureFuture","CallError","CastError","Context","Context","Deserialize","DeserializeInput","Execution","IncompatibleInput","Input","IntoMessage","Message","MessageError","MessageTag","NotYetImplemented","ProcedureError","ReceiveIterator","Schedule","SchedulerAsyncProcedureCall","SchedulerContext","Send","SendError","Serialize","TileRequest","Transmission","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","buffer","call","call","channel","clone","clone","clone_into","clone_into","deserialize","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","eq","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","has_tag","hash","into","into","into","into","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_transferable","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","new","new","phantom_k","provide","provide","provide","provide","receive","receive","scheduler","send","send","sender","serialize","tag","tag","to_owned","to_owned","to_string","to_string","to_string","to_string","transferable","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","coords","style","ExactGeometry","GeometryIndex","IndexProcessor","IndexedGeometry","LineString","Linear","Polygon","Spatial","TileIndex","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","bounds","build_tree","clone","clone","clone_into","clone_into","contains_point","dataset_begin","dataset_end","default","default","distance_2","downcast","downcast","downcast","downcast","downcast","envelope","exact","feature_begin","feature_end","fmt","fmt","from","from","from","from","from","from_linestring","from_polygon","geo_writer","geometries","geometry_begin","geometry_end","get_geometries","index","index_tile","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","is_within","is_within","linestring_begin","linestring_end","multilinestring_begin","multilinestring_end","multipoint_begin","multipolygon_begin","multipolygon_end","new","new","point_begin","point_end","point_query","polygon_begin","polygon_end","properties","properties","properties_begin","properties_end","property","query_point","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","upcast","upcast","upcast","upcast","upcast","xy","list","tree","NopScheduler","NotImplemented","ScheduleError","Scheduler","Scheduling","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","downcast","downcast","fmt","fmt","from","from","into","into","into_any","into_any","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","provide","schedule","schedule","to_string","try_from","try_from","try_into","try_into","type_id","type_id","upcast","upcast","HTTPClientFactory","HttpClient","HttpSourceClient","SourceClient","SourceFetchError","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","downcast","downcast","downcast","fetch","fetch","fetch","fmt","fmt","from","from","from","from","from","http","inner_client","into","into","into","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","new","new","provide","source","to_owned","to_owned","to_string","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","upcast","upcast","upcast","Raster","RasterSource","SourceType","Tessellate","TessellateSource","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone_into","clone_into","clone_into","default","default","downcast","downcast","downcast","filetype","filetype","format","format","format","from","from","from","into","into","into","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","key","new","new","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","upcast","upcast","upcast","url","url","Kernel","KernelBuilder","apc","apc","apc","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","build","default","downcast","downcast","from","from","http_client","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","map_window_config","map_window_config","map_window_config","new","scheduler","scheduler","scheduler","source_client","source_client","try_from","try_from","try_into","try_into","type_id","type_id","upcast","upcast","with_apc","with_http_client","with_map_window_config","with_scheduler","CurrentMapContext","DeviceInit","Map","MapError","Pending","Ready","RenderGraphInit","RendererAlreadySet","RendererNotReady","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","context","context_mut","downcast","downcast","downcast","fmt","fmt","from","from","from","initialize_renderer","into","into","into","into_any","into_any","into_any","into_any_arc","into_any_rc","into_any_rc","into_any_rc","is_initialized","is_within","is_within","is_within","kernel","kernel","map_context","new","plugins","provide","reset","run_schedule","schedule","to_string","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","upcast","upcast","upcast","window","window","window_mut","renderer_builder","style","MIN_WEBGL_BUFFER_SIZE","ReqwestOffscreenKernelEnvironment","http_client","noweb","run_multithreaded","scheduler","trace","ReqwestHttpClient","client","ReqwestOffscreenKernelEnvironment","as_any","as_any_mut","borrow","borrow_mut","create","downcast","from","http_client","into","into_any","into_any_arc","into_any_rc","is_within","run_multithreaded","scheduler","source_client","trace","try_from","try_into","type_id","upcast","ReqwestHttpClient","as_any","as_any_mut","borrow","borrow_mut","client","clone","clone_into","downcast","fetch","from","into","into_any","into_any_arc","into_any_rc","is_within","new","to_owned","try_from","try_into","type_id","upcast","TokioScheduler","as_any","as_any_mut","borrow","borrow_mut","default","downcast","from","into","into_any","into_any_arc","into_any_rc","is_within","new","schedule","try_from","try_into","type_id","upcast","TokioScheduler","Plugin","build","Available","AvailableRasterLayerData","DefaultRasterTransferables","LayerRaster","LayerRaster","LayerRasterMissing","LayerRasterMissing","Missing","MissingRasterLayerData","RasterLayerData","RasterLayersDataComponent","RasterPlugin","RasterTransferables","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","build_from","build_from","coords","coords","coords","coords","default","default","downcast","downcast","downcast","downcast","downcast","from","from","from","from","from","image","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","is_within","is_within","layers","message_tag","message_tag","populate_world_system","process_raster","queue_system","render_commands","request_system","resource","resource_system","source_layer","source_layer","to_layer","to_layer","transferables","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","upcast","upcast","upcast","upcast","upcast","upload_system","PopulateWorldSystem","as_any","as_any_mut","borrow","borrow_mut","downcast","from","into","into_any","into_any_rc","is_within","kernel","name","new","phantom_t","run","try_from","try_into","type_id","upcast","ProcessRasterContext","ProcessRasterError","Processing","RasterTileRequest","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","context","coords","downcast","downcast","downcast","fmt","fmt","from","from","from","into","into","into","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","layer_raster_finished","new","phantom_t","process_raster_tile","provide","to_string","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","upcast","upcast","upcast","queue_system","DrawRasterTile","DrawRasterTiles","SetRasterTilePipeline","SetRasterViewBindGroup","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","downcast","downcast","downcast","from","from","from","into","into","into","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","render","render","render","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","upcast","upcast","upcast","RequestSystem","as_any","as_any_mut","borrow","borrow_mut","downcast","fetch_raster_apc","from","into","into_any","into_any_rc","is_within","kernel","name","new","phantom_t","run","try_from","try_into","type_id","upcast","raster","RasterResources","as_any","as_any_mut","bind_texture","borrow","borrow_mut","bound_textures","create_texture","downcast","from","get_bound_texture","has_tile","into","into_any","into_any_arc","into_any_rc","is_within","msaa","new","pipeline","pipeline","sampler","try_from","try_into","type_id","upcast","resource_system","DefaultLayerRaster","DefaultLayerRasterMissing","DefaultRasterTransferables","LayerRaster","LayerRaster","LayerRaster","LayerRasterMissing","LayerRasterMissing","LayerRasterMissing","RasterMessageTag","RasterTransferables","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_dyn_eq","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build_from","build_from","build_from","build_from","clone","clone","clone_into","clone_into","coords","coords","coords","coords","coords","coords","downcast","downcast","downcast","downcast","dyn_eq","dyn_hash","eq","equivalent","equivalent","equivalent","fmt","fmt","fmt","from","from","from","from","hash","image","into","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","is_within","layer_name","message_tag","message_tag","message_tag","message_tag","to_layer","to_layer","to_layer","to_layer","to_owned","to_owned","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","upcast","upcast","upcast","upcast","upload_raster_layer","upload_system","Cleanup","Extract","INDEX_FORMAT","MaskPipeline","PhaseSort","Prepare","Queue","Render","RenderPlugin","RenderResources","RenderStageLabel","Renderer","ShaderVertex","adapter","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_dyn_eq","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","builder","camera","clone","clone_into","default","depth_texture","deref","device","device","downcast","downcast","downcast","downcast","downcast","draw_graph","dyn_eq","dyn_hash","eq","equivalent","equivalent","equivalent","error","eventually","fmt","from","from","from","from","from","graph","graph_runner","hash","initialize","initialize_headless","instance","instance","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","is_within","is_within","main_graph","main_pass","multisampling_texture","new","queue","queue","recreate_surface","render_commands","render_graph","render_phase","render_target","request_device","resize_surface","resource","resources","settings","settings","shaders","state","surface","surface","surface","systems","tile_view_pattern","to_owned","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","upcast","upcast","upcast","upcast","upcast","view_state","wgpu_settings","Gone","InitializationResult","Initialized","InitializedRenderer","RendererBuilder","Uninitialized","UninitializedRenderer","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","build","clone","clone_into","default","default","downcast","downcast","downcast","downcast","from","from","from","from","initialize_renderer","into","into","into","into","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_option","is_within","is_within","is_within","is_within","new","renderer","renderer_settings","renderer_settings","to_owned","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","unwrap_renderer","upcast","upcast","upcast","upcast","wgpu_settings","wgpu_settings","with_renderer_settings","with_wgpu_settings","Camera","EdgeInsets","FLIP_Y","InvertedViewProjection","MAX_PITCH","MAX_YAW","MIN_PITCH","MIN_YAW","ModelViewProjection","OPENGL_TO_WGPU_MATRIX","Perspective","ViewProjection","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","bottom","calc_matrix","calc_matrix","calc_matrix_with_center","center","clone","clone","clone","clone_into","clone_into","clone_into","default","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","eq","fmt","fmt","fovx","fovy","fovy","from","from","from","from","from","from","get_pitch","get_roll","get_yaw","into","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","invert","is_within","is_within","is_within","is_within","is_within","is_within","left","move_relative","move_to","ne","new","new","offset_x","offset_y","pitch","pitch","position","position","position_vector","project","project","right","roll","roll","set_pitch","set_roll","set_yaw","to_3d","to_model_view_projection","to_owned","to_owned","to_owned","top","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","upcast","upcast","upcast","upcast","upcast","upcast","x_tan","y_tan","yaw","yaw","NAME","input","node","MAIN_PASS","CreateSurfaceError","Graph","RenderError","RequestDevice","Surface","as_any","as_any_mut","borrow","borrow_mut","downcast","fmt","fmt","from","from","from","from","from","into","into_any","into_any_arc","into_any_rc","is_within","provide","should_exit","source","to_string","try_from","try_into","type_id","upcast","Criteria","Eventually","HasChanged","Initialized","Uninitialized","as_any","as_any_mut","borrow","borrow_mut","default","downcast","expect_initialized_mut","from","has_changed","has_tile","initialize","into","into_any","into_any_arc","into_any_rc","is_within","reinitialize","take","try_from","try_into","type_id","upcast","Buffer","Buffer","DoesNotExist","Edge","EdgeAlreadyExists","EdgeDoesNotExist","EdgeExistence","Edges","EmptyNode","Exists","GraphInputNode","Id","Index","InputSlotError","InputSlotError","InvalidInputNodeSlot","InvalidNode","InvalidOutputNodeSlot","InvalidSlot","InvalidSlot","MismatchedInputSlotType","MismatchedNodeSlots","MismatchedSlotType","MismatchedSlotType","MissingInput","MissingSubGraph","Name","Name","Node","NodeEdge","NodeId","NodeInputSlotAlreadyOccupied","NodeLabel","NodeRunError","NodeState","OutputSlotError","OutputSlotError","RenderContext","RenderGraph","RenderGraphContext","RenderGraphError","RunSubGraph","RunSubGraphError","RunSubGraphError","Sampler","Sampler","SlotEdge","SlotInfo","SlotInfos","SlotLabel","SlotType","SlotValue","SubGraphHasNoInputs","TextureView","TextureView","UnconnectedNodeInputSlot","UnconnectedNodeOutputSlot","WrongNodeType","as_any","as_any","as_any_mut","borrow","borrow_mut","command_encoder","context","current_id","device","downcast","dyn_eq","edge","edges","eq","equivalent","equivalent","equivalent","fmt","fmt","from","graph","graph","id","id","input_edges","input_node","input_slots","inputs","inputs","inputs","into","into_any","into_any_arc","into_any_rc","is_within","name","name","name","node","node","node","node_names","node_slot","nodes","output_edges","output_slots","outputs","provide","run","run_sub_graphs","slot_type","slots","sub_graphs","to_string","try_from","try_into","type_id","type_name","upcast","input_index","input_node","input_node","output_index","output_node","output_node","actual","expected","label","actual","expected","label","input_node","input_slot","input_slot","input_slot","node","node","node","occupied_by_node","output_node","output_slot","output_slot","actual","expected","graph_name","graph_name","label","slot_index","slot_index","slot_name","InputSlotError","InvalidSlot","InvalidSlot","MismatchedInputSlotType","MismatchedSlotType","MismatchedSlotType","MissingInput","MissingSubGraph","OutputSlotError","RenderGraphContext","RunSubGraph","RunSubGraphError","SubGraphHasNoInputs","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","downcast","downcast","downcast","downcast","downcast","dyn_eq","dyn_eq","dyn_eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","finish","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","get_input","get_input_buffer","get_input_sampler","get_input_texture","graph","input_info","inputs","inputs","inputs","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","is_within","is_within","name","new","node","output_info","outputs","provide","provide","provide","run_sub_graph","run_sub_graphs","set_output","to_string","to_string","to_string","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","upcast","upcast","upcast","upcast","upcast","actual","expected","label","actual","expected","label","actual","expected","graph_name","graph_name","label","slot_index","slot_index","slot_name","DoesNotExist","Edge","EdgeExistence","Exists","NodeEdge","SlotEdge","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","clone","clone_into","downcast","downcast","dyn_eq","dyn_eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","from","from","get_input_node","get_output_node","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","upcast","upcast","input_index","input_node","input_node","output_index","output_node","output_node","GraphInputNode","INPUT_NODE_NAME","RenderGraph","add_node","add_node_edge","add_slot_edge","add_sub_graph","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","current_id","default","downcast","downcast","fmt","from","from","get_node","get_node_id","get_node_mut","get_node_state","get_node_state_mut","get_sub_graph","get_sub_graph_mut","has_edge","input","input_node","input_node","inputs","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","iter_node_inputs","iter_node_outputs","iter_nodes","iter_nodes_mut","iter_sub_graphs","iter_sub_graphs_mut","node_names","nodes","output","remove_node","remove_node_edge","remove_slot_edge","remove_sub_graph","run","set_input","sub_graphs","try_from","try_from","try_into","try_into","type_id","type_id","upcast","upcast","update","validate_edge","Edges","EmptyNode","Id","InputSlotError","Name","Node","NodeId","NodeLabel","NodeRunError","NodeState","OutputSlotError","RenderContext","RunSubGraphError","add_input_edge","add_output_edge","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_dyn_eq","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","cmp","command_encoder","device","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast_mut","downcast_rc","downcast_ref","dyn_eq","dyn_eq","dyn_eq","dyn_hash","edges","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","get_input_slot_edge","get_output_slot_edge","has_input_edge","has_output_edge","hash","id","id","id","input","input","input_edges","input_edges","input_slots","into","into","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is","is_within","is_within","is_within","is_within","is_within","is_within","is_within","name","new","new","node","node","node_mut","output","output","output_edges","output_edges","output_slots","partial_cmp","provide","remove_input_edge","remove_output_edge","run","run","source","to_owned","to_owned","to_string","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_name","upcast","upcast","upcast","upcast","upcast","upcast","upcast","update","update","validate_input_slots","validate_output_slots","Buffer","Buffer","Index","Name","Sampler","Sampler","SlotInfo","SlotInfos","SlotLabel","SlotType","SlotValue","TextureView","TextureView","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","default","downcast","downcast","downcast","downcast","downcast","dyn_eq","dyn_eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","get_slot","get_slot_index","get_slot_mut","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_empty","is_within","is_within","is_within","is_within","is_within","iter","len","name","new","slot_type","slot_type","slots","to_owned","to_owned","to_owned","to_owned","to_string","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","upcast","upcast","upcast","upcast","upcast","EmptyNodeOutputSlot","MismatchedInputSlotType","MissingInput","NodeRunError","RenderGraphRunner","RenderGraphRunnerError","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","downcast","downcast","fmt","fmt","from","from","from","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","provide","run","run_graph","source","to_string","try_from","try_from","try_into","try_into","type_id","type_id","upcast","upcast","actual","expected","graph_name","label","slot_index","slot_index","slot_index","slot_name","slot_name","type_name","input","node","MAIN_PASS_DEPENDENCIES","MAIN_PASS_DRIVER","MainPassDriverNode","MainPassNode","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","downcast","downcast","from","from","input","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","new","run","run","try_from","try_from","try_into","try_into","type_id","type_id","upcast","upcast","update","DrawMask","DrawMasks","SetMaskPipeline","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","downcast","downcast","from","from","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","render","render","try_from","try_from","try_into","try_into","type_id","type_id","upcast","upcast","Draw","DrawState","Failure","LayerItem","PhaseItem","RenderCommand","RenderCommandResult","RenderPhase","SortKey","Success","TileMaskItem","add","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clear","default","downcast","downcast","downcast","draw","draw","draw_function","draw_function","draw_function","draw_function","draw_function","from","from","from","index","into","into","into","into_any","into_any","into_any","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_iter","is_within","is_within","is_within","items","phantom_c","phantom_p","render","size","sort","sort_key","sort_key","sort_key","source_shape","source_shape","style_layer","tile","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","upcast","upcast","upcast","Draw","DrawState","Failure","PhaseItem","RenderCommand","RenderCommandResult","SortKey","Success","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","downcast","downcast","draw","draw","draw_function","from","from","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","new","phantom_c","phantom_p","render","render_command_tuple_impl","sort_key","try_from","try_from","try_into","try_into","type_id","type_id","upcast","upcast","BackingBufferDescriptor","BufferDimensions","BufferedTextureHead","FragmentState","Head","Headed","Headless","Queue","RenderPipeline","RenderPipelineDescriptor","Surface","SurfaceTexture","Texture","TextureView","TextureView","TilePipeline","TrackedRenderPass","VertexBufferLayout","VertexState","WindowHead","array_stride","attributes","buffer","buffer","buffer_dimensions","buffers","debug_stencil","depth_stencil","depth_stencil_enabled","describe_render_pipeline","entry_point","entry_point","fragment","fragment_state","head","height","inner_size","label","layout","msaa","multisample","name","output_buffer","padded_bytes_per_row","pass","pipeline","present_mode","primitive","raster","settings","shader","size","size","size","source","source","step_mode","surface","surface","targets","texture","texture","texture","texture_format","texture_format","texture_format_features","tile_pipeline","tracked_render_pass","unpadded_bytes_per_row","update_stencil","vertex","vertex_state","view","width","wireframe","write_buffer","texture","view","BackingBufferDescriptor","as_any","as_any_mut","borrow","borrow_mut","buffer","downcast","from","inner_size","into","into_any","into_any_arc","into_any_rc","is_within","new","try_from","try_into","type_id","upcast","RenderPipeline","RenderPipelineDescriptor","as_any","as_any_mut","borrow","borrow_mut","depth_stencil","describe_render_pipeline","downcast","fragment","from","initialize","into","into_any","into_any_arc","into_any_rc","is_within","label","layout","multisample","primitive","try_from","try_into","type_id","upcast","vertex","FragmentState","VertexBufferLayout","VertexState","array_stride","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","attributes","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","buffers","clone","clone","clone","clone_into","clone_into","clone_into","downcast","downcast","downcast","dyn_eq","entry_point","entry_point","eq","equivalent","equivalent","equivalent","fmt","fmt","fmt","from","from","from","into","into","into","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","source","source","step_mode","targets","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","upcast","upcast","upcast","BufferDimensions","BufferedTextureHead","Head","Headed","Headless","Surface","WindowHead","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","buffer_dimensions","configure","create_view","downcast","downcast","downcast","downcast","downcast","from","from","from","from","from","from_image","from_surface","has_changed","head","head","head_mut","height","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_multisampling_supported","is_within","is_within","is_within","is_within","is_within","new","output_buffer","padded_bytes_per_row","present_mode","reconfigure","recreate","recreate_surface","resize","resize_and_configure","size","size","size","surface","surface","surface_format","texture","texture_format","texture_format","texture_format_features","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","unpadded_bytes_per_row","upcast","upcast","upcast","upcast","upcast","width","SurfaceTexture","Texture","TextureView","TextureView","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","deref","downcast","downcast","fmt","from","from","from","from","has_changed","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","new","size","take_surface_texture","texture","try_from","try_from","try_into","try_into","type_id","type_id","upcast","upcast","view","texture","view","TilePipeline","as_any","as_any_mut","borrow","borrow_mut","debug_stencil","depth_stencil_enabled","describe_render_pipeline","downcast","fragment_state","from","into","into_any","into_any_arc","into_any_rc","is_within","msaa","name","new","raster","settings","try_from","try_into","type_id","upcast","update_stencil","vertex_state","wireframe","TrackedRenderPass","as_any","as_any_mut","borrow","borrow_mut","downcast","draw","draw_indexed","draw_indexed_indirect","draw_indirect","from","insert_debug_marker","into","into_any","into_any_arc","into_any_rc","is_within","new","pass","pop_debug_group","push_debug_group","set_bind_group","set_blend_constant","set_index_buffer","set_push_constants","set_render_pipeline","set_scissor_rect","set_stencil_reference","set_vertex_buffer","set_viewport","try_from","try_into","type_id","upcast","ADDRESS_MODE_CLAMP_TO_BORDER","ADDRESS_MODE_CLAMP_TO_ZERO","Astc","BROWSER_WEBGPU","BUFFER_BINDING_ARRAY","Backends","Bc1RgbaUnorm","Bc1RgbaUnormSrgb","Bc2RgbaUnorm","Bc2RgbaUnormSrgb","Bc3RgbaUnorm","Bc3RgbaUnormSrgb","Bc4RSnorm","Bc4RUnorm","Bc5RgSnorm","Bc5RgUnorm","Bc6hRgbFloat","Bc6hRgbUfloat","Bc7RgbaUnorm","Bc7RgbaUnormSrgb","Bgra8Unorm","Bgra8UnormSrgb","CLEAR_TEXTURE","CONSERVATIVE_RASTERIZATION","DEPTH32FLOAT_STENCIL8","DEPTH_CLIP_CONTROL","DX11","DX12","Depth16Unorm","Depth24Plus","Depth24PlusStencil8","Depth32Float","Depth32FloatStencil8","EacR11Snorm","EacR11Unorm","EacRg11Snorm","EacRg11Unorm","Etc2Rgb8A1Unorm","Etc2Rgb8A1UnormSrgb","Etc2Rgb8Unorm","Etc2Rgb8UnormSrgb","Etc2Rgba8Unorm","Etc2Rgba8UnormSrgb","Features","GL","Headed","Headless","HighPerformance","INDIRECT_FIRST_INSTANCE","Limits","LowPower","MAPPABLE_PRIMARY_BUFFERS","METAL","MULTIVIEW","MULTI_DRAW_INDIRECT","MULTI_DRAW_INDIRECT_COUNT","Msaa","None","PARTIALLY_BOUND_BINDING_ARRAY","PIPELINE_STATISTICS_QUERY","POLYGON_MODE_LINE","POLYGON_MODE_POINT","PRIMARY","PUSH_CONSTANTS","PowerPreference","R16Float","R16Sint","R16Snorm","R16Uint","R16Unorm","R32Float","R32Sint","R32Uint","R8Sint","R8Snorm","R8Uint","R8Unorm","RG11B10UFLOAT_RENDERABLE","RendererSettings","Rg11b10Float","Rg16Float","Rg16Sint","Rg16Snorm","Rg16Uint","Rg16Unorm","Rg32Float","Rg32Sint","Rg32Uint","Rg8Sint","Rg8Snorm","Rg8Uint","Rg8Unorm","Rgb10a2Unorm","Rgb9e5Ufloat","Rgba16Float","Rgba16Sint","Rgba16Snorm","Rgba16Uint","Rgba16Unorm","Rgba32Float","Rgba32Sint","Rgba32Uint","Rgba8Sint","Rgba8Snorm","Rgba8Uint","Rgba8Unorm","Rgba8UnormSrgb","SAMPLED_TEXTURE_AND_STORAGE_BUFFER_ARRAY_NON_UNIFORM_INDEXING","SECONDARY","SHADER_EARLY_DEPTH_TEST","SHADER_F16","SHADER_F64","SHADER_I16","SHADER_PRIMITIVE_INDEX","SPIRV_SHADER_PASSTHROUGH","STORAGE_RESOURCE_BINDING_ARRAY","Stencil8","SurfaceType","TEXTURE_ADAPTER_SPECIFIC_FORMAT_FEATURES","TEXTURE_BINDING_ARRAY","TEXTURE_COMPRESSION_ASTC","TEXTURE_COMPRESSION_ASTC_HDR","TEXTURE_COMPRESSION_BC","TEXTURE_COMPRESSION_ETC2","TEXTURE_FORMAT_16BIT_NORM","TIMESTAMP_QUERY","TIMESTAMP_QUERY_INSIDE_PASSES","TextureFormat","UNIFORM_BUFFER_AND_STORAGE_TEXTURE_ARRAY_NON_UNIFORM_INDEXING","VERTEX_ATTRIBUTE_64BIT","VERTEX_WRITABLE_STORAGE","VULKAN","WgpuSettings","add_srgb_suffix","all","all","all_native_mask","all_webgpu_mask","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","aspect_specific_format","backends","bitand","bitand","bitand_assign","bitand_assign","bitor","bitor","bitor_assign","bitor_assign","bits","bits","bits","bits","bitxor","bitxor","bitxor_assign","bitxor_assign","block_dimensions","block_size","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","check_limits","check_limits_with_fail_fn","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","complement","complement","components","components_with_aspect","constrained_limits","contains","contains","contains_invalid_bits","contains_invalid_bits","default","default","default","default","default","default","depth_texture_format","device_label","difference","difference","disabled_features","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downlevel_defaults","downlevel_webgl2_defaults","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","empty","empty","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","extend","extend","features","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from_bits","from_bits","from_bits_retain","from_bits_retain","from_bits_retain","from_bits_retain","from_bits_truncate","from_bits_truncate","from_iter","from_iter","from_name","from_name","guaranteed_format_features","has_color_aspect","has_depth_aspect","has_stencil_aspect","hash","hash","hash","hash","hash","insert","insert","intersection","intersection","intersects","intersects","into","into","into","into","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_iter","into_iter","is_all","is_all","is_combined_depth_stencil_format","is_compressed","is_depth_stencil_component","is_depth_stencil_format","is_empty","is_empty","is_multisampling","is_srgb","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","iter","iter","iter_names","iter_names","limits","max_bind_groups","max_bindings_per_bind_group","max_buffer_size","max_compute_invocations_per_workgroup","max_compute_workgroup_size_x","max_compute_workgroup_size_y","max_compute_workgroup_size_z","max_compute_workgroup_storage_size","max_compute_workgroups_per_dimension","max_dynamic_storage_buffers_per_pipeline_layout","max_dynamic_uniform_buffers_per_pipeline_layout","max_inter_stage_shader_components","max_push_constant_size","max_sampled_textures_per_shader_stage","max_samplers_per_shader_stage","max_storage_buffer_binding_size","max_storage_buffers_per_shader_stage","max_storage_textures_per_shader_stage","max_texture_array_layers","max_texture_dimension_1d","max_texture_dimension_2d","max_texture_dimension_3d","max_uniform_buffer_binding_size","max_uniform_buffers_per_shader_stage","max_vertex_attributes","max_vertex_buffer_array_stride","max_vertex_buffers","min_storage_buffer_offset_alignment","min_uniform_buffer_offset_alignment","msaa","not","not","power_preference","present_mode","record_trace","remove","remove","remove_srgb_suffix","required_features","sample_type","samples","set","set","sub","sub","sub_assign","sub_assign","symmetric_difference","symmetric_difference","texture_format","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","toggle","toggle","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","union","union","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","using_alignment","using_resolution","block","channel","Mat4x4f32","RasterTileShader","Shader","ShaderCamera","ShaderFeatureStyle","ShaderGlobals","ShaderLayerMetadata","ShaderTextureVertex","ShaderTileMetadata","ShaderVertex","TileMaskShader","Vec2f32","Vec3f32","Vec4f32","VectorTileShader","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","camera","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","color","debug_lines","default","default","default","describe_fragment","describe_fragment","describe_fragment","describe_fragment","describe_vertex","describe_vertex","describe_vertex","describe_vertex","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","draw_colors","fmt","format","format","format","from","from","from","from","from","from","from","from","from","from","from","into","into","into","into","into","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_valid_bit_pattern","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","new","new","new","new","new","new","normal","position","position","tex_coords","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","transform","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","view_position","view_proj","z_index","zoom_factor","cleanup_system","graph_runner_system","resource_system","sort_phase_system","tile_view_pattern_system","upload_system","cleanup_system","GraphRunnerSystem","as_any","as_any_mut","borrow","borrow_mut","default","downcast","from","into","into_any","into_any_arc","into_any_rc","is_within","name","run","try_from","try_into","type_id","upcast","ResourceSystem","as_any","as_any_mut","borrow","borrow_mut","default","downcast","from","into","into_any","into_any_arc","into_any_rc","is_within","name","run","try_from","try_into","type_id","upcast","sort_phase_system","tile_view_pattern_system","upload_system","Children","DEFAULT_TILE_SIZE","DEFAULT_TILE_VIEW_PATTERN_SIZE","HasTile","None","Parent","QueryHasTile","SourceEqTarget","SourceShapes","TileShape","TileViewPattern","ViewTile","ViewTileSources","WgpuTileViewPattern","add","add_resource_query","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","buffer_range","buffer_range","clear","clone","clone","clone","clone_into","clone_into","clone_into","coords","coords","coords","default","default","downcast","downcast","downcast","downcast","downcast","fmt","fmt","fmt","from","from","from","from","from","get_available_children","get_available_parent","has_tile","has_tile","has_tile","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","is_within","is_within","items","new","pattern","phantom_q","phantom_q","render","set_buffer_range","source","target","to_owned","to_owned","to_owned","transform","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","upcast","upcast","upcast","upcast","upcast","view_tiles","view_tiles_buffer","zoom_factor","BackingBuffer","CHILDREN_SEARCH_DEPTH","DEFAULT_TILE_VIEW_PATTERN_SIZE","TileViewPattern","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","buffer","downcast","downcast","fmt","from","from","generate_pattern","inner","inner_size","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","iter","new","new","phantom_q","try_from","try_from","try_into","try_into","type_id","type_id","upcast","upcast","update_pattern","upload_pattern","view_tiles","view_tiles_buffer","MAX_N_TILES","VIEW_REGION_PADDING","ViewState","as_any","as_any_mut","borrow","borrow_mut","camera","camera","camera_mut","camera_to_center_distance","clip_to_window","clip_to_window_transform","clip_to_window_vulkan","create_view_region","did_camera_change","did_zoom_change","downcast","edge_insets","edge_insets","from","furthest_distance","get_intersection_time","height","into","into_any","into_any_arc","into_any_rc","is_within","new","perspective","resize","set_edge_insets","try_from","try_into","type_id","upcast","update_references","update_zoom","view_projection","view_region_bounding_box","view_region_bounding_box_ndc","width","window_to_world","window_to_world_at_ground","window_to_world_nalgebra","zoom","zoom","BoxedStageLabel","MultiStage","NopStage","Schedule","Stage","StageLabel","add_stage","add_stage_after","add_stage_before","add_system_to_stage","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","clear","default","downcast","downcast","downcast","downcast","downcast_mut","downcast_rc","downcast_ref","eq","from","from","from","get_stage","get_stage_mut","hash","into","into","into","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","is","is_within","is_within","is_within","iter_stages","new","remove_stage","run","run","run","run","run_once","stage","stage_order","stages","stages","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","upcast","upcast","upcast","Aces2065","Aces2065","AcesCc","AcesCc","AcesCct","AcesCct","AcesCg","AcesCg","Alpha","Bt2020","Bt2020","Bt2100","Bt2100","CieLCh","CieLCh","CieLab","CieLab","CieXYZ","CieXYZ","CintTy","ColorInterop","ColorType","ComponentTy","DciP3","DciP3","DciXYZPrime","DciXYZPrime","DisplayP3","DisplayP3","EncodedBt2020","EncodedBt2020","EncodedBt2100HLG","EncodedBt2100HLG","EncodedBt2100PQ","EncodedBt2100PQ","EncodedDisplayP3","EncodedDisplayP3","EncodedRec709","EncodedRec709","EncodedSrgb","EncodedSrgb","GenericColor1","GenericColor1","GenericColor3","GenericColor3","Hsl","Hsl","Hsv","Hsv","ICtCpHLG","ICtCpHLG","ICtCpPQ","ICtCpPQ","LinearSrgb","LinearSrgb","Luma","Luma","Luminance","Luminance","NUM_COMPONENTS","Oklab","Oklab","Oklch","Oklch","PremultipliedAlpha","Rec709","Rec709","SPACE","Spaces","Style","YCbCr","YCbCr","YCxCz","YCxCz","YPbPr","YPbPr","YPrimeCbCr","YPrimeCbCr","YPrimePbPr","YPrimePbPr","Yuv","Yuv","a","a","alpha","alpha","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_dyn_eq","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_mut","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","as_ref","b","b","b","b","b","b","b","b","b","b","b","b","b","b","b","b","b","b","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","c","c","cb","cb","center","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","clone_into","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","cmp","color","color","cp","cp","cr","cr","ct","ct","cx","cz","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","downcast","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_eq","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","dyn_hash","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","eq","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from","from_cint","g","g","g","g","g","g","g","g","g","g","g","g","g","g","g","g","h","h","h","h","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","hash","i","i","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_cint","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","is_within","l","l","l","l","l","l","l","layer","layers","metadata","name","num_components","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","partial_cmp","pb","pb","pitch","pr","pr","r","r","r","r","r","r","r","r","r","r","r","r","r","r","r","r","raster","s","s","source","sources","style","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","type_id","u","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upcast","v","v","version","x","x","x","x","y","y","y","y","y","y","y","y","y","z","z","z","zoom","Background","BackgroundPaint","Fill","FillPaint","LayerPaint","Line","LinePaint","Raster","StyleLayer","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","background_color","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","default","deserialize","deserialize","deserialize","deserialize","deserialize","downcast","downcast","downcast","downcast","downcast","fill_color","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","get_color","id","index","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","is_within","is_within","line_color","maxzoom","metadata","minzoom","paint","serialize","serialize","serialize","serialize","serialize","source","source_layer","to_owned","to_owned","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","upcast","upcast","upcast","upcast","upcast","Linear","Nearest","RasterLayer","RasterResampling","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","default","deserialize","deserialize","downcast","downcast","fmt","fmt","from","from","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","raster_brightness_max","raster_brightness_min","raster_contrast","raster_fade_duration","raster_hue_rotate","raster_opacity","raster_resampling","raster_saturation","serialize","serialize","to_owned","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","upcast","upcast","Raster","Source","TMS","TileAddressingScheme","TileJSONUrl","TileUrl","Vector","VectorSource","XYZ","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","attribution","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","bounds","clone","clone","clone","clone_into","clone_into","clone_into","default","deserialize","deserialize","deserialize","downcast","downcast","downcast","fmt","fmt","fmt","from","from","from","into","into","into","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","maxzoom","minzoom","scheme","serialize","serialize","serialize","tiles","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","upcast","upcast","upcast","Style","as_any","as_any_mut","borrow","borrow_mut","center","clone","clone_into","default","deserialize","downcast","fmt","from","into","into_any","into_any_arc","into_any_rc","is_within","layers","metadata","name","pitch","serialize","sources","to_owned","try_from","try_into","type_id","upcast","version","zoom","EphemeralQueryState","GlobalQueryState","QueryState","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","clone_to","clone_to","create","create","default","downcast","downcast","from","from","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","mutably_borrowed","resources","state","system","tiles","try_from","try_from","try_into","try_into","type_id","type_id","upcast","upcast","world","Item","MutItem","Resource","ResourceQuery","ResourceQueryMut","ResourceQueryUnsafe","Resources","State","State","as_any","as_any_mut","borrow","borrow_mut","default","downcast","downcast","downcast_mut","downcast_rc","downcast_ref","exists","from","get","get_mut","get_or_init_mut","impl_resource_query","index","init","insert","into","into_any","into_any_rc","is","is_within","query","query","query_mut","query_mut","query_unsafe","resources","try_from","try_into","type_id","upcast","BoxedSystem","IntoSystemContainer","System","SystemContainer","as_any","as_any_mut","borrow","borrow_mut","downcast","from","function","into","into_any","into_any_rc","into_container","into_container","is_within","name","new","run","stage","system","try_from","try_into","type_id","upcast","FunctionSystem","IntoSystem","System","as_any","as_any_mut","borrow","borrow_mut","downcast","from","func","into","into_any","into_any_arc","into_any_rc","into_system","is_within","name","run","try_from","try_into","type_id","upcast","SystemStage","add_system","as_any","as_any_mut","borrow","borrow_mut","default","downcast","from","into","into_any","into_any_rc","is_within","run","systems","try_from","try_into","type_id","upcast","with_system","ComponentQuery","ComponentQueryMut","ComponentQueryUnsafe","EphemeralQueryState","GlobalQueryState","Item","MutItem","QueryState","State","State","Tile","TileComponent","TileSpawnResult","Tiles","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clear","clone","clone_into","clone_to","clone_to","components","coords","create","create","default","default","downcast","downcast","downcast","downcast","downcast","downcast","downcast_mut","downcast_rc","downcast_ref","exists","fmt","from","from","from","from","from","geometry_index","insert","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is","is_within","is_within","is_within","is_within","is_within","mutably_borrowed","query","query","query_mut","query_mut","query_unsafe","spawn_mut","state","tile","tiles","tiles","to_owned","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","upcast","upcast","upcast","upcast","upcast","World","as_any","as_any_mut","borrow","borrow_mut","default","downcast","from","into","into_any","into_any_rc","is_within","resources","tiles","try_from","try_into","type_id","upcast","Align","DEFAULT_TOLERANCE","IndexDataType","OverAlignedVertexBuffer","VertexConstructor","align_indices","align_vertices","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","buffer","clone","clone_into","downcast","downcast","empty","from","from","from","from_iters","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","new_vertex","new_vertex","to_owned","try_from","try_from","try_into","try_into","type_id","type_id","upcast","upcast","usable_indices","zero_tessellator","GeoResult","ZeroTessellator","as_any","as_any_mut","borrow","borrow_mut","buffer","current_index","default","downcast","end","feature_end","feature_indices","from","into","into_any","into_any_rc","is_point","is_within","linestring_begin","linestring_end","multilinestring_begin","multilinestring_end","multipoint_begin","multipoint_end","multipolygon_begin","multipolygon_end","path_builder","path_open","point_begin","point_end","polygon_begin","polygon_end","tessellate_fill","tessellate_strokes","try_from","try_into","type_id","upcast","update_feature_indices","xy","Feature","GeomType","Layer","Linestring","Point","Polygon","Unknown","Value","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_dyn_eq","as_str_name","bool_value","bool_value","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clear","clear","clear","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","cmp","default","default","default","default","double_value","double_value","downcast","downcast","downcast","downcast","dyn_eq","dyn_hash","encoded_len","encoded_len","encoded_len","eq","eq","eq","eq","equivalent","equivalent","equivalent","extent","extent","features","float_value","float_value","fmt","fmt","fmt","fmt","from","from","from","from","from","from_i32","from_str_name","geometry","hash","id","id","int_value","int_value","into","into","into","into","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_valid","is_within","is_within","is_within","is_within","keys","name","partial_cmp","process","process_geom","set_type","sint_value","sint_value","string_value","string_value","tags","to_geo","to_mvt","to_mvt_unscaled","to_owned","to_owned","to_owned","to_owned","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type","type","type_id","type_id","type_id","type_id","uint_value","uint_value","upcast","upcast","upcast","upcast","values","version","ChangeObserver","Epsilon","FPSMeter","SignificantlyDifferent","as_any","as_any_mut","borrow","borrow_mut","default","deref","deref_mut","did_change","downcast","fps_meter","frame_count","from","grid","inner","into","into_any","into_any_arc","into_any_rc","is_within","label","math","ne","new","next_report","reference_value","try_from","try_into","type_id","upcast","update_reference","FPSMeter","as_any","as_any_mut","borrow","borrow_mut","default","downcast","frame_count","from","into","into_any","into_any_arc","into_any_rc","is_within","new","next_report","try_from","try_into","type_id","upcast","update_and_print","google_mercator","tile_coordinates_bavaria","DynEq","DynHash","as_any","as_dyn_eq","dyn_eq","dyn_hash","Aabb2","Aabb3","FloatOrd","Plane","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","bounds_from_points","clone","clone_into","cmp","d","div_away","div_ceil","div_floor","downcast","downcast","downcast","downcast","dyn_eq","eq","equivalent","equivalent","equivalent","fmt","fmt","fmt","fmt","from","from","from","from","from_point_normal","from_points","intersection_distance_ray","intersection_points_aabb3","intersection_polygon_aabb3","into","into","into","into","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","is_within","max","max","max","min","min","min","n","new","new","new","partial_cmp","to_corners","to_corners","to_owned","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","upcast","upcast","upcast","upcast","Available","AvailableVectorLayerData","DefaultVectorTransferables","LayerIndexed","LayerIndexed","LayerMissing","LayerMissing","LayerTessellated","LayerTessellated","Missing","MissingVectorLayerData","ProcessVectorContext","ProcessVectorError","Processing","SendError","TileTessellated","TileTessellated","VectorBufferPool","VectorLayerData","VectorLayersDataComponent","VectorPipeline","VectorPlugin","VectorTileRequest","VectorTilesDone","VectorTransferables","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","buffer","build","build_from","build_from","build_from","build_from","context","coords","coords","coords","coords","coords","coords","coords","default","default","default","deref","done","downcast","downcast","downcast","downcast","downcast","downcast","downcast","feature_indices","from","from","from","from","from","from","from","has_tile","into","into","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_empty","is_within","is_within","is_within","is_within","is_within","is_within","is_within","layer_name","layers","layers","message_tag","message_tag","message_tag","message_tag","phantom_t","populate_world_system","process_vector","process_vector_tile","queue_system","render_commands","request_system","resource","resource_system","source_layer","source_layer","to_layer","to_layer","to_tile_index","transferables","try_from","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","type_id","upcast","upcast","upcast","upcast","upcast","upcast","upcast","upload_system","PopulateWorldSystem","as_any","as_any_mut","borrow","borrow_mut","downcast","from","into","into_any","into_any_rc","is_within","kernel","name","new","phantom_t","run","try_from","try_into","type_id","upcast","ProcessVectorContext","ProcessVectorError","Processing","SendError","VectorTileRequest","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","context","coords","downcast","downcast","downcast","fmt","fmt","from","from","from","into","into","into","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","layer_indexing_finished","layer_missing","layer_tesselation_finished","layers","new","phantom_t","process_vector_tile","provide","take_context","tile_finished","to_string","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","upcast","upcast","upcast","queue_system","DrawVectorTile","DrawVectorTiles","SetVectorTilePipeline","as_any","as_any","as_any_mut","as_any_mut","borrow","borrow","borrow_mut","borrow_mut","downcast","downcast","from","from","into","into","into_any","into_any","into_any_arc","into_any_arc","into_any_rc","into_any_rc","is_within","is_within","render","render","try_from","try_from","try_into","try_into","type_id","type_id","upcast","upcast","RequestSystem","as_any","as_any_mut","borrow","borrow_mut","downcast","fetch_vector_apc","from","into","into_any","into_any_rc","is_within","kernel","name","new","phantom_t","run","try_from","try_into","type_id","upcast","buffer_pool","BackingBuffer","BackingBufferType","BufferPool","FEATURE_METADATA_SIZE","FeatureMetadata","INDICES_SIZE","IndexEntry","Indices","LAYER_METADATA_SIZE","Metadata","RingIndex","RingIndexEntry","VERTEX_SIZE","Vertices","align","allocate_layer_geometry","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","back","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","buffer_feature_metadata","buffer_indices","buffer_layer_metadata","buffer_vertices","clear","clear","clone","clone","clone_into","clone_into","coords","default","downcast","downcast","downcast","downcast","downcast","downcast","feature_metadata","feature_metadata","feature_metadata_buffer_range","find_largest_gap","fmt","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","from_device","front","get_layers","get_loaded_source_layers_at","has_tile","index","index","indices","indices","indices_buffer_range","indices_range","inner","inner_size","into","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_within","is_within","is_within","is_within","is_within","is_within","iter","layer_metadata","layer_metadata_buffer_range","layers","linear_index","make_room","metadata","new","new","new","phantom_fm","phantom_i","phantom_m","phantom_q","phantom_v","pop_front","push_back","style_layer","to_owned","to_owned","tree_index","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","typ","type_id","type_id","type_id","type_id","type_id","type_id","upcast","upcast","upcast","upcast","upcast","upcast","update_feature_metadata","update_layer_metadata","usable_indices","vertices","vertices","vertices_buffer_range","resource_system","DefaultLayerIndexed","DefaultLayerMissing","DefaultLayerTesselated","DefaultTileTessellated","DefaultVectorTransferables","LayerIndexed","LayerIndexed","LayerIndexed","LayerMissing","LayerMissing","LayerMissing","LayerTessellated","LayerTessellated","LayerTessellated","TileTessellated","TileTessellated","TileTessellated","VectorMessageTag","VectorTransferables","as_any","as_any","as_any","as_any","as_any","as_any","as_any","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_any_mut","as_dyn_eq","borrow","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","buffer","build_from","build_from","build_from","build_from","build_from","build_from","build_from","build_from","clone","clone","clone","clone_into","clone_into","clone_into","coords","coords","coords","coords","coords","coords","coords","coords","coords","coords","coords","coords","downcast","downcast","downcast","downcast","downcast","downcast","dyn_eq","dyn_hash","eq","equivalent","equivalent","equivalent","feature_indices","fmt","fmt","fmt","fmt","fmt","from","from","from","from","from","from","hash","index","into","into","into","into","into","into","into","into","into","into","into_any","into_any","into_any","into_any","into_any","into_any","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_arc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","into_any_rc","is_empty","is_empty","is_within","is_within","is_within","is_within","is_within","is_within","layer_data","layer_name","layer_name","layer_name","message_tag","message_tag","message_tag","message_tag","message_tag","message_tag","message_tag","message_tag","to_layer","to_layer","to_layer","to_layer","to_owned","to_owned","to_owned","to_tile_index","to_tile_index","try_from","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","type_id","upcast","upcast","upcast","upcast","upcast","upcast","upload_system","upload_tesselated_layer","HeadedMapWindow","MapWindow","MapWindow","MapWindowConfig","RawWindow","WindowSize","as_any","as_any","as_any_mut","borrow","borrow_mut","clone","clone_into","create","downcast","dyn_eq","eq","equivalent","equivalent","equivalent","from","height","height","height_non_zero","id","into","into_any","into_any_arc","into_any_rc","is_within","new","raw","request_redraw","size","to_owned","try_from","try_into","type_id","upcast","width","width","width_non_zero"],"q":[[0,"maplibre"],[23,"maplibre::benchmarking"],[25,"maplibre::benchmarking::tessellation"],[31,"maplibre::benchmarking::tessellation::zero_tessellator"],[38,"maplibre::context"],[58,"maplibre::coords"],[386,"maplibre::debug"],[446,"maplibre::debug::cleanup_system"],[447,"maplibre::debug::debug_pass"],[467,"maplibre::debug::draw_graph"],[470,"maplibre::debug::draw_graph::node"],[472,"maplibre::debug::queue_system"],[473,"maplibre::debug::render_commands"],[508,"maplibre::debug::resource_system"],[509,"maplibre::environment"],[519,"maplibre::event_loop"],[550,"maplibre::io"],[562,"maplibre::io::apc"],[751,"maplibre::io::apc::Input"],[753,"maplibre::io::geometry_index"],[887,"maplibre::io::geometry_index::TileIndex"],[889,"maplibre::io::scheduler"],[929,"maplibre::io::source_client"],[998,"maplibre::io::source_type"],[1069,"maplibre::kernel"],[1120,"maplibre::map"],[1191,"maplibre::map::CurrentMapContext"],[1193,"maplibre::platform"],[1200,"maplibre::platform::http_client"],[1202,"maplibre::platform::noweb"],[1224,"maplibre::platform::noweb::http_client"],[1246,"maplibre::platform::noweb::scheduler"],[1265,"maplibre::platform::scheduler"],[1266,"maplibre::plugin"],[1268,"maplibre::raster"],[1382,"maplibre::raster::populate_world_system"],[1402,"maplibre::raster::process_raster"],[1460,"maplibre::raster::queue_system"],[1461,"maplibre::raster::render_commands"],[1513,"maplibre::raster::request_system"],[1534,"maplibre::raster::resource"],[1535,"maplibre::raster::resource::raster"],[1561,"maplibre::raster::resource_system"],[1562,"maplibre::raster::transferables"],[1673,"maplibre::raster::upload_system"],[1675,"maplibre::render"],[1820,"maplibre::render::builder"],[1904,"maplibre::render::camera"],[2061,"maplibre::render::draw_graph"],[2064,"maplibre::render::draw_graph::node"],[2065,"maplibre::render::error"],[2095,"maplibre::render::eventually"],[2122,"maplibre::render::graph"],[2239,"maplibre::render::graph::Edge"],[2245,"maplibre::render::graph::InputSlotError"],[2248,"maplibre::render::graph::OutputSlotError"],[2251,"maplibre::render::graph::RenderGraphError"],[2262,"maplibre::render::graph::RunSubGraphError"],[2270,"maplibre::render::graph::context"],[2404,"maplibre::render::graph::context::InputSlotError"],[2407,"maplibre::render::graph::context::OutputSlotError"],[2410,"maplibre::render::graph::context::RunSubGraphError"],[2418,"maplibre::render::graph::edge"],[2472,"maplibre::render::graph::edge::Edge"],[2478,"maplibre::render::graph::graph"],[2548,"maplibre::render::graph::node"],[2753,"maplibre::render::graph::node_slot"],[2892,"maplibre::render::graph_runner"],[2936,"maplibre::render::graph_runner::RenderGraphRunnerError"],[2946,"maplibre::render::main_graph"],[2948,"maplibre::render::main_graph::node"],[2950,"maplibre::render::main_pass"],[2987,"maplibre::render::render_commands"],[3022,"maplibre::render::render_phase"],[3101,"maplibre::render::render_phase::draw"],[3148,"maplibre::render::resource"],[3224,"maplibre::render::resource::TextureView"],[3226,"maplibre::render::resource::buffer"],[3245,"maplibre::render::resource::pipeline"],[3271,"maplibre::render::resource::shader"],[3346,"maplibre::render::resource::surface"],[3460,"maplibre::render::resource::texture"],[3504,"maplibre::render::resource::texture::TextureView"],[3506,"maplibre::render::resource::tile_pipeline"],[3534,"maplibre::render::resource::tracked_render_pass"],[3568,"maplibre::render::settings"],[4071,"maplibre::render::settings::TextureFormat"],[4073,"maplibre::render::shaders"],[4301,"maplibre::render::systems"],[4307,"maplibre::render::systems::cleanup_system"],[4308,"maplibre::render::systems::graph_runner_system"],[4327,"maplibre::render::systems::resource_system"],[4346,"maplibre::render::systems::sort_phase_system"],[4347,"maplibre::render::systems::tile_view_pattern_system"],[4348,"maplibre::render::systems::upload_system"],[4349,"maplibre::render::tile_view_pattern"],[4477,"maplibre::render::tile_view_pattern::pattern"],[4524,"maplibre::render::view_state"],[4572,"maplibre::schedule"],[4649,"maplibre::style"],[6526,"maplibre::style::layer"],[6653,"maplibre::style::raster"],[6708,"maplibre::style::source"],[6787,"maplibre::style::style"],[6818,"maplibre::tcs"],[6862,"maplibre::tcs::resources"],[6905,"maplibre::tcs::system"],[6931,"maplibre::tcs::system::function"],[6953,"maplibre::tcs::system::stage"],[6973,"maplibre::tcs::tiles"],[7092,"maplibre::tcs::world"],[7110,"maplibre::tessellation"],[7158,"maplibre::tessellation::zero_tessellator"],[7199,"maplibre::tile"],[7345,"maplibre::util"],[7379,"maplibre::util::fps_meter"],[7400,"maplibre::util::grid"],[7402,"maplibre::util::label"],[7408,"maplibre::util::math"],[7509,"maplibre::vector"],[7684,"maplibre::vector::populate_world_system"],[7704,"maplibre::vector::process_vector"],[7768,"maplibre::vector::queue_system"],[7769,"maplibre::vector::render_commands"],[7804,"maplibre::vector::request_system"],[7825,"maplibre::vector::resource"],[7826,"maplibre::vector::resource::buffer_pool"],[7996,"maplibre::vector::resource_system"],[7997,"maplibre::vector::transferables"],[8176,"maplibre::vector::upload_system"],[8178,"maplibre::window"]],"d":["Collection of utilities used to perform certain …","","Provides utilities related to coordinates.","","Macro to define a new label trait","","","Handles IO related processing as well as multithreading.","","","","Handles platform specific code. Depending on the …","","","This module implements the rendering algorithm of …","","Vector tile format styling.","","Tessellation for lines and polygons is implemented here.","Nested message and enum types in Tile.","Utils which are used internally","","Utilities for the window system.","Re-export of the io module.","Re-export of the tessellation module.","Vertex buffers index data type.","Vertex buffer which includes additional padding to fulfill …","Constructor for Fill and Stroke vertices.","","","Tessellator implementation.","Build tessellations with vectors.","","","","","","","Stores the context of the map.","","","","","","Returns the argument unchanged.","Calls U::from(self).","","","","","","","","","","","","","An aligned world tile coordinate aligns a world coordinate …","The average circumference of the world in meters.","Approximate radius of the earth in meters. Uses the WGS-84 …","","","","Within each tile there is a separate coordinate system. …","","","Represents the position of a node within a quad tree. The …","","Every tile has tile coordinates. These tile coordinates …","Defines a bounding box on a tiled map with a ZoomLevel and …","Actual coordinates within the 3D world. The z value of the …","Every tile has tile coordinates. Every tile coordinate can …","","Zoom is an exponential scale that defines the zoom of the …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Adopted from tilebelt","The circumference at a line of latitude in meters.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Returns the argument unchanged.","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Returns the argument unchanged.","","","Returns the argument unchanged.","","","Returns the argument unchanged.","","Adopted from tilebelt","Get the tile which is one zoom level lower and contains …","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the tile coords according to an addressing scheme. …","Transforms the tile coordinates as defined by the tile …","","","","","","","","","","","","","","","","","","","","The maximum amount of tiles this view region contains","","","","","","","","","","","","Padding around this view region","","","","","","","","","Returns unique stencil reference values for …","","","","","","","","","","","","","","","","","Adopted from Transform::calculatePosMatrix","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Adopted from Transform::coveringZoomLevel","","At which zoom level does this region exist","","","","","","","","","","","","","","","","","","","","","","","","","","Labels for the “draw” graph","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","Queues PhaseItems for rendering.","Specifies the instructions which are going to be sent to …","Prepares GPU-owned resources by initializing them if they …","","","","","","","","","","","","","","","","Pass which renders debug information on top of the map.","","","","","","Returns the argument unchanged.","","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","The environment defines which types must be injected into …","","","","","","","","","The event loop was already closed","","","","","","","When sending events to an event loop errors can occur.","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self).","","","","","","","","","","","","","Layers are described in section 4.1 of the specification","","Although this is an “optional” field it is required by …","The actual features in this tile.","Geometry index.","Dictionary encoding for keys","","Scheduling.","HTTP client.","","Dictionary encoding for values","Any compliant implementation must first read the version …","Type definitions for asynchronous procedure calls. These …","APCs define an interface for performing work …","","","","Allows sending messages from workers to back to the caller.","","","","","The Input is not compatible with the procedure","Inputs for an AsyncProcedure","","The result of the tessellation of a tile. This is sent as …","","Defines a set of strongly-typed labels for a class of …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Call an AsyncProcedure using some Input. This function is …","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Try to receive a message non-blocking.","","","Send a message back to the caller.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Contains either a polygon or line vector.","A quad tree storing the currently loaded tiles.","A processor able to create geometries using …","An indexed geometry contains an exact vector geometry, …","","","","","Index of tiles which can be of two types: spatial or …","","","","","","","","","","","","","","","","","","","","","","","","","","","","Begin of dataset processing.","End of dataset processing.","","","","","","","","","","","Begin of feature processing.","End of feature processing.","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","Begin of feature geometry processing.","End of feature geometry processing.","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Begin of feature property processing.","End of feature property processing.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Async/await scheduler. Can schedule a task from a future …","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","A closure that returns a HTTP client.","On the web platform futures are not thread-safe (i.e. not …","Gives access to the HTTP client which can be of multiple …","Defines the different types of HTTP clients such as basic …","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","Returns the argument unchanged.","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Represents a source from which the raster tile are fetched.","Represents the tiles’ different types of source.","","Represents a source from which the vector tile are fetched.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Holds references to core constructs of maplibre. Based on …","A convenient builder for Kernels.","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","No need to set renderer again","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","Resets the complete state of this map - a new renderer and …","","","","","","","","","","","","","","","","","","","","","Minimum WebGPU buffer size","","Http client for non-web targets.","Module which is used target platform is not web related.","","Scheduler for non-web targets.","","","","","","","","","","","Returns the argument unchanged.","","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self).","","","","","cache_path: Under which path should we cache requests.","","","","","","Multi-threading with Tokio.","","","","","","","Returns the argument unchanged.","Calls U::from(self).","","","","","","","","","","","Multi-threading with Tokio.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","Queues PhaseItems for rendering.","","Requests tiles which are currently in view","","Prepares GPU-owned resources by initializing them if they …","","","","","","","","","","","","","","","","","","","","","","","","","","Uploads data to the GPU which is needed for rendering.","","","","","","","Returns the argument unchanged.","Calls U::from(self).","","","","","","","","","","","","","","","Error during processing of the pipeline","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self).","","","","","","","","","","","","","","Holds the resources necessary for the raster tiles such as …","","","Creates a bind group for each fetched raster tile and …","","","","","","Returns the argument unchanged.","","","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","Calls U::from(self).","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Cleanup render resources here.","Extract data from the world.","","","Sort the RenderPhases here.","Prepare render resources from the extracted data for the …","Queues PhaseItems that depend on Prepare data and queue up …","Actual rendering happens here. In most cases, only the …","","","The labels of the default App rendering stages.","","","","","","","","","","","","","","","","","","","","","","","","","","","","Main camera","","","","","","","","","","","","","Labels for the “draw” graph","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Executes a RenderGraph","","Initializes the renderer by retrieving and preparing the …","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","The main render pass for this application.","","","","","","Specifies the instructions which are going to be sent to …","","Describes the concept of a RenderPhase and PhaseItem","","Requests a device","","Utilities which holds references to GPU-owned. Usually a …","","Settings for the renderer","","","","","","","Rendering specific systems","Utility for generating a tile pattern which can be used …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Initializes the whole rendering pipeline for the given …","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Utility method that computes the new apprent center or …","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","Calls U::from(self).","","","","","","","","","","","","","","Wrapper around a resource which can be initialized or …","","","","","","","","","","","Returns the argument unchanged.","","","","Calls U::from(self).","","","","","","","","","","","A GPU-accessible [Buffer].","A GPU-accessible [Buffer].","","An edge, which connects two Nodes in a RenderGraph.","","","","A collection of input and output Edges for a Node.","A Node without any inputs, outputs and subgraphs, which …","","A Node which acts as an entry point for a RenderGraph with …","","","","","","","","","","","","","","","","","","A render node that can be added to a RenderGraph.","An edge describing to ordering of both nodes (output_node …","A Node identifier. It automatically generates its own …","","A NodeLabel is used to reference a NodeState by either its …","","The internal representation of a Node, with all data …","","","The context with all information required to interact with …","The render graph configures the modular, parallel and …","The context with all graph information required to run a …","","A command that signals the graph runner to run the sub …","","","A texture [Sampler] defines how a pipeline will sample …","A texture [Sampler] defines how a pipeline will sample …","An edge describing to ordering of both nodes (output_node …","The internal representation of a slot, which specifies its …","A collection of input or output SlotInfos for a NodeState.","A SlotLabel is used to reference a slot by either its name …","Describes the render resources created (output) or used …","A value passed between render Nodes. Corresponds to the …","","A TextureView describes a texture used in a pipeline.","A TextureView describes a texture used in a pipeline.","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","","","","","","","","Calls U::from(self).","","","","","","","","","","","","","","","","","","Runs the graph node logic, issues draw calls, updates the …","","","","","","","","","The name of the type that implements Node.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The context with all graph information required to run a …","A command that signals the graph runner to run the sub …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Finishes the context for this Node by returning the sub …","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Retrieves the input slot value referenced by the label.","Retrieves the input slot value referenced by the label as …","Retrieves the input slot value referenced by the label as …","Retrieves the input slot value referenced by the label as …","","Returns the SlotInfos of the inputs.","Returns the input slot values for the node.","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","Creates a new render graph context for the node.","","Returns the SlotInfos of the outputs.","","","","","Queues up a sub graph for execution after the node has …","","Sets the output slot value referenced by the label.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","An edge, which connects two Nodes in a RenderGraph.","","","An edge describing to ordering of both nodes (output_node …","An edge describing to ordering of both nodes (output_node …","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the id of the input_node.","Returns the id of the output_node.","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","A Node which acts as an entry point for a RenderGraph with …","The name of the GraphInputNode of this graph. Used to …","The render graph configures the modular, parallel and …","Adds the node with the name to the graph. If the name is …","Adds the Edge::NodeEdge to the graph. This guarantees that …","Adds the Edge::SlotEdge to the graph. This guarantees that …","Adds the sub_graph with the name to the graph. If the name …","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Retrieves the Node referenced by the label.","Retrieves the NodeId referenced by the label.","Retrieves the Node referenced by the label mutably.","Retrieves the NodeState referenced by the label.","Retrieves the NodeState referenced by the label mutably.","Retrieves the sub graph corresponding to the name.","Retrieves the sub graph corresponding to the name mutably.","Checks whether the edge already exists in the graph.","","Returns the NodeState of the input node of this graph..","","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","Returns an iterator over a tuple of the input edges and …","Returns an iterator over a tuple of the output edges and …","Returns an iterator over the NodeStates.","Returns an iterator over the NodeStates, that allows …","Returns an iterator over the sub graphs.","Returns an iterator over the sub graphs, that allows …","","","","Removes the node with the name from the graph. If the name …","Removes the Edge::NodeEdge from the graph. If either node …","Removes the Edge::SlotEdge from the graph. If any nodes or …","Removes the sub_graph with the name from the graph. If the …","","Creates an GraphInputNode with the specified slots if not …","","","","","","","","","","Updates all nodes and sub graphs of the render graph. …","Verifies that the edge existence is as expected and checks …","A collection of input and output Edges for a Node.","A Node without any inputs, outputs and subgraphs, which …","","","","A render node that can be added to a RenderGraph.","A Node identifier. It automatically generates its own …","A NodeLabel is used to reference a NodeState by either its …","","The internal representation of a Node, with all data …","","The context with all information required to interact with …","","Adds an edge to the input_edges if it does not already …","Adds an edge to the output_edges if it does not already …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns a boxed object from a boxed trait object if the …","","","","","","","Returns a mutable reference to the object within the trait …","Returns an Rc-ed object from an Rc-ed trait object if the …","Returns a reference to the object within the trait object …","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","","Searches the input_edges for a Edge::SlotEdge, which …","Searches the output_edges for a Edge::SlotEdge, which …","Checks whether the input edge already exists.","Checks whether the output edge already exists.","","Returns this node’s id.","","","Specifies the required input slots for this node. They …","Specifies the required input slots for this node. They …","Returns all “input edges” (edges going “in”) for …","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","Returns true if the trait object wraps an object of type …","","","","","","","","","Creates an NodeState without edges, but the input_slots …","","Retrieves the Node.","","Retrieves the Node mutably.","Specifies the produced output slots for this node. They …","Specifies the produced output slots for this node. They …","Returns all “output edges” (edges going “out”) for …","","","","","Removes an edge from the input_edges if it exists.","Removes an edge from the output_edges if it exists.","Runs the graph node logic, issues draw calls, updates the …","","","","","","","","","","","","","","","","","","","","","","","","","","","The name of the type that implements Node.","","","","","","","","Updates internal node state using the current …","Updates internal node state using the current …","Validates that each input slot corresponds to an input …","Validates that each output slot corresponds to an output …","A GPU-accessible [Buffer].","A GPU-accessible [Buffer].","","","A texture [Sampler] defines how a pipeline will sample …","A texture [Sampler] defines how a pipeline will sample …","The internal representation of a slot, which specifies its …","A collection of input or output SlotInfos for a NodeState.","A SlotLabel is used to reference a slot by either its name …","Describes the render resources created (output) or used …","A value passed between render Nodes. Corresponds to the …","A TextureView describes a texture used in a pipeline.","A TextureView describes a texture used in a pipeline.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","Retrieves the SlotInfo for the provided label.","Retrieves the index (inside input or output slots) of the …","Retrieves the SlotInfo for the provided label mutably.","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","Returns true if there are no slots.","","","","","","Returns an iterator over the slot infos.","Returns the count of slots.","","","Returns the SlotType of this value.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","A draw function which is used to draw a specific PhaseItem.","","","","An item which will be drawn to the screen. A phase item …","RenderCommand is a trait that runs an ECS query and …","","A resource to collect and sort draw requests for specific …","The type used for ordering the items. The smallest values …","","","Adds a PhaseItem to this render phase.","","","","","","","","","","","","","","","","","","","Draws the PhaseItem by issuing draw calls via the …","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","Renders the PhaseItem by issuing draw calls via the …","","Sorts all of its PhaseItems.","Determines the order in which the items are drawn during …","","","","","","","","","","","","","","","","","","","A draw function which is used to draw a specific PhaseItem.","","","An item which will be drawn to the screen. A phase item …","RenderCommand is a trait that runs an ECS query and …","","The type used for ordering the items. The smallest values …","","","","","","","","","","","","Draws the PhaseItem by issuing draw calls via the …","Prepares data for the wrapped RenderCommand and then …","","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","Renders the PhaseItem by issuing draw calls via the …","","Determines the order in which the items are drawn during …","","","","","","","","","","","","Describes the fragment process in a render pipeline.","","","","","","","","The value is a wgpu SurfaceTexture, but dereferences to a …","","Describes a TextureView.","The value is an actual wgpu TextureView.","","A [RenderPass], which tracks the current pipeline state to …","Describes how the vertex buffer is interpreted.","","","The stride, in bytes, between elements of this buffer.","The list of attributes which comprise a single vertex.","","The buffer which is used","","The format of any vertex buffers used with this pipeline.","Force a write and ignore stencil","The effect of draw calls on the depth and stencil aspects …","Is the depth stencil used?","","The name of the entry point in the compiled shader. There …","The name of the entry point in the compiled shader. There …","The compiled fragment stage, its entry point, and the …","","","","The size of buffer","Debug label of the pipeline. This will show up in graphics …","The layout of bind groups for this pipeline.","","The multi-sampling properties of the pipeline.","","","","","Utility for creating RenderPipelines","","The properties of the pipeline at the primitive assembly …","","","Utilities for creating shader states.","","","","The shader source","The shader source","How often this vertex buffer is “stepped” forward.","Utilities for handling surfaces which can be either …","","The color state of the render targets.","Utility for a texture view which can either be created by …","","","","","","Utility for declaring pipelines.","A render pass which allows tracking, for example using a …","","This pipeline updates the stenctil","The compiled vertex stage, its entry point, and the input …","","","","","","","","","","","","","The buffer which is used","","Returns the argument unchanged.","The size of buffer","Calls U::from(self).","","","","","","","","","","","","","","","","The effect of draw calls on the depth and stencil aspects …","","","The compiled fragment stage, its entry point, and the …","Returns the argument unchanged.","","Calls U::from(self).","","","","","Debug label of the pipeline. This will show up in graphics …","The layout of bind groups for this pipeline.","The multi-sampling properties of the pipeline.","The properties of the pipeline at the primitive assembly …","","","","","The compiled vertex stage, its entry point, and the input …","Describes the fragment process in a render pipeline.","Describes how the vertex buffer is interpreted.","","The stride, in bytes, between elements of this buffer.","","","","","","","","The list of attributes which comprise a single vertex.","","","","","","","The format of any vertex buffers used with this pipeline.","","","","","","","","","","","The name of the entry point in the compiled shader. There …","The name of the entry point in the compiled shader. There …","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","The shader source","The shader source","How often this vertex buffer is “stepped” forward.","The color state of the render targets.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The value is a wgpu SurfaceTexture, but dereferences to a …","","Describes a TextureView.","The value is an actual wgpu TextureView.","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","Returns the SurfaceTexture of the texture view if it is of …","","","","","","","","","","","","","","","","","","Force a write and ignore stencil","Is the depth stencil used?","","","","Returns the argument unchanged.","Calls U::from(self).","","","","","","","","","","","","","","This pipeline updates the stenctil","","","A [RenderPass], which tracks the current pipeline state to …","","","","","","Draws primitives from the active vertex buffer(s).","Draws indexed primitives using the active index buffer and …","Draws indexed primitives using the active index buffer and …","Draws primitives from the active vertex buffer(s) based on …","Returns the argument unchanged.","Insert a single debug marker.","Calls U::from(self).","","","","","Tracks the supplied render pass.","","End the current debug group.","Start a new debug group.","Sets the active [BindGroup] for a given bind group index. …","","Sets the active index buffer.","Set push constant data.","Sets the active [RenderPipeline].","Sets the scissor region.","Sets the stencil reference.","Assign a vertex buffer to a slot.","Set the rendering viewport.","","","","","Allows the use of AddressMode::ClampToBorder with a border …","Allows the use of AddressMode::ClampToBorder with a border …","block compressed texture. 16 bytes per block.","Supported when targeting the web through webassembly","Allows the user to create arrays of buffers in shaders:","Represents the backends that wgpu will use.","4x4 block compressed texture. 8 bytes per block (4 …","4x4 block compressed texture. 8 bytes per block (4 …","4x4 block compressed texture. 16 bytes per block (8 …","4x4 block compressed texture. 16 bytes per block (8 …","4x4 block compressed texture. 16 bytes per block (8 …","4x4 block compressed texture. 16 bytes per block (8 …","4x4 block compressed texture. 8 bytes per block (4 …","4x4 block compressed texture. 8 bytes per block (4 …","4x4 block compressed texture. 16 bytes per block (8 …","4x4 block compressed texture. 16 bytes per block (8 …","4x4 block compressed texture. 16 bytes per block (8 …","4x4 block compressed texture. 16 bytes per block (8 …","4x4 block compressed texture. 16 bytes per block (8 …","4x4 block compressed texture. 16 bytes per block (8 …","Blue, green, red, and alpha channels. 8 bit integer per …","Blue, green, red, and alpha channels. 8 bit integer per …","Enables clear to zero for textures.","Allows the user to set a …","Allows for explicit creation of textures of format …","By default, polygon depth is clipped to 0-1 range …","Supported on Windows 7+","Supported on Windows 10","Special depth format with 16 bit integer depth.","Special depth format with at least 24 bit integer depth.","Special depth/stencil format with at least 24 bit integer …","Special depth format with 32 bit floating point depth.","Special depth/stencil format with 32 bit floating point …","4x4 block compressed texture. 8 bytes per block (4 …","4x4 block compressed texture. 8 bytes per block (4 …","4x4 block compressed texture. 16 bytes per block (8 …","4x4 block compressed texture. 16 bytes per block (8 …","4x4 block compressed texture. 8 bytes per block (4 …","4x4 block compressed texture. 8 bytes per block (4 …","4x4 block compressed texture. 8 bytes per block (4 …","4x4 block compressed texture. 8 bytes per block (4 …","4x4 block compressed texture. 16 bytes per block (8 …","4x4 block compressed texture. 16 bytes per block (8 …","Features that are not guaranteed to be supported.","Supported on Linux/Android, the web through webassembly …","","","Adapter that has the highest performance. This is often a …","Allows non-zero value for the “first instance” in …","Represents the sets of limits an adapter/device supports.","Adapter that uses the least possible power. This is often …","Webgpu only allows the MAP_READ and MAP_WRITE buffer usage …","Supported on macOS/iOS","Enables multiview render passes and builtin(view_index) in …","Allows the user to call RenderPass::multi_draw_indirect …","Allows the user to call …","Configuration resource for Multi-Sample Anti-Aliasing.","Power usage is not considered when choosing an adapter.","Allows the user to create bind groups continaing arrays …","Enables use of Pipeline Statistics Queries. These queries …","Allows the user to set PolygonMode::Line in …","Allows the user to set PolygonMode::Point in …","All the apis that wgpu offers first tier of support for.","Allows the use of push constants: small, fast bits of …","Power Preference when choosing a physical adapter.","Red channel only. 16 bit float per channel. Float in …","Red channel only. 16 bit integer per channel. Signed in …","Red channel only. 16 bit integer per channel. [0, 65535] …","Red channel only. 16 bit integer per channel. Unsigned in …","Red channel only. 16 bit integer per channel. [0, 65535] …","Red channel only. 32 bit float per channel. Float in …","Red channel only. 32 bit integer per channel. Signed in …","Red channel only. 32 bit integer per channel. Unsigned in …","Red channel only. 8 bit integer per channel. Signed in …","Red channel only. 8 bit integer per channel. [-127, 127] …","Red channel only. 8 bit integer per channel. Unsigned in …","Red channel only. 8 bit integer per channel. [0, 255] …","Allows for usage of textures of format …","","Red, green, and blue channels. 11 bit float with no sign …","Red and green channels. 16 bit float per channel. Float in …","Red and green channels. 16 bit integer per channel. Signed …","Red and green channels. 16 bit integer per channel. [0, …","Red and green channels. 16 bit integer per channel. …","Red and green channels. 16 bit integer per channel. [0, …","Red and green channels. 32 bit float per channel. Float in …","Red and green channels. 32 bit integer per channel. Signed …","Red and green channels. 32 bit integer per channel. …","Red and green channels. 8 bit integer per channel. Signed …","Red and green channels. 8 bit integer per channel. [-127, …","Red and green channels. 8 bit integer per channel. …","Red and green channels. 8 bit integer per channel. [0, 255]…","Red, green, blue, and alpha channels. 10 bit integer for …","Packed unsigned float with 9 bits mantisa for each RGB …","Red, green, blue, and alpha channels. 16 bit float per …","Red, green, blue, and alpha channels. 16 bit integer per …","Red, green, blue, and alpha. 16 bit integer per channel. […","Red, green, blue, and alpha channels. 16 bit integer per …","Red, green, blue, and alpha channels. 16 bit integer per …","Red, green, blue, and alpha channels. 32 bit float per …","Red, green, blue, and alpha channels. 32 bit integer per …","Red, green, blue, and alpha channels. 32 bit integer per …","Red, green, blue, and alpha channels. 8 bit integer per …","Red, green, blue, and alpha channels. 8 bit integer per …","Red, green, blue, and alpha channels. 8 bit integer per …","Red, green, blue, and alpha channels. 8 bit integer per …","Red, green, blue, and alpha channels. 8 bit integer per …","Allows shaders to index sampled texture and storage buffer …","All the apis that wgpu offers second tier of support for. …","Allows shaders to use the early_depth_test attribute.","Allows shaders to acquire the FP16 ability","Enables 64-bit floating point types in SPIR-V shaders.","Allows shaders to use i16. Not currently supported in naga…","Enables builtin(primitive_index) in fragment shaders.","Enables creating shader modules from SPIR-V binary data …","Allows the user to create uniform arrays of storage …","Stencil format with 8 bit integer stencil.","","Enables device specific texture format features.","Allows the user to create uniform arrays of textures in …","Enables ASTC family of compressed textures. ASTC textures …","Enables ASTC HDR family of compressed textures.","Enables BCn family of compressed textures. All BCn …","Enables ETC family of compressed textures. All ETC …","Enables normalized 16-bit texture formats.","Enables use of Timestamp Queries. These queries tell the …","Allows for timestamp queries inside render passes.","Underlying texture data format.","Allows shaders to index uniform buffer and storage texture …","Enables using 64-bit types for vertex attributes.","Enables bindings of writable storage buffers and textures …","Supported on Windows, Linux/Android, and macOS/iOS via …","Provides configuration for renderer initialization. Use …","Adds an Srgb suffix to the given texture format, if the …","Get a flags value with all known bits set.","Get a flags value with all known bits set.","Mask of all features that are only available when …","Mask of all features which are part of the upstream WebGPU …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the aspect-specific format of the original format","","The bitwise and (&) of the bits in two flags values.","The bitwise and (&) of the bits in two flags values.","The bitwise and (&) of the bits in two flags values.","The bitwise and (&) of the bits in two flags values.","The bitwise or (|) of the bits in two flags values.","The bitwise or (|) of the bits in two flags values.","The bitwise or (|) of the bits in two flags values.","The bitwise or (|) of the bits in two flags values.","","Get the underlying bits value.","","Get the underlying bits value.","The bitwise exclusive-or (^) of the bits in two flags …","The bitwise exclusive-or (^) of the bits in two flags …","The bitwise exclusive-or (^) of the bits in two flags …","The bitwise exclusive-or (^) of the bits in two flags …","Returns the dimension of a block of texels.","Returns the texel block size of this format.","","","","","","","","","","","","","","","","","","","Compares every limits within self is within the limits …","Compares every limits within self is within the limits …","","","","","","","","","","","","","","","","","","","The bitwise negation (!) of the bits in a flags value, …","The bitwise negation (!) of the bits in a flags value, …","Returns the number of components this format has.","Returns the number of components this format has taking …","The constraints on limits allowed regardless of what the …","Whether all set bits in a source flags value are also set …","Whether all set bits in a source flags value are also set …","Returns true if the bitflags contains bits that are not …","Returns true if the bitflags contains bits that are not …","","","","","","","","","The intersection of a source flags value with the …","The intersection of a source flags value with the …","The features to ensure are disabled regardless of what the …","","","","","","","","","","These default limits are guaranteed to be compatible with …","These default limits are guaranteed to be compatible with …","","","","","","","","","","","Get a flags value with all bits unset.","Get a flags value with all bits unset.","","","","","","","","","","","","","","","","","","","","","The bitwise or (|) of the bits in each flags value.","The bitwise or (|) of the bits in each flags value.","The features to ensure are enabled regardless of what the …","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Convert from a bits value.","Convert from a bits value.","","Convert from a bits value exactly.","Convert from a bits value exactly.","","Convert from a bits value, unsetting any unknown bits.","Convert from a bits value, unsetting any unknown bits.","The bitwise or (|) of the bits in each flags value.","The bitwise or (|) of the bits in each flags value.","Get a flags value with the bits of a flag with the given …","Get a flags value with the bits of a flag with the given …","Returns the format features guaranteed by the WebGPU spec.","Returns true if the format has a color aspect","Returns true if the format has a depth aspect","Returns true if the format has a stencil aspect","","","","","","The bitwise or (|) of the bits in two flags values.","The bitwise or (|) of the bits in two flags values.","The bitwise and (&) of the bits in two flags values.","The bitwise and (&) of the bits in two flags values.","Whether any set bits in a source flags value are also set …","Whether any set bits in a source flags value are also set …","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Whether all known bits in this flags value are set.","Whether all known bits in this flags value are set.","Returns true if the format is a combined depth-stencil …","Returns true for compressed formats.","Returns true if self is a depth or stencil component of …","Returns true if the format is a depth and/or stencil format","Whether all bits in this flags value are unset.","Whether all bits in this flags value are unset.","","Returns true for srgb formats.","","","","","","","","","","Yield a set of contained flags values.","Yield a set of contained flags values.","Yield a set of contained named flags values.","Yield a set of contained named flags values.","The imposed limits.","Amount of bind groups that can be attached to a pipeline …","Maximum binding index allowed in create_bind_group_layout. …","A limit above which buffer allocations are guaranteed to …","Maximum value of the product of the workgroup_size …","The maximum value of the workgroup_size X dimension for a …","The maximum value of the workgroup_size Y dimension for a …","The maximum value of the workgroup_size Z dimension for a …","Maximum number of bytes used for workgroup memory in a …","The maximum value for each dimension of a …","Amount of storage buffer bindings that can be dynamic in a …","Amount of uniform buffer bindings that can be dynamic in a …","Maximum allowed number of components (scalars) of input or …","Amount of storage available for push constants in bytes. …","Amount of sampled textures visible in a single shader …","Amount of samplers visible in a single shader stage. …","Maximum size in bytes of a binding to a storage buffer. …","Amount of storage buffers visible in a single shader …","Amount of storage textures visible in a single shader …","Maximum allowed value for the size.depth_or_array_layers …","Maximum allowed value for the size.width of a texture …","Maximum allowed value for the size.width and size.height …","Maximum allowed value for the size.width, size.height, and …","Maximum size in bytes of a binding to a uniform buffer. …","Amount of uniform buffers visible in a single shader …","Maximum length of VertexBufferLayout::attributes, summed …","Maximum value for VertexBufferLayout::array_stride when …","Maximum length of VertexState::buffers when creating a …","Required BufferBindingType::Storage alignment for …","Required BufferBindingType::Uniform alignment for …","","The bitwise negation (!) of the bits in a flags value, …","The bitwise negation (!) of the bits in a flags value, …","","Present mode for surfaces if a surface is used.","Whether a trace is recorded an stored in the current …","The intersection of a source flags value with the …","The intersection of a source flags value with the …","Strips the Srgb suffix from the given texture format.","Returns the required features (if any) in order to use the …","Returns the sample type compatible with this format and …","The number of samples to run for Multi-Sample …","Call insert when value is true or remove when value is …","Call insert when value is true or remove when value is …","The intersection of a source flags value with the …","The intersection of a source flags value with the …","The intersection of a source flags value with the …","The intersection of a source flags value with the …","The bitwise exclusive-or (^) of the bits in two flags …","The bitwise exclusive-or (^) of the bits in two flags …","Explicitly set a texture format or let the renderer …","","","","","","","","","","The bitwise exclusive-or (^) of the bits in two flags …","The bitwise exclusive-or (^) of the bits in two flags …","","","","","","","","","","","","","","","","","","","","","","","","","","","","The bitwise or (|) of the bits in two flags values.","The bitwise or (|) of the bits in two flags values.","","","","","","","","","","Modify the current limits to use the buffer alignment …","Modify the current limits to use the resolution limits of …","compressed block dimensions","ASTC RGBA channel","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Executes the [RenderGraph] current render graph.","Prepares GPU-owned resources by initializing them if they …","","Extracts data from the current state.","Uploads data to the GPU which is needed for rendering.","","Updates the [RenderGraph] with all of its nodes and then …","","","","","","","Returns the argument unchanged.","Calls U::from(self).","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self).","","","","","","","","","","","This system sorts all RenderPhases for the [PhaseItem] …","","","Children are the source. We construct the target from …","If not otherwise specified, raster tiles usually are 512.0 …","","","No data available so nothing to render","Parent tile is the source. We construct the target from …","","Source and target are equal, so no need to differentiate. …","This defines the source tile shaped from which the content …","Defines the exact location where a specific tile on the …","The tile mask pattern assigns each tile a value which can …","Defines the target tile and its source from which data …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The tile mask pattern assigns each tile a value which can …","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","The internal structure which is used for storage","The size of the inner buffer","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Transforms coordinates in clip space to window coordinates.","A transform which can be used to transform between clip …","Alternative implementation to clip_to_window. Transforms …","","","","","","","Returns the argument unchanged.","","","","Calls U::from(self).","","","","","","","","","","","","","","","This function matches how maplibre-gl-js implements …","Calculates an Aabb2 bounding box which contains at least …","An alternative implementation for view_bounding_box.","","Order of transformations reversed: …","Gets the world coordinates for the specified window …","Alternative implementation to window_to_world","","","","","","A container of Stages set to be run in a linear order.","","Defines a set of strongly-typed labels for a class of …","Adds the given stage at the last position of the schedule.","Adds the given stage immediately after the target stage.","Adds the given stage immediately before the target stage.","Adds a system to the Stage identified by stage_label.","","","","","","","","","","","","","","","","","Returns a boxed object from a boxed trait object if the …","","Returns a mutable reference to the object within the trait …","Returns an Rc-ed object from an Rc-ed trait object if the …","Returns a reference to the object within the trait object …","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns a shared reference to the stage identified by label…","Returns a unique, mutable reference to the stage …","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","Returns true if the trait object wraps an object of type …","","","","Iterates over all of schedule’s stages and their labels, …","","","Runs the stage; this happens once per update. Implementors …","","","","Executes each Stage contained in the schedule, one at a …","Fetches the Stage of type T marked with label, then …","","","","","","","","","","","","","","","","A color in the ACES 2065-1 color space.","A color in the ACES 2065-1 color space.","A color in the ACEScc color space.","A color in the ACEScc color space.","A color in the ACEScct color space.","A color in the ACEScct color space.","A color in the ACEScg color space.","A color in the ACEScg color space.","A color with an alpha component.","A color in the BT.2020 color space.","A color in the BT.2020 color space.","A color in the BT.2100 color space.","A color in the BT.2100 color space.","A color in the CIE L*C*h° color space.","A color in the CIE L*C*h° color space.","A color in the CIE L*a*b* color space.","A color in the CIE L*a*b* color space.","A color in the CIE XYZ color space.","A color in the CIE XYZ color space.","","A trait that should be implemented by provider crates on …","A trait used to simpify the interface of the Alpha and …","","A color in the DCI-P3 (aka P3 DCI and P3 D60) color space.","A color in the DCI-P3 (aka P3 DCI and P3 D60) color space.","A color in the X’Y’Z’ color space, a DCI …","A color in the X’Y’Z’ color space, a DCI …","A color in the Display P3 (aka P3 D65) color space.","A color in the Display P3 (aka P3 D65) color space.","A color in the encoded BT.2020 color space.","A color in the encoded BT.2020 color space.","A color in the encoded BT.2100 color space with HLG …","A color in the encoded BT.2100 color space with HLG …","A color in the encoded BT.2100 color space with PQ …","A color in the encoded BT.2100 color space with PQ …","A color in the Display P3 (aka P3 D65) color space.","A color in the Display P3 (aka P3 D65) color space.","A color in the encoded Rec.709/BT.709 color space.","A color in the encoded Rec.709/BT.709 color space.","A color in the encoded sRGB color space.","A color in the encoded sRGB color space.","A color in a generic color space that can be represented …","A color in a generic color space that can be represented …","A color in a generic color space that can be represented …","A color in a generic color space that can be represented …","A color in the HSL color space.","A color in the HSL color space.","A color in the HSV color space.","A color in the HSV color space.","A color in the ICtCp color space with HLG (Hybrid …","A color in the ICtCp color space with HLG (Hybrid …","A color in the ICtCp color space with PQ (Perceptual …","A color in the ICtCp color space with PQ (Perceptual …","A color in the linear (decoded) sRGB color space.","A color in the linear (decoded) sRGB color space.","A single-channel CIE luma (non-linear transform from …","A single-channel CIE luma (non-linear transform from …","A single-channel CIE luminance.","A single-channel CIE luminance.","","A color in the Oklab color space.","A color in the Oklab color space.","A color in the Oklch color space (a transformation from …","A color in the Oklch color space (a transformation from …","A premultiplied color with an alpha component.","A color in the Rec.709/BT.709 color space.","A color in the Rec.709/BT.709 color space.","","An enum with a variant for each of the color spaces …","Stores the style for a multi-layered map.","A color in the YCbCr color space. See discussion of the …","A color in the YCbCr color space. See discussion of the …","A color in the YCxCz (also called YyCxCz) color space, …","A color in the YCxCz (also called YyCxCz) color space, …","A color in the YPbPr color space. See discussion of the …","A color in the YPbPr color space. See discussion of the …","A color in the Y’CbCr color space. See discussion of the …","A color in the Y’CbCr color space. See discussion of the …","A color in the Y’PbPr color space. See discussion of the …","A color in the Y’PbPr color space. See discussion of the …","A color in the YUV color space. See discussion of the …","A color in the YUV color space. See discussion of the …","The a component, representing green-red chroma difference.","The a component, representing green-red chroma difference.","The alpha component.","The alpha component.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The blue component.","The blue component.","The blue component.","The blue component.","The blue component.","The blue component.","The blue component.","The blue component.","The blue component.","The blue component.","The blue component.","The blue component.","The blue component.","The blue component.","The blue component.","The blue component.","The b component, representing blue-yellow chroma …","The b component, representing blue-yellow chroma …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The C (chroma) component. Varies from 0 to a hue dependent …","The C (chroma) component. Varies from 0 to a hue dependent …","The Cb (chroma-blue/yellow) component.","The Cb (chroma-blue/yellow) component.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The contained color, which is completely separate from the …","The contained color, which has been premultiplied with …","The Cp (chroma-protan) component.","The Cp (chroma-protan) component.","The Cr (chroma-red/green) component.","The Cr (chroma-red/green) component.","The Ct (chroma-tritan) component.","The Ct (chroma-tritan) component.","The Cx (chroma difference blue/yellow) component","The Cz (chroma difference red/green) component","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","","","","","","","","Returns the argument unchanged.","","","","","Returns the argument unchanged.","","","","","","Returns the argument unchanged.","","","Returns the argument unchanged.","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","","Returns the argument unchanged.","","","Returns the argument unchanged.","","","","","","Returns the argument unchanged.","","","","Returns the argument unchanged.","","","","","Returns the argument unchanged.","","","Returns the argument unchanged.","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","Returns the argument unchanged.","","","","","Returns the argument unchanged.","","","Returns the argument unchanged.","","","","","Returns the argument unchanged.","","","","Returns the argument unchanged.","","Returns the argument unchanged.","","","","","","Returns the argument unchanged.","","Returns the argument unchanged.","","","","","Returns the argument unchanged.","","","","","Returns the argument unchanged.","","","","Returns the argument unchanged.","","Returns the argument unchanged.","","","","","","Returns the argument unchanged.","","Returns the argument unchanged.","","","","","","Returns the argument unchanged.","","","Returns the argument unchanged.","","","","Returns the argument unchanged.","","Returns the argument unchanged.","","","","","","","Returns the argument unchanged.","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","","Returns the argument unchanged.","","","","","","Returns the argument unchanged.","","Convert self into its canonical cint type.","The green component.","The green component.","The green component.","The green component.","The green component.","The green component.","The green component.","The green component.","The green component.","The green component.","The green component.","The green component.","The green component.","The green component.","The green component.","The green component.","The h (hue) component. Varies from -PI to PI.","The h (hue) component. Varies from -PI to PI.","The H (hue) component. Varies from 0 to 1.","The H (hue) component. Varies from 0 to 1.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The I (intensity) component.","The I (intensity) component.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Calls U::from(self).","","","","","","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Calls U::from(self).","","Calls U::from(self).","","Calls U::from(self).","","Calls U::from(self).","","Calls U::from(self).","","Calls U::from(self).","","Calls U::from(self).","Calls U::from(self).","","Calls U::from(self).","","","Calls U::from(self).","","Calls U::from(self).","Calls U::from(self).","","Calls U::from(self).","","Calls U::from(self).","","Calls U::from(self).","","","Calls U::from(self).","Calls U::from(self).","","Calls U::from(self).","","Calls U::from(self).","","Calls U::from(self).","","Calls U::from(self).","","","Calls U::from(self).","","Calls U::from(self).","","Calls U::from(self).","","Calls U::from(self).","Calls U::from(self).","","","Calls U::from(self).","Calls U::from(self).","","","Calls U::from(self).","Calls U::from(self).","","","Calls U::from(self).","","Calls U::from(self).","","Calls U::from(self).","Calls U::from(self).","","Calls U::from(self).","","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Create a Self from its canonical cint type.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","CIE luminance.","CIE luminance.","The L (lightness) component. Varies from 0 to 100.","The L (lightness) component. Varies from 0 to 100.","The L (lightness) component. Varies from 0 to 1","The L (lightness) component. Varies from 0 to 1.","The L (lightness) component. Varies from 0 to 1.","Vector tile layer drawing utilities.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The Pb (chroma-blue/yellow) component.","The Pb (chroma-blue/yellow) component.","","The Pr (chroma-red/green) component.","The Pr (chroma-red/green) component.","The red component.","The red component.","The red component.","The red component.","The red component.","The red component.","The red component.","The red component.","The red component.","The red component.","The red component.","The red component.","The red component.","The red component.","The red component.","The red component.","Raster tile layer description","The S (saturation) component. Varies from 0 to 1.","The S (saturation) component. Varies from 0 to 1.","Vector tile data utilities.","","Default vector tile styles configuration.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The U (chroma-blue/yellow) component.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","The V (value) component. Varies from 0 to 1.","The V (chroma-red/green) component.","","The first component.","The first component.","The X’ component.","The X component.","The second component.","The Y’ component.","The Y component.","The Y (luminance) component.","The Y’ (luma) component.","The Y (luminance) component.","The Y’ (luma) component.","The Y (luminance) component.","The Yy (luminance) component.","The third component.","The Z’ component.","The Z component.","","","","","","The different types of paints.","","","","Stores all the styles for a specific layer.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Tiles can be positioned using either the xyz coordinates …","String url to a JSON tile.","String url to a tile.","","Source properties for tiles or rasters.","","","","","","","","String which contains attribution information for the used …","","","","","","","The bounds in which tiles are available.","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","Max zoom level at which tiles are available.","Min zoom level at which tiles are available.","","","","","Array of URLs which can contain place holders like {x}, …","","","","","","","","","","","","","","","","Stores the style for a multi-layered map.","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns a boxed object from a boxed trait object if the …","","Returns a mutable reference to the object within the trait …","Returns an Rc-ed object from an Rc-ed trait object if the …","Returns a reference to the object within the trait object …","","Returns the argument unchanged.","","","","","","","","Calls U::from(self).","","","Returns true if the trait object wraps an object of type …","","","","","","","","","","","","A convenience type alias for a boxed System trait object.","","An system that can be added to a Schedule","","","","","","","Returns the argument unchanged.","","Calls U::from(self).","","","","","","Returns the system’s name.","","","","","","","","","","Conversion trait to turn something into a System.","","","","","","","Returns the argument unchanged.","","Calls U::from(self).","","","","Turns this value into its corresponding System.","","","","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","A component is data associated with an Entity. Each entity …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns a boxed object from a boxed trait object if the …","","","","","","Returns a mutable reference to the object within the trait …","Returns an Rc-ed object from an Rc-ed trait object if the …","Returns a reference to the object within the trait object …","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","Returns true if the trait object wraps an object of type …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self).","","","","","","","","","","","","Vertex buffers index data type.","Vertex buffer which includes additional padding to fulfill …","Constructor for Fill and Stroke vertices.","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","","","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","Tessellator implementation.","","Build tessellations with vectors.","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","Features are described in section 4.2 of the specification","GeomType is described in section 4.3.4 of the specification","Layers are described in section 4.1 of the specification","","","","","Variant type encoding The use of values is described in …","","","","","","","","","","","String value of the enum field names used in the ProtoBuf …","Returns the value of bool_value, or the default value if …","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the value of double_value, or the default value if …","","","","","","","","","","","","","","","","","","Returns the value of extent, or the default value if extent…","Although this is an “optional” field it is required by …","The actual features in this tile.","Returns the value of float_value, or the default value if …","","","","","","Returns the argument unchanged.","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Converts an i32 to a GeomType, or None if value is not a …","Creates an enum from field names used in the ProtoBuf …","Contains a stream of commands and parameters (vertices). A …","","Returns the value of id, or the default value if id is …","","Returns the value of int_value, or the default value if …","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","Returns true if value is a variant of GeomType.","","","","","Dictionary encoding for keys","","","","","Sets type to the provided enum value.","Returns the value of sint_value, or the default value if …","","Returns the value of string_value, or the default value if …","Exactly one of these values must be present in a valid …","Tags of this feature are encoded as repeated pairs of …","","","","","","","","","","","","","","","","Returns the enum value of type, or the default if the …","The type of geometry stored in this feature.","","","","","Returns the value of uint_value, or the default value if …","","","","","","Dictionary encoding for values","Any compliant implementation must first read the version …","","","Measures the frames per second.","","","","","","","","","","","","","Returns the argument unchanged.","","","Calls U::from(self).","","","","","Traits used by label implementations","","This method tests for self and other values to be …","","","","","","","","","Measures the frames per second.","","","","","","","","Returns the argument unchanged.","Calls U::from(self).","","","","","","","","","","","","","Returns coordinates for tiles within bavaria according to …","","","","","","","A two-dimensional AABB, aka a rectangle.","A three-dimensional AABB, aka a rectangular prism.","A wrapper type that enables ordering floats. This is a …","A 3-dimensional plane formed from the equation: …","","","","","","","","","","","","","","","","","","","","","","Plane distance value","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Construct a plane from a point and a normal vector. The …","Constructs a plane that passes through the the three …","","Returns unsorted intersection points with an Aabb3 Adopted …","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","Maximum point of the AABB","Maximum point of the AABB","","Minimum point of the AABB","Minimum point of the AABB","Plane normal","Construct a plane from a normal vector and a scalar …","Construct a new axis-aligned bounding box from two points.","Construct a new axis-aligned bounding box from two points.","","Compute corners.","Compute corners.","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Error during processing of the pipeline","Sending of results failed","","","","","","","","A request for a tile at the given coordinates and in the …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Holds for each feature the count of indices.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Queues PhaseItems for rendering.","Specifies the instructions which are going to be sent to …","Requests tiles which are currently in view","","Prepares GPU-owned resources by initializing them if they …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Uploads data to the GPU which is needed for rendering.","","","","","","","Returns the argument unchanged.","Calls U::from(self).","","","","","","","","","","","","","","","Error during processing of the pipeline","Sending of results failed","A request for a tile at the given coordinates and in the …","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Calls U::from(self).","","","","","","","","","","","","","A ring-buffer like pool of buffers.","","","This is inspired by the memory pool in Vulkan documented …","","","","","","","","","","","","The VertexBuffers can contain padding elements. Not …","Allocates","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","","","","","","","","","The internal structure which is used for storage","The size of the inner buffer","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Holds for each feature the count of indices.","","","","","","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","Returns the argument unchanged.","","","","Calls U::from(self).","","Calls U::from(self).","","Calls U::from(self).","Calls U::from(self).","Calls U::from(self).","","Calls U::from(self).","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Window which references a physical RawWindow. This is only …","Window of a certain WindowSize. This can either be a …","","A configuration for a window which determines the …","","Window size with a width and an height in pixels.","","","","","","","","","","","","","","","Returns the argument unchanged.","","","","","Calls U::from(self).","","","","","","","","","","","","","","","",""],"i":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,349,349,0,0,359,359,359,359,359,359,0,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,0,19,19,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,13,30,18,18,11,11,19,13,20,21,21,17,17,16,28,30,18,11,19,13,20,21,17,16,28,11,21,17,16,30,18,11,19,13,20,21,17,16,28,30,18,11,19,13,20,21,17,16,28,17,19,18,11,19,13,20,21,17,16,18,11,19,13,20,21,17,16,18,11,17,0,11,19,13,20,21,17,16,11,17,30,18,11,19,13,20,21,17,16,28,18,11,21,17,11,21,17,18,11,20,21,17,16,18,18,18,11,11,11,21,21,21,17,17,17,18,11,11,19,19,13,13,20,21,21,17,17,16,16,28,30,18,11,11,19,13,13,20,21,21,17,17,16,16,16,16,28,16,17,17,11,21,17,30,18,11,19,13,20,21,17,16,28,17,30,18,11,19,13,20,21,17,16,28,30,18,11,19,13,20,21,17,16,28,30,18,11,19,13,20,21,17,16,28,17,21,16,28,11,11,30,18,11,19,13,20,21,17,16,28,28,19,19,30,30,28,28,19,19,19,28,13,18,11,19,13,28,28,18,11,17,13,13,13,11,17,17,11,13,18,11,19,13,20,21,17,16,11,19,13,21,17,16,17,30,18,11,19,13,20,21,17,16,28,30,18,11,19,13,20,21,17,16,28,30,18,11,19,13,20,21,17,16,28,30,18,11,19,13,20,21,17,16,28,30,30,20,21,17,16,20,21,17,16,21,17,13,28,28,0,0,0,47,48,41,47,48,41,47,48,41,47,48,41,41,0,0,41,47,47,48,41,48,48,0,47,48,41,47,48,41,47,48,41,47,41,47,48,41,47,48,41,0,0,0,48,48,47,48,41,47,48,41,47,48,41,47,48,41,0,0,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,0,0,0,0,0,0,0,0,0,409,410,409,410,409,410,409,410,409,410,409,410,409,410,409,410,409,410,409,410,409,410,409,410,409,410,409,410,409,410,409,410,0,43,0,43,68,43,0,43,43,68,68,61,0,0,0,411,412,411,0,61,61,61,61,411,412,61,61,61,61,61,61,61,61,61,61,412,413,61,61,61,61,61,0,0,364,364,0,364,364,0,0,0,364,364,0,0,0,0,73,0,414,67,67,76,76,0,0,0,0,0,65,0,414,67,0,0,76,0,67,65,75,70,73,74,65,75,76,67,71,70,73,74,65,75,76,67,71,70,73,74,65,75,76,67,71,70,73,74,65,75,76,67,71,70,414,70,70,65,71,65,71,65,70,73,74,65,75,76,67,71,72,73,73,74,75,75,76,76,67,67,70,73,74,65,75,76,67,71,74,72,78,70,73,74,65,75,76,67,71,70,73,74,65,75,76,67,71,70,65,75,71,70,73,74,65,75,76,67,71,74,70,73,74,65,75,76,67,71,70,74,70,73,75,76,67,414,70,70,129,71,71,65,74,74,65,71,73,75,76,67,74,70,73,74,65,75,76,67,71,70,73,74,65,75,76,67,71,70,73,74,65,75,76,67,71,70,73,74,65,75,76,67,71,415,415,0,0,0,0,86,95,86,95,0,90,95,79,80,86,90,95,79,80,86,90,95,79,80,86,90,95,79,80,86,80,79,80,86,80,86,80,79,79,90,79,80,90,95,79,80,86,80,80,79,79,80,86,90,95,79,80,86,80,80,79,79,79,79,79,90,90,90,95,79,80,86,90,95,79,80,86,90,95,79,80,86,90,95,79,80,86,90,95,79,80,86,79,79,79,79,79,79,79,90,79,79,79,95,79,79,79,80,79,79,79,90,80,86,90,95,79,80,86,90,95,79,80,86,90,95,79,80,86,90,95,79,80,86,79,416,417,0,97,0,0,97,100,97,100,97,100,97,100,97,100,97,97,97,100,97,100,97,100,97,100,100,97,100,97,97,69,100,97,100,97,100,97,100,97,100,97,0,0,0,0,0,102,106,60,102,106,60,102,106,60,102,106,60,102,60,102,60,102,106,60,101,102,60,106,106,102,106,106,106,60,60,102,102,106,60,102,106,60,102,60,102,106,60,102,106,60,102,60,106,106,102,60,106,102,106,60,102,106,60,102,106,60,102,106,60,105,0,0,105,0,110,111,105,110,111,105,110,111,105,110,111,105,110,111,105,110,111,105,110,111,110,111,105,110,111,110,111,105,110,111,105,110,111,105,110,111,105,110,111,105,110,111,105,110,111,105,111,110,111,110,111,105,110,111,105,110,111,105,110,111,105,110,111,105,110,111,0,0,44,44,112,44,112,44,112,44,112,44,112,112,112,44,112,44,112,112,44,112,44,112,44,112,44,112,44,112,44,44,112,112,44,44,112,44,44,44,112,44,112,44,112,44,112,112,112,112,112,0,113,0,0,418,418,113,113,113,418,63,113,418,63,113,418,63,113,418,63,113,63,63,418,63,113,113,113,418,63,113,63,418,63,113,418,63,113,113,418,63,113,63,418,63,113,63,63,63,63,63,113,63,63,63,113,418,63,113,418,63,113,418,63,113,418,63,113,63,63,63,419,419,0,0,0,0,0,0,0,0,118,0,117,117,117,117,117,117,117,0,117,117,117,117,117,0,0,117,0,117,117,117,117,0,118,118,118,118,118,118,118,118,118,118,118,118,118,118,118,118,118,118,118,118,118,0,119,119,119,119,119,119,119,119,119,119,119,119,119,119,119,119,119,119,0,0,116,420,0,0,0,120,0,120,420,0,0,0,0,0,121,124,125,420,123,121,124,125,420,123,121,124,125,420,123,121,124,125,420,123,121,421,422,421,422,124,125,121,123,121,124,125,420,123,121,124,125,420,123,124,121,124,125,420,123,121,124,125,420,123,121,124,125,420,123,121,124,125,420,123,121,124,125,420,123,123,421,422,0,0,0,0,0,0,0,124,125,421,422,0,121,124,125,420,123,121,124,125,420,123,121,124,125,420,123,121,124,125,420,123,0,0,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,0,0,128,0,131,130,128,131,130,128,131,130,128,131,130,128,130,131,131,130,128,128,128,131,130,128,131,130,128,131,130,128,131,130,131,130,128,131,130,128,130,130,130,0,128,128,131,130,128,131,130,128,131,130,128,131,130,128,0,0,0,0,0,423,424,425,423,424,425,423,424,425,423,424,425,423,424,425,423,424,425,423,424,425,423,424,425,423,424,425,423,424,425,423,424,425,423,424,425,423,424,425,423,424,425,423,424,425,423,424,425,0,134,134,134,134,134,0,134,134,134,134,134,134,134,134,134,134,134,134,134,134,0,0,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,0,0,0,0,0,146,120,0,146,120,0,0,144,145,146,146,147,144,145,146,147,146,144,145,146,147,144,145,146,147,421,422,144,145,146,147,146,147,421,422,144,145,144,145,144,145,146,147,146,146,146,146,146,146,144,145,146,144,145,146,147,146,144,144,144,145,145,146,147,144,145,146,147,144,145,146,147,144,145,146,147,144,145,146,147,144,421,422,144,145,421,422,144,145,146,147,144,145,146,147,144,145,146,147,144,145,146,147,144,145,146,147,0,0,151,151,0,0,151,151,151,151,0,0,0,0,0,153,55,153,152,151,151,150,55,153,152,151,150,151,55,153,152,151,150,55,153,152,151,150,150,0,0,151,151,150,55,152,153,153,55,153,152,151,150,0,151,151,151,151,151,151,0,0,151,55,153,152,151,150,0,0,151,153,153,153,153,55,153,152,151,150,55,153,152,151,150,55,153,152,151,150,55,153,152,151,150,55,153,152,151,150,0,0,55,55,153,153,55,0,153,0,55,153,153,0,153,0,153,0,153,55,153,55,0,0,151,55,153,152,151,150,55,153,152,151,150,55,153,152,151,150,55,153,152,151,150,0,153,164,0,164,0,0,164,0,164,163,165,115,164,163,165,115,164,163,165,115,164,163,165,115,115,115,115,164,115,164,163,165,115,164,163,165,115,163,164,163,165,115,164,163,165,115,164,163,165,115,164,163,165,115,164,164,163,165,115,115,165,163,115,115,164,163,165,115,164,163,165,115,164,163,165,115,164,164,163,165,115,163,115,115,115,0,0,0,0,0,0,0,0,0,0,0,0,174,171,166,170,167,169,174,171,166,170,167,169,174,171,166,170,167,169,174,171,166,170,167,169,169,166,167,166,169,170,167,169,170,167,169,169,174,171,171,166,170,170,167,169,169,170,167,166,166,166,174,171,166,170,167,169,167,167,167,174,171,166,170,167,169,174,171,166,170,167,169,174,171,166,170,167,169,174,171,166,170,167,169,170,174,171,166,170,167,169,169,167,167,167,166,167,166,166,167,167,167,167,167,174,170,169,167,167,167,167,167,167,170,170,167,169,169,174,171,166,170,167,169,174,171,166,170,167,169,174,171,166,170,167,169,174,171,166,170,167,169,166,166,167,167,0,0,0,0,158,158,0,158,158,158,158,158,158,158,158,158,158,158,158,158,158,158,158,158,158,158,158,158,158,158,158,158,158,158,183,0,0,181,181,181,181,181,181,181,181,181,181,183,181,181,181,181,181,181,181,181,181,181,181,181,181,189,204,196,0,179,179,0,0,0,196,0,199,188,0,56,179,179,179,185,186,184,179,185,186,184,184,199,188,0,195,0,179,0,0,0,0,56,0,0,0,0,0,0,56,189,204,195,0,0,0,0,0,184,189,204,179,179,179,179,179,179,179,179,54,0,46,54,179,179,0,194,179,179,179,179,179,179,179,0,53,194,202,202,46,194,187,53,201,179,179,179,179,179,187,194,51,0,53,194,46,0,46,202,194,53,179,198,53,51,193,46,179,179,179,179,194,179,426,426,427,426,426,427,428,428,428,429,429,429,430,430,431,432,431,433,432,432,430,430,433,434,434,435,434,434,435,434,435,0,185,186,184,185,186,184,184,0,0,0,0,184,187,53,184,184,185,185,186,186,187,53,184,185,186,187,53,184,185,186,187,53,184,185,186,187,53,184,185,186,184,185,186,184,185,186,184,184,184,185,185,185,186,186,186,53,184,184,185,185,186,186,187,53,184,185,186,53,53,53,53,53,53,53,187,53,187,53,184,185,186,187,53,184,185,186,184,185,186,187,53,184,185,186,187,53,184,185,186,187,53,53,53,53,184,185,186,53,53,53,184,185,186,187,53,184,185,186,187,53,184,185,186,187,53,184,185,186,187,53,184,185,186,428,428,428,429,429,429,434,434,435,434,434,435,434,435,196,0,0,196,195,195,195,195,196,196,195,196,195,196,195,196,195,195,195,196,195,196,195,196,195,195,195,196,196,196,195,195,196,195,195,195,196,195,196,195,196,195,196,195,196,195,195,196,195,196,195,196,195,196,426,426,427,426,426,427,0,46,0,46,46,46,46,201,46,201,46,201,46,201,46,46,46,201,46,46,201,46,46,46,46,46,46,46,46,46,201,46,46,201,201,46,201,46,201,46,201,46,201,46,46,46,46,46,46,46,46,46,201,46,46,46,46,201,46,46,201,46,201,46,201,46,201,46,46,46,0,0,199,56,199,0,0,0,0,0,56,0,56,202,202,54,194,203,197,197,56,56,202,199,199,54,194,203,197,56,202,199,197,54,194,203,197,56,202,199,54,194,203,197,56,202,199,197,199,197,199,197,54,54,54,198,194,203,197,56,202,199,198,198,198,197,56,199,197,194,197,56,199,197,197,197,56,56,56,199,199,199,194,197,56,56,202,199,54,194,203,197,56,56,56,56,202,199,199,199,199,199,202,202,202,202,197,202,194,202,198,198,202,202,194,54,194,203,197,56,202,199,54,194,203,197,56,202,199,54,194,203,197,56,202,199,54,194,203,197,56,202,199,198,54,194,203,197,56,202,199,194,194,197,194,194,194,198,198,202,202,194,197,56,202,202,198,203,56,197,199,56,54,194,203,197,56,202,199,54,194,203,197,56,202,199,54,194,203,197,56,202,199,194,54,194,203,197,56,202,199,198,198,194,194,189,204,188,188,189,204,0,0,0,0,0,189,204,189,204,204,188,188,51,193,189,204,188,51,193,189,204,188,51,193,189,204,188,51,193,189,204,188,51,189,204,188,51,193,189,204,188,51,193,204,188,204,188,204,204,204,188,188,188,189,204,204,188,51,193,189,189,189,189,204,188,188,188,188,188,188,51,193,193,193,193,193,189,204,188,51,193,189,204,188,51,193,204,188,51,193,189,204,188,51,193,193,189,204,188,51,193,193,193,51,51,189,51,193,189,204,188,51,204,189,204,188,51,193,189,204,188,51,193,189,204,188,51,193,189,204,188,51,193,206,206,206,206,0,0,436,206,436,206,436,206,436,206,436,206,206,206,436,206,206,436,206,436,206,436,206,436,206,436,206,206,436,436,206,206,436,206,436,206,436,206,436,206,437,437,438,437,439,438,437,439,438,439,0,0,0,0,0,0,207,208,207,208,207,208,207,208,207,208,207,208,207,207,208,207,208,207,208,207,208,207,208,207,207,208,207,208,207,208,207,208,207,208,207,0,0,0,440,441,440,441,440,441,440,441,440,441,440,441,440,441,440,441,440,441,440,441,440,441,440,441,440,441,440,441,440,441,440,441,0,0,59,0,0,0,0,0,57,59,0,210,210,132,209,210,132,209,210,132,209,210,132,209,210,210,210,132,209,0,49,57,132,209,132,209,210,132,209,132,210,132,209,210,132,209,210,210,132,209,210,210,132,209,210,212,212,211,210,210,57,132,209,132,209,132,132,210,132,209,210,132,209,210,132,209,210,132,209,0,0,59,0,0,0,57,59,59,212,59,212,59,212,59,212,59,212,49,212,57,59,212,59,212,59,212,59,212,59,212,59,212,212,212,212,211,0,57,59,212,59,212,59,212,59,212,0,0,0,0,0,222,222,0,0,0,0,192,0,0,192,0,0,0,0,0,216,216,0,215,442,218,227,213,227,443,217,218,213,227,160,224,215,213,213,227,213,227,442,224,58,0,219,213,227,227,0,219,160,137,217,218,216,0,219,217,0,442,137,219,442,219,0,0,224,227,213,227,137,224,227,268,444,444,0,215,215,215,215,215,215,215,215,215,215,215,215,215,215,215,215,215,215,0,0,213,213,213,213,213,443,213,213,213,213,213,213,213,213,213,213,213,213,213,213,213,213,213,213,0,0,0,216,216,217,217,218,216,217,218,216,216,217,218,216,217,218,218,216,217,218,216,217,218,216,217,218,217,217,218,217,217,217,217,216,217,218,216,217,218,216,217,218,216,217,218,216,217,218,216,217,218,216,217,218,217,218,216,217,216,217,218,216,217,218,216,217,218,216,217,218,216,217,218,0,0,0,222,222,0,0,224,219,442,222,160,224,219,442,222,160,224,219,442,222,160,224,219,442,222,160,442,219,160,224,219,442,222,160,224,219,442,222,160,160,160,219,160,160,160,224,224,219,442,222,160,224,219,442,222,160,224,219,442,222,160,224,219,442,222,160,160,224,219,442,222,160,224,442,224,219,160,160,219,160,219,160,219,160,219,219,160,442,219,442,219,224,219,442,222,160,224,219,442,222,160,224,219,442,222,160,224,224,219,442,222,160,224,192,0,0,192,137,192,137,192,137,192,137,192,192,137,192,192,137,192,192,192,137,137,192,137,192,137,192,137,192,137,192,137,137,192,137,137,192,137,192,137,192,137,192,137,444,444,0,227,227,227,227,227,227,227,227,227,227,227,227,227,227,227,227,227,227,227,227,227,227,227,227,227,227,227,0,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,235,235,139,234,235,0,139,139,139,139,139,139,139,139,139,139,139,139,139,139,139,139,235,235,235,235,234,234,139,139,139,139,139,139,139,139,139,139,139,139,139,139,139,0,234,239,239,238,235,0,238,235,234,235,235,235,0,238,235,235,235,235,234,235,0,139,139,139,139,139,139,139,139,139,139,139,139,235,0,139,139,139,139,139,139,139,139,139,139,139,139,139,139,139,139,139,139,139,139,139,139,139,139,139,139,139,139,235,234,235,235,235,235,235,235,235,139,0,235,235,235,235,235,235,235,235,235,0,235,235,235,234,0,139,234,235,235,235,238,238,234,234,235,235,237,237,139,139,156,239,142,157,238,234,235,237,139,156,239,142,157,238,234,235,237,139,139,156,234,235,234,235,234,235,234,235,234,234,235,235,234,235,234,235,139,139,238,234,235,237,139,156,239,142,157,238,234,235,237,139,156,239,142,157,237,237,238,234,235,237,139,156,239,142,157,238,234,235,237,139,156,239,142,157,234,235,139,139,156,234,235,234,235,238,235,237,156,142,157,157,156,234,235,156,238,234,235,237,139,156,239,142,157,237,237,238,234,235,237,139,238,234,235,237,139,234,235,238,234,235,237,139,238,238,238,234,234,234,235,235,235,237,237,237,139,139,139,234,235,156,238,234,234,234,234,234,235,235,235,235,235,237,139,238,234,234,235,237,139,156,239,142,157,234,235,234,234,235,235,234,235,234,235,234,235,139,139,139,139,238,234,235,237,139,234,235,234,235,234,235,238,234,235,237,139,156,239,142,157,238,234,235,237,139,156,239,142,157,238,234,235,237,139,156,239,142,157,238,234,235,237,139,156,239,142,157,234,235,234,235,139,139,139,139,234,235,142,139,238,234,235,237,139,156,239,142,157,234,235,234,235,156,237,237,237,237,237,237,237,237,237,237,237,237,237,237,237,237,237,237,237,237,237,237,237,237,237,237,237,237,237,157,234,235,156,157,156,234,235,139,139,139,142,234,235,234,235,234,235,234,235,157,238,234,235,237,139,156,239,142,157,234,235,238,234,235,237,139,156,239,142,157,238,234,235,237,139,156,239,142,157,238,234,235,237,139,156,239,142,157,234,235,238,234,235,237,139,156,239,142,157,237,237,445,445,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,253,254,255,246,247,248,249,250,251,252,253,254,255,246,247,248,249,250,251,252,253,254,255,246,247,248,249,250,251,252,253,254,255,246,247,248,249,250,251,252,247,246,247,248,249,250,251,252,246,247,248,249,250,251,252,249,253,246,248,252,446,253,254,255,446,253,254,255,253,254,255,246,247,248,249,250,251,252,253,249,253,254,255,256,253,254,255,246,247,248,249,250,251,252,253,254,255,246,247,248,249,250,251,252,253,254,255,246,247,248,249,250,251,252,253,254,255,246,247,248,249,250,251,252,253,254,255,246,247,248,249,250,251,252,246,247,248,249,250,251,252,253,254,255,246,247,248,249,250,251,252,246,247,248,250,251,252,248,248,252,252,246,247,248,249,250,251,252,251,253,254,255,246,247,248,249,250,251,252,253,254,255,246,247,248,249,250,251,252,253,254,255,246,247,248,249,250,251,252,253,254,255,246,247,248,249,250,251,252,246,246,250,251,0,0,0,0,0,0,0,0,260,260,260,260,260,260,260,260,260,260,260,260,260,260,260,260,260,260,0,261,261,261,261,261,261,261,261,261,261,261,261,261,261,261,261,261,261,0,0,0,264,0,0,0,264,264,0,264,0,0,0,0,0,0,262,262,267,264,265,263,262,267,264,265,263,262,267,264,265,263,262,267,264,265,263,262,263,263,262,264,265,263,264,265,263,265,263,263,267,262,267,264,265,263,262,264,265,263,267,264,265,263,262,182,182,182,267,262,267,264,265,263,262,267,264,265,263,262,267,264,265,263,267,264,265,263,262,267,264,265,263,262,262,263,0,269,267,265,263,265,265,264,265,263,263,267,264,265,263,262,267,264,265,263,262,267,264,265,263,262,267,264,265,263,262,269,269,263,0,0,0,0,269,270,269,270,269,270,269,270,269,269,270,270,269,270,269,270,270,269,270,269,270,269,270,269,270,269,270,269,269,270,269,269,270,269,270,269,270,269,270,269,269,269,269,0,0,0,271,271,271,271,271,271,271,271,271,271,271,271,271,271,271,271,271,271,271,271,271,271,271,271,271,271,271,271,271,271,271,271,271,271,271,271,271,271,271,271,271,271,271,271,271,0,0,0,0,0,0,42,42,42,42,278,277,42,278,277,42,278,277,42,278,277,42,42,42,278,277,275,42,275,275,275,274,278,277,42,42,42,274,278,277,42,278,277,42,278,277,278,277,42,275,278,277,42,42,277,42,275,278,277,42,42,42,42,277,42,278,277,42,278,277,42,278,277,42,278,277,42,0,319,0,319,0,319,0,319,0,0,319,0,319,0,319,0,319,0,319,447,0,0,318,0,319,0,319,0,319,0,319,0,319,0,319,0,319,0,319,0,319,0,319,0,319,0,319,0,319,0,319,0,319,0,319,0,319,0,319,318,0,319,0,319,0,0,319,318,0,0,0,319,0,319,0,319,0,319,0,319,0,319,291,290,281,317,281,281,317,317,319,319,288,288,304,304,289,289,285,285,296,296,287,287,282,282,283,283,316,316,310,310,280,280,305,305,284,284,314,314,309,309,292,292,299,299,313,313,315,315,307,307,293,293,312,312,298,298,295,295,291,291,286,286,290,290,311,311,297,297,302,302,301,301,300,300,303,303,308,308,294,294,306,306,281,317,319,288,304,289,285,296,287,282,283,316,310,280,305,284,314,309,292,299,313,315,307,293,312,298,295,291,286,290,311,297,302,301,300,303,308,294,306,281,317,319,288,304,289,285,296,287,282,283,316,310,280,305,284,314,309,292,299,313,315,307,293,312,298,295,291,286,290,311,297,302,301,300,303,308,294,306,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,288,304,289,285,296,287,282,283,316,310,280,305,284,314,309,292,299,313,315,307,293,312,298,295,291,286,290,311,297,302,301,300,303,308,294,306,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,288,304,289,285,296,287,282,283,316,310,280,305,284,314,309,292,299,313,315,307,293,312,298,295,291,286,290,311,297,302,301,300,303,308,294,306,288,304,289,285,316,310,280,305,284,314,309,299,313,315,307,293,291,290,281,317,319,288,304,289,285,296,287,282,283,316,310,280,305,284,314,309,292,299,313,315,307,293,312,298,295,291,286,290,311,297,302,301,300,303,308,294,306,281,317,319,288,304,289,285,296,287,282,283,316,310,280,305,284,314,309,292,299,313,315,307,293,312,298,295,291,286,290,311,297,302,301,300,303,308,294,306,286,311,301,300,114,281,317,319,288,304,289,285,296,287,282,283,316,310,280,305,284,314,309,292,299,313,315,307,293,312,298,295,291,286,290,311,297,302,301,300,303,308,294,306,281,317,319,288,304,289,285,296,287,282,283,316,310,280,305,284,314,309,292,299,313,315,307,293,312,298,295,291,286,290,311,297,302,301,300,303,308,294,306,288,304,289,285,296,287,282,283,316,310,280,305,284,314,309,292,299,313,315,307,293,312,298,295,291,286,290,311,297,302,301,300,303,308,294,306,281,317,312,298,301,300,312,298,306,306,281,317,319,288,304,289,285,296,287,282,283,316,310,280,305,284,314,309,292,299,313,315,307,293,312,298,295,291,286,290,311,297,302,301,300,303,308,294,306,281,317,319,288,304,289,285,296,287,282,283,316,310,280,305,284,314,309,292,299,313,315,307,293,312,298,295,291,286,290,311,297,302,301,300,303,308,294,306,281,317,319,288,304,289,285,296,287,282,283,316,310,280,305,284,314,309,292,299,313,315,307,293,312,298,295,291,286,290,311,297,302,301,300,303,308,294,306,281,317,319,288,304,289,285,296,287,282,283,316,310,280,305,284,314,309,292,299,313,315,307,293,312,298,295,291,286,290,311,297,302,301,300,303,308,294,306,281,281,281,317,317,317,319,319,319,288,288,288,304,304,304,289,289,289,285,285,285,296,296,296,287,287,287,282,282,282,283,283,283,316,316,316,310,310,310,280,280,280,305,305,305,284,284,284,314,314,314,309,309,309,292,292,292,299,299,299,313,313,313,315,315,315,307,307,307,293,293,293,312,312,312,298,298,298,295,295,295,291,291,291,286,286,286,290,290,290,311,311,311,297,297,297,302,302,302,301,301,301,300,300,300,303,303,303,308,308,308,294,294,294,306,306,306,281,317,319,288,304,289,285,296,287,282,283,316,310,280,305,284,314,309,292,299,313,315,307,293,312,298,295,291,286,290,311,297,302,301,300,303,308,294,306,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,319,288,288,288,288,288,288,288,304,304,304,304,289,289,289,289,285,285,285,285,296,296,296,296,287,287,287,287,282,282,282,282,283,283,283,283,316,316,316,316,310,310,310,310,280,280,280,280,305,305,305,305,284,284,284,284,314,314,314,314,309,309,309,309,292,292,292,292,299,299,299,299,313,313,313,313,315,315,315,315,307,307,307,307,293,293,293,293,312,312,312,312,298,298,298,298,295,295,295,295,291,291,291,291,286,286,286,286,290,290,290,290,311,311,311,311,297,297,297,297,302,302,302,302,301,301,301,301,300,300,300,300,303,303,303,303,308,308,308,308,294,294,294,294,306,306,306,306,447,288,304,289,285,316,310,280,305,284,314,309,299,313,315,307,293,286,311,297,302,281,317,319,288,304,289,285,296,287,282,283,316,310,280,305,284,314,309,292,299,313,315,307,293,312,298,295,291,286,290,311,297,302,301,300,303,308,294,306,312,298,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,317,319,288,288,304,304,289,289,285,285,296,296,287,287,282,282,283,283,316,316,310,310,280,280,305,305,284,284,314,314,309,309,292,292,299,299,313,313,315,315,307,307,293,293,312,312,298,298,295,295,291,291,286,286,290,290,311,311,297,297,302,302,301,301,300,300,303,303,308,308,294,294,306,306,281,317,319,288,304,289,285,296,287,282,283,316,310,280,305,284,314,309,292,299,313,315,307,293,312,298,295,291,286,290,311,297,302,301,300,303,308,294,306,281,317,319,288,304,289,285,296,287,282,283,316,310,280,305,284,314,309,292,299,313,315,307,293,312,298,295,291,286,290,311,297,302,301,300,303,308,294,306,281,317,319,288,304,289,285,296,287,282,283,316,310,280,305,284,314,309,292,299,313,315,307,293,312,298,295,291,286,290,311,297,302,301,300,303,308,294,306,447,281,317,319,288,304,289,285,296,287,282,283,316,310,280,305,284,314,309,292,299,313,315,307,293,312,298,295,291,286,290,311,297,302,301,300,303,308,294,306,282,283,291,286,290,311,297,0,114,114,114,319,288,304,289,285,296,287,282,283,316,310,280,305,284,314,309,292,299,313,315,307,293,312,298,295,291,286,290,311,297,302,301,300,303,308,294,306,303,308,114,303,308,288,304,289,285,316,310,280,305,284,314,309,299,313,315,307,293,0,297,302,0,114,0,281,317,319,288,304,289,285,296,287,282,283,316,310,280,305,284,314,309,292,299,313,315,307,293,312,298,295,291,286,290,311,297,302,301,300,303,308,294,306,281,317,319,288,304,289,285,296,287,282,283,316,310,280,305,284,314,309,292,299,313,315,307,293,312,298,295,291,286,290,311,297,302,301,300,303,308,294,306,281,317,319,288,304,289,285,296,287,282,283,316,310,280,305,284,314,309,292,299,313,315,307,293,312,298,295,291,286,290,311,297,302,301,300,303,308,294,306,281,317,319,288,304,289,285,296,287,282,283,316,310,280,305,284,314,309,292,299,313,315,307,293,312,298,295,291,286,290,311,297,302,301,300,303,308,294,306,294,281,317,319,288,304,289,285,296,287,282,283,316,310,280,305,284,314,309,292,299,313,315,307,293,312,298,295,291,286,290,311,297,302,301,300,303,308,294,306,302,294,114,296,287,292,295,296,292,295,301,300,303,308,294,306,296,292,295,114,327,0,327,0,0,327,0,327,0,324,325,326,327,328,324,325,326,327,328,324,324,325,326,327,328,324,325,326,327,328,324,325,326,327,328,324,325,326,327,328,328,324,325,326,327,328,324,325,326,327,328,325,324,325,326,327,328,324,325,326,327,328,327,328,328,324,325,326,327,328,324,325,326,327,328,324,325,326,327,328,324,325,326,327,328,324,325,326,327,328,326,328,328,328,328,324,325,326,327,328,328,328,324,325,326,327,328,324,325,326,327,328,324,325,326,327,328,324,325,326,327,328,324,325,326,327,328,329,329,0,0,329,330,329,330,329,330,329,330,329,330,329,330,330,329,330,329,330,329,330,329,330,329,330,329,330,329,330,329,330,329,330,330,330,330,330,330,330,330,330,329,330,329,330,329,330,329,330,329,330,329,330,332,0,32,0,0,0,332,0,32,32,331,332,32,331,332,331,32,331,332,32,331,332,331,32,331,332,32,331,332,32,32,331,332,32,331,332,32,331,332,32,331,332,32,331,332,32,331,332,32,331,332,32,331,332,32,331,332,331,331,331,32,331,332,331,32,331,332,32,331,332,32,331,332,32,331,332,32,331,332,0,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,0,0,0,334,335,334,335,334,335,334,335,333,334,333,334,335,334,335,334,335,334,335,334,335,334,335,334,335,334,335,335,0,334,0,0,334,335,334,335,334,335,334,335,0,266,448,0,0,0,0,0,266,448,336,336,336,336,336,337,336,337,337,337,336,336,336,336,336,0,336,336,336,336,336,336,337,336,266,336,448,336,449,336,336,336,336,336,0,0,0,0,339,339,339,339,339,339,0,339,339,339,276,339,339,340,339,340,0,339,339,339,339,339,0,0,450,341,341,341,341,341,341,341,341,341,341,341,450,341,341,341,341,341,341,341,0,342,342,342,342,342,342,342,342,342,342,342,342,342,342,342,342,342,342,342,0,0,0,0,0,451,452,0,451,452,0,0,0,0,348,345,343,149,346,348,345,343,149,346,348,345,343,149,346,348,345,343,149,346,149,343,343,344,345,149,343,344,345,149,346,347,348,345,343,149,346,347,347,347,149,343,348,345,343,149,346,149,348,348,345,343,149,346,348,345,343,149,346,345,343,346,348,345,343,149,346,347,348,345,343,149,346,346,451,149,452,149,453,149,345,348,348,149,343,348,345,343,149,346,348,345,343,149,346,348,345,343,149,346,348,345,343,149,346,0,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,0,0,0,0,0,454,454,352,349,352,349,352,349,352,349,349,349,349,352,349,349,352,349,349,349,352,349,352,349,352,349,352,349,352,349,352,352,349,352,349,352,349,352,349,352,349,349,0,0,0,359,359,359,359,359,359,359,359,359,359,359,359,359,359,359,359,359,359,359,359,359,359,359,359,359,359,359,359,359,359,359,359,359,359,359,359,359,359,359,0,0,0,361,361,361,361,0,362,363,364,361,361,362,363,364,361,361,361,362,362,362,363,364,361,362,363,364,361,362,363,364,362,363,364,361,362,363,364,361,361,362,363,364,361,362,362,362,363,364,361,361,361,362,363,364,362,363,364,361,361,361,361,364,364,364,362,362,362,363,364,361,362,362,363,364,361,361,361,363,361,363,363,362,362,362,363,364,361,362,363,364,361,362,363,364,361,362,363,364,361,361,362,363,364,361,364,364,361,364,363,363,362,362,362,362,363,363,363,363,362,363,364,361,362,363,364,361,362,363,364,361,363,363,362,363,364,361,362,362,362,363,364,361,364,364,0,371,0,0,370,370,370,370,370,370,370,370,370,0,372,370,0,370,370,370,370,370,370,0,0,371,370,372,370,370,370,370,370,370,0,372,372,372,372,372,372,372,372,372,372,372,372,372,372,372,372,372,372,372,372,0,0,0,0,14,455,14,455,0,0,0,0,376,35,378,374,374,376,35,378,374,376,35,378,374,376,35,378,374,0,374,374,374,376,0,0,0,376,35,378,374,374,374,374,374,374,376,35,378,374,376,35,378,374,376,376,376,376,376,376,35,378,374,376,35,378,374,376,35,378,374,376,35,378,374,376,35,378,374,0,35,378,0,35,378,376,376,35,378,374,35,378,374,376,35,378,374,376,35,378,374,376,35,378,374,376,35,378,374,456,0,0,0,379,0,379,0,379,456,0,0,0,388,388,0,379,0,0,0,0,0,0,0,0,385,380,390,389,456,383,384,385,380,390,389,456,383,384,385,380,390,389,456,383,384,385,380,390,389,456,383,384,390,380,457,458,459,460,387,457,458,459,460,386,390,389,380,383,384,385,384,385,380,390,389,456,383,384,390,385,380,390,389,456,383,384,383,385,380,390,389,456,383,384,385,380,390,389,456,383,384,385,380,390,389,456,383,384,385,380,390,389,456,383,384,459,385,380,390,389,456,383,384,458,386,384,457,458,459,460,387,0,0,0,0,0,0,0,0,390,389,458,459,460,0,385,380,390,389,456,383,384,385,380,390,389,456,383,384,385,380,390,389,456,383,384,385,380,390,389,456,383,384,0,0,391,391,391,391,391,391,391,391,391,391,391,391,391,391,391,391,391,391,391,0,0,388,388,0,386,387,388,386,387,388,386,387,388,386,387,388,387,386,386,387,388,388,388,386,387,388,386,387,388,386,387,388,386,387,386,387,388,386,387,388,387,387,387,386,387,387,0,388,387,387,388,386,387,388,386,387,388,386,387,388,386,387,388,0,0,0,0,461,462,461,462,461,462,461,462,461,462,461,462,461,462,461,462,461,462,461,462,461,462,461,462,461,462,461,462,461,462,461,462,0,392,392,392,392,392,0,392,392,392,392,392,392,392,392,392,392,392,392,392,392,0,0,0,0,0,396,0,0,396,0,396,0,0,0,396,393,393,393,396,397,395,398,394,393,396,397,395,398,394,394,393,396,397,395,398,394,393,396,397,395,398,394,395,395,395,395,393,394,396,395,396,395,395,394,393,396,397,395,398,394,393,393,395,394,393,396,397,395,398,394,393,396,397,395,398,394,393,394,394,393,393,393,393,393,393,395,395,397,397,393,396,397,395,398,394,393,396,397,395,398,394,393,396,397,395,398,394,393,396,397,395,398,394,393,396,397,395,398,394,394,393,395,398,394,394,393,393,397,394,393,393,393,393,393,394,394,395,396,395,394,393,396,397,395,398,394,393,396,397,395,398,394,397,393,396,397,395,398,394,393,396,397,395,398,394,393,393,395,393,393,395,0,0,0,0,0,0,0,405,379,0,405,379,0,405,379,0,405,379,0,0,401,402,403,405,405,404,406,401,402,403,405,404,406,405,401,402,403,405,404,406,401,402,403,405,404,406,404,457,458,459,460,401,402,403,404,405,404,406,405,404,406,457,458,459,460,401,402,403,404,401,402,403,404,401,402,403,405,404,406,405,405,405,405,405,405,404,401,402,403,405,404,401,402,403,405,404,406,405,403,401,401,402,402,403,403,405,404,404,406,401,402,403,405,404,406,401,402,403,405,404,406,401,402,403,405,404,406,459,404,401,402,403,405,404,406,404,458,402,402,457,458,459,460,401,402,403,404,458,459,402,404,405,404,406,460,403,401,402,403,405,404,406,401,402,403,405,404,406,401,402,403,405,404,406,401,402,403,405,404,406,0,0,0,0,463,0,155,0,223,223,223,223,223,223,223,463,223,223,223,223,223,223,223,223,223,223,155,223,223,223,223,223,223,155,155,154,223,223,223,223,223,223,223,223],"f":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[4,[[4,[1]]]],[[],5],0,[[6,7,7]],0,[[],8],[[],8],[[],9],[[],10],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[11,12]],[[13,13]],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],14],[[],14],[[],14],[[15,15],16],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[17,[[10,[18]]]],[19,15],[18,18],[11,11],[19,19],[13,13],[20,20],[21,21],[17,17],[16,16],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[18,18],22],[[11,11],22],[[17,17],22],[[],[[23,[7]]]],[[],11],[[],19],[[],13],[[],20],[[],21],[[],17],[[],16],[24,[[8,[11]]]],[24,[[8,[17]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[14,5],[14,5],[14,5],[14,5],[25],[25],[25],[[18,18],5],[[11,11],5],[[20,20],5],[[21,21],5],[[17,17],5],[[16,16],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[18,26],27],[[11,26],27],[[11,26],27],[[19,26],27],[[19,26],27],[[13,26],27],[[13,26],27],[[20,26],27],[[21,26],27],[[21,26],27],[[17,26],27],[[17,26],27],[[16,26],27],[[16,26],27],[[28,26],27],[[]],[[]],[[]],[12,11],[[]],[11,13],[[]],[[]],[[]],[[],21],[[]],[[],17],[[],16],[[]],[[],16],[[[29,[15]]],16],[[]],[[19,13],16],[17,[[23,[17]]]],[17,[[10,[17]]]],[[11,25]],[[21,25]],[[17,25]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[17,30],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[17,32],[[10,[21]]]],[[21,32],[[10,[17]]]],[[16,11,13],17],[[28,17],5],[11,5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[28,33],0,0,[30,17],[30,17],0,0,[19,15],[19,15],[[19,15],15],0,[[13,13],5],[[[34,[11]]],18],[12,11],[[15,15],19],[15,13],[[[35,[15]],36,37,13,11],28],0,[[18,18],[[10,[22]]]],[[11,11],[[10,[22]]]],[[17,17],[[10,[22]]]],[[13,13],15],[[13,17],15],[[13,11],15],[[11,38],8],[[17,38],8],[17,12],[[11,12]],[[13,13]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],39],[[],39],[[],39],[[],39],[[],39],[[],39],[[17,13],[[40,[15]]]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[30,17],[30,17],0,0,0,0,0,0,0,0,0,0,[[13,15],11],[28,11],0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[41,42,[4,[[44,[43]]]],45,46]],0,0,[[],41],[47],[[]],[[]],[[]],[48,49],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[],5],0,0,0,[48],0,[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],[6],0,[[],1],[[],1],[[]],[[]],[[]],[[]],[50,[[52,[51]]]],[[]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[[],5],[[],50],[[50,53,54,55,45],[[8,[56]]]],[[],8],[[],8],[[],9],[[],10],[[50,55]],0,0,0,0,0,[6],0,0,0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[45,57,58],59],[[45,48,58],59],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],10],[[],10],[6],0,0,0,0,0,0,0,0,[[]],[[],60],0,0,0,0,0,0,0,0,[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[61,26],27],[[61,26],27],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[[],5],[62],[[[63,[43]],[10,[64]]]],[[],[[8,[61]]]],[[],39],[[],8],[[],8],[[],9],[[],10],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[65,66],[[8,[67]]]],[[[70,[68,69]],65,[66,[68]]],[[8,[67]]]],0,[65,65],[71,71],[[]],[[]],[24,[[8,[65]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[72,72],5],[[73,26],27],[[73,26],27],[[74,26],27],[[75,26],27],[[75,26],27],[[76,26],27],[[76,26],27],[[67,26],27],[[67,26],27],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[74,72],5],[[72,25]],[[],74],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[74,3],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[69,[[70,[68,69]]]],[[72,[3,[1]]],74],0,[62],[62],[62],[62],[77],[[[70,[68,69]],77]],0,[78,[[8,[75]]]],[[71,78],[[8,[75]]]],0,[[65,38],8],[74,72],0,[[]],[[]],[[],39],[[],39],[[],39],[[],39],0,[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[79,[[81,[[80,[15]]]]]],[[[80,[[0,[82,83,84,85]]]]],[[80,[[0,[82,83,84,85]]]]]],[[[86,[[0,[82,83,84,85]]]]],[[86,[[0,[82,83,84,85]]]]]],[[]],[[]],[[[80,[[0,[82,83,84,87]]]]],5],[[79,[10,[88]]],[[8,[89]]]],[79,[[8,[89]]]],[[],90],[[],79],[[[80,[[0,[82,83,84,87]]]]]],[[]],[[]],[[]],[[]],[[]],[[[80,[[0,[82,83,84,87]]]]]],0,[[79,64],[[8,[89]]]],[[79,64],[[8,[89]]]],[[[80,[[0,[82,83,84,91]]]],26],27],[[[86,[[0,[82,83,84,91]]]],26],27],[[]],[[]],[[]],[[]],[[]],[[[92,[[0,[82,83,84,87]]]],[93,[39,39]]],[[10,[[80,[[0,[82,83,84,87]]]]]]]],[[[94,[[0,[82,83,84,87]]]],[93,[39,39]]],[[10,[[80,[[0,[82,83,84,87]]]]]]]],0,0,[79,[[8,[89]]]],[79,[[8,[89]]]],[79,[[52,[[80,[15]]]]]],0,[[90,17,95]],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[],5],[[],5],[[],5],[[79,5,37,37],[[8,[89]]]],[[79,5,37],[[8,[89]]]],[[79,37,37],[[8,[89]]]],[[79,37],[[8,[89]]]],[[79,37,37],[[8,[89]]]],[[79,37,37],[[8,[89]]]],[[79,37],[[8,[89]]]],[[],90],[[],79],[[79,37],[[8,[89]]]],[[79,37],[[8,[89]]]],[[95,20],[[52,[[80,[15]]]]]],[[79,5,37,37],[[8,[89]]]],[[79,5,37],[[8,[89]]]],0,0,[79,[[8,[89]]]],[79,[[8,[89]]]],[[79,37,88,96],[[8,[5,89]]]],[[90,16,11,13],[[10,[[52,[[80,[15]]]]]]]],[[]],[[]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],[[],10],[[],10],[[79,15,15,37],[[8,[89]]]],0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[97,26],27],[[97,26],27],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[62],[[[0,[98,99]]],[[8,[97]]]],[[100,[0,[98,99]]],[[8,[97]]]],[[],39],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],10],[[],10],0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[[102,[[0,[101,85]]]]],[[102,[[0,[101,85]]]]]],[[[60,[[0,[101,85]]]]],[[60,[[0,[101,85]]]]]],[[]],[[]],[[]],[[]],[[]],[88,[[104,[[3,[103]]]]]],[[[102,[101]],17,105],[[8,[[52,[12]],106]]]],[[[60,[101]],17,105],[[8,[[52,[12]],106]]]],[[106,26],27],[[106,26],27],[[]],[[]],[107,106],[108,106],[[]],0,0,[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[],5],[101,[[102,[101]]]],[[[102,[101]]],[[60,[101]]]],[62],[106,[[10,[109]]]],[[]],[[]],[[],39],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[110,110],[111,111],[105,105],[[]],[[]],[[]],[[],110],[[],111],[[]],[[]],[[]],0,0,[[110,17],39],[[111,17],39],[[105,17],39],[[]],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[],5],0,[[88,88],110],[[88,88,88],111],[[]],[[]],[[]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],0,0,0,0,[[[44,[43]]]],0,0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[[112,[43]]],[[44,[43]]]],[[],[[112,[43]]]],[[]],[[]],[[]],[[]],0,[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[[44,[43]]]],0,0,[[],[[112,[43]]]],[[[44,[43]]]],0,0,[[[44,[43]]],60],0,[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],10],[[],10],[[[112,[43]]],[[112,[43]]]],[[[112,[43]]],[[112,[43]]]],[[[112,[43]]],[[112,[43]]]],[[[112,[43]]],[[112,[43]]]],0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[[63,[43]]],[[8,[6,113]]]],[[[63,[43]]],[[8,[6,113]]]],[[]],[[]],[[]],[[113,26],27],[[113,26],27],[[]],[[]],[[]],[[[63,[43]]],[[8,[113]]]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[[63,[43]]],5],[[],5],[[],5],[[],5],[[[63,[43]]],[[4,[[44,[43]]]]]],0,0,[[114,[44,[43]],115,[52,[[3,[116]]]]],[[8,[[63,[43]],113]]]],0,[62],[[[63,[43]]]],[[[63,[43]]],[[8,[113]]]],0,[[],39],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],[[[63,[43]]]],0,[[[63,[43]]]],0,0,0,0,0,0,[103],0,0,0,0,0,[[],1],[[],1],[[]],[[]],[[],117],[[]],[[]],0,[[]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[[],5],[103],0,[117,60],0,[[],8],[[],8],[[],9],[[],10],0,[[],1],[[],1],[[]],[[]],0,[118,118],[[]],[[]],[[118,88],[[104,[[3,[103]]]]]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[[],5],[[[10,[39]]],118],[[]],[[],8],[[],8],[[],9],[[],10],0,[[],1],[[],1],[[]],[[]],[[],119],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[[],5],[[],119],[[119,98],[[8,[97]]]],[[],8],[[],8],[[],9],[[],10],0,0,[[42,[4,[44]],45,46]],0,0,0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[121,[120]],42,[4,[[44,[43]]]],45,46]],[[17,39,122]],[17],[[],17],[[],17],0,0,[[],[[121,[120]]]],[[],123],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[],5],[[],5],[[],5],0,[[],72],[[],72],0,0,0,0,0,0,0,0,0,[[],124],[[],125],0,[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],[[],10],[[],10],0,0,[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[4,[[4,[1]]]],[[],5],0,[[[126,[43,120]]],[[127,[88]]]],[[[4,[[44,[43]]]]],[[126,[43]]]],0,[[[126,[43,120]],6]],[[],8],[[],8],[[],9],[[],10],0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[[]],[[]],[[]],[[128,26],27],[[128,26],27],[[]],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[],5],[[[130,[120,129]],17,39,122],[[8,[128]]]],[129,[[130,[120,129]]]],0,[[[34,[12]],131,[130,[120,129]]],[[8,[128]]]],[62],[[],39],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],[6],0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[],5],[[45,57,58],59],[[45,132,58],59],[[45,132,58],59],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],0,[[],1],[[],1],[[]],[[]],[[]],[[65,[0,[129,85,99]],68],133],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[4,[[4,[1]]]],[[],5],0,[[[134,[43,120]]],[[127,[88]]]],[[[4,[[44,[43]]]]],[[134,[43,120]]]],0,[[[134,[43,120]],6]],[[],8],[[],8],[[],9],[[],10],0,0,[[],1],[[],1],[[135,136,17,137]],[[]],[[]],0,[[135,138,136,139,7,7,140],137],[[]],[[]],[[135,17],[[10,[141]]]],[[135,17,45],5],[[]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[[],5],0,[[142,136,143],135],[135,143],0,0,[[],8],[[],8],[[],9],[[],10],[6],0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],14],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[17,39,122]],[17],[[17,39,122],144],[17,145],[146,146],[147,147],[[]],[[]],[[],17],[[],17],[144,17],[145,17],0,0,[[]],[[]],[[]],[[]],[14,5],[25],[[146,146],5],[[],5],[[],5],[[],5],[[144,26],27],[[145,26],27],[[146,26],27],[[]],[[]],[[]],[[]],[[146,25]],0,[144,74],[[]],[145,74],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[],5],[[],5],0,[[],72],[[],72],[[],72],[[],72],[[],124],[[],125],[144,124],[145,125],[[]],[[]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],[[],10],[[135,136,148,149,114,28]],[6],0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],14],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[150,42,[4,[[44,[43]]]],45,46]],0,0,[151,151],[[]],[[],150],0,[152],[153,136],0,[[]],[[]],[[]],[[]],[[]],0,[14,5],[25],[[151,151],5],[[],5],[[],5],[[],5],0,0,[[151,26],27],[[]],[[]],[[]],[[]],[[]],0,0,[[151,25]],[[[0,[154,155]],156,157],[[8,[153,158]]]],[[154,156,157],[[8,[153,158]]]],[153,159],0,[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[],5],[[],5],[[],5],0,0,0,[160,55],[153,148],0,[[55,[0,[154,155]],159],[[8,[158]]]],0,0,0,0,[[159,156,161],[[8,[162]]]],[[153,7,7]],0,0,0,0,0,[153,55],[55,160],[153,160],0,0,0,[[]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],[[],10],[[],10],0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[115,163],[115,115],[[]],[[],164],[[],115],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[163,[[8,[164,158]]]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[164,[[10,[153]]]],[[],5],[[],5],[[],5],[[],5],[[],115],0,0,0,[[]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[164,165],[[],10],[[],10],[[],10],[[],10],0,0,[[115,157],115],[[115,156],115],0,0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[166,15,15,15],[[40,[15]]]],[[167,15],[[40,[15]]]],[[166,15,15,15,15,[168,[15]]],[[40,[15]]]],[[169,15,15],[[168,[15]]]],[170,170],[167,167],[169,169],[[]],[[]],[[]],[[],169],[[]],[[]],[171,[[40,[172]]]],[[]],[170,[[40,[172]]]],[[]],[[]],[[]],[[169,169],5],[[170,26],27],[[167,26],27],[[166,15,15],[[173,[15]]]],[166,[[173,[15]]]],0,[[]],[[]],[[]],[[]],[[]],[[]],[167,[[173,[15]]]],[167,[[173,[15]]]],[167,[[173,[15]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[170,174],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],0,[[167,[175,[15]]]],[[167,[168,[15]]]],[[167,167],5],[[[176,[[173,[15]]]]],166],[[[176,[[168,[15]]]],[176,[[173,[15]]]],[176,[[173,[15]]]]],167],[[166,[168,[15]],15],15],[[166,[168,[15]],15],15],[[167,[176,[[173,[15]]]]]],0,[167,[[168,[15]]]],0,[167,[[175,[15]]]],[[174,[177,[15]]],[[177,[15]]]],[[170,[177,[15]]],[[177,[15]]]],0,[[167,[176,[[173,[15]]]]]],0,[[167,[176,[[173,[15]]]]]],[[167,[176,[[173,[15]]]]]],[[167,[176,[[173,[15]]]]]],[[167,15],[[29,[15]]]],[[170,[40,[15]]],171],[[]],[[]],[[]],0,[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[166,15,15],15],[166,15],[[167,[176,[[173,[15]]]]]],0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[]],[[]],[[]],[[158,26],27],[[158,26],27],[162,158],[178,158],[179,158],[[]],[180,158],[[]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[[],5],[62],[158,5],[158,[[10,[109]]]],[[],39],[[],8],[[],8],[[],9],[[],10],0,0,0,0,0,[[],1],[[],1],[[]],[[]],[[],181],[[]],[[181,88]],[[]],[[],5],[[[181,[182]],17,45],5],[[181,98]],[[]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[[],5],[[[181,[183]],98]],[181,181],[[],8],[[],8],[[],9],[[],10],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[]],[[]],0,0,0,0,[[]],[14,5],0,0,[[179,179],5],[[],5],[[],5],[[],5],[[179,26],27],[[179,26],27],[[]],0,0,0,0,0,0,0,0,0,0,[[]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[[],5],0,0,0,0,0,0,0,0,0,0,0,0,[62],[[53,54,55,45],[[8,[56]]]],0,0,0,0,[[],39],[[],8],[[],8],[[],9],0,[[],10],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[14,5],[14,5],[14,5],[[184,184],5],[[185,185],5],[[186,186],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[53,[[52,[187]]]],[[184,26],27],[[184,26],27],[[185,26],27],[[185,26],27],[[186,26],27],[[186,26],27],[[]],[[]],[[]],[[]],[[]],[[53,[176,[188]]],[[8,[189,186]]]],[[53,[176,[188]]],[[8,[190,186]]]],[[53,[176,[188]]],[[8,[191,186]]]],[[53,[176,[188]]],[[8,[192,186]]]],0,[53,193],[53,[[34,[189]]]],0,0,[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[],5],[[],5],[[],5],0,[[46,194,[34,[189]],[34,[[10,[189]]]]],53],0,[53,193],0,[62],[62],[62],[[53,[176,[[127,[88]]]],[52,[189]]],[[8,[184]]]],0,[[53,[176,[188]],[176,[189]]],[[8,[185]]]],[[],39],[[],39],[[],39],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],[[],10],[[],10],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[195,195],[[]],[[]],[[]],[14,5],[14,5],[[195,195],5],[[196,196],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[195,26],27],[[]],[[]],[195,197],[195,197],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[]],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],10],[[],10],0,0,0,0,0,0,0,0,0,[[46,[176,[[127,[88]]]],198],197],[[46,[176,[199]],[176,[199]]],[[8,[179]]]],[[46,[176,[199]],[176,[188]],[176,[199]],[176,[188]]],[[8,[179]]]],[[46,[176,[[127,[88]]]],46]],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],0,[[],46],[[]],[[]],[[46,26],27],[[]],[[]],[[46,[176,[199]]],[[8,[198,179]]]],[[46,[176,[199]]],[[8,[197,179]]]],[[46,[176,[199]]],[[8,[198,179]]]],[[46,[176,[199]]],[[8,[194,179]]]],[[46,[176,[199]]],[[8,[194,179]]]],[[46,[200,[88]]],[[10,[46]]]],[[46,[200,[88]]],[[10,[46]]]],[[46,195],5],[201,[[52,[51]]]],[46,[[10,[194]]]],0,0,[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[46,[176,[199]]],[[8,[33,179]]]],[[46,[176,[199]]],[[8,[33,179]]]],[46,33],[46,33],[46,33],[46,33],0,0,[201,[[52,[51]]]],[[46,[176,[[127,[88]]]]],[[8,[179]]]],[[46,[176,[199]],[176,[199]]],[[8,[179]]]],[[46,[176,[199]],[176,[188]],[176,[199]],[176,[188]]],[[8,[179]]]],[[46,[176,[[127,[88]]]]]],[[201,53,54,55,45],[[8,[56]]]],[[46,[52,[51]]],197],0,[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],10],[[],10],[[46,55]],[[46,195,196],[[8,[179]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,[[202,195],[[8,[179]]]],[[202,195],[[8,[179]]]],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],14],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[197,197],[199,199],[[]],[[]],[[197,197],22],0,0,[[]],[[[3,[198]]],[[8,[[3,[198]],[3,[198]]]]]],[[]],[[]],[[]],[[]],[[]],[[]],[198,[[10,[198]]]],[[[4,[198]]],[[8,[[4,[198]],[4,[198]]]]]],[198,[[10,[198]]]],[14,5],[14,5],[14,5],[25],0,[[197,197],5],[[56,56],5],[[199,199],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[194,26],27],[[197,26],27],[[56,26],27],[[56,26],27],[[202,26],27],[[199,26],27],[[]],[[]],[[]],[[]],[[]],[184,56],[186,56],[185,56],[[]],[[]],[39,199],[197,199],[199,199],[88,199],[[202,37],[[8,[195,179]]]],[[202,37],[[8,[195,179]]]],[[202,195],5],[[202,195],5],[[197,25]],[202,197],0,0,[[],[[52,[51]]]],[[],[[52,[51]]]],[202,[[34,[195]]]],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[198,5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],0,[[197,198],194],[37,197],[194,[[8,[198,179]]]],0,[194,[[8,[198,179]]]],[[],[[52,[51]]]],[[],[[52,[51]]]],[202,[[34,[195]]]],0,0,[[197,197],[[10,[22]]]],[62],[[202,195],[[8,[179]]]],[[202,195],[[8,[179]]]],[[53,54,55,45],[[8,[56]]]],[[203,53,54,55,45],[[8,[56]]]],[56,[[10,[109]]]],[[]],[[]],[[],39],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],0,[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[55],[55],[194,[[8,[179]]]],[194,[[8,[179]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[189,189],[204,204],[188,188],[51,51],[[]],[[]],[[]],[[]],[[],193],[[]],[[]],[[]],[[]],[[]],[14,5],[14,5],[[204,204],5],[[188,188],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[189,26],27],[[204,26],27],[[204,26],27],[[188,26],27],[[51,26],27],[[193,26],27],[[]],[190,189],[192,189],[191,189],[[]],[[]],[88,188],[37,188],[39,188],[188,188],[[[127,[88]]],188],[[]],[[]],[205,193],[[193,[176,[188]]],[[10,[51]]]],[[193,[176,[188]]],[[10,[37]]]],[[193,[176,[188]]],[[10,[51]]]],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[193,5],[[],5],[[],5],[[],5],[[],5],[[],5],[193,33],[193,37],0,[[[176,[[127,[88]]]],204],51],[189,204],0,0,[[]],[[]],[[]],[[]],[[],39],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],[[],10],[[],10],0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[206,26],27],[[206,26],27],[[]],[[]],[56,206],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[62],[[46,136,148,55,45],[[8,[206]]]],[[46,[10,[[127,[88]]]],54,55,45,[34,[189]]],[[8,[206]]]],[206,[[10,[109]]]],[[],39],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],10],[[],10],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[207,[[52,[51]]]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[],207],[[207,53,54,55,45],[[8,[56]]]],[[208,53,54,55,45],[[8,[56]]]],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],10],[[],10],[[207,55]],0,0,0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[45,57,58],59],[[45,209,58],59],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],10],[[],10],0,0,0,0,0,0,0,0,0,0,0,[[[210,[57]],57]],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[[210,[57]]]],[[],[[210,[57]]]],[[]],[[]],[[]],0,[[58,45]],[[],49],[132,49],[209,49],0,0,[[]],[[]],[[]],0,[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[[210,[57]]]],[[],5],[[],5],[[],5],0,0,0,[[45,58],59],[[[210,[57]]],37],[[[210,[57]]]],[[]],[132],[209],0,0,0,0,[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[58,45]],[[[212,[57,[211,[57]]]],58,45,57]],[[],49],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[],212],0,0,[[45,58],59],0,[[]],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],10],[[],10],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],213],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[214,[34,[12]]]],0,0,0,[[],1],[[],1],[[]],[[]],0,[[]],[[]],0,[[]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[[],5],[214,215],[[],8],[[],8],[[],9],[[],10],0,0,[[],1],[[],1],[[]],[[]],0,[[],213],[[]],0,[[]],[[213,136],143],[[]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[[],5],0,0,0,0,[[],8],[[],8],[[],9],[[],10],0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],0,[[]],[[]],[[]],[[]],[[]],[[]],0,[216,216],[217,217],[218,218],[[]],[[]],[[]],[[]],[[]],[[]],[14,5],0,0,[[217,217],5],[[],5],[[],5],[[],5],[[216,26],27],[[217,26],27],[[218,26],27],[[]],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[],5],0,0,0,0,[[]],[[]],[[]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[219,136]],[[160,136],192],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[136,154,157],160],[[220,221,[0,[154,155]],157],160],[219,5],[160,222],0,[160,222],0,[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[160,142],5],[[],5],[[],5],[[],5],[[],5],[[],5],[223,224],0,0,0,[[160,136]],[[160,[0,[154,155]],159],[[8,[158]]]],[[219,[0,[154,155]],159],[[8,[158]]]],[[160,7,7]],[[219,7,7,136]],[160,223],0,0,[219,220],0,[160,139],0,0,0,0,[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],9],0,[[],10],[[],10],[[],10],[[],10],[[],10],0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[192],[[]],[[]],[[192,26],27],[[]],[[]],[225,192],[226,192],[137,5],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[138,136,139,7,7,142,140],137],0,[192,[[10,[226]]]],0,[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],10],[[],10],0,0,0,0,[[],1],[[],1],[[]],[[]],0,0,[227,213],[[]],0,[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[[],5],0,0,[[[127,[88]],157,218,217,5,5,5,5,5,5],227],0,0,[[],8],[[],8],[[],9],[[],10],0,0,0,0,[[],1],[[],1],[[]],[[]],[[]],[[58,[228,[7]],[228,[7]]]],[[58,[228,[7]],36,[228,[7]]]],[[58,190,64]],[[58,190,64]],[[]],[[58,88]],[[]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[[],5],[229,58],0,[58],[[58,88]],[[58,37,141,[34,[7]]]],[[58,230]],[[58,231,232]],[[58,233,7,[34,[12]]]],[[58,143]],[[58,7,7,7,7]],[[58,7]],[[58,37,231]],[[58,172,172,172,172,172,172]],[[],8],[[],8],[[],9],[[],10],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[139,139],[[],234],[[],235],[[],235],[[],235],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],14],[[],14],[[],14],[[],14],[[],14],[[139,236],[[10,[139]]]],0,[[234,234],234],[[235,235],235],[[234,234]],[[235,235]],[[234,234],234],[[235,235],235],[[234,234]],[[235,235]],[234,7],[234,7],[235,64],[235,64],[[234,234],234],[[235,235],235],[[234,234]],[[235,235]],[139],[[139,[10,[236]]],[[10,[7]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[237,237],5],[[237,237,5,77]],[238,238],[234,234],[235,235],[237,237],[139,139],[156,156],[239,239],[142,142],[157,157],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[234,234],[235,235],[139,12],[[139,236],12],0,[[234,234],5],[[235,235],5],[234,5],[235,5],[[],238],[[],235],[[],237],[[],156],[[],142],[[],157],0,0,[[234,234],234],[[235,235],235],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],237],[[],237],[14,5],[14,5],[14,5],[14,5],[14,5],[25],[25],[25],[25],[25],[[],234],[[],235],[[238,238],5],[[234,234],5],[[235,235],5],[[237,237],5],[[139,139],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[234,205]],[[235,205]],0,[[238,26],[[8,[240]]]],[[234,26],[[8,[240]]]],[[234,26],[[8,[240]]]],[[234,26],[[8,[240]]]],[[234,26],[[8,[240]]]],[[234,26],[[8,[240]]]],[[235,26],[[8,[240]]]],[[235,26],[[8,[240]]]],[[235,26],[[8,[240]]]],[[235,26],[[8,[240]]]],[[235,26],[[8,[240]]]],[[237,26],[[8,[240]]]],[[139,26],[[8,[240]]]],[[]],[[]],[241,234],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[7,[[10,[234]]]],[64,[[10,[235]]]],[7,234],[7,234],[64,235],[64,235],[7,234],[64,235],[205,234],[205,235],[88,[[10,[234]]]],[88,[[10,[235]]]],[[139,235],242],[139,5],[139,5],[139,5],[[238,25]],[[234,25]],[[235,25]],[[237,25]],[[139,25]],[[234,234]],[[235,235]],[[234,234],234],[[235,235],235],[[234,234],5],[[235,235],5],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[234],[235],[234,5],[235,5],[139,5],[139,5],[[139,139],5],[139,5],[234,5],[235,5],[142,5],[139,5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[234,[[243,[234]]]],[235,[[243,[235]]]],[234,[[244,[234]]]],[235,[[244,[235]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[234,234],[235,235],0,0,0,[[234,234]],[[235,235]],[139,139],[139,235],[[139,[10,[236]]],[[10,[245]]]],0,[[234,234,5]],[[235,235,5]],[[234,234],234],[[235,235],235],[[234,234]],[[235,235]],[[234,234],234],[[235,235],235],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[234,234]],[[235,235]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[234,234],234],[[235,235],235],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[237,237],237],[[237,237],237],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[246,246],[247,247],[248,248],[249,249],[250,250],[251,251],[252,252],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[[],246],[[],248],[[],252],[[],217],[253,217],[254,217],[255,217],[[],218],[253,218],[254,218],[255,218],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[249,26],27],0,0,0,[16,256],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[257,258],246],[246,247],[[259,259],248],[172,250],[[257,172],251],[[259,259],252],0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],0,0,0,0,0,0,0,0,0,0,[6],0,[[],1],[[],1],[[]],[[]],[[],260],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[[],5],[260,[[127,[88]]]],[[260,6]],[[],8],[[],8],[[],9],[[],10],0,[[],1],[[],1],[[]],[[]],[[],261],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[[],5],[261,[[127,[88]]]],[[261,6]],[[],8],[[],8],[[],9],[[],10],[6],[6],[6],0,0,0,0,0,0,0,0,0,0,0,0,0,0,[262,262],[262,262],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[263,[[10,[[228,[214]]]]]],0,[262],[264,264],[265,265],[263,263],[[]],[[]],[[]],[265,17],[263,17],0,[[],[[267,[266]]]],[[],262],[[]],[[]],[[]],[[]],[[]],[[264,26],27],[[265,26],27],[[263,26],27],[[]],[[]],[[]],[[]],[[]],[[17,45,37],[[10,[[52,[17]]]]]],[[17,45],[[10,[17]]]],[[17,45],5],[[[267,[266]],17,45],5],[[262,17,45],5],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[],5],[[],5],[[],5],0,[[17,13],263],0,0,0,[[265,77]],[[263,64]],0,0,[[]],[[]],[[]],0,[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],[[],10],[[],10],0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[[269,[268]]]],[[]],[[]],[[[270,[91]],26],27],[[]],[[]],[[[269,[268]],28,182,13,45],[[52,[265]]]],0,0,[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[[269,[268]]],33],[215,[[269,[268]]]],[214,270],0,[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],10],[[],10],[[[269,[268]],[52,[265]]]],[[[269,[268]],268,170]],0,0,0,0,0,[[],1],[[],1],[[]],[[]],[271,167],0,[271,167],[271,15],[[271,[177,[15]]],[[177,[15]]]],[271,[[40,[15]]]],[[271,[177,[15]]],[[272,[15]]]],[[271,11],[[10,[28]]]],[271,5],[271,5],[[]],[271,169],0,[[]],[[271,15,[168,[15]]],15],[[[272,[15]],[272,[15]],[272,[15]],[272,[15]]],15],0,[[]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[[],5],[[223,16,13,[176,[[273,[15]]]],[176,[[173,[15]]]]],271],0,[[271,7,7]],[[271,169]],[[],8],[[],8],[[],9],[[],10],[271],[[271,13]],[271,170],[[271,174],[[10,[[35,[15]]]]]],[271,[[10,[[35,[15]]]]]],0,[[271,[272,[15]],174],[[272,[15]]]],[[271,[175,[15]],174,5],[[10,[[175,[15]]]]]],[[[272,[15]],174,15,15],[[272,[15]]]],[271,13],0,0,0,0,0,0,0,[[42,274,275],42],[[42,274,274,275],42],[[42,274,274,275],42],[[42,274,276],42],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[42],[[],42],[[]],[[]],[[[3,[275]]],[[8,[[3,[275]],[3,[275]]]]]],[[]],[275,[[10,[275]]]],[[[4,[275]]],[[8,[[4,[275]],[4,[275]]]]]],[275,[[10,[275]]]],[[274,274],5],[[]],[[]],[[]],[[42,274],[[10,[275]]]],[[42,274],[[10,[275]]]],[[274,25]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[275,5],[[],5],[[],5],[[],5],[42,33],[[[23,[275]]],[[277,[275]]]],[[42,274],42],[6],[[278,6]],[[[277,[275]],6]],[[42,6]],[[42,6]],[[42,274,98],42],0,0,0,[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[],14],[[[281,[[280,[279]]]]],[[23,[279]]]],[[[281,[[282,[279]]]]],[[23,[279]]]],[[[281,[[283,[279]]]]],[[23,[279]]]],[[[281,[[284,[279]]]]],[[23,[279]]]],[[[281,[[285,[279]]]]],[[23,[279]]]],[[[281,[[286,[279]]]]],[[23,[279]]]],[[[281,[[287,[279]]]]],[[23,[279]]]],[[[281,[[288,[279]]]]],[[23,[279]]]],[[[281,[[289,[279]]]]],[[23,[279]]]],[[[281,[[290,[279]]]]],[[23,[279]]]],[[[281,[[291,[279]]]]],[[23,[279]]]],[[[281,[[292,[279]]]]],[[23,[279]]]],[[[281,[[293,[279]]]]],[[23,[279]]]],[[[281,[[294,[279]]]]],[[23,[279]]]],[[[281,[[295,[279]]]]],[[23,[279]]]],[[[281,[[296,[279]]]]],[[23,[279]]]],[[[281,[[297,[279]]]]],[[23,[279]]]],[[[281,[[298,[279]]]]],[[23,[279]]]],[[[281,[[299,[279]]]]],[[23,[279]]]],[[[281,[[300,[279]]]]],[[23,[279]]]],[[[281,[[301,[279]]]]],[[23,[279]]]],[[[281,[[302,[279]]]]],[[23,[279]]]],[[[281,[[303,[279]]]]],[[23,[279]]]],[[[281,[[304,[279]]]]],[[23,[279]]]],[[[281,[[305,[279]]]]],[[23,[279]]]],[[[281,[[306,[279]]]]],[[23,[279]]]],[[[281,[[307,[279]]]]],[[23,[279]]]],[[[281,[[308,[279]]]]],[[23,[279]]]],[[[281,[[309,[279]]]]],[[23,[279]]]],[[[281,[[310,[279]]]]],[[23,[279]]]],[[[281,[[311,[279]]]]],[[23,[279]]]],[[[281,[[312,[279]]]]],[[23,[279]]]],[[[281,[[313,[279]]]]],[[23,[279]]]],[[[281,[[314,[279]]]]],[[23,[279]]]],[[[281,[[315,[279]]]]],[[23,[279]]]],[[[281,[[316,[279]]]]],[[23,[279]]]],[[[317,[[285,[279]]]]],[[23,[279]]]],[[[317,[[316,[279]]]]],[[23,[279]]]],[[[317,[[296,[279]]]]],[[23,[279]]]],[[[317,[[298,[279]]]]],[[23,[279]]]],[[[317,[[286,[279]]]]],[[23,[279]]]],[[[317,[[311,[279]]]]],[[23,[279]]]],[[[317,[[297,[279]]]]],[[23,[279]]]],[[[317,[[290,[279]]]]],[[23,[279]]]],[[[317,[[309,[279]]]]],[[23,[279]]]],[[[317,[[308,[279]]]]],[[23,[279]]]],[[[317,[[303,[279]]]]],[[23,[279]]]],[[[317,[[280,[279]]]]],[[23,[279]]]],[[[317,[[306,[279]]]]],[[23,[279]]]],[[[317,[[287,[279]]]]],[[23,[279]]]],[[[317,[[302,[279]]]]],[[23,[279]]]],[[[317,[[307,[279]]]]],[[23,[279]]]],[[[317,[[312,[279]]]]],[[23,[279]]]],[[[317,[[299,[279]]]]],[[23,[279]]]],[[[317,[[300,[279]]]]],[[23,[279]]]],[[[317,[[301,[279]]]]],[[23,[279]]]],[[[317,[[310,[279]]]]],[[23,[279]]]],[[[317,[[313,[279]]]]],[[23,[279]]]],[[[317,[[289,[279]]]]],[[23,[279]]]],[[[317,[[294,[279]]]]],[[23,[279]]]],[[[317,[[288,[279]]]]],[[23,[279]]]],[[[317,[[283,[279]]]]],[[23,[279]]]],[[[317,[[314,[279]]]]],[[23,[279]]]],[[[317,[[291,[279]]]]],[[23,[279]]]],[[[317,[[284,[279]]]]],[[23,[279]]]],[[[317,[[295,[279]]]]],[[23,[279]]]],[[[317,[[304,[279]]]]],[[23,[279]]]],[[[317,[[293,[279]]]]],[[23,[279]]]],[[[317,[[305,[279]]]]],[[23,[279]]]],[[[317,[[315,[279]]]]],[[23,[279]]]],[[[317,[[292,[279]]]]],[[23,[279]]]],[[[317,[[282,[279]]]]],[[23,[279]]]],[288,23],[304,23],[289,23],[285,23],[296,23],[287,23],[282,23],[283,23],[316,23],[310,23],[280,23],[305,23],[284,23],[314,23],[309,23],[292,23],[299,23],[313,23],[315,23],[307,23],[293,23],[312,23],[298,23],[295,23],[291,23],[286,23],[290,23],[311,23],[297,23],[302,23],[301,23],[300,23],[303,23],[308,23],[294,23],[306,23],[[[281,[[310,[279]]]]],[[23,[279]]]],[[[281,[[309,[279]]]]],[[23,[279]]]],[[[281,[[285,[279]]]]],[[23,[279]]]],[[[281,[[296,[279]]]]],[[23,[279]]]],[[[281,[[280,[279]]]]],[[23,[279]]]],[[[281,[[287,[279]]]]],[[23,[279]]]],[[[281,[[302,[279]]]]],[[23,[279]]]],[[[281,[[300,[279]]]]],[[23,[279]]]],[[[281,[[294,[279]]]]],[[23,[279]]]],[[[281,[[311,[279]]]]],[[23,[279]]]],[[[281,[[312,[279]]]]],[[23,[279]]]],[[[281,[[305,[279]]]]],[[23,[279]]]],[[[281,[[298,[279]]]]],[[23,[279]]]],[[[281,[[297,[279]]]]],[[23,[279]]]],[[[281,[[283,[279]]]]],[[23,[279]]]],[[[281,[[301,[279]]]]],[[23,[279]]]],[[[281,[[316,[279]]]]],[[23,[279]]]],[[[281,[[292,[279]]]]],[[23,[279]]]],[[[281,[[313,[279]]]]],[[23,[279]]]],[[[281,[[284,[279]]]]],[[23,[279]]]],[[[281,[[282,[279]]]]],[[23,[279]]]],[[[281,[[288,[279]]]]],[[23,[279]]]],[[[281,[[291,[279]]]]],[[23,[279]]]],[[[281,[[307,[279]]]]],[[23,[279]]]],[[[281,[[314,[279]]]]],[[23,[279]]]],[[[281,[[315,[279]]]]],[[23,[279]]]],[[[281,[[299,[279]]]]],[[23,[279]]]],[[[281,[[303,[279]]]]],[[23,[279]]]],[[[281,[[295,[279]]]]],[[23,[279]]]],[[[281,[[306,[279]]]]],[[23,[279]]]],[[[281,[[290,[279]]]]],[[23,[279]]]],[[[281,[[286,[279]]]]],[[23,[279]]]],[[[281,[[304,[279]]]]],[[23,[279]]]],[[[281,[[308,[279]]]]],[[23,[279]]]],[[[281,[[293,[279]]]]],[[23,[279]]]],[[[281,[[289,[279]]]]],[[23,[279]]]],[[[317,[[312,[279]]]]],[[23,[279]]]],[[[317,[[284,[279]]]]],[[23,[279]]]],[[[317,[[313,[279]]]]],[[23,[279]]]],[[[317,[[315,[279]]]]],[[23,[279]]]],[[[317,[[289,[279]]]]],[[23,[279]]]],[[[317,[[299,[279]]]]],[[23,[279]]]],[[[317,[[302,[279]]]]],[[23,[279]]]],[[[317,[[303,[279]]]]],[[23,[279]]]],[[[317,[[310,[279]]]]],[[23,[279]]]],[[[317,[[282,[279]]]]],[[23,[279]]]],[[[317,[[285,[279]]]]],[[23,[279]]]],[[[317,[[301,[279]]]]],[[23,[279]]]],[[[317,[[305,[279]]]]],[[23,[279]]]],[[[317,[[295,[279]]]]],[[23,[279]]]],[[[317,[[298,[279]]]]],[[23,[279]]]],[[[317,[[304,[279]]]]],[[23,[279]]]],[[[317,[[294,[279]]]]],[[23,[279]]]],[[[317,[[288,[279]]]]],[[23,[279]]]],[[[317,[[311,[279]]]]],[[23,[279]]]],[[[317,[[297,[279]]]]],[[23,[279]]]],[[[317,[[290,[279]]]]],[[23,[279]]]],[[[317,[[309,[279]]]]],[[23,[279]]]],[[[317,[[316,[279]]]]],[[23,[279]]]],[[[317,[[293,[279]]]]],[[23,[279]]]],[[[317,[[307,[279]]]]],[[23,[279]]]],[[[317,[[292,[279]]]]],[[23,[279]]]],[[[317,[[306,[279]]]]],[[23,[279]]]],[[[317,[[280,[279]]]]],[[23,[279]]]],[[[317,[[291,[279]]]]],[[23,[279]]]],[[[317,[[283,[279]]]]],[[23,[279]]]],[[[317,[[314,[279]]]]],[[23,[279]]]],[[[317,[[287,[279]]]]],[[23,[279]]]],[[[317,[[296,[279]]]]],[[23,[279]]]],[[[317,[[300,[279]]]]],[[23,[279]]]],[[[317,[[308,[279]]]]],[[23,[279]]]],[[[317,[[286,[279]]]]],[[23,[279]]]],[288,23],[304,23],[289,23],[285,23],[296,23],[287,23],[282,23],[283,23],[316,23],[310,23],[280,23],[305,23],[284,23],[314,23],[309,23],[292,23],[299,23],[313,23],[315,23],[307,23],[293,23],[312,23],[298,23],[295,23],[291,23],[286,23],[290,23],[311,23],[297,23],[302,23],[301,23],[300,23],[303,23],[308,23],[294,23],[306,23],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,0,[[[281,[[0,[85,318]]]]],[[281,[[0,[85,318]]]]]],[[[317,[[0,[85,318]]]]],[[317,[[0,[85,318]]]]]],[319,319],[[[288,[85]]],[[288,[85]]]],[[[304,[85]]],[[304,[85]]]],[[[289,[85]]],[[289,[85]]]],[[[285,[85]]],[[285,[85]]]],[[[296,[85]]],[[296,[85]]]],[[[287,[85]]],[[287,[85]]]],[[[282,[85]]],[[282,[85]]]],[[[283,[85]]],[[283,[85]]]],[[[316,[85]]],[[316,[85]]]],[[[310,[85]]],[[310,[85]]]],[[[280,[85]]],[[280,[85]]]],[[[305,[85]]],[[305,[85]]]],[[[284,[85]]],[[284,[85]]]],[[[314,[85]]],[[314,[85]]]],[[[309,[85]]],[[309,[85]]]],[[[292,[85]]],[[292,[85]]]],[[[299,[85]]],[[299,[85]]]],[[[313,[85]]],[[313,[85]]]],[[[315,[85]]],[[315,[85]]]],[[[307,[85]]],[[307,[85]]]],[[[293,[85]]],[[293,[85]]]],[[[312,[85]]],[[312,[85]]]],[[[298,[85]]],[[298,[85]]]],[[[295,[85]]],[[295,[85]]]],[[[291,[85]]],[[291,[85]]]],[[[286,[85]]],[[286,[85]]]],[[[290,[85]]],[[290,[85]]]],[[[311,[85]]],[[311,[85]]]],[[[297,[85]]],[[297,[85]]]],[[[302,[85]]],[[302,[85]]]],[[[301,[85]]],[[301,[85]]]],[[[300,[85]]],[[300,[85]]]],[[[303,[85]]],[[303,[85]]]],[[[308,[85]]],[[308,[85]]]],[[[294,[85]]],[[294,[85]]]],[[[306,[85]]],[[306,[85]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[288,[320]],[288,[320]]],22],[[[304,[320]],[304,[320]]],22],[[[289,[320]],[289,[320]]],22],[[[285,[320]],[285,[320]]],22],[[[296,[320]],[296,[320]]],22],[[[287,[320]],[287,[320]]],22],[[[282,[320]],[282,[320]]],22],[[[283,[320]],[283,[320]]],22],[[[316,[320]],[316,[320]]],22],[[[310,[320]],[310,[320]]],22],[[[280,[320]],[280,[320]]],22],[[[305,[320]],[305,[320]]],22],[[[284,[320]],[284,[320]]],22],[[[314,[320]],[314,[320]]],22],[[[309,[320]],[309,[320]]],22],[[[292,[320]],[292,[320]]],22],[[[299,[320]],[299,[320]]],22],[[[313,[320]],[313,[320]]],22],[[[315,[320]],[315,[320]]],22],[[[307,[320]],[307,[320]]],22],[[[293,[320]],[293,[320]]],22],[[[312,[320]],[312,[320]]],22],[[[298,[320]],[298,[320]]],22],[[[295,[320]],[295,[320]]],22],[[[291,[320]],[291,[320]]],22],[[[286,[320]],[286,[320]]],22],[[[290,[320]],[290,[320]]],22],[[[311,[320]],[311,[320]]],22],[[[297,[320]],[297,[320]]],22],[[[302,[320]],[302,[320]]],22],[[[301,[320]],[301,[320]]],22],[[[300,[320]],[300,[320]]],22],[[[303,[320]],[303,[320]]],22],[[[308,[320]],[308,[320]]],22],[[[294,[320]],[294,[320]]],22],[[[306,[320]],[306,[320]]],22],0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[14,5],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[25],[[[281,[[0,[[321,[[0,[[321,[[0,[[321,[[0,[321,318]]]],318]]]],318]]]],318]]]],[281,[[0,[[321,[[0,[[321,[[0,[[321,[[0,[321,318]]]],318]]]],318]]]],318]]]]],5],[[[317,[[0,[[321,[[0,[[321,[[0,[[321,[[0,[321,318]]]],318]]]],318]]]],318]]]],[317,[[0,[[321,[[0,[[321,[[0,[[321,[[0,[321,318]]]],318]]]],318]]]],318]]]]],5],[[319,319],5],[[[288,[[321,[[321,[[321,[321]]]]]]]],[288,[[321,[[321,[[321,[321]]]]]]]]],5],[[[304,[[321,[[321,[[321,[321]]]]]]]],[304,[[321,[[321,[[321,[321]]]]]]]]],5],[[[289,[[321,[[321,[[321,[321]]]]]]]],[289,[[321,[[321,[[321,[321]]]]]]]]],5],[[[285,[[321,[[321,[[321,[321]]]]]]]],[285,[[321,[[321,[[321,[321]]]]]]]]],5],[[[296,[[321,[[321,[[321,[321]]]]]]]],[296,[[321,[[321,[[321,[321]]]]]]]]],5],[[[287,[[321,[[321,[[321,[321]]]]]]]],[287,[[321,[[321,[[321,[321]]]]]]]]],5],[[[282,[[321,[[321,[[321,[321]]]]]]]],[282,[[321,[[321,[[321,[321]]]]]]]]],5],[[[283,[[321,[[321,[[321,[321]]]]]]]],[283,[[321,[[321,[[321,[321]]]]]]]]],5],[[[316,[[321,[[321,[[321,[321]]]]]]]],[316,[[321,[[321,[[321,[321]]]]]]]]],5],[[[310,[[321,[[321,[[321,[321]]]]]]]],[310,[[321,[[321,[[321,[321]]]]]]]]],5],[[[280,[[321,[[321,[[321,[321]]]]]]]],[280,[[321,[[321,[[321,[321]]]]]]]]],5],[[[305,[[321,[[321,[[321,[321]]]]]]]],[305,[[321,[[321,[[321,[321]]]]]]]]],5],[[[284,[[321,[[321,[[321,[321]]]]]]]],[284,[[321,[[321,[[321,[321]]]]]]]]],5],[[[314,[[321,[[321,[[321,[321]]]]]]]],[314,[[321,[[321,[[321,[321]]]]]]]]],5],[[[309,[[321,[[321,[[321,[321]]]]]]]],[309,[[321,[[321,[[321,[321]]]]]]]]],5],[[[292,[[321,[[321,[[321,[321]]]]]]]],[292,[[321,[[321,[[321,[321]]]]]]]]],5],[[[299,[[321,[[321,[[321,[321]]]]]]]],[299,[[321,[[321,[[321,[321]]]]]]]]],5],[[[313,[[321,[[321,[[321,[321]]]]]]]],[313,[[321,[[321,[[321,[321]]]]]]]]],5],[[[315,[[321,[[321,[[321,[321]]]]]]]],[315,[[321,[[321,[[321,[321]]]]]]]]],5],[[[307,[[321,[[321,[[321,[321]]]]]]]],[307,[[321,[[321,[[321,[321]]]]]]]]],5],[[[293,[[321,[[321,[[321,[321]]]]]]]],[293,[[321,[[321,[[321,[321]]]]]]]]],5],[[[312,[[321,[[321,[[321,[321]]]]]]]],[312,[[321,[[321,[[321,[321]]]]]]]]],5],[[[298,[[321,[[321,[[321,[321]]]]]]]],[298,[[321,[[321,[[321,[321]]]]]]]]],5],[[[295,[[321,[[321,[[321,[321]]]]]]]],[295,[[321,[[321,[[321,[321]]]]]]]]],5],[[[291,[[321,[[321,[[321,[321]]]]]]]],[291,[[321,[[321,[[321,[321]]]]]]]]],5],[[[286,[[321,[[321,[[321,[321]]]]]]]],[286,[[321,[[321,[[321,[321]]]]]]]]],5],[[[290,[[321,[[321,[[321,[321]]]]]]]],[290,[[321,[[321,[[321,[321]]]]]]]]],5],[[[311,[[321,[[321,[[321,[321]]]]]]]],[311,[[321,[[321,[[321,[321]]]]]]]]],5],[[[297,[[321,[[321,[[321,[321]]]]]]]],[297,[[321,[[321,[[321,[321]]]]]]]]],5],[[[302,[[321,[[321,[[321,[321]]]]]]]],[302,[[321,[[321,[[321,[321]]]]]]]]],5],[[[301,[[321,[[321,[[321,[321]]]]]]]],[301,[[321,[[321,[[321,[321]]]]]]]]],5],[[[300,[[321,[[321,[[321,[321]]]]]]]],[300,[[321,[[321,[[321,[321]]]]]]]]],5],[[[303,[[321,[[321,[[321,[321]]]]]]]],[303,[[321,[[321,[[321,[321]]]]]]]]],5],[[[308,[[321,[[321,[[321,[321]]]]]]]],[308,[[321,[[321,[[321,[321]]]]]]]]],5],[[[294,[[321,[[321,[[321,[321]]]]]]]],[294,[[321,[[321,[[321,[321]]]]]]]]],5],[[[306,[[321,[[321,[[321,[321]]]]]]]],[306,[[321,[[321,[[321,[321]]]]]]]]],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[[281,[[0,[91,318]]]],26],[[8,[240]]]],[[[317,[[0,[91,318]]]],26],[[8,[240]]]],[[319,26],[[8,[240]]]],[[[288,[91]],26],[[8,[240]]]],[[[304,[91]],26],[[8,[240]]]],[[[289,[91]],26],[[8,[240]]]],[[[285,[91]],26],[[8,[240]]]],[[[296,[91]],26],[[8,[240]]]],[[[287,[91]],26],[[8,[240]]]],[[[282,[91]],26],[[8,[240]]]],[[[283,[91]],26],[[8,[240]]]],[[[316,[91]],26],[[8,[240]]]],[[[310,[91]],26],[[8,[240]]]],[[[280,[91]],26],[[8,[240]]]],[[[305,[91]],26],[[8,[240]]]],[[[284,[91]],26],[[8,[240]]]],[[[314,[91]],26],[[8,[240]]]],[[[309,[91]],26],[[8,[240]]]],[[[292,[91]],26],[[8,[240]]]],[[[299,[91]],26],[[8,[240]]]],[[[313,[91]],26],[[8,[240]]]],[[[315,[91]],26],[[8,[240]]]],[[[307,[91]],26],[[8,[240]]]],[[[293,[91]],26],[[8,[240]]]],[[[312,[91]],26],[[8,[240]]]],[[[298,[91]],26],[[8,[240]]]],[[[295,[91]],26],[[8,[240]]]],[[[291,[91]],26],[[8,[240]]]],[[[286,[91]],26],[[8,[240]]]],[[[290,[91]],26],[[8,[240]]]],[[[311,[91]],26],[[8,[240]]]],[[[297,[91]],26],[[8,[240]]]],[[[302,[91]],26],[[8,[240]]]],[[[301,[91]],26],[[8,[240]]]],[[[300,[91]],26],[[8,[240]]]],[[[303,[91]],26],[[8,[240]]]],[[[308,[91]],26],[[8,[240]]]],[[[294,[91]],26],[[8,[240]]]],[[[306,[91]],26],[[8,[240]]]],[[[23,[279]]],[[281,[[303,[279]]]]]],[[[23,[279]]],[[281,[[305,[279]]]]]],[[]],[[[23,[279]]],[[281,[[307,[279]]]]]],[[[23,[279]]],[[281,[[283,[279]]]]]],[[[23,[279]]],[[281,[[306,[279]]]]]],[[[23,[279]]],[[281,[[296,[279]]]]]],[[[23,[279]]],[[281,[[300,[279]]]]]],[[[23,[279]]],[[281,[[308,[279]]]]]],[[[23,[279]]],[[281,[[286,[279]]]]]],[[[23,[279]]],[[281,[[292,[279]]]]]],[[[23,[279]]],[[281,[[293,[279]]]]]],[[[23,[279]]],[[281,[[284,[279]]]]]],[[[23,[279]]],[[281,[[294,[279]]]]]],[[[23,[279]]],[[281,[[299,[279]]]]]],[322,[[281,[[288,[15]]]]]],[[[23,[279]]],[[281,[[287,[279]]]]]],[[[23,[279]]],[[281,[[282,[279]]]]]],[[[23,[279]]],[[281,[[280,[279]]]]]],[[[23,[279]]],[[281,[[310,[279]]]]]],[[[23,[279]]],[[281,[[316,[279]]]]]],[[[23,[279]]],[[281,[[297,[279]]]]]],[[[23,[279]]],[[281,[[298,[279]]]]]],[[[23,[279]]],[[281,[[301,[279]]]]]],[[[23,[279]]],[[281,[[295,[279]]]]]],[322,[[281,[[288,[172]]]]]],[322,[[281,[[288,[12]]]]]],[[[23,[279]]],[[281,[[289,[279]]]]]],[[[23,[279]]],[[281,[[309,[279]]]]]],[[[23,[279]]],[[281,[[314,[279]]]]]],[[[23,[279]]],[[281,[[285,[279]]]]]],[[[23,[279]]],[[281,[[315,[279]]]]]],[[[23,[279]]],[[281,[[291,[279]]]]]],[[[23,[279]]],[[281,[[288,[279]]]]]],[[[23,[279]]],[[281,[[312,[279]]]]]],[[[23,[279]]],[[281,[[304,[279]]]]]],[[[23,[279]]],[[281,[[311,[279]]]]]],[[[23,[279]]],[[281,[[290,[279]]]]]],[[[23,[279]]],[[281,[[302,[279]]]]]],[[[23,[279]]],[[281,[[313,[279]]]]]],[[[23,[279]]],[[317,[[313,[279]]]]]],[[[23,[279]]],[[317,[[302,[279]]]]]],[[[23,[279]]],[[317,[[294,[279]]]]]],[[[23,[279]]],[[317,[[308,[279]]]]]],[[[23,[279]]],[[317,[[301,[279]]]]]],[[[23,[279]]],[[317,[[312,[279]]]]]],[[[23,[279]]],[[317,[[315,[279]]]]]],[[[23,[279]]],[[317,[[307,[279]]]]]],[[[23,[279]]],[[317,[[292,[279]]]]]],[[[23,[279]]],[[317,[[297,[279]]]]]],[[[23,[279]]],[[317,[[314,[279]]]]]],[[[23,[279]]],[[317,[[288,[279]]]]]],[[[23,[279]]],[[317,[[304,[279]]]]]],[[[23,[279]]],[[317,[[285,[279]]]]]],[[[23,[279]]],[[317,[[306,[279]]]]]],[[[23,[279]]],[[317,[[310,[279]]]]]],[[[23,[279]]],[[317,[[283,[279]]]]]],[[[23,[279]]],[[317,[[295,[279]]]]]],[[[23,[279]]],[[317,[[298,[279]]]]]],[[[23,[279]]],[[317,[[303,[279]]]]]],[[[23,[279]]],[[317,[[282,[279]]]]]],[[[23,[279]]],[[317,[[284,[279]]]]]],[[[23,[279]]],[[317,[[316,[279]]]]]],[[[23,[279]]],[[317,[[280,[279]]]]]],[[[23,[279]]],[[317,[[286,[279]]]]]],[[[23,[279]]],[[317,[[287,[279]]]]]],[[]],[[[23,[279]]],[[317,[[289,[279]]]]]],[[[23,[279]]],[[317,[[296,[279]]]]]],[[[23,[279]]],[[317,[[309,[279]]]]]],[[[23,[279]]],[[317,[[305,[279]]]]]],[[[23,[279]]],[[317,[[291,[279]]]]]],[[[23,[279]]],[[317,[[299,[279]]]]]],[[[23,[279]]],[[317,[[311,[279]]]]]],[[[23,[279]]],[[317,[[293,[279]]]]]],[[[23,[279]]],[[317,[[300,[279]]]]]],[[[23,[279]]],[[317,[[290,[279]]]]]],[[]],[322,[[288,[12]]]],[322,[[288,[172]]]],[[[281,[[288,[279]]]]],[[288,[279]]]],[322,[[288,[15]]]],[[]],[23,288],[[[317,[[288,[279]]]]],[[288,[279]]]],[[[281,[[304,[279]]]]],[[304,[279]]]],[23,304],[[[317,[[304,[279]]]]],[[304,[279]]]],[[]],[[[281,[[289,[279]]]]],[[289,[279]]]],[[[317,[[289,[279]]]]],[[289,[279]]]],[[]],[23,289],[[[317,[[285,[279]]]]],[[285,[279]]]],[23,285],[[[281,[[285,[279]]]]],[[285,[279]]]],[[]],[[]],[[[281,[[296,[279]]]]],[[296,[279]]]],[23,296],[[[317,[[296,[279]]]]],[[296,[279]]]],[[[317,[[287,[279]]]]],[[287,[279]]]],[[]],[23,287],[[[281,[[287,[279]]]]],[[287,[279]]]],[[]],[[[281,[[282,[279]]]]],[[282,[279]]]],[[[317,[[282,[279]]]]],[[282,[279]]]],[23,282],[[[281,[[283,[279]]]]],[[283,[279]]]],[23,283],[[]],[[[317,[[283,[279]]]]],[[283,[279]]]],[23,316],[[[317,[[316,[279]]]]],[[316,[279]]]],[[]],[[[281,[[316,[279]]]]],[[316,[279]]]],[[[317,[[310,[279]]]]],[[310,[279]]]],[23,310],[[[281,[[310,[279]]]]],[[310,[279]]]],[[]],[[[317,[[280,[279]]]]],[[280,[279]]]],[23,280],[[]],[[[281,[[280,[279]]]]],[[280,[279]]]],[[[281,[[305,[279]]]]],[[305,[279]]]],[[[317,[[305,[279]]]]],[[305,[279]]]],[23,305],[[]],[[]],[[[317,[[284,[279]]]]],[[284,[279]]]],[[[281,[[284,[279]]]]],[[284,[279]]]],[23,284],[[[281,[[314,[279]]]]],[[314,[279]]]],[23,314],[[]],[[[317,[[314,[279]]]]],[[314,[279]]]],[23,309],[[[281,[[309,[279]]]]],[[309,[279]]]],[[[317,[[309,[279]]]]],[[309,[279]]]],[[]],[23,292],[[[317,[[292,[279]]]]],[[292,[279]]]],[[]],[[[281,[[292,[279]]]]],[[292,[279]]]],[[[281,[[299,[279]]]]],[[299,[279]]]],[[[317,[[299,[279]]]]],[[299,[279]]]],[23,299],[[]],[[[317,[[313,[279]]]]],[[313,[279]]]],[23,313],[[[281,[[313,[279]]]]],[[313,[279]]]],[[]],[[[281,[[315,[279]]]]],[[315,[279]]]],[[]],[[[317,[[315,[279]]]]],[[315,[279]]]],[23,315],[23,307],[[[317,[[307,[279]]]]],[[307,[279]]]],[[[281,[[307,[279]]]]],[[307,[279]]]],[[]],[[[317,[[293,[279]]]]],[[293,[279]]]],[[]],[23,293],[[[281,[[293,[279]]]]],[[293,[279]]]],[23,312],[[[281,[[312,[279]]]]],[[312,[279]]]],[[]],[[[317,[[312,[279]]]]],[[312,[279]]]],[[[281,[[298,[279]]]]],[[298,[279]]]],[[[317,[[298,[279]]]]],[[298,[279]]]],[23,298],[[]],[[[317,[[295,[279]]]]],[[295,[279]]]],[[[281,[[295,[279]]]]],[[295,[279]]]],[23,295],[[]],[[[317,[[291,[279]]]]],[[291,[279]]]],[[]],[23,291],[[[281,[[291,[279]]]]],[[291,[279]]]],[[[281,[[286,[279]]]]],[[286,[279]]]],[23,286],[[[317,[[286,[279]]]]],[[286,[279]]]],[[]],[[[317,[[290,[279]]]]],[[290,[279]]]],[[]],[23,290],[[[281,[[290,[279]]]]],[[290,[279]]]],[[[317,[[311,[279]]]]],[[311,[279]]]],[[[281,[[311,[279]]]]],[[311,[279]]]],[23,311],[[]],[[[317,[[297,[279]]]]],[[297,[279]]]],[[[281,[[297,[279]]]]],[[297,[279]]]],[[]],[23,297],[23,302],[[[281,[[302,[279]]]]],[[302,[279]]]],[[]],[[[317,[[302,[279]]]]],[[302,[279]]]],[[]],[[[317,[[301,[279]]]]],[[301,[279]]]],[23,301],[[[281,[[301,[279]]]]],[[301,[279]]]],[[[281,[[300,[279]]]]],[[300,[279]]]],[23,300],[[[317,[[300,[279]]]]],[[300,[279]]]],[[]],[[[281,[[303,[279]]]]],[[303,[279]]]],[23,303],[[[317,[[303,[279]]]]],[[303,[279]]]],[[]],[[]],[[[281,[[308,[279]]]]],[[308,[279]]]],[[[317,[[308,[279]]]]],[[308,[279]]]],[23,308],[[]],[[[317,[[294,[279]]]]],[[294,[279]]]],[[[281,[[294,[279]]]]],[[294,[279]]]],[23,294],[[[317,[[306,[279]]]]],[[306,[279]]]],[23,306],[[]],[[[281,[[306,[279]]]]],[[306,[279]]]],[[]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[[281,[[0,[323,318]]]],25]],[[[317,[[0,[323,318]]]],25]],[[319,25]],[[[288,[323]],25]],[[[304,[323]],25]],[[[289,[323]],25]],[[[285,[323]],25]],[[[296,[323]],25]],[[[287,[323]],25]],[[[282,[323]],25]],[[[283,[323]],25]],[[[316,[323]],25]],[[[310,[323]],25]],[[[280,[323]],25]],[[[305,[323]],25]],[[[284,[323]],25]],[[[314,[323]],25]],[[[309,[323]],25]],[[[292,[323]],25]],[[[299,[323]],25]],[[[313,[323]],25]],[[[315,[323]],25]],[[[307,[323]],25]],[[[293,[323]],25]],[[[312,[323]],25]],[[[298,[323]],25]],[[[295,[323]],25]],[[[291,[323]],25]],[[[286,[323]],25]],[[[290,[323]],25]],[[[311,[323]],25]],[[[297,[323]],25]],[[[302,[323]],25]],[[[301,[323]],25]],[[[300,[323]],25]],[[[303,[323]],25]],[[[308,[323]],25]],[[[294,[323]],25]],[[[306,[323]],25]],0,0,[[[281,[[313,[279]]]]],[[23,[279]]]],[[[281,[[286,[279]]]]],[[23,[279]]]],[[[281,[[299,[279]]]]],[[23,[279]]]],[[[281,[[295,[279]]]]],[[23,[279]]]],[[[281,[[296,[279]]]]],[[23,[279]]]],[[[281,[[288,[279]]]]],[[23,[279]]]],[[[281,[[287,[279]]]]],[[23,[279]]]],[[[281,[[292,[279]]]]],[[23,[279]]]],[[[281,[[304,[279]]]]],[[23,[279]]]],[[[281,[[316,[279]]]]],[[23,[279]]]],[[[281,[[308,[279]]]]],[[23,[279]]]],[[[281,[[289,[279]]]]],[[23,[279]]]],[[[281,[[307,[279]]]]],[[23,[279]]]],[[[281,[[297,[279]]]]],[[23,[279]]]],[[[281,[[305,[279]]]]],[[23,[279]]]],[[[281,[[314,[279]]]]],[[23,[279]]]],[[[281,[[301,[279]]]]],[[23,[279]]]],[[[281,[[306,[279]]]]],[[23,[279]]]],[[[281,[[298,[279]]]]],[[23,[279]]]],[[[281,[[290,[279]]]]],[[23,[279]]]],[[[281,[[282,[279]]]]],[[23,[279]]]],[[[281,[[311,[279]]]]],[[23,[279]]]],[[[281,[[303,[279]]]]],[[23,[279]]]],[[[281,[[309,[279]]]]],[[23,[279]]]],[[[281,[[293,[279]]]]],[[23,[279]]]],[[[281,[[310,[279]]]]],[[23,[279]]]],[[[281,[[285,[279]]]]],[[23,[279]]]],[[[281,[[315,[279]]]]],[[23,[279]]]],[[[281,[[280,[279]]]]],[[23,[279]]]],[[[281,[[312,[279]]]]],[[23,[279]]]],[[[281,[[302,[279]]]]],[[23,[279]]]],[[[281,[[300,[279]]]]],[[23,[279]]]],[[[281,[[294,[279]]]]],[[23,[279]]]],[[[281,[[284,[279]]]]],[[23,[279]]]],[[]],[[[281,[[283,[279]]]]],[[23,[279]]]],[[[281,[[291,[279]]]]],[[23,[279]]]],[[[317,[[293,[279]]]]],[[23,[279]]]],[[[317,[[284,[279]]]]],[[23,[279]]]],[[[317,[[301,[279]]]]],[[23,[279]]]],[[]],[[[317,[[300,[279]]]]],[[23,[279]]]],[[[317,[[311,[279]]]]],[[23,[279]]]],[[[317,[[316,[279]]]]],[[23,[279]]]],[[[317,[[282,[279]]]]],[[23,[279]]]],[[[317,[[289,[279]]]]],[[23,[279]]]],[[[317,[[313,[279]]]]],[[23,[279]]]],[[[317,[[292,[279]]]]],[[23,[279]]]],[[[317,[[303,[279]]]]],[[23,[279]]]],[[[317,[[283,[279]]]]],[[23,[279]]]],[[[317,[[295,[279]]]]],[[23,[279]]]],[[[317,[[304,[279]]]]],[[23,[279]]]],[[[317,[[296,[279]]]]],[[23,[279]]]],[[[317,[[294,[279]]]]],[[23,[279]]]],[[[317,[[287,[279]]]]],[[23,[279]]]],[[[317,[[297,[279]]]]],[[23,[279]]]],[[[317,[[291,[279]]]]],[[23,[279]]]],[[[317,[[305,[279]]]]],[[23,[279]]]],[[[317,[[315,[279]]]]],[[23,[279]]]],[[[317,[[312,[279]]]]],[[23,[279]]]],[[[317,[[308,[279]]]]],[[23,[279]]]],[[[317,[[310,[279]]]]],[[23,[279]]]],[[[317,[[286,[279]]]]],[[23,[279]]]],[[[317,[[302,[279]]]]],[[23,[279]]]],[[[317,[[299,[279]]]]],[[23,[279]]]],[[[317,[[280,[279]]]]],[[23,[279]]]],[[[317,[[309,[279]]]]],[[23,[279]]]],[[[317,[[307,[279]]]]],[[23,[279]]]],[[[317,[[285,[279]]]]],[[23,[279]]]],[[[317,[[298,[279]]]]],[[23,[279]]]],[[[317,[[314,[279]]]]],[[23,[279]]]],[[[317,[[306,[279]]]]],[[23,[279]]]],[[[317,[[290,[279]]]]],[[23,[279]]]],[[[317,[[288,[279]]]]],[[23,[279]]]],[[]],[288,23],[[]],[304,23],[[]],[289,23],[[]],[285,23],[[]],[296,23],[[]],[287,23],[[]],[[]],[282,23],[[]],[283,23],[316,23],[[]],[310,23],[[]],[[]],[280,23],[[]],[305,23],[[]],[284,23],[[]],[314,23],[309,23],[[]],[[]],[292,23],[[]],[299,23],[[]],[313,23],[[]],[315,23],[[]],[307,23],[293,23],[[]],[312,23],[[]],[298,23],[[]],[295,23],[[]],[[]],[291,23],[286,23],[[]],[[]],[290,23],[311,23],[[]],[[]],[297,23],[302,23],[[]],[301,23],[[]],[300,23],[[]],[[]],[303,23],[[]],[308,23],[294,23],[[]],[[]],[306,23],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[]],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],0,0,0,0,0,0,0,0,0,0,0,[319,37],[[[288,[[87,[[87,[[87,[87]]]]]]]],[288,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[304,[[87,[[87,[[87,[87]]]]]]]],[304,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[289,[[87,[[87,[[87,[87]]]]]]]],[289,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[285,[[87,[[87,[[87,[87]]]]]]]],[285,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[296,[[87,[[87,[[87,[87]]]]]]]],[296,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[287,[[87,[[87,[[87,[87]]]]]]]],[287,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[282,[[87,[[87,[[87,[87]]]]]]]],[282,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[283,[[87,[[87,[[87,[87]]]]]]]],[283,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[316,[[87,[[87,[[87,[87]]]]]]]],[316,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[310,[[87,[[87,[[87,[87]]]]]]]],[310,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[280,[[87,[[87,[[87,[87]]]]]]]],[280,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[305,[[87,[[87,[[87,[87]]]]]]]],[305,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[284,[[87,[[87,[[87,[87]]]]]]]],[284,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[314,[[87,[[87,[[87,[87]]]]]]]],[314,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[309,[[87,[[87,[[87,[87]]]]]]]],[309,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[292,[[87,[[87,[[87,[87]]]]]]]],[292,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[299,[[87,[[87,[[87,[87]]]]]]]],[299,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[313,[[87,[[87,[[87,[87]]]]]]]],[313,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[315,[[87,[[87,[[87,[87]]]]]]]],[315,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[307,[[87,[[87,[[87,[87]]]]]]]],[307,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[293,[[87,[[87,[[87,[87]]]]]]]],[293,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[312,[[87,[[87,[[87,[87]]]]]]]],[312,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[298,[[87,[[87,[[87,[87]]]]]]]],[298,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[295,[[87,[[87,[[87,[87]]]]]]]],[295,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[291,[[87,[[87,[[87,[87]]]]]]]],[291,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[286,[[87,[[87,[[87,[87]]]]]]]],[286,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[290,[[87,[[87,[[87,[87]]]]]]]],[290,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[311,[[87,[[87,[[87,[87]]]]]]]],[311,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[297,[[87,[[87,[[87,[87]]]]]]]],[297,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[302,[[87,[[87,[[87,[87]]]]]]]],[302,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[301,[[87,[[87,[[87,[87]]]]]]]],[301,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[300,[[87,[[87,[[87,[87]]]]]]]],[300,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[303,[[87,[[87,[[87,[87]]]]]]]],[303,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[308,[[87,[[87,[[87,[87]]]]]]]],[308,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[294,[[87,[[87,[[87,[87]]]]]]]],[294,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],[[[306,[[87,[[87,[[87,[87]]]]]]]],[306,[[87,[[87,[[87,[87]]]]]]]]],[[10,[22]]]],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],0,[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[324,324],[325,325],[326,326],[327,327],[328,328],[[]],[[]],[[]],[[]],[[]],[[],328],[24,[[8,[324]]]],[24,[[8,[325]]]],[24,[[8,[326]]]],[24,[[8,[327]]]],[24,[[8,[328]]]],[[]],[[]],[[]],[[]],[[]],0,[[324,26],27],[[325,26],27],[[326,26],27],[[327,26],27],[[328,26],27],[[]],[[]],[[]],[[]],[[]],[327,[[10,[[281,[[288,[172]]]]]]]],0,0,[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[],5],[[],5],[[],5],0,0,0,0,0,[[324,38],8],[[325,38],8],[[326,38],8],[[327,38],8],[[328,38],8],0,0,[[]],[[]],[[]],[[]],[[]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],[[],10],[[],10],0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[329,329],[330,330],[[]],[[]],[[],330],[24,[[8,[329]]]],[24,[[8,[330]]]],[[]],[[]],[[329,26],27],[[330,26],27],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],0,0,0,0,0,0,0,0,[[329,38],8],[[330,38],8],[[]],[[]],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],10],[[],10],0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],0,[[]],[[]],[[]],[[]],[[]],[[]],0,[32,32],[331,331],[332,332],[[]],[[]],[[]],[[],32],[24,[[8,[32]]]],[24,[[8,[331]]]],[24,[[8,[332]]]],[[]],[[]],[[]],[[32,26],27],[[331,26],27],[[332,26],27],[[]],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[],5],0,0,0,[[32,38],8],[[331,38],8],[[332,38],8],0,[[]],[[]],[[]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],0,[[],1],[[],1],[[]],[[]],0,[114,114],[[]],[[],114],[24,[[8,[114]]]],[[]],[[114,26],27],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[[],5],0,0,0,0,[[114,38],8],0,[[]],[[],8],[[],8],[[],9],[[],10],0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[],333],[334,333],[335],[335,334],[[],335],[[]],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],0,0,0,0,0,[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],10],[[],10],0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[]],[[]],[[],336],[[[3,[337]]],[[8,[[3,[337]],[3,[337]]]]]],[[]],[337,[[10,[337]]]],[[[4,[337]]],[[8,[[4,[337]],[4,[337]]]]]],[337,[[10,[337]]]],[336,5],[[]],[336,[[10,[337]]]],[336,[[10,[337]]]],[336,[[0,[337,338]]]],0,0,[336],[[336,337]],[[]],[[[3,[2]]],[[3,[1,2]]]],[4,[[4,[1]]]],[337,5],[[],5],[336,10],[336,10],[336,10],[336,10],[336,10],0,[[],8],[[],8],[[],9],[[],10],0,0,0,0,[[],1],[[],1],[[]],[[]],[[]],[[]],0,[[]],[[[3,[2]]],[[3,[1,2]]]],[4,[[4,[1]]]],[[],339],[339,339],[[],5],[[],[[127,[88]]]],[340,339],[6],0,0,[[],8],[[],8],[[],9],[[],10],0,0,0,[[],1],[[],1],[[]],[[]],[[]],[[]],0,[[]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[[]],[[],5],[[[341,[77]]],[[127,[88]]]],[[[341,[77]],6]],[[],8],[[],8],[[],9],[[],10],0,[[342,276],342],[[],1],[[],1],[[]],[[]],[[],342],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[4,[[4,[1]]]],[[],5],[[342,6]],0,[[],8],[[],8],[[],9],[[],10],[[342,276],342],0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[149],[343,343],[[]],[[],344],[345,344],0,0,[346],[346,345],[[],149],[[],346],[[[3,[347]]],[[8,[[3,[347]],[3,[347]]]]]],[[]],[[]],[[]],[[]],[[]],[347,[[10,[347]]]],[[[4,[347]]],[[8,[[4,[347]],[4,[347]]]]]],[347,[[10,[347]]]],[[149,17],5],[[343,26],27],[[]],[[]],[[]],[[]],[[]],0,[[348,347],348],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[347,5],[[],5],[[],5],[[],5],[[],5],[[],5],0,[[149,343],10],[[149,17],10],[[149,343],10],[[149,17],10],[[149,343],10],[[149,17],[[10,[348]]]],0,0,0,0,[[]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],[[],10],[[],10],0,[[],1],[[],1],[[]],[[]],[[],45],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[4,[[4,[1]]]],[[],5],0,0,[[],8],[[],8],[[],9],[[],10],0,0,0,0,0,[[]],[[]],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],0,[[[349,[85,85]]],[[349,[85,85]]]],[[]],[[]],[[]],[[],349],[[]],[[]],[[[351,[350,350]]],[[349,[350,350]]]],[[205,205,7],349],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[352,353],248],[[352,354],248],[[]],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],10],[[],10],0,0,0,0,[[],1],[[],1],[[]],[[]],0,0,[[],[[359,[[0,[355,[357,[356]],358]]]]]],[[]],[[[359,[[0,[355,[357,[356]],358]]]],5]],[[[359,[[0,[355,[357,[356]],358]]]],64],360],0,[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[4,[[4,[1]]]],0,[[],5],[[[359,[[0,[355,[357,[356]],358]]]],5,37,37],360],[[[359,[[0,[355,[357,[356]],358]]]],5,37],360],[[[359,[[0,[355,[357,[356]],358]]]],37,37],360],[[[359,[[0,[355,[357,[356]],358]]]],37],360],[[[359,[[0,[355,[357,[356]],358]]]],37,37],360],[[[359,[[0,[355,[357,[356]],358]]]],37],360],[[[359,[[0,[355,[357,[356]],358]]]],37,37],360],[[[359,[[0,[355,[357,[356]],358]]]],37],360],0,0,[[[359,[[0,[355,[357,[356]],358]]]],37],360],[[[359,[[0,[355,[357,[356]],358]]]],37],360],[[[359,[[0,[355,[357,[356]],358]]]],5,37,37],360],[[[359,[[0,[355,[357,[356]],358]]]],5,37],360],[[[359,[[0,[355,[357,[356]],358]]]]]],[[[359,[[0,[355,[357,[356]],358]]]]]],[[],8],[[],8],[[],9],[[],10],[[[359,[[0,[355,[357,[356]],358]]]]]],[[[359,[[0,[355,[357,[356]],358]]]],15,15,37],360],0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],14],[361,88],[362,5],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[362],[363],[364],[362,362],[363,363],[364,364],[361,361],[[]],[[]],[[]],[[]],[[361,361],22],[[],362],[[],363],[[],364],[[],361],[362,15],0,[[]],[[]],[[]],[[]],[14,5],[25],[362,37],[363,37],[364,37],[[362,362],5],[[363,363],5],[[364,364],5],[[361,361],5],[[],5],[[],5],[[],5],[364,7],0,0,[362,172],0,[[362,26],[[8,[240]]]],[[363,26],[[8,[240]]]],[[364,26],[[8,[240]]]],[[361,26],[[8,[240]]]],[[]],[365,362],[[]],[[]],[[]],[36,[[10,[361]]]],[88,[[10,[361]]]],0,[[361,25]],[363,64],0,[362,366],0,[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[36,5],[[],5],[[],5],[[],5],[[],5],0,0,[[361,361],[[10,[22]]]],[[364,367],[[8,[89]]]],[[363,368],[[8,[89]]]],[[363,361]],[362,366],0,[362,88],0,0,[[],[[8,[[369,[15]],89]]]],[[7,15,15,15,15],[[8,[363,89]]]],[[],[[8,[363,89]]]],[[]],[[]],[[]],[[]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[363,361],0,[[],9],[[],9],[[],9],[[],9],[362,64],0,[[],10],[[],10],[[],10],[[],10],0,0,0,0,0,0,[[],1],[[],1],[[]],[[]],[[],[[370,[338]]]],[370],[370],[[[370,[[0,[85,371]]]]],5],[[]],0,0,[[]],0,0,[[]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[[],5],0,0,[[],5],[[],370],0,0,[[],8],[[],8],[[],9],[[],10],[[[370,[[0,[85,371]]]]]],0,[[],1],[[],1],[[]],[[]],[[],372],[[]],0,[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[[],5],[[],372],0,[[],8],[[],8],[[],9],[[],10],[372],[[],373],[[373,12],52],0,0,[[],1],[[],14],[14,5],[25],0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[33,10],[374,374],[[]],[[374,374],22],0,[[36,36],36],[[36,36],36],[[36,36],36],[[]],[[]],[[]],[[]],[14,5],[[374,374],5],[[],5],[[],5],[[],5],[[[376,[375]],26],27],[[[35,[377]],26],27],[[[378,[377]],26],27],[[374,26],27],[[]],[[]],[[]],[[]],[[[29,[375]],[272,[375]]],[[376,[375]]]],[[[29,[375]],[29,[375]],[29,[375]]],[[10,[[376,[375]]]]]],[[[376,[375]],[272,[375]],[272,[375]]],[[10,[375]]]],[[[376,[375]],[378,[375]]],[[52,[[272,[375]]]]]],[[[376,[375]],[378,[375]]],[[52,[[272,[375]]]]]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[],5],[[],5],[[[0,[87,279]],[0,[87,279]]],[[0,[87,279]]]],0,0,[[[0,[87,279]],[0,[87,279]]],[[0,[87,279]]]],0,0,0,[[[272,[375]],375],[[376,[375]]]],[[[168,[377]],[168,[377]]],[[35,[377]]]],[[[29,[377]],[29,[377]]],[[378,[377]]]],[[374,374],[[10,[22]]]],[[[35,[377]]],[[23,[[168,[377]]]]]],[[[378,[377]]],[[23,[[29,[377]]]]]],[[]],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],[[],10],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[[380,[379]],42,[4,[[44,[43]]]],45,46]],[17,381],[[17,39],381],[[17,[349,[248,382]],[52,[7]],364],381],[[17,95],381],0,[[],17],[[],17],[[],17],[[],17],0,0,0,[[],[[380,[379]]]],[[],383],[[],384],[385],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[383,17,45],5],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],88],0,0,[[],72],[[],72],[[],72],[[],72],0,0,0,[[[34,[12]],386,[387,[379,129]]],[[8,[388]]]],0,0,0,0,0,0,0,[[],389],[[],390],[[],95],0,[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],0,0,[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[4,[[4,[1]]]],[[],5],0,[[[391,[43,379]]],[[127,[88]]]],[[[4,[[44,[43]]]]],[[391,[43]]]],0,[[[391,[43,379]],6]],[[],8],[[],8],[[],9],[[],10],0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],0,0,[[]],[[]],[[]],[[388,26],27],[[388,26],27],[[]],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[],5],[[[387,[379,129]],17,[52,[[80,[15]]]]],[[8,[388]]]],[[[387,[379,129]],17,88],[[8,[388]]]],[[[387,[379,129]],17,[349,[248,382]],[52,[7]],364],[[8,[388]]]],0,[129,[[387,[379,129]]]],0,[[[34,[12]],386,[387,[379,129]]],[[8,[388]]]],[62],[[[387,[379,129]]],129],[[[387,[379,129]],17],[[8,[388]]]],[[],39],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],[6],0,0,0,[[],1],[[],1],[[],1],[[],1],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[45,57,58],59],[[45,132,58],59],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],10],[[],10],0,[[],1],[[],1],[[]],[[]],[[]],[[65,[0,[129,85,99]],68],133],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[4,[[4,[1]]]],[[],5],0,[[[392,[43,379]]],[[127,[88]]]],[[[4,[[44,[43]]]]],[[392,[43]]]],0,[[[392,[43,379]],6]],[[],8],[[],8],[[],9],[[],10],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[214,214,214]],[[[393,[268,350,350,350,350]],268,17,328,[349,[350,350]],350,[34,[350]]]],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[394,[[10,[395]]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,0,0,0,[[[393,[268,350,350,350,350]]]],[394],[396,396],[395,395],[[]],[[]],0,[[],394],[[]],[[]],[[]],[[]],[[]],[[]],[[[393,[268,350,350,350,350]]]],0,[395,[[228,[214]]]],[[394,396,214],[[228,[214]]]],[[[393,[91,91,91,91,91,91]],26],27],[[396,26],27],[[[397,[91]],26],27],[[395,26],27],[[398,26],27],[[394,26],27],[[]],[[]],[[]],[[]],[[]],[[]],[136,[[393,[148,190,350,350,350,350]]]],[394,[[10,[395]]]],[[394,17],[[10,[[399,[395]]]]]],[[[393,[268,350,350,350,350]],17],[[10,[[400,[88]]]]]],[[[393,[268,350,350,350,350]],17,45],5],[[[393,[268,350,350,350,350]]],394],0,[[[393,[268,350,350,350,350]]]],0,[395,[[228,[214]]]],[395,[[228,[7]]]],0,0,[[]],[[]],[[]],[[]],[[]],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],[394,33],0,[395,[[228,[214]]]],0,0,[[394,214,396,214],[[228,[214]]]],[[[393,[268,350,350,350,350]]]],[[215,215,215,215],[[393,[268,350,350,350,350]]]],[[214,396],397],[[],394],0,0,0,0,0,[394,[[10,[395]]]],[[394,395]],0,[[]],[[]],0,[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],0,[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[[[393,[268,350,350,350,350]],268,395,[34,[350]]]],[[[393,[268,350,350,350,350]],268,395,350]],0,[[[393,[268,350,350,350,350]]]],0,[395,[[228,[214]]]],[6],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],1],[[],14],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],0,[17,381],[[17,39],381],[[17,[349,[248,382]],[52,[7]],364],381],[[17,95],381],[17,401],[[17,39],402],[[17,95],403],[[17,[349,[248,382]],[52,[7]],364],404],[405,405],[404,404],[406,406],[[]],[[]],[[]],[[],17],[[],17],[[],17],[[],17],[401,17],[402,17],[403,17],[404,17],0,0,0,0,[[]],[[]],[[]],[[]],[[]],[[]],[14,5],[25],[[405,405],5],[[],5],[[],5],[[],5],0,[[401,26],27],[[402,26],27],[[403,26],27],[[405,26],27],[[404,26],27],[[]],[[]],[[]],[[]],[[]],[[]],[[405,25]],0,[401,74],[[]],[402,74],[[]],[403,74],[[]],[[]],[[]],[404,74],[[]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[4,[[4,[1]]]],[[],5],[404,5],[[],5],[[],5],[[],5],[[],5],[[],5],[[],5],0,[[],88],[402,88],0,[[],72],[[],72],[[],72],[[],72],[[],72],[[],72],[[],72],[[],72],[[],389],[[],390],[402,389],[404,390],[[]],[[]],[[]],[[],95],[403,95],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],8],[[],9],[[],9],[[],9],[[],9],[[],9],[[],9],[[],10],[[],10],[[],10],[[],10],[[],10],[[],10],[6],[[407,136,148,149,114,28]],0,0,0,0,0,0,[[],1],[[],1],[[],1],[[]],[[]],[223,223],[[]],[[]],[[]],[14,5],[[223,223],5],[[],5],[[],5],[[],5],[[]],[223,7],0,[223,408],[[],64],[[]],[[[3,[2]]],[[3,[1,2]]]],[31,[[31,[1]]]],[4,[[4,[1]]]],[[],5],[[7,7],[[10,[223]]]],[[]],[[]],[[],223],[[]],[[],8],[[],8],[[],9],[[],10],[223,7],0,[223,408]],"c":[],"p":[[8,"Any"],[3,"Global"],[3,"Box"],[3,"Rc"],[15,"bool"],[3,"MapContext"],[15,"u32"],[4,"Result"],[3,"TypeId"],[4,"Option"],[3,"ZoomLevel"],[15,"u8"],[3,"Zoom"],[8,"DynEq"],[15,"f64"],[3,"WorldCoords"],[3,"WorldTileCoords"],[3,"Quadkey"],[3,"LatLon"],[3,"InnerCoords"],[3,"TileCoords"],[4,"Ordering"],[15,"array"],[8,"Deserializer"],[8,"Hasher"],[3,"Formatter"],[6,"Result"],[3,"ViewRegion"],[3,"Point3"],[3,"AlignedWorldTileCoords"],[3,"Arc"],[4,"TileAddressingScheme"],[8,"Iterator"],[15,"slice"],[3,"Aabb2"],[15,"i32"],[15,"usize"],[8,"Serializer"],[3,"String"],[3,"Matrix4"],[3,"DebugPlugin"],[3,"Schedule"],[8,"Environment"],[3,"Kernel"],[3,"World"],[3,"RenderGraph"],[3,"DebugPipeline"],[3,"TileDebugItem"],[8,"Draw"],[3,"DebugPassNode"],[3,"SlotInfo"],[3,"Vec"],[3,"RenderGraphContext"],[3,"RenderContext"],[3,"RenderResources"],[4,"NodeRunError"],[8,"PhaseItem"],[3,"TrackedRenderPass"],[4,"RenderCommandResult"],[3,"SourceClient"],[4,"SendEventError"],[3,"Demand"],[3,"Map"],[15,"u64"],[4,"Input"],[6,"AsyncProcedure"],[4,"CallError"],[8,"OffscreenKernelEnvironment"],[8,"Scheduler"],[3,"SchedulerAsyncProcedureCall"],[3,"SchedulerContext"],[8,"MessageTag"],[4,"MessageError"],[3,"Message"],[4,"SendError"],[4,"ProcedureError"],[8,"FnMut"],[8,"IntoMessage"],[3,"IndexProcessor"],[3,"IndexedGeometry"],[3,"RTree"],[8,"CoordFloat"],[8,"Bounded"],[8,"Signed"],[8,"Clone"],[4,"ExactGeometry"],[8,"PartialOrd"],[15,"str"],[4,"GeozeroError"],[3,"GeometryIndex"],[8,"Debug"],[3,"LineString"],[3,"HashMap"],[3,"Polygon"],[4,"TileIndex"],[4,"ColumnValue"],[4,"ScheduleError"],[8,"FnOnce"],[8,"Send"],[3,"NopScheduler"],[8,"HttpClient"],[3,"HttpSourceClient"],[8,"Future"],[3,"Pin"],[4,"SourceType"],[3,"SourceFetchError"],[4,"Error"],[3,"Error"],[8,"Error"],[3,"TessellateSource"],[3,"RasterSource"],[3,"KernelBuilder"],[4,"MapError"],[3,"Style"],[3,"RendererBuilder"],[8,"Plugin"],[3,"ReqwestOffscreenKernelEnvironment"],[3,"ReqwestHttpClient"],[3,"TokioScheduler"],[8,"RasterTransferables"],[3,"RasterPlugin"],[6,"RgbaImage"],[3,"RasterLayersDataComponent"],[3,"AvailableRasterLayerData"],[3,"MissingRasterLayerData"],[3,"PopulateWorldSystem"],[4,"Cow"],[4,"ProcessRasterError"],[8,"Context"],[3,"ProcessRasterContext"],[3,"RasterTileRequest"],[3,"LayerItem"],[6,"AsyncProcedureFuture"],[3,"RequestSystem"],[3,"RasterResources"],[3,"Device"],[3,"Texture"],[6,"Label"],[4,"TextureFormat"],[3,"TextureUsages"],[3,"BindGroup"],[3,"Msaa"],[3,"RenderPipeline"],[3,"DefaultLayerRaster"],[3,"DefaultLayerRasterMissing"],[4,"RasterMessageTag"],[3,"DefaultRasterTransferables"],[3,"Queue"],[3,"Tiles"],[3,"RenderPlugin"],[4,"RenderStageLabel"],[3,"MaskPipeline"],[3,"Renderer"],[8,"MapWindow"],[8,"HeadedMapWindow"],[3,"WgpuSettings"],[3,"RendererSettings"],[4,"RenderError"],[3,"Instance"],[3,"Surface"],[6,"RequestAdapterOptions"],[3,"RequestDeviceError"],[3,"UninitializedRenderer"],[4,"InitializationResult"],[3,"InitializedRenderer"],[3,"Perspective"],[3,"Camera"],[3,"Point2"],[3,"EdgeInsets"],[3,"ViewProjection"],[3,"ModelViewProjection"],[15,"f32"],[3,"Rad"],[3,"InvertedViewProjection"],[3,"Vector2"],[8,"Into"],[3,"Vector4"],[3,"CreateSurfaceError"],[4,"RenderGraphError"],[4,"SurfaceError"],[4,"Eventually"],[8,"HasTile"],[8,"HasChanged"],[4,"RunSubGraphError"],[4,"OutputSlotError"],[4,"InputSlotError"],[3,"RunSubGraph"],[4,"SlotLabel"],[4,"SlotValue"],[3,"Buffer"],[3,"Sampler"],[4,"TextureView"],[3,"SlotInfos"],[3,"NodeState"],[4,"Edge"],[4,"EdgeExistence"],[3,"NodeId"],[8,"Node"],[4,"NodeLabel"],[8,"AsRef"],[3,"GraphInputNode"],[3,"Edges"],[3,"EmptyNode"],[4,"SlotType"],[8,"IntoIterator"],[4,"RenderGraphRunnerError"],[3,"MainPassNode"],[3,"MainPassDriverNode"],[3,"TileMaskItem"],[3,"RenderPhase"],[8,"RenderCommand"],[3,"DrawState"],[3,"RenderPipelineDescriptor"],[6,"BufferAddress"],[3,"BackingBufferDescriptor"],[3,"VertexBufferLayout"],[3,"FragmentState"],[3,"VertexState"],[3,"WindowHead"],[3,"Surface"],[3,"Adapter"],[4,"Head"],[3,"WindowSize"],[3,"BufferDimensions"],[3,"TextureView"],[3,"SurfaceTexture"],[3,"TilePipeline"],[3,"Range"],[3,"RenderPass"],[3,"Color"],[3,"BufferSlice"],[4,"IndexFormat"],[3,"ShaderStages"],[3,"Backends"],[3,"Features"],[4,"TextureAspect"],[3,"Limits"],[4,"PowerPreference"],[4,"SurfaceType"],[3,"Error"],[4,"Backend"],[3,"TextureFormatFeatures"],[3,"Iter"],[3,"IterNames"],[4,"TextureSampleType"],[3,"ShaderCamera"],[3,"ShaderGlobals"],[3,"ShaderVertex"],[3,"ShaderFeatureStyle"],[3,"ShaderLayerMetadata"],[3,"ShaderTileMetadata"],[3,"ShaderTextureVertex"],[3,"TileMaskShader"],[3,"VectorTileShader"],[3,"RasterTileShader"],[6,"Vec3f32"],[6,"Mat4x4f32"],[6,"Vec4f32"],[6,"Vec2f32"],[3,"GraphRunnerSystem"],[3,"ResourceSystem"],[3,"ViewTileSources"],[3,"TileShape"],[4,"SourceShapes"],[3,"ViewTile"],[8,"ResourceQuery"],[3,"QueryHasTile"],[8,"Queue"],[3,"TileViewPattern"],[3,"BackingBuffer"],[3,"ViewState"],[3,"Vector3"],[3,"Deg"],[8,"StageLabel"],[8,"Stage"],[8,"IntoSystemContainer"],[3,"MultiStage"],[3,"NopStage"],[8,"Copy"],[3,"AcesCc"],[3,"Alpha"],[3,"Luminance"],[3,"Luma"],[3,"DisplayP3"],[3,"Rec709"],[3,"CieLCh"],[3,"GenericColor1"],[3,"EncodedSrgb"],[3,"EncodedRec709"],[3,"Oklab"],[3,"CieLab"],[3,"DciXYZPrime"],[3,"EncodedBt2100HLG"],[3,"Yuv"],[3,"CieXYZ"],[3,"GenericColor3"],[3,"Hsl"],[3,"ICtCpHLG"],[3,"Bt2020"],[3,"YPrimeCbCr"],[3,"YCbCr"],[3,"Hsv"],[3,"YPbPr"],[3,"LinearSrgb"],[3,"AcesCct"],[3,"YCxCz"],[3,"EncodedBt2100PQ"],[3,"YPrimePbPr"],[3,"DciP3"],[3,"Aces2065"],[3,"Oklch"],[3,"ICtCpPQ"],[3,"EncodedBt2020"],[3,"EncodedDisplayP3"],[3,"Bt2100"],[3,"AcesCg"],[3,"PremultipliedAlpha"],[8,"ColorType"],[4,"Spaces"],[8,"Ord"],[8,"PartialEq"],[3,"Color"],[8,"Hash"],[3,"BackgroundPaint"],[3,"FillPaint"],[3,"LinePaint"],[4,"LayerPaint"],[3,"StyleLayer"],[4,"RasterResampling"],[3,"RasterLayer"],[3,"VectorSource"],[4,"Source"],[8,"QueryState"],[3,"EphemeralQueryState"],[3,"GlobalQueryState"],[3,"Resources"],[8,"Resource"],[8,"Default"],[3,"SystemContainer"],[8,"System"],[3,"FunctionSystem"],[3,"SystemStage"],[3,"Tile"],[8,"QueryState"],[3,"EphemeralQueryState"],[3,"GlobalQueryState"],[8,"TileComponent"],[3,"TileSpawnResult"],[3,"OverAlignedVertexBuffer"],[8,"Pod"],[3,"VertexBuffers"],[3,"VertexConstructor"],[3,"FillVertex"],[3,"StrokeVertex"],[8,"Add"],[3,"VertexId"],[8,"From"],[8,"MaxIndex"],[3,"ZeroTessellator"],[6,"Result"],[4,"GeomType"],[3,"Value"],[3,"Feature"],[3,"Layer"],[4,"TileValue"],[15,"i64"],[8,"FeatureProcessor"],[8,"GeomProcessor"],[4,"Geometry"],[3,"ChangeObserver"],[8,"SignificantlyDifferent"],[3,"FPSMeter"],[3,"Grid"],[3,"FloatOrd"],[8,"BaseFloat"],[3,"Plane"],[8,"BaseNum"],[3,"Aabb3"],[8,"VectorTransferables"],[3,"VectorPlugin"],[8,"Sized"],[6,"IndexDataType"],[3,"VectorTilesDone"],[3,"VectorLayersDataComponent"],[3,"VectorPipeline"],[3,"VectorTileRequest"],[3,"ProcessVectorContext"],[4,"ProcessVectorError"],[3,"MissingVectorLayerData"],[3,"AvailableVectorLayerData"],[3,"PopulateWorldSystem"],[3,"RequestSystem"],[3,"BufferPool"],[3,"RingIndex"],[3,"IndexEntry"],[4,"BackingBufferType"],[3,"BackingBuffer"],[3,"RingIndexEntry"],[3,"VecDeque"],[3,"HashSet"],[3,"DefaultTileTessellated"],[3,"DefaultLayerMissing"],[3,"DefaultLayerIndexed"],[3,"DefaultLayerTesselated"],[4,"VectorMessageTag"],[3,"DefaultVectorTransferables"],[6,"VectorBufferPool"],[3,"NonZeroU32"],[3,"SetDebugPipeline"],[3,"DrawDebugOutline"],[8,"EventLoopConfig"],[8,"EventLoop"],[8,"EventLoopProxy"],[8,"AsyncProcedureCall"],[13,"TileRequest"],[13,"Linear"],[13,"Spatial"],[4,"CurrentMapContext"],[13,"Pending"],[4,"RasterLayerData"],[8,"LayerRaster"],[8,"LayerRasterMissing"],[3,"SetRasterTilePipeline"],[3,"SetRasterViewBindGroup"],[3,"DrawRasterTile"],[13,"SlotEdge"],[13,"NodeEdge"],[13,"MismatchedSlotType"],[13,"MismatchedSlotType"],[13,"MismatchedNodeSlots"],[13,"UnconnectedNodeInputSlot"],[13,"NodeInputSlotAlreadyOccupied"],[13,"UnconnectedNodeOutputSlot"],[13,"MismatchedInputSlotType"],[13,"MissingInput"],[3,"RenderGraphRunner"],[13,"MismatchedInputSlotType"],[13,"MissingInput"],[13,"EmptyNodeOutputSlot"],[3,"SetMaskPipeline"],[3,"DrawMask"],[3,"BufferedTextureHead"],[8,"RenderPipeline"],[13,"SurfaceTexture"],[13,"Astc"],[8,"Shader"],[8,"ColorInterop"],[8,"ResourceQueryMut"],[8,"ResourceQueryUnsafe"],[8,"IntoSystem"],[8,"ComponentQuery"],[8,"ComponentQueryMut"],[8,"ComponentQueryUnsafe"],[8,"Align"],[8,"DynHash"],[4,"VectorLayerData"],[8,"TileTessellated"],[8,"LayerMissing"],[8,"LayerTessellated"],[8,"LayerIndexed"],[3,"SetVectorTilePipeline"],[3,"DrawVectorTile"],[8,"MapWindowConfig"]]}\ }'); if (typeof window !== 'undefined' && window.initSearch) {window.initSearch(searchIndex)}; if (typeof exports !== 'undefined') {exports.searchIndex = searchIndex}; diff --git a/docs/api/source-files.js b/docs/api/source-files.js index f153aa9d..e6a02fe7 100644 --- a/docs/api/source-files.js +++ b/docs/api/source-files.js @@ -1,4 +1,4 @@ var sourcesIndex = JSON.parse('{\ -"maplibre":["",[["debug",[],["cleanup_system.rs","debug_pass.rs","mod.rs","queue_system.rs","render_commands.rs","resource_system.rs"]],["io",[],["apc.rs","geometry_index.rs","mod.rs","scheduler.rs","source_client.rs","source_type.rs"]],["platform",[["noweb",[],["http_client.rs","mod.rs","scheduler.rs","trace.rs"]]],["mod.rs"]],["plugin",[],["mod.rs"]],["raster",[["resource",[],["mod.rs","raster.rs"]]],["mod.rs","populate_world_system.rs","process_raster.rs","queue_system.rs","render_commands.rs","request_system.rs","resource_system.rs","transferables.rs","upload_system.rs"]],["render",[["graph",[],["context.rs","edge.rs","graph.rs","mod.rs","node.rs","node_slot.rs"]],["render_phase",[],["draw.rs","mod.rs"]],["resource",[],["buffer.rs","mod.rs","pipeline.rs","shader.rs","surface.rs","texture.rs","tile_pipeline.rs","tracked_render_pass.rs"]],["shaders",[],["mod.rs"]],["systems",[],["cleanup_system.rs","graph_runner_system.rs","mod.rs","resource_system.rs","sort_phase_system.rs","tile_view_pattern_system.rs","upload_system.rs"]],["tile_view_pattern",[],["mod.rs","pattern.rs"]]],["builder.rs","camera.rs","error.rs","eventually.rs","graph_runner.rs","main_pass.rs","mod.rs","render_commands.rs","settings.rs"]],["style",[],["layer.rs","mod.rs","raster.rs","source.rs","style.rs"]],["tcs",[["system",[],["function.rs","mod.rs","stage.rs"]]],["mod.rs","resources.rs","tiles.rs","world.rs"]],["tessellation",[],["mod.rs","zero_tessellator.rs"]],["util",[],["fps_meter.rs","grid.rs","label.rs","math.rs","mod.rs"]],["vector",[["resource",[],["buffer_pool.rs","mod.rs"]]],["mod.rs","populate_world_system.rs","process_vector.rs","queue_system.rs","render_commands.rs","request_system.rs","resource_system.rs","transferables.rs","upload_system.rs"]]],["benchmarking.rs","context.rs","coords.rs","environment.rs","event_loop.rs","kernel.rs","lib.rs","map.rs","schedule.rs","view_state.rs","window.rs"]]\ +"maplibre":["",[["debug",[],["cleanup_system.rs","debug_pass.rs","mod.rs","queue_system.rs","render_commands.rs","resource_system.rs"]],["io",[],["apc.rs","geometry_index.rs","mod.rs","scheduler.rs","source_client.rs","source_type.rs"]],["platform",[["noweb",[],["http_client.rs","mod.rs","scheduler.rs","trace.rs"]]],["mod.rs"]],["plugin",[],["mod.rs"]],["raster",[["resource",[],["mod.rs","raster.rs"]]],["mod.rs","populate_world_system.rs","process_raster.rs","queue_system.rs","render_commands.rs","request_system.rs","resource_system.rs","transferables.rs","upload_system.rs"]],["render",[["graph",[],["context.rs","edge.rs","graph.rs","mod.rs","node.rs","node_slot.rs"]],["render_phase",[],["draw.rs","mod.rs"]],["resource",[],["buffer.rs","mod.rs","pipeline.rs","shader.rs","surface.rs","texture.rs","tile_pipeline.rs","tracked_render_pass.rs"]],["shaders",[],["mod.rs"]],["systems",[],["cleanup_system.rs","graph_runner_system.rs","mod.rs","resource_system.rs","sort_phase_system.rs","tile_view_pattern_system.rs","upload_system.rs"]],["tile_view_pattern",[],["mod.rs","pattern.rs"]]],["builder.rs","camera.rs","error.rs","eventually.rs","graph_runner.rs","main_pass.rs","mod.rs","render_commands.rs","settings.rs","view_state.rs"]],["style",[],["layer.rs","mod.rs","raster.rs","source.rs","style.rs"]],["tcs",[["system",[],["function.rs","mod.rs","stage.rs"]]],["mod.rs","resources.rs","tiles.rs","world.rs"]],["tessellation",[],["mod.rs","zero_tessellator.rs"]],["util",[],["fps_meter.rs","grid.rs","label.rs","math.rs","mod.rs"]],["vector",[["resource",[],["buffer_pool.rs","mod.rs"]]],["mod.rs","populate_world_system.rs","process_vector.rs","queue_system.rs","render_commands.rs","request_system.rs","resource_system.rs","transferables.rs","upload_system.rs"]]],["benchmarking.rs","context.rs","coords.rs","environment.rs","event_loop.rs","kernel.rs","lib.rs","map.rs","schedule.rs","window.rs"]]\ }'); createSourceSidebar(); diff --git a/docs/api/src/maplibre/context.rs.html b/docs/api/src/maplibre/context.rs.html index a52dd6a1..38f0a0cc 100644 --- a/docs/api/src/maplibre/context.rs.html +++ b/docs/api/src/maplibre/context.rs.html @@ -17,7 +17,15 @@ 17 18 19 -
    use crate::{render::Renderer, style::Style, tcs::world::World, view_state::ViewState};
    +20
    +21
    +22
    +23
    +
    use crate::{
    +    render::{view_state::ViewState, Renderer},
    +    style::Style,
    +    tcs::world::World,
    +};
     
     /// Stores the context of the map.
     ///
    diff --git a/docs/api/src/maplibre/coords.rs.html b/docs/api/src/maplibre/coords.rs.html
    index 0354a444..c336a3d5 100644
    --- a/docs/api/src/maplibre/coords.rs.html
    +++ b/docs/api/src/maplibre/coords.rs.html
    @@ -779,6 +779,47 @@
     779
     780
     781
    +782
    +783
    +784
    +785
    +786
    +787
    +788
    +789
    +790
    +791
    +792
    +793
    +794
    +795
    +796
    +797
    +798
    +799
    +800
    +801
    +802
    +803
    +804
    +805
    +806
    +807
    +808
    +809
    +810
    +811
    +812
    +813
    +814
    +815
    +816
    +817
    +818
    +819
    +820
    +821
    +822
     

    //! Provides utilities related to coordinates.
     
     use std::{
    @@ -927,6 +968,32 @@
                 longitude,
             }
         }
    +
    +    /// Approximate radius of the earth in meters.
    +    /// Uses the WGS-84 approximation. The radius at the equator is ~6378137 and at the poles is ~6356752. https://en.wikipedia.org/wiki/World_Geodetic_System#WGS84
    +    /// 6371008.8 is one published "average radius" see https://en.wikipedia.org/wiki/Earth_radius#Mean_radius, or ftp://athena.fsv.cvut.cz/ZFG/grs80-Moritz.pdf p.4
    +    const EARTH_RADIUS: f64 = 6371008.8;
    +
    +    /// The average circumference of the world in meters.
    +
    +    const EARTH_CIRCUMFRENCE: f64 = 2.0 * PI * Self::EARTH_RADIUS; // meters
    +
    +    /// The circumference at a line of latitude in meters.
    +    fn circumference_at_latitude(&self) -> f64 {
    +        Self::EARTH_CIRCUMFRENCE * (self.latitude * PI / 180.0).cos()
    +    }
    +
    +    fn mercator_x_from_lng(&self) -> f64 {
    +        (180.0 + self.longitude) / 360.0
    +    }
    +
    +    fn mercator_y_from_lat(&self) -> f64 {
    +        (180.0 - (180.0 / PI * ((PI / 4.0 + self.latitude * PI / 360.0).tan()).ln())) / 360.0
    +    }
    +
    +    fn mercator_z_from_altitude(&self, altitude: f64) -> f64 {
    +        altitude / self.circumference_at_latitude()
    +    }
     }
     
     impl Default for LatLon {
    @@ -1002,8 +1069,19 @@
             2.0_f64.powf(zoom.0 - self.0)
         }
     
    -    pub fn level(&self) -> ZoomLevel {
    -        ZoomLevel::from(self.0.floor() as u8)
    +    /// Adopted from
    +    /// [Transform::coveringZoomLevel](https://github.com/maplibre/maplibre-gl-js/blob/80e232a64716779bfff841dbc18fddc1f51535ad/src/geo/transform.ts#L279-L288)
    +    ///
    +    /// This function calculates which ZoomLevel to show at this zoom.
    +    ///
    +    /// The `tile_size` is the size of the tile like specified in the source definition,
    +    /// For example raster tiles can be 512px or 256px. If it is 256px, then 2x as many tiles are
    +    /// displayed. If the raster tile is 512px then exactly as many raster tiles like vector
    +    /// tiles would be displayed.
    +    pub fn zoom_level(&self, tile_size: f64) -> ZoomLevel {
    +        // TODO: Also support round() instead of floor() here
    +        let z = (self.0 as f64 + (TILE_SIZE / tile_size).ln() / 2.0_f64.ln()).floor() as u8;
    +        return ZoomLevel(z.max(0));
         }
     }
     
    @@ -1137,7 +1215,9 @@
             })
         }
     
    -    #[tracing::instrument(skip_all)]
    +    /// Adopted from
    +    /// [Transform::calculatePosMatrix](https://github.com/maplibre/maplibre-gl-js/blob/80e232a64716779bfff841dbc18fddc1f51535ad/src/geo/transform.ts#L719-L731)
    +    #[tracing::instrument(skip_all)]
         pub fn transform_for_zoom(&self, zoom: Zoom) -> Matrix4<f64> {
             /*
                For tile.z = zoom:
    @@ -1471,6 +1551,7 @@
             coords::{
                 Quadkey, TileCoords, ViewRegion, WorldCoords, WorldTileCoords, Zoom, ZoomLevel, EXTENT,
             },
    +        render::tile_view_pattern::DEFAULT_TILE_SIZE,
             style::source::TileAddressingScheme,
             util::math::Aabb2,
         };
    @@ -1485,7 +1566,8 @@
             println!("{p1:?}\n{p2:?}");
     
             assert_eq!(
    -            WorldCoords::from((p1.x, p1.y)).into_world_tile(zoom.level(), zoom),
    +            WorldCoords::from((p1.x, p1.y))
    +                .into_world_tile(zoom.zoom_level(DEFAULT_TILE_SIZE), zoom),
                 tile
             );
         }
    diff --git a/docs/api/src/maplibre/lib.rs.html b/docs/api/src/maplibre/lib.rs.html
    index 722284bf..49528e8e 100644
    --- a/docs/api/src/maplibre/lib.rs.html
    +++ b/docs/api/src/maplibre/lib.rs.html
    @@ -56,7 +56,6 @@
     56
     57
     58
    -59
     
    //! # Maplibre-rs
     //!
     //! A multi-platform library for rendering vector tile maps with WebGPU.
    @@ -110,7 +109,6 @@
     pub mod map;
     pub mod plugin;
     pub mod tcs;
    -pub mod view_state;
     
     // Plugins
     pub mod debug;
    diff --git a/docs/api/src/maplibre/map.rs.html b/docs/api/src/maplibre/map.rs.html
    index cdbc739b..0bc9489a 100644
    --- a/docs/api/src/maplibre/map.rs.html
    +++ b/docs/api/src/maplibre/map.rs.html
    @@ -213,11 +213,11 @@
             },
             error::RenderError,
             graph::RenderGraphError,
    +        view_state::ViewState,
         },
         schedule::{Schedule, Stage},
         style::Style,
         tcs::world::World,
    -    view_state::ViewState,
         window::{HeadedMapWindow, MapWindow, MapWindowConfig},
     };
     
    @@ -303,7 +303,7 @@
                         WorldCoords::from_lat_lon(LatLon::new(center[0], center[1]), initial_zoom),
                         initial_zoom,
                         cgmath::Deg::<f64>(style.pitch.unwrap_or_default()),
    -                    cgmath::Deg(110.0),
    +                    cgmath::Rad(0.6435011087932844),
                     );
     
                     let mut world = World::default();
    diff --git a/docs/api/src/maplibre/raster/request_system.rs.html b/docs/api/src/maplibre/raster/request_system.rs.html
    index 6406df48..8562c542 100644
    --- a/docs/api/src/maplibre/raster/request_system.rs.html
    +++ b/docs/api/src/maplibre/raster/request_system.rs.html
    @@ -156,6 +156,8 @@
     156
     157
     158
    +159
    +160
     
    //! Requests tiles which are currently in view
     
     use std::{borrow::Cow, collections::HashSet, marker::PhantomData, rc::Rc};
    @@ -173,6 +175,7 @@
             transferables::{LayerRasterMissing, RasterTransferables},
             RasterLayersDataComponent,
         },
    +    render::tile_view_pattern::DEFAULT_TILE_SIZE,
         style::layer::LayerPaint,
         tcs::system::System,
     };
    @@ -206,7 +209,8 @@
             }: &mut MapContext,
         ) {
             let _tiles = &mut world.tiles;
    -        let view_region = view_state.create_view_region();
    +        let view_region =
    +            view_state.create_view_region(view_state.zoom().zoom_level(DEFAULT_TILE_SIZE));
     
             if view_state.did_camera_change() || view_state.did_zoom_change() {
                 if let Some(view_region) = &view_region {
    diff --git a/docs/api/src/maplibre/raster/upload_system.rs.html b/docs/api/src/maplibre/raster/upload_system.rs.html
    index fe4b52cb..e2b5fdb2 100644
    --- a/docs/api/src/maplibre/raster/upload_system.rs.html
    +++ b/docs/api/src/maplibre/raster/upload_system.rs.html
    @@ -107,6 +107,8 @@
     107
     108
     109
    +110
    +111
     

    //! Uploads data to the GPU which is needed for rendering.
     use crate::{
         context::MapContext,
    @@ -117,6 +119,7 @@
         },
         render::{
             eventually::{Eventually, Eventually::Initialized},
    +        tile_view_pattern::DEFAULT_TILE_SIZE,
             Renderer,
         },
         style::Style,
    @@ -138,7 +141,8 @@
         else {
             return;
         };
    -    let view_region = view_state.create_view_region();
    +    let view_region =
    +        view_state.create_view_region(view_state.zoom().zoom_level(DEFAULT_TILE_SIZE));
     
         if let Some(view_region) = &view_region {
             upload_raster_layer(
    diff --git a/docs/api/src/maplibre/render/camera.rs.html b/docs/api/src/maplibre/render/camera.rs.html
    index c4f70f52..c90a0e4d 100644
    --- a/docs/api/src/maplibre/render/camera.rs.html
    +++ b/docs/api/src/maplibre/render/camera.rs.html
    @@ -277,261 +277,13 @@
     277
     278
     279
    -280
    -281
    -282
    -283
    -284
    -285
    -286
    -287
    -288
    -289
    -290
    -291
    -292
    -293
    -294
    -295
    -296
    -297
    -298
    -299
    -300
    -301
    -302
    -303
    -304
    -305
    -306
    -307
    -308
    -309
    -310
    -311
    -312
    -313
    -314
    -315
    -316
    -317
    -318
    -319
    -320
    -321
    -322
    -323
    -324
    -325
    -326
    -327
    -328
    -329
    -330
    -331
    -332
    -333
    -334
    -335
    -336
    -337
    -338
    -339
    -340
    -341
    -342
    -343
    -344
    -345
    -346
    -347
    -348
    -349
    -350
    -351
    -352
    -353
    -354
    -355
    -356
    -357
    -358
    -359
    -360
    -361
    -362
    -363
    -364
    -365
    -366
    -367
    -368
    -369
    -370
    -371
    -372
    -373
    -374
    -375
    -376
    -377
    -378
    -379
    -380
    -381
    -382
    -383
    -384
    -385
    -386
    -387
    -388
    -389
    -390
    -391
    -392
    -393
    -394
    -395
    -396
    -397
    -398
    -399
    -400
    -401
    -402
    -403
    -404
    -405
    -406
    -407
    -408
    -409
    -410
    -411
    -412
    -413
    -414
    -415
    -416
    -417
    -418
    -419
    -420
    -421
    -422
    -423
    -424
    -425
    -426
    -427
    -428
    -429
    -430
    -431
    -432
    -433
    -434
    -435
    -436
    -437
    -438
    -439
    -440
    -441
    -442
    -443
    -444
    -445
    -446
    -447
    -448
    -449
    -450
    -451
    -452
    -453
    -454
    -455
    -456
    -457
    -458
    -459
    -460
    -461
    -462
    -463
    -464
    -465
    -466
    -467
    -468
    -469
    -470
    -471
    -472
    -473
    -474
    -475
    -476
    -477
    -478
    -479
    -480
    -481
    -482
    -483
    -484
    -485
    -486
    -487
    -488
    -489
    -490
    -491
    -492
    -493
    -494
    -495
    -496
    -497
    -498
    -499
    -500
    -501
    -502
    -503
    -504
    -505
    -506
    -507
    -508
    -509
    -510
    -511
    -512
    -513
    -514
    -515
    -516
    -517
    -518
    -519
    -520
    -521
    -522
    -523
    -524
    -525
    -526
     
    //! Main camera
     
    -use cgmath::{prelude::*, AbsDiffEq, Matrix4, Point2, Point3, Rad, Vector2, Vector3, Vector4};
    +use std::convert::Into;
     
    -use crate::util::{
    -    math::{bounds_from_points, Aabb2, Aabb3, Plane},
    -    SignificantlyDifferent,
    -};
    +use cgmath::{num_traits::clamp, prelude::*, *};
    +
    +use crate::util::SignificantlyDifferent;
     
     #[rustfmt::skip]
     pub const OPENGL_TO_WGPU_MATRIX: Matrix4<f64> = Matrix4::new(
    @@ -549,8 +301,8 @@
         0.0, 0.0, 0.0, 1.0,
     );
     
    -#[derive(Debug)]
    -pub struct ViewProjection(Matrix4<f64>);
    +#[derive(Debug, Clone, Copy)]
    +pub struct ViewProjection(pub Matrix4<f64>);
     
     impl ViewProjection {
         #[tracing::instrument(skip_all)]
    @@ -592,17 +344,18 @@
         }
     }
     
    -const MIN_PITCH: Rad<f64> = Rad(-0.5);
    -const MAX_PITCH: Rad<f64> = Rad(0.5);
    +const MIN_PITCH: Deg<f64> = Deg(-30.0);
    +const MAX_PITCH: Deg<f64> = Deg(30.0);
    +
    +const MIN_YAW: Deg<f64> = Deg(-30.0);
    +const MAX_YAW: Deg<f64> = Deg(30.0);
     
     #[derive(Debug, Clone)]
     pub struct Camera {
    -    position: Point3<f64>, // The z axis never changes, the zoom is used instead
    -    yaw: Rad<f64>,
    +    position: Point2<f64>,
    +    yaw: Rad<f64>,
         pitch: Rad<f64>,
    -
    -    width: f64,
    -    height: f64,
    +    roll: Rad<f64>,
     }
     
     impl SignificantlyDifferent for Camera {
    @@ -612,442 +365,195 @@
             self.position.abs_diff_ne(&other.position, epsilon)
                 || self.yaw.abs_diff_ne(&other.yaw, epsilon)
                 || self.pitch.abs_diff_ne(&other.pitch, epsilon)
    +            || self.roll.abs_diff_ne(&other.roll, epsilon)
         }
     }
     
     impl Camera {
    -    pub fn new<V: Into<Point3<f64>>, Y: Into<Rad<f64>>, P: Into<Rad<f64>>>(
    +    pub fn new<V: Into<Point2<f64>>, Y: Into<Rad<f64>>, P: Into<Rad<f64>>>(
             position: V,
             yaw: Y,
             pitch: P,
    -        width: u32,
    -        height: u32,
         ) -> Self {
             Self {
                 position: position.into(),
                 yaw: yaw.into(),
                 pitch: pitch.into(),
    -            width: width as f64,
    -            height: height as f64,
    -        }
    -    }
    -
    -    pub fn resize(&mut self, width: u32, height: u32) {
    -        self.width = width as f64;
    -        self.height = height as f64;
    -    }
    -
    -    fn calc_matrix(&self) -> Matrix4<f64> {
    -        Matrix4::look_to_rh(
    -            self.position,
    -            Vector3::new(self.yaw.cos(), self.pitch.sin(), self.yaw.sin()).normalize(),
    -            Vector3::unit_y(),
    -        )
    -    }
    -
    -    #[tracing::instrument(skip_all)]
    -    pub fn calc_view_proj(&self, perspective: &Perspective) -> ViewProjection {
    -        ViewProjection(FLIP_Y * perspective.current_projection * self.calc_matrix())
    -    }
    -
    -    /// A transform which can be used to transform between clip and window space.
    -    /// Adopted from [here](https://docs.microsoft.com/en-us/windows/win32/direct3d9/viewports-and-clipping#viewport-rectangle) (Direct3D).
    -    fn clip_to_window_transform(&self) -> Matrix4<f64> {
    -        let min_depth = 0.0;
    -        let max_depth = 1.0;
    -        let x = 0.0;
    -        let y = 0.0;
    -        let ox = x + self.width / 2.0;
    -        let oy = y + self.height / 2.0;
    -        let oz = min_depth;
    -        let pz = max_depth - min_depth;
    -        Matrix4::from_cols(
    -            Vector4::new(self.width / 2.0, 0.0, 0.0, 0.0),
    -            Vector4::new(0.0, -self.height / 2.0, 0.0, 0.0),
    -            Vector4::new(0.0, 0.0, pz, 0.0),
    -            Vector4::new(ox, oy, oz, 1.0),
    -        )
    -    }
    -
    -    /// Transforms coordinates in clip space to window coordinates.
    -    ///
    -    /// Adopted from [here](https://docs.microsoft.com/en-us/windows/win32/dxtecharts/the-direct3d-transformation-pipeline) (Direct3D).
    -    fn clip_to_window(&self, clip: &Vector4<f64>) -> Vector4<f64> {
    -        #[rustfmt::skip]
    -            let ndc = Vector4::new(
    -            clip.x / clip.w,
    -            clip.y / clip.w,
    -            clip.z / clip.w,
    -            1.0
    -        );
    -
    -        self.clip_to_window_transform() * ndc
    -    }
    -    /// Alternative implementation to `clip_to_window`. Transforms coordinates in clip space to
    -    /// window coordinates.
    -    ///
    -    /// Adopted from [here](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkViewport.html)
    -    /// and [here](https://matthewwellings.com/blog/the-new-vulkan-coordinate-system/) (Vulkan).
    -    fn clip_to_window_vulkan(&self, clip: &Vector4<f64>) -> Vector3<f64> {
    -        #[rustfmt::skip]
    -            let ndc = Vector4::new(
    -            clip.x / clip.w,
    -            clip.y / clip.w,
    -            clip.z / clip.w,
    -            1.0
    -        );
    -
    -        let min_depth = 0.0;
    -        let max_depth = 1.0;
    -
    -        let x = 0.0;
    -        let y = 0.0;
    -        let ox = x + self.width / 2.0;
    -        let oy = y + self.height / 2.0;
    -        let oz = min_depth;
    -        let px = self.width;
    -        let py = self.height;
    -        let pz = max_depth - min_depth;
    -        let xd = ndc.x;
    -        let yd = ndc.y;
    -        let zd = ndc.z;
    -        Vector3::new(px / 2.0 * xd + ox, py / 2.0 * yd + oy, pz * zd + oz)
    -    }
    -
    -    /// Order of transformations reversed: https://computergraphics.stackexchange.com/questions/6087/screen-space-coordinates-to-eye-space-conversion/6093
    -    /// `w` is lost.
    -    ///
    -    /// OpenGL explanation: https://www.khronos.org/opengl/wiki/Compute_eye_space_from_window_space#From_window_to_ndc
    -    fn window_to_world(
    -        &self,
    -        window: &Vector3<f64>,
    -        inverted_view_proj: &InvertedViewProjection,
    -    ) -> Vector3<f64> {
    -        #[rustfmt::skip]
    -        let fixed_window = Vector4::new(
    -            window.x,
    -            window.y,
    -            window.z,
    -            1.0
    -        );
    -
    -        let ndc = self.clip_to_window_transform().invert().unwrap() * fixed_window;
    -        let unprojected = inverted_view_proj.project(ndc);
    -
    -        Vector3::new(
    -            unprojected.x / unprojected.w,
    -            unprojected.y / unprojected.w,
    -            unprojected.z / unprojected.w,
    -        )
    -    }
    -
    -    /// Alternative implementation to `window_to_world`
    -    ///
    -    /// Adopted from [here](https://docs.rs/nalgebra-glm/latest/src/nalgebra_glm/ext/matrix_projection.rs.html#164-181).
    -    fn window_to_world_nalgebra(
    -        window: &Vector3<f64>,
    -        inverted_view_proj: &InvertedViewProjection,
    -        width: f64,
    -        height: f64,
    -    ) -> Vector3<f64> {
    -        let pt = Vector4::new(
    -            2.0 * (window.x - 0.0) / width - 1.0,
    -            2.0 * (height - window.y - 0.0) / height - 1.0,
    -            window.z,
    -            1.0,
    -        );
    -        let unprojected = inverted_view_proj.project(pt);
    -
    -        Vector3::new(
    -            unprojected.x / unprojected.w,
    -            unprojected.y / unprojected.w,
    -            unprojected.z / unprojected.w,
    -        )
    -    }
    -
    -    /// Gets the world coordinates for the specified `window` coordinates on the `z=0` plane.
    -    pub fn window_to_world_at_ground(
    -        &self,
    -        window: &Vector2<f64>,
    -        inverted_view_proj: &InvertedViewProjection,
    -        bound: bool,
    -    ) -> Option<Vector3<f64>> {
    -        let near_world =
    -            self.window_to_world(&Vector3::new(window.x, window.y, 0.0), inverted_view_proj);
    -
    -        let far_world =
    -            self.window_to_world(&Vector3::new(window.x, window.y, 1.0), inverted_view_proj);
    -
    -        // for z = 0 in world coordinates
    -        // Idea comes from: https://dondi.lmu.build/share/cg/unproject-explained.pdf
    -        let u = -near_world.z / (far_world.z - near_world.z);
    -        if !bound || (0.0..=1.0).contains(&u) {
    -            Some(near_world + u * (far_world - near_world))
    -        } else {
    -            None
    +            roll: Rad::zero(), // TODO: initialize
             }
         }
     
    -    /// Calculates an [`Aabb2`] bounding box which contains at least the visible area on the `z=0`
    -    /// plane. One can think of it as being the bounding box of the geometry which forms the
    -    /// intersection between the viewing frustum and the `z=0` plane.
    -    ///
    -    /// This implementation works in the world 3D space. It casts rays from the corners of the
    -    /// window to calculate intersections points with the `z=0` plane. Then a bounding box is
    -    /// calculated.
    -    ///
    -    /// *Note:* It is possible that no such bounding box exists. This is the case if the `z=0` plane
    -    /// is not in view.
    -    pub fn view_region_bounding_box(
    -        &self,
    -        inverted_view_proj: &InvertedViewProjection,
    -    ) -> Option<Aabb2<f64>> {
    -        let screen_bounding_box = [
    -            Vector2::new(0.0, 0.0),
    -            Vector2::new(self.width, 0.0),
    -            Vector2::new(self.width, self.height),
    -            Vector2::new(0.0, self.height),
    -        ]
    -        .map(|point| self.window_to_world_at_ground(&point, inverted_view_proj, false));
    -
    -        let (min, max) = bounds_from_points(
    -            screen_bounding_box
    -                .into_iter()
    -                .flatten()
    -                .map(|point| [point.x, point.y]),
    -        )?;
    -
    -        Some(Aabb2::new(Point2::from(min), Point2::from(max)))
    -    }
    -    /// An alternative implementation for `view_bounding_box`.
    -    ///
    -    /// This implementation works in the NDC space. We are creating a plane in the world 3D space.
    -    /// Then we are transforming it to the NDC space. In NDC space it is easy to calculate
    -    /// the intersection points between an Aabb3 and a plane. The resulting Aabb2 is returned.
    -    pub fn view_region_bounding_box_ndc(&self, perspective: &Perspective) -> Option<Aabb2<f64>> {
    -        let view_proj = self.calc_view_proj(perspective);
    -        let a = view_proj.project(Vector4::new(0.0, 0.0, 0.0, 1.0));
    -        let b = view_proj.project(Vector4::new(1.0, 0.0, 0.0, 1.0));
    -        let c = view_proj.project(Vector4::new(1.0, 1.0, 0.0, 1.0));
    -
    -        let a_ndc = self.clip_to_window(&a).truncate();
    -        let b_ndc = self.clip_to_window(&b).truncate();
    -        let c_ndc = self.clip_to_window(&c).truncate();
    -        let to_ndc = Vector3::new(1.0 / self.width, 1.0 / self.height, 1.0);
    -        let plane: Plane<f64> = Plane::from_points(
    -            Point3::from_vec(a_ndc.mul_element_wise(to_ndc)),
    -            Point3::from_vec(b_ndc.mul_element_wise(to_ndc)),
    -            Point3::from_vec(c_ndc.mul_element_wise(to_ndc)),
    -        )?;
    -
    -        let points = plane.intersection_points_aabb3(&Aabb3::new(
    -            Point3::new(0.0, 0.0, 0.0),
    -            Point3::new(1.0, 1.0, 1.0),
    -        ));
    -
    -        let inverted_view_proj = view_proj.invert();
    -
    -        let from_ndc = Vector3::new(self.width, self.height, 1.0);
    -        let vec = points
    -            .iter()
    -            .map(|point| {
    -                self.window_to_world(&point.mul_element_wise(from_ndc), &inverted_view_proj)
    -            })
    -            .collect::<Vec<_>>();
    -
    -        let min_x = vec
    -            .iter()
    -            .map(|point| point.x)
    -            .min_by(|a, b| a.partial_cmp(b).unwrap())?;
    -        let min_y = vec
    -            .iter()
    -            .map(|point| point.y)
    -            .min_by(|a, b| a.partial_cmp(b).unwrap())?;
    -        let max_x = vec
    -            .iter()
    -            .map(|point| point.x)
    -            .max_by(|a, b| a.partial_cmp(b).unwrap())?;
    -        let max_y = vec
    -            .iter()
    -            .map(|point| point.y)
    -            .max_by(|a, b| a.partial_cmp(b).unwrap())?;
    -        Some(Aabb2::new(
    -            Point2::new(min_x, min_y),
    -            Point2::new(max_x, max_y),
    -        ))
    +    pub fn calc_matrix(&self, camera_height: f64) -> Matrix4<f64> {
    +        Matrix4::from_translation(Vector3::new(0.0, 0.0, -camera_height))
    +            * Matrix4::from_angle_x(self.pitch)
    +            * Matrix4::from_angle_y(self.yaw)
    +            * Matrix4::from_angle_z(self.roll)
    +            * Matrix4::from_translation(Vector3::new(-self.position.x, -self.position.y, 0.0))
         }
     
    -    pub fn position(&self) -> Point3<f64> {
    +    pub fn position(&self) -> Point2<f64> {
             self.position
         }
     
    -    pub fn yaw(&self) -> Rad<f64> {
    +    pub fn get_yaw(&self) -> Rad<f64> {
             self.yaw
         }
     
    -    pub fn rotate<P: Into<Rad<f64>>>(&mut self, delta: P) {
    -        self.yaw += delta.into();
    +    pub fn yaw<P: Into<Rad<f64>>>(&mut self, delta: P) {
    +        let new_yaw = self.yaw + delta.into();
    +
    +        if new_yaw <= MAX_YAW.into() && new_yaw >= MIN_YAW.into() {
    +            self.yaw = new_yaw;
    +        }
         }
     
    -    pub fn pitch(&self) -> Rad<f64> {
    +    pub fn get_roll(&self) -> Rad<f64> {
    +        self.roll
    +    }
    +
    +    pub fn roll<P: Into<Rad<f64>>>(&mut self, delta: P) {
    +        self.roll += delta.into();
    +    }
    +
    +    pub fn get_pitch(&self) -> Rad<f64> {
             self.pitch
         }
     
    -    pub fn tilt<P: Into<Rad<f64>>>(&mut self, delta: P) {
    +    pub fn pitch<P: Into<Rad<f64>>>(&mut self, delta: P) {
             let new_pitch = self.pitch + delta.into();
     
    -        if new_pitch <= MAX_PITCH && new_pitch >= MIN_PITCH {
    +        if new_pitch <= MAX_PITCH.into() && new_pitch >= MIN_PITCH.into() {
                 self.pitch = new_pitch;
             }
         }
     
    -    pub fn move_relative(&mut self, delta: Vector3<f64>) {
    +    pub fn move_relative(&mut self, delta: Vector2<f64>) {
             self.position += delta;
         }
     
    -    pub fn move_to(&mut self, new_position: Point3<f64>) {
    +    pub fn move_to(&mut self, new_position: Point2<f64>) {
             self.position = new_position;
         }
     
    -    pub fn position_vector(&self) -> Vector3<f64> {
    +    pub fn position_vector(&self) -> Vector2<f64> {
             self.position.to_vec()
         }
     
    -    pub fn homogenous_position(&self) -> Vector4<f64> {
    -        self.position.to_homogeneous()
    +    pub fn to_3d(&self, camera_height: f64) -> Point3<f64> {
    +        Point3::new(self.position.x, self.position.y, camera_height)
    +    }
    +    pub fn set_yaw<P: Into<Rad<f64>>>(&mut self, yaw: P) {
    +        let new_yaw = yaw.into();
    +        let max: Rad<_> = MAX_YAW.into();
    +        let min: Rad<_> = MIN_YAW.into();
    +        self.yaw = Rad(new_yaw.0.min(max.0).max(min.0))
    +    }
    +    pub fn set_pitch<P: Into<Rad<f64>>>(&mut self, pitch: P) {
    +        let new_pitch = pitch.into();
    +        let max: Rad<_> = MAX_PITCH.into();
    +        let min: Rad<_> = MIN_PITCH.into();
    +        self.pitch = Rad(new_pitch.0.min(max.0).max(min.0))
    +    }
    +    pub fn set_roll<P: Into<Rad<f64>>>(&mut self, roll: P) {
    +        self.roll = roll.into();
    +    }
    +}
    +
    +#[derive(PartialEq, Copy, Clone, Default)]
    +pub struct EdgeInsets {
    +    pub top: f64,
    +    pub bottom: f64,
    +    pub left: f64,
    +    pub right: f64,
    +}
    +
    +impl EdgeInsets {
    +    /**
    +     * Utility method that computes the new apprent center or vanishing point after applying insets.
    +     * This is in pixels and with the top left being (0.0) and +y being downwards.
    +     *
    +     * @param {number} width the width
    +     * @param {number} height the height
    +     * @returns {Point} the point
    +     * @memberof EdgeInsets
    +     */
    +    pub fn center(&self, width: f64, height: f64) -> Point2<f64> {
    +        // Clamp insets so they never overflow width/height and always calculate a valid center
    +        let x = clamp((self.left + width - self.right) / 2.0, 0.0, width);
    +        let y = clamp((self.top + height - self.bottom) / 2.0, 0.0, height);
    +
    +        return Point2::new(x, y);
         }
     }
     
     pub struct Perspective {
         fovy: Rad<f64>,
    -    znear: f64,
    -    zfar: f64,
    -
    -    current_projection: Matrix4<f64>,
     }
     
     impl Perspective {
    -    pub fn new<F: Into<Rad<f64>>>(width: u32, height: u32, fovy: F, znear: f64, zfar: f64) -> Self {
    +    pub fn new<F: Into<Rad<f64>>>(fovy: F) -> Self {
             let rad = fovy.into();
    -        Self {
    -            current_projection: Self::calc_matrix(width as f64 / height as f64, rad, znear, zfar),
    -            fovy: rad,
    -            znear,
    -            zfar,
    -        }
    +        Self { fovy: rad }
         }
     
    -    pub fn resize(&mut self, width: u32, height: u32) {
    -        self.current_projection = Self::calc_matrix(
    -            width as f64 / height as f64,
    -            self.fovy,
    -            self.znear,
    -            self.zfar,
    -        );
    +    pub fn fovy(&self) -> Rad<f64> {
    +        self.fovy
    +    }
    +    pub fn fovx(&self, width: f64, height: f64) -> Rad<f64> {
    +        let aspect = width / height;
    +        Rad(2.0 * ((self.fovy / 2.0).tan() * aspect).atan())
         }
     
    -    fn calc_matrix(aspect: f64, fovy: Rad<f64>, znear: f64, zfar: f64) -> Matrix4<f64> {
    -        OPENGL_TO_WGPU_MATRIX * cgmath::perspective(fovy, aspect, znear, zfar)
    +    pub fn y_tan(&self) -> f64 {
    +        let half_fovy = self.fovy / 2.0;
    +        half_fovy.tan()
    +    }
    +    pub fn x_tan(&self, width: f64, height: f64) -> f64 {
    +        let half_fovx = self.fovx(width, height) / 2.0;
    +        half_fovx.tan()
         }
    -}
     
    -#[cfg(test)]
    -mod tests {
    -    use cgmath::{AbsDiffEq, Vector2, Vector3, Vector4};
    +    pub fn offset_x(&self, center_offset: Point2<f64>, width: f64) -> f64 {
    +        center_offset.x * 2.0 / width
    +    }
     
    -    use super::{Camera, Perspective};
    -    use crate::render::camera::{InvertedViewProjection, ViewProjection};
    +    pub fn offset_y(&self, center_offset: Point2<f64>, height: f64) -> f64 {
    +        center_offset.y * 2.0 / height
    +    }
     
    -    #[test]
    -    fn test() {
    -        let width = 1920.0;
    -        let height = 1080.0;
    -        let camera = Camera::new(
    -            (0.0, 5.0, 5000.0),
    -            cgmath::Deg(-90.0),
    -            cgmath::Deg(45.0),
    -            width as u32,
    -            height as u32,
    -        );
    -        // 4732.561319582916
    -        let perspective = Perspective::new(
    -            width as u32,
    -            height as u32,
    -            cgmath::Deg(45.0),
    -            0.1,
    -            100000.0,
    -        );
    -        let view_proj: ViewProjection = camera.calc_view_proj(&perspective);
    -        let inverted_view_proj: InvertedViewProjection = view_proj.invert();
    +    pub fn calc_matrix(&self, aspect: f64, near_z: f64, far_z: f64) -> Matrix4<f64> {
    +        perspective(self.fovy, aspect, near_z, far_z)
    +    }
     
    -        let world_pos: Vector4<f64> = Vector4::new(0.0, 0.0, 0.0, 1.0);
    -        let clip = view_proj.project(world_pos);
    +    pub fn calc_matrix_with_center(
    +        &self,
    +        width: f64,
    +        height: f64,
    +        near_z: f64,
    +        far_z: f64,
    +        center_offset: Point2<f64>,
    +    ) -> Matrix4<f64> {
    +        let ymax = near_z * self.y_tan();
     
    -        let origin_clip_space = view_proj.project(Vector4::new(0.0, 0.0, 0.0, 1.0));
    -        println!("origin w in clip space: {:?}", origin_clip_space.w);
    +        //TODO maybe just: let xmax = ymax * aspect;
    +        let xmax = near_z * self.x_tan(width, height);
     
    -        println!("world_pos: {world_pos:?}");
    -        println!("clip: {clip:?}");
    -        println!("world_pos: {:?}", view_proj.invert().project(clip));
    -
    -        println!("window: {:?}", camera.clip_to_window_vulkan(&clip));
    -        let window = camera.clip_to_window(&clip);
    -        println!("window (matrix): {window:?}");
    -
    -        // --------- nalgebra
    -
    -        println!(
    -            "r world (nalgebra): {:?}",
    -            Camera::window_to_world_nalgebra(
    -                &window.truncate(),
    -                &inverted_view_proj,
    -                width,
    -                height
    -            )
    -        );
    -
    -        // -------- far vs. near plane trick
    -
    -        let near_world = Camera::window_to_world_nalgebra(
    -            &Vector3::new(window.x, window.y, 0.0),
    -            &inverted_view_proj,
    -            width,
    -            height,
    -        );
    -
    -        let far_world = Camera::window_to_world_nalgebra(
    -            &Vector3::new(window.x, window.y, 1.0),
    -            &inverted_view_proj,
    -            width,
    -            height,
    -        );
    -
    -        // for z = 0 in world coordinates
    -        let u = -near_world.z / (far_world.z - near_world.z);
    -        println!("u: {u:?}");
    -        let unprojected = near_world + u * (far_world - near_world);
    -        println!("unprojected: {unprojected:?}");
    -        assert!(Vector3::new(world_pos.x, world_pos.y, world_pos.z).abs_diff_eq(&unprojected, 0.05));
    -
    -        // ---- test for unproject
    -
    -        let window = Vector2::new(960.0, 631.0); // 0, 4096: passt nicht
    -                                                 //let window = Vector2::new(962.0, 1.0); // 0, 300: passt nicht
    -                                                 //let window = Vector2::new(960.0, 540.0); // 0, 0 passt
    -        let near_world =
    -            camera.window_to_world(&Vector3::new(window.x, window.y, 0.0), &inverted_view_proj);
    -
    -        let far_world =
    -            camera.window_to_world(&Vector3::new(window.x, window.y, 1.0), &inverted_view_proj);
    -
    -        // for z = 0 in world coordinates
    -        let u = -near_world.z / (far_world.z - near_world.z);
    -        println!("u: {u:?}");
    -        let unprojected = near_world + u * (far_world - near_world);
    -        println!("unprojected: {unprojected:?}");
    -        // ----
    -
    -        //assert!(reverse_world.abs_diff_eq(&world_pos, 0.05))
    -    }
    +        let offset_x = self.offset_x(center_offset, width);
    +        let offset_y = self.offset_y(center_offset, height);
    +        frustum(
    +            // https://webglfundamentals.org/webgl/lessons/webgl-qna-how-can-i-move-the-perspective-vanishing-point-from-the-center-of-the-canvas-.html
    +            xmax * (-1.0 + offset_x), /* = -xmax + (center_offset.x * screen_to_near_factor_x)
    +                                                 where:
    +                                                  screen_to_near_factor_x = near_width / width
    +                                                  where:
    +                                                    near_width = xmax * 2.0
    +                                      */
    +            xmax * (1.0 + offset_x),
    +            ymax * (-1.0 + offset_y),
    +            ymax * (1.0 + offset_y),
    +            near_z,
    +            far_z,
    +        )
    +    }
     }
     

    \ No newline at end of file diff --git a/docs/api/src/maplibre/render/mod.rs.html b/docs/api/src/maplibre/render/mod.rs.html index 66a4c653..0803265b 100644 --- a/docs/api/src/maplibre/render/mod.rs.html +++ b/docs/api/src/maplibre/render/mod.rs.html @@ -598,6 +598,7 @@ 598 599 600 +601
    //! This module implements the rendering algorithm of maplibre-rs. It manages the whole
     //! communication with the GPU.
     //!
    @@ -663,6 +664,7 @@
     pub mod render_phase;
     pub mod settings;
     pub mod tile_view_pattern;
    +pub mod view_state;
     
     pub use shaders::ShaderVertex;
     
    diff --git a/docs/api/src/maplibre/render/systems/tile_view_pattern_system.rs.html b/docs/api/src/maplibre/render/systems/tile_view_pattern_system.rs.html
    index f689d49f..44c2581b 100644
    --- a/docs/api/src/maplibre/render/systems/tile_view_pattern_system.rs.html
    +++ b/docs/api/src/maplibre/render/systems/tile_view_pattern_system.rs.html
    @@ -38,13 +38,14 @@
     38
     39
     40
    +41
     
    //! Extracts data from the current state.
     
     use crate::{
         context::MapContext,
         render::{
             eventually::{Eventually, Eventually::Initialized},
    -        tile_view_pattern::{ViewTileSources, WgpuTileViewPattern},
    +        tile_view_pattern::{ViewTileSources, WgpuTileViewPattern, DEFAULT_TILE_SIZE},
         },
     };
     
    @@ -59,7 +60,8 @@
         else {
             return;
         };
    -    let view_region = view_state.create_view_region();
    +    let view_region =
    +        view_state.create_view_region(view_state.zoom().zoom_level(DEFAULT_TILE_SIZE));
     
         if let Some(view_region) = &view_region {
             let zoom = view_state.zoom();
    diff --git a/docs/api/src/maplibre/render/tile_view_pattern/mod.rs.html b/docs/api/src/maplibre/render/tile_view_pattern/mod.rs.html
    index 23420b1d..758255d3 100644
    --- a/docs/api/src/maplibre/render/tile_view_pattern/mod.rs.html
    +++ b/docs/api/src/maplibre/render/tile_view_pattern/mod.rs.html
    @@ -228,6 +228,12 @@
     228
     229
     230
    +231
    +232
    +233
    +234
    +235
    +236
     
    //! Utility for generating a tile pattern which can be used for masking.
     
     mod pattern;
    @@ -245,6 +251,12 @@
     
     pub type WgpuTileViewPattern = TileViewPattern<wgpu::Queue, wgpu::Buffer>;
     
    +/// If not otherwise specified, raster tiles usually are 512.0 by 512.0 pixel.
    +/// In order to support 256.0 x 256.0 raster tiles 256.0 must be used.
    +///
    +/// Vector tiles always have a size of 512.0.
    +pub const DEFAULT_TILE_SIZE: f64 = 512.0;
    +
     /// This defines the source tile shaped from which the content for the `target` is taken.
     /// For example if the target is `(0, 0, 1)` (of [`ViewTile`]) , we might use
     /// `SourceShapes::Parent((0, 0, 0))` as source.
    diff --git a/docs/api/src/maplibre/render/tile_view_pattern/pattern.rs.html b/docs/api/src/maplibre/render/tile_view_pattern/pattern.rs.html
    index 00cec32a..9a84673e 100644
    --- a/docs/api/src/maplibre/render/tile_view_pattern/pattern.rs.html
    +++ b/docs/api/src/maplibre/render/tile_view_pattern/pattern.rs.html
    @@ -152,6 +152,10 @@
     152
     153
     154
    +155
    +156
    +157
    +158
     
    use std::marker::PhantomData;
     
     use crate::{
    @@ -165,7 +169,11 @@
         tcs::world::World,
     };
     
    -pub const DEFAULT_TILE_VIEW_PATTERN_SIZE: wgpu::BufferAddress = 32 * 4;
    +// FIXME: If network is very slow, this pattern size can
    +// increase dramatically.
    +// E.g. imagine if a pattern for zoom level 18 is drawn
    +// when completely zoomed out.
    +pub const DEFAULT_TILE_VIEW_PATTERN_SIZE: wgpu::BufferAddress = 512;
     pub const CHILDREN_SEARCH_DEPTH: usize = 4;
     
     #[derive(Debug)]
    @@ -300,7 +308,7 @@
             let raw_buffer = bytemuck::cast_slice(buffer.as_slice());
             if raw_buffer.len() as wgpu::BufferAddress > self.view_tiles_buffer.inner_size {
                 /* TODO: We need to avoid this case by either choosing a proper size
    -            TODO: (DEFAULT_TILE_VIEW_SIZE), or resizing the buffer */
    +            TODO: (DEFAULT_TILE_VIEW_PATTERN_SIZE), or resizing the buffer */
                 panic!("Buffer is too small to store the tile pattern!");
             }
             queue.write_buffer(&self.view_tiles_buffer.inner, 0, raw_buffer);
    diff --git a/docs/api/src/maplibre/render/view_state.rs.html b/docs/api/src/maplibre/render/view_state.rs.html
    new file mode 100644
    index 00000000..749a2de7
    --- /dev/null
    +++ b/docs/api/src/maplibre/render/view_state.rs.html
    @@ -0,0 +1,1027 @@
    +view_state.rs - source
    1
    +2
    +3
    +4
    +5
    +6
    +7
    +8
    +9
    +10
    +11
    +12
    +13
    +14
    +15
    +16
    +17
    +18
    +19
    +20
    +21
    +22
    +23
    +24
    +25
    +26
    +27
    +28
    +29
    +30
    +31
    +32
    +33
    +34
    +35
    +36
    +37
    +38
    +39
    +40
    +41
    +42
    +43
    +44
    +45
    +46
    +47
    +48
    +49
    +50
    +51
    +52
    +53
    +54
    +55
    +56
    +57
    +58
    +59
    +60
    +61
    +62
    +63
    +64
    +65
    +66
    +67
    +68
    +69
    +70
    +71
    +72
    +73
    +74
    +75
    +76
    +77
    +78
    +79
    +80
    +81
    +82
    +83
    +84
    +85
    +86
    +87
    +88
    +89
    +90
    +91
    +92
    +93
    +94
    +95
    +96
    +97
    +98
    +99
    +100
    +101
    +102
    +103
    +104
    +105
    +106
    +107
    +108
    +109
    +110
    +111
    +112
    +113
    +114
    +115
    +116
    +117
    +118
    +119
    +120
    +121
    +122
    +123
    +124
    +125
    +126
    +127
    +128
    +129
    +130
    +131
    +132
    +133
    +134
    +135
    +136
    +137
    +138
    +139
    +140
    +141
    +142
    +143
    +144
    +145
    +146
    +147
    +148
    +149
    +150
    +151
    +152
    +153
    +154
    +155
    +156
    +157
    +158
    +159
    +160
    +161
    +162
    +163
    +164
    +165
    +166
    +167
    +168
    +169
    +170
    +171
    +172
    +173
    +174
    +175
    +176
    +177
    +178
    +179
    +180
    +181
    +182
    +183
    +184
    +185
    +186
    +187
    +188
    +189
    +190
    +191
    +192
    +193
    +194
    +195
    +196
    +197
    +198
    +199
    +200
    +201
    +202
    +203
    +204
    +205
    +206
    +207
    +208
    +209
    +210
    +211
    +212
    +213
    +214
    +215
    +216
    +217
    +218
    +219
    +220
    +221
    +222
    +223
    +224
    +225
    +226
    +227
    +228
    +229
    +230
    +231
    +232
    +233
    +234
    +235
    +236
    +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
    +264
    +265
    +266
    +267
    +268
    +269
    +270
    +271
    +272
    +273
    +274
    +275
    +276
    +277
    +278
    +279
    +280
    +281
    +282
    +283
    +284
    +285
    +286
    +287
    +288
    +289
    +290
    +291
    +292
    +293
    +294
    +295
    +296
    +297
    +298
    +299
    +300
    +301
    +302
    +303
    +304
    +305
    +306
    +307
    +308
    +309
    +310
    +311
    +312
    +313
    +314
    +315
    +316
    +317
    +318
    +319
    +320
    +321
    +322
    +323
    +324
    +325
    +326
    +327
    +328
    +329
    +330
    +331
    +332
    +333
    +334
    +335
    +336
    +337
    +338
    +339
    +340
    +341
    +342
    +343
    +344
    +345
    +346
    +347
    +348
    +349
    +350
    +351
    +352
    +353
    +354
    +355
    +356
    +357
    +358
    +359
    +360
    +361
    +362
    +363
    +364
    +365
    +366
    +367
    +368
    +369
    +370
    +371
    +372
    +373
    +374
    +375
    +376
    +377
    +378
    +379
    +380
    +381
    +382
    +383
    +384
    +385
    +386
    +387
    +388
    +389
    +390
    +391
    +392
    +393
    +394
    +395
    +396
    +397
    +398
    +399
    +400
    +401
    +402
    +403
    +404
    +405
    +406
    +407
    +408
    +409
    +410
    +411
    +412
    +413
    +414
    +415
    +416
    +417
    +418
    +419
    +420
    +421
    +422
    +423
    +424
    +425
    +426
    +427
    +428
    +429
    +430
    +431
    +432
    +433
    +434
    +435
    +436
    +437
    +438
    +439
    +440
    +441
    +442
    +443
    +444
    +445
    +446
    +447
    +448
    +449
    +450
    +451
    +452
    +453
    +454
    +455
    +456
    +457
    +458
    +459
    +460
    +461
    +462
    +463
    +464
    +465
    +466
    +467
    +468
    +469
    +470
    +471
    +472
    +473
    +474
    +475
    +476
    +477
    +478
    +479
    +480
    +481
    +482
    +483
    +484
    +485
    +486
    +487
    +488
    +489
    +490
    +491
    +492
    +493
    +494
    +495
    +496
    +497
    +498
    +499
    +500
    +501
    +502
    +503
    +504
    +505
    +506
    +507
    +508
    +509
    +510
    +511
    +512
    +513
    +
    use std::{
    +    f64,
    +    ops::{Deref, DerefMut},
    +};
    +
    +use cgmath::{prelude::*, *};
    +
    +use crate::{
    +    coords::{ViewRegion, WorldCoords, Zoom, ZoomLevel},
    +    render::camera::{
    +        Camera, EdgeInsets, InvertedViewProjection, Perspective, ViewProjection, FLIP_Y,
    +        OPENGL_TO_WGPU_MATRIX,
    +    },
    +    util::{
    +        math::{bounds_from_points, Aabb2, Aabb3, Plane},
    +        ChangeObserver,
    +    },
    +    window::WindowSize,
    +};
    +
    +const VIEW_REGION_PADDING: i32 = 1;
    +const MAX_N_TILES: usize = 512;
    +
    +pub struct ViewState {
    +    zoom: ChangeObserver<Zoom>,
    +    camera: ChangeObserver<Camera>,
    +    perspective: Perspective,
    +
    +    width: f64,
    +    height: f64,
    +    edge_insets: EdgeInsets,
    +}
    +
    +impl ViewState {
    +    pub fn new<F: Into<Rad<f64>>, P: Into<Deg<f64>>>(
    +        window_size: WindowSize,
    +        position: WorldCoords,
    +        zoom: Zoom,
    +        pitch: P,
    +        fovy: F,
    +    ) -> Self {
    +        let camera = Camera::new((position.x, position.y), Deg(0.0), pitch.into());
    +
    +        let perspective = Perspective::new(fovy);
    +
    +        Self {
    +            zoom: ChangeObserver::new(zoom),
    +            camera: ChangeObserver::new(camera),
    +            perspective,
    +            width: window_size.width() as f64,
    +            height: window_size.height() as f64,
    +            edge_insets: EdgeInsets {
    +                top: 0.0,
    +                bottom: 0.0,
    +                left: 0.0,
    +                right: 0.0,
    +            },
    +        }
    +    }
    +    pub fn set_edge_insets(&mut self, edge_insets: EdgeInsets) {
    +        self.edge_insets = edge_insets;
    +    }
    +
    +    pub fn edge_insets(&self) -> &EdgeInsets {
    +        &self.edge_insets
    +    }
    +
    +    pub fn resize(&mut self, width: u32, height: u32) {
    +        self.width = width as f64;
    +        self.height = height as f64;
    +    }
    +
    +    pub fn create_view_region(&self, visible_level: ZoomLevel) -> Option<ViewRegion> {
    +        self.view_region_bounding_box(&self.view_projection().invert())
    +            .map(|bounding_box| {
    +                ViewRegion::new(
    +                    bounding_box,
    +                    VIEW_REGION_PADDING,
    +                    MAX_N_TILES,
    +                    *self.zoom,
    +                    visible_level,
    +                )
    +            })
    +    }
    +
    +    pub fn get_intersection_time(
    +        ray_origin: Vector3<f64>,
    +        ray_direction: Vector3<f64>,
    +        plane_origin: Vector3<f64>,
    +        plane_normal: Vector3<f64>,
    +    ) -> f64 {
    +        let m = plane_origin - ray_origin;
    +        let distance = (m).dot(plane_normal);
    +
    +        let approach_speed = ray_direction.dot(plane_normal);
    +
    +        // Returns an infinity if the ray is
    +        // parallel to the plane and never intersects,
    +        // or NaN if the ray is in the plane
    +        // and intersects everywhere.
    +        return distance / approach_speed;
    +
    +        // Otherwise returns t such that
    +        // ray_origin + t * rayDirection
    +        // is in the plane, to within rounding error.
    +    }
    +
    +    pub fn furthest_distance(&self, camera_height: f64, center_offset: Point2<f64>) -> f64 {
    +        let perspective = &self.perspective;
    +        let width = self.width;
    +        let height = self.height;
    +        let camera = self.camera.position();
    +
    +        let y = perspective.y_tan();
    +        let x = perspective.x_tan(width, height);
    +        let offset_x = perspective.offset_x(center_offset, width);
    +        let offset_y = perspective.offset_y(center_offset, height);
    +
    +        let rotation = Matrix4::from_angle_x(self.camera.get_pitch())
    +            * Matrix4::from_angle_y(self.camera.get_yaw())
    +            * Matrix4::from_angle_z(self.camera.get_roll());
    +
    +        let rays = [
    +            Vector3::new(x * (1.0 - offset_x), y * (1.0 - offset_y), 1.0),
    +            Vector3::new(x * (-1.0 - offset_x), y * (1.0 - offset_y), 1.0),
    +            Vector3::new(x * (1.0 - offset_x), y * (-1.0 - offset_y), 1.0),
    +            Vector3::new(x * (-1.0 - offset_x), y * (-1.0 - offset_y), 1.0),
    +        ];
    +        let ray_origin = Vector3::new(-camera.x, -camera.y, -camera_height);
    +
    +        let plane_origin = Vector3::new(-camera.x, -camera.y, 0.0);
    +        let plane_normal = (rotation * Vector4::new(0.0, 0.0, 1.0, 1.0)).truncate();
    +
    +        rays.iter()
    +            .map(|ray| Self::get_intersection_time(ray_origin, *ray, plane_origin, plane_normal))
    +            .fold(0. / 0., f64::max)
    +    }
    +
    +    pub fn camera_to_center_distance(&self) -> f64 {
    +        let height = self.height;
    +
    +        let fovy = self.perspective.fovy();
    +        let half_fovy = fovy / 2.0;
    +
    +        // Camera height, such that given a certain field-of-view, exactly height/2 are visible on ground.
    +        let camera_to_center_distance = (height / 2.0) / (half_fovy.tan()); // TODO: Not sure why it is height here and not width
    +        camera_to_center_distance
    +    }
    +
    +    /// This function matches how maplibre-gl-js implements perspective and cameras at the time
    +    /// of the mapbox -> maplibre fork: [src/geo/transform.ts#L680](https://github.com/maplibre/maplibre-gl-js/blob/e78ad7944ef768e67416daa4af86b0464bd0f617/src/geo/transform.ts#L680)
    +    #[tracing::instrument(skip_all)]
    +    pub fn view_projection(&self) -> ViewProjection {
    +        let width = self.width;
    +        let height = self.height;
    +
    +        let center = self.edge_insets.center(width, height);
    +        // Offset between wanted center and usual/normal center
    +        let center_offset = center - Vector2::new(width, height) / 2.0;
    +
    +        let camera_to_center_distance = self.camera_to_center_distance();
    +
    +        let camera_matrix = self.camera.calc_matrix(camera_to_center_distance);
    +
    +        // Add a bit extra to avoid precision problems when a fragment's distance is exactly `furthest_distance`
    +        let far_z = self.furthest_distance(camera_to_center_distance, center_offset) * 1.01;
    +
    +        // The larger the value of near_z is
    +        // - the more depth precision is available for features (good)
    +        // - clipping starts appearing sooner when the camera is close to 3d features (bad)
    +        //
    +        // Smaller values worked well for mapbox-gl-js but deckgl was encountering precision issues
    +        // when rendering it's layers using custom layers. This value was experimentally chosen and
    +        // seems to solve z-fighting issues in deckgl while not clipping buildings too close to the camera.
    +        //
    +        // TODO remove: In tile.vertex.wgsl we are setting each layer's final `z` in ndc space to `z_index`.
    +        // This means that regardless of the `znear` value all layers will be rendered as part
    +        // of the near plane.
    +        // These values have been selected experimentally:
    +        // https://www.sjbaker.org/steve/omniv/love_your_z_buffer.html
    +        let near_z = height / 50.0;
    +
    +        let mut perspective =
    +            self.perspective
    +                .calc_matrix_with_center(width, height, near_z, far_z, center_offset);
    +
    +        //let mut perspective = self.perspective.calc_matrix(width / height, near_z, far_z);
    +        // Apply center of perspective offset, in order to move the vanishing point
    +        //perspective.z[0] = -center_offset.x * 2.0 / width;
    +        //perspective.z[1] = center_offset.y * 2.0 / height;
    +
    +        // Apply camera and move camera away from ground
    +        let view_projection = perspective * camera_matrix;
    +
    +        // TODO for the below TODOs, check GitHub blame to get an idea of what these matrices are used for!
    +        // TODO mercatorMatrix https://github.com/maplibre/maplibre-gl-js/blob/e78ad7944ef768e67416daa4af86b0464bd0f617/src/geo/transform.ts#L725-L727
    +        // TODO scale vertically to meters per pixel (inverse of ground resolution): https://github.com/maplibre/maplibre-gl-js/blob/e78ad7944ef768e67416daa4af86b0464bd0f617/src/geo/transform.ts#L729-L730
    +        // TODO alignedProjMatrix https://github.com/maplibre/maplibre-gl-js/blob/e78ad7944ef768e67416daa4af86b0464bd0f617/src/geo/transform.ts#L735-L747
    +        // TODO labelPlaneMatrix https://github.com/maplibre/maplibre-gl-js/blob/e78ad7944ef768e67416daa4af86b0464bd0f617/src/geo/transform.ts#L749-L752C14
    +        // TODO glCoordMatrix https://github.com/maplibre/maplibre-gl-js/blob/e78ad7944ef768e67416daa4af86b0464bd0f617/src/geo/transform.ts#L754-L758
    +        // TODO pixelMatrix, pixelMatrixInverse https://github.com/maplibre/maplibre-gl-js/blob/e78ad7944ef768e67416daa4af86b0464bd0f617/src/geo/transform.ts#L760-L761
    +
    +        ViewProjection(FLIP_Y * OPENGL_TO_WGPU_MATRIX * view_projection)
    +    }
    +
    +    pub fn zoom(&self) -> Zoom {
    +        *self.zoom
    +    }
    +
    +    pub fn did_zoom_change(&self) -> bool {
    +        self.zoom.did_change(0.05)
    +    }
    +
    +    pub fn update_zoom(&mut self, new_zoom: Zoom) {
    +        *self.zoom = new_zoom;
    +        log::info!("zoom: {new_zoom}");
    +    }
    +
    +    pub fn camera(&self) -> &Camera {
    +        self.camera.deref()
    +    }
    +
    +    pub fn camera_mut(&mut self) -> &mut Camera {
    +        self.camera.deref_mut()
    +    }
    +
    +    pub fn did_camera_change(&self) -> bool {
    +        self.camera.did_change(0.05)
    +    }
    +
    +    pub fn update_references(&mut self) {
    +        self.camera.update_reference();
    +        self.zoom.update_reference();
    +    }
    +
    +    /// A transform which can be used to transform between clip and window space.
    +    /// Adopted from [here](https://docs.microsoft.com/en-us/windows/win32/direct3d9/viewports-and-clipping#viewport-rectangle) (Direct3D).
    +    fn clip_to_window_transform(&self) -> Matrix4<f64> {
    +        let min_depth = 0.0;
    +        let max_depth = 1.0;
    +        let x = 0.0;
    +        let y = 0.0;
    +        let ox = x + self.width / 2.0;
    +        let oy = y + self.height / 2.0;
    +        let oz = min_depth;
    +        let pz = max_depth - min_depth;
    +        Matrix4::from_cols(
    +            Vector4::new(self.width / 2.0, 0.0, 0.0, 0.0),
    +            Vector4::new(0.0, -self.height / 2.0, 0.0, 0.0),
    +            Vector4::new(0.0, 0.0, pz, 0.0),
    +            Vector4::new(ox, oy, oz, 1.0),
    +        )
    +    }
    +
    +    /// Transforms coordinates in clip space to window coordinates.
    +    ///
    +    /// Adopted from [here](https://docs.microsoft.com/en-us/windows/win32/dxtecharts/the-direct3d-transformation-pipeline) (Direct3D).
    +    fn clip_to_window(&self, clip: &Vector4<f64>) -> Vector4<f64> {
    +        #[rustfmt::skip]
    +        let ndc = Vector4::new(
    +            clip.x / clip.w,
    +            clip.y / clip.w,
    +            clip.z / clip.w,
    +            1.0
    +        );
    +
    +        self.clip_to_window_transform() * ndc
    +    }
    +    /// Alternative implementation to `clip_to_window`. Transforms coordinates in clip space to
    +    /// window coordinates.
    +    ///
    +    /// Adopted from [here](https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkViewport.html)
    +    /// and [here](https://matthewwellings.com/blog/the-new-vulkan-coordinate-system/) (Vulkan).
    +    fn clip_to_window_vulkan(&self, clip: &Vector4<f64>) -> Vector3<f64> {
    +        #[rustfmt::skip]
    +            let ndc = Vector4::new(
    +            clip.x / clip.w,
    +            clip.y / clip.w,
    +            clip.z / clip.w,
    +            1.0
    +        );
    +
    +        let min_depth = 0.0;
    +        let max_depth = 1.0;
    +
    +        let x = 0.0;
    +        let y = 0.0;
    +        let ox = x + self.width / 2.0;
    +        let oy = y + self.height / 2.0;
    +        let oz = min_depth;
    +        let px = self.width;
    +        let py = self.height;
    +        let pz = max_depth - min_depth;
    +        let xd = ndc.x;
    +        let yd = ndc.y;
    +        let zd = ndc.z;
    +        Vector3::new(px / 2.0 * xd + ox, py / 2.0 * yd + oy, pz * zd + oz)
    +    }
    +
    +    /// Order of transformations reversed: https://computergraphics.stackexchange.com/questions/6087/screen-space-coordinates-to-eye-space-conversion/6093
    +    /// `w` is lost.
    +    ///
    +    /// OpenGL explanation: https://www.khronos.org/opengl/wiki/Compute_eye_space_from_window_space#From_window_to_ndc
    +    fn window_to_world(
    +        &self,
    +        window: &Vector3<f64>,
    +        inverted_view_proj: &InvertedViewProjection,
    +    ) -> Vector3<f64> {
    +        #[rustfmt::skip]
    +            let fixed_window = Vector4::new(
    +            window.x,
    +            window.y,
    +            window.z,
    +            1.0
    +        );
    +
    +        let ndc = self.clip_to_window_transform().invert().unwrap() * fixed_window;
    +        let unprojected = inverted_view_proj.project(ndc);
    +
    +        Vector3::new(
    +            unprojected.x / unprojected.w,
    +            unprojected.y / unprojected.w,
    +            unprojected.z / unprojected.w,
    +        )
    +    }
    +
    +    /// Alternative implementation to `window_to_world`
    +    ///
    +    /// Adopted from [here](https://docs.rs/nalgebra-glm/latest/src/nalgebra_glm/ext/matrix_projection.rs.html#164-181).
    +    fn window_to_world_nalgebra(
    +        window: &Vector3<f64>,
    +        inverted_view_proj: &InvertedViewProjection,
    +        width: f64,
    +        height: f64,
    +    ) -> Vector3<f64> {
    +        let pt = Vector4::new(
    +            2.0 * (window.x - 0.0) / width - 1.0,
    +            2.0 * (height - window.y - 0.0) / height - 1.0,
    +            window.z,
    +            1.0,
    +        );
    +        let unprojected = inverted_view_proj.project(pt);
    +
    +        Vector3::new(
    +            unprojected.x / unprojected.w,
    +            unprojected.y / unprojected.w,
    +            unprojected.z / unprojected.w,
    +        )
    +    }
    +
    +    /// Gets the world coordinates for the specified `window` coordinates on the `z=0` plane.
    +    pub fn window_to_world_at_ground(
    +        &self,
    +        window: &Vector2<f64>,
    +        inverted_view_proj: &InvertedViewProjection,
    +        bound: bool,
    +    ) -> Option<Vector2<f64>> {
    +        let near_world =
    +            self.window_to_world(&Vector3::new(window.x, window.y, 0.0), inverted_view_proj);
    +
    +        let far_world =
    +            self.window_to_world(&Vector3::new(window.x, window.y, 1.0), inverted_view_proj);
    +
    +        // for z = 0 in world coordinates
    +        // Idea comes from: https://dondi.lmu.build/share/cg/unproject-explained.pdf
    +        let u = -near_world.z / (far_world.z - near_world.z);
    +        if !bound || (0.0..=1.01).contains(&u) {
    +            let result = near_world + u * (far_world - near_world);
    +            Some(Vector2::new(result.x, result.y))
    +        } else {
    +            None
    +        }
    +    }
    +
    +    /// Calculates an [`Aabb2`] bounding box which contains at least the visible area on the `z=0`
    +    /// plane. One can think of it as being the bounding box of the geometry which forms the
    +    /// intersection between the viewing frustum and the `z=0` plane.
    +    ///
    +    /// This implementation works in the world 3D space. It casts rays from the corners of the
    +    /// window to calculate intersections points with the `z=0` plane. Then a bounding box is
    +    /// calculated.
    +    ///
    +    /// *Note:* It is possible that no such bounding box exists. This is the case if the `z=0` plane
    +    /// is not in view.
    +    pub fn view_region_bounding_box(
    +        &self,
    +        inverted_view_proj: &InvertedViewProjection,
    +    ) -> Option<Aabb2<f64>> {
    +        let screen_bounding_box = [
    +            Vector2::new(0.0, 0.0),
    +            Vector2::new(self.width, 0.0),
    +            Vector2::new(self.width, self.height),
    +            Vector2::new(0.0, self.height),
    +        ]
    +        .map(|point| self.window_to_world_at_ground(&point, inverted_view_proj, false));
    +
    +        let (min, max) = bounds_from_points(
    +            screen_bounding_box
    +                .into_iter()
    +                .flatten()
    +                .map(|point| [point.x, point.y]),
    +        )?;
    +
    +        Some(Aabb2::new(Point2::from(min), Point2::from(max)))
    +    }
    +    /// An alternative implementation for `view_bounding_box`.
    +    ///
    +    /// This implementation works in the NDC space. We are creating a plane in the world 3D space.
    +    /// Then we are transforming it to the NDC space. In NDC space it is easy to calculate
    +    /// the intersection points between an Aabb3 and a plane. The resulting Aabb2 is returned.
    +    pub fn view_region_bounding_box_ndc(&self) -> Option<Aabb2<f64>> {
    +        let view_proj = self.view_projection();
    +        let a = view_proj.project(Vector4::new(0.0, 0.0, 0.0, 1.0));
    +        let b = view_proj.project(Vector4::new(1.0, 0.0, 0.0, 1.0));
    +        let c = view_proj.project(Vector4::new(1.0, 1.0, 0.0, 1.0));
    +
    +        let a_ndc = self.clip_to_window(&a).truncate();
    +        let b_ndc = self.clip_to_window(&b).truncate();
    +        let c_ndc = self.clip_to_window(&c).truncate();
    +        let to_ndc = Vector3::new(1.0 / self.width, 1.0 / self.height, 1.0);
    +        let plane: Plane<f64> = Plane::from_points(
    +            Point3::from_vec(a_ndc.mul_element_wise(to_ndc)),
    +            Point3::from_vec(b_ndc.mul_element_wise(to_ndc)),
    +            Point3::from_vec(c_ndc.mul_element_wise(to_ndc)),
    +        )?;
    +
    +        let points = plane.intersection_points_aabb3(&Aabb3::new(
    +            Point3::new(0.0, 0.0, 0.0),
    +            Point3::new(1.0, 1.0, 1.0),
    +        ));
    +
    +        let inverted_view_proj = view_proj.invert();
    +
    +        let from_ndc = Vector3::new(self.width, self.height, 1.0);
    +        let vec = points
    +            .iter()
    +            .map(|point| {
    +                self.window_to_world(&point.mul_element_wise(from_ndc), &inverted_view_proj)
    +            })
    +            .collect::<Vec<_>>();
    +
    +        let min_x = vec
    +            .iter()
    +            .map(|point| point.x)
    +            .min_by(|a, b| a.partial_cmp(b).unwrap())?;
    +        let min_y = vec
    +            .iter()
    +            .map(|point| point.y)
    +            .min_by(|a, b| a.partial_cmp(b).unwrap())?;
    +        let max_x = vec
    +            .iter()
    +            .map(|point| point.x)
    +            .max_by(|a, b| a.partial_cmp(b).unwrap())?;
    +        let max_y = vec
    +            .iter()
    +            .map(|point| point.y)
    +            .max_by(|a, b| a.partial_cmp(b).unwrap())?;
    +        Some(Aabb2::new(
    +            Point2::new(min_x, min_y),
    +            Point2::new(max_x, max_y),
    +        ))
    +    }
    +}
    +
    +#[cfg(test)]
    +mod tests {
    +    use cgmath::{Deg, Matrix4, Vector2, Vector4};
    +
    +    use crate::{
    +        coords::{WorldCoords, Zoom},
    +        render::view_state::ViewState,
    +        window::WindowSize,
    +    };
    +
    +    #[test]
    +    fn conform_transformation() {
    +        let fov = Deg(60.0);
    +        let mut state = ViewState::new(
    +            WindowSize::new(800, 600).unwrap(),
    +            WorldCoords::at_ground(0.0, 0.0),
    +            Zoom::new(10.0),
    +            Deg(0.0),
    +            fov,
    +        );
    +
    +        //state.furthest_distance(state.camera_to_center_distance(), Point2::new(0.0, 0.0));
    +
    +        let projection = state.view_projection().invert();
    +
    +        let bottom_left = state
    +            .window_to_world_at_ground(&Vector2::new(0.0, 0.0), &projection, true)
    +            .unwrap();
    +        println!("bottom left on ground {:?}", bottom_left);
    +        let top_right = state
    +            .window_to_world_at_ground(&Vector2::new(state.width, state.height), &projection, true)
    +            .unwrap();
    +        println!("top right on ground {:?}", top_right);
    +
    +        let mut rotated = Matrix4::from_angle_x(Deg(-30.0))
    +            * Vector4::new(bottom_left.x, bottom_left.y, 0.0, 0.0);
    +
    +        println!("bottom left rotated around x axis {:?}", rotated);
    +
    +        rotated = Matrix4::from_angle_y(Deg(-30.0)) * rotated;
    +
    +        println!("bottom left rotated around x and y axis {:?}", rotated);
    +
    +        state.camera.set_pitch(Deg(30.0));
    +        //state.camera.set_yaw(Deg(-30.0));
    +
    +        // TODO: verify far distance plane calculation
    +    }
    +}
    +
    \ No newline at end of file diff --git a/docs/api/src/maplibre/vector/request_system.rs.html b/docs/api/src/maplibre/vector/request_system.rs.html index 3c518c70..0cc861cc 100644 --- a/docs/api/src/maplibre/vector/request_system.rs.html +++ b/docs/api/src/maplibre/vector/request_system.rs.html @@ -166,6 +166,8 @@ 166 167 168 +169 +170
    //! Requests tiles which are currently in view
     
     use std::{borrow::Cow, collections::HashSet, marker::PhantomData, rc::Rc};
    @@ -178,6 +180,7 @@
             source_type::{SourceType, TessellateSource},
         },
         kernel::Kernel,
    +    render::tile_view_pattern::DEFAULT_TILE_SIZE,
         style::layer::LayerPaint,
         tcs::system::System,
         vector::{
    @@ -216,7 +219,8 @@
             }: &mut MapContext,
         ) {
             let _tiles = &mut world.tiles;
    -        let view_region = view_state.create_view_region();
    +        let view_region =
    +            view_state.create_view_region(view_state.zoom().zoom_level(DEFAULT_TILE_SIZE));
     
             if view_state.did_camera_change() || view_state.did_zoom_change() {
                 if let Some(view_region) = &view_region {
    diff --git a/docs/api/src/maplibre/vector/upload_system.rs.html b/docs/api/src/maplibre/vector/upload_system.rs.html
    index acf99a32..287eee6f 100644
    --- a/docs/api/src/maplibre/vector/upload_system.rs.html
    +++ b/docs/api/src/maplibre/vector/upload_system.rs.html
    @@ -190,6 +190,8 @@
     190
     191
     192
    +193
    +194
     
    //! Uploads data to the GPU which is needed for rendering.
     
     use std::iter;
    @@ -200,6 +202,7 @@
         render::{
             eventually::{Eventually, Eventually::Initialized},
             shaders::{ShaderFeatureStyle, ShaderLayerMetadata, Vec4f32},
    +        tile_view_pattern::DEFAULT_TILE_SIZE,
             Renderer,
         },
         style::Style,
    @@ -225,7 +228,8 @@
             return;
         };
     
    -    let view_region = view_state.create_view_region();
    +    let view_region =
    +        view_state.create_view_region(view_state.zoom().zoom_level(DEFAULT_TILE_SIZE));
     
         if let Some(view_region) = &view_region {
             upload_tesselated_layer(
    diff --git a/docs/api/src/maplibre/view_state.rs.html b/docs/api/src/maplibre/view_state.rs.html
    deleted file mode 100644
    index 6d4f50f0..00000000
    --- a/docs/api/src/maplibre/view_state.rs.html
    +++ /dev/null
    @@ -1,235 +0,0 @@
    -view_state.rs - source
    1
    -2
    -3
    -4
    -5
    -6
    -7
    -8
    -9
    -10
    -11
    -12
    -13
    -14
    -15
    -16
    -17
    -18
    -19
    -20
    -21
    -22
    -23
    -24
    -25
    -26
    -27
    -28
    -29
    -30
    -31
    -32
    -33
    -34
    -35
    -36
    -37
    -38
    -39
    -40
    -41
    -42
    -43
    -44
    -45
    -46
    -47
    -48
    -49
    -50
    -51
    -52
    -53
    -54
    -55
    -56
    -57
    -58
    -59
    -60
    -61
    -62
    -63
    -64
    -65
    -66
    -67
    -68
    -69
    -70
    -71
    -72
    -73
    -74
    -75
    -76
    -77
    -78
    -79
    -80
    -81
    -82
    -83
    -84
    -85
    -86
    -87
    -88
    -89
    -90
    -91
    -92
    -93
    -94
    -95
    -96
    -97
    -98
    -99
    -100
    -101
    -102
    -103
    -104
    -105
    -106
    -107
    -108
    -109
    -110
    -111
    -112
    -113
    -114
    -115
    -116
    -117
    -
    use std::ops::{Deref, DerefMut};
    -
    -use cgmath::Angle;
    -
    -use crate::{
    -    coords::{ViewRegion, WorldCoords, Zoom, ZoomLevel, TILE_SIZE},
    -    render::camera::{Camera, Perspective, ViewProjection},
    -    util::ChangeObserver,
    -    window::WindowSize,
    -};
    -
    -const VIEW_REGION_PADDING: i32 = 1;
    -
    -/// Stores the camera configuration.
    -pub struct ViewState {
    -    zoom: ChangeObserver<Zoom>,
    -    camera: ChangeObserver<Camera>,
    -    perspective: Perspective,
    -}
    -
    -impl ViewState {
    -    pub fn new<F: Into<cgmath::Rad<f64>>, P: Into<cgmath::Deg<f64>>>(
    -        window_size: WindowSize,
    -        position: WorldCoords,
    -        zoom: Zoom,
    -        pitch: P,
    -        fovy: F,
    -    ) -> Self {
    -        let tile_center = TILE_SIZE / 2.0;
    -        let fovy = fovy.into();
    -        let height = tile_center / (fovy / 2.0).tan();
    -
    -        let camera = Camera::new(
    -            (position.x, position.y, height),
    -            cgmath::Deg(-90.0),
    -            pitch.into(),
    -            window_size.width(),
    -            window_size.height(),
    -        );
    -
    -        let perspective = Perspective::new(
    -            window_size.width(),
    -            window_size.height(),
    -            cgmath::Deg(110.0),
    -            // in tile.vertex.wgsl we are setting each layer's final `z` in ndc space to `z_index`.
    -            // This means that regardless of the `znear` value all layers will be rendered as part
    -            // of the near plane.
    -            // These values have been selected experimentally:
    -            // https://www.sjbaker.org/steve/omniv/love_your_z_buffer.html
    -            1024.0,
    -            2048.0,
    -        );
    -
    -        Self {
    -            zoom: ChangeObserver::new(zoom),
    -            camera: ChangeObserver::new(camera),
    -            perspective,
    -        }
    -    }
    -
    -    pub fn resize(&mut self, width: u32, height: u32) {
    -        self.perspective.resize(width, height);
    -        self.camera.resize(width, height);
    -    }
    -
    -    pub fn create_view_region(&self) -> Option<ViewRegion> {
    -        self.camera
    -            .view_region_bounding_box(&self.view_projection().invert())
    -            .map(|bounding_box| {
    -                ViewRegion::new(
    -                    bounding_box,
    -                    VIEW_REGION_PADDING,
    -                    32,
    -                    *self.zoom,
    -                    self.visible_level(),
    -                )
    -            })
    -    }
    -
    -    pub fn view_projection(&self) -> ViewProjection {
    -        self.camera.calc_view_proj(&self.perspective)
    -    }
    -
    -    pub fn visible_level(&self) -> ZoomLevel {
    -        self.zoom.level()
    -    }
    -
    -    pub fn zoom(&self) -> Zoom {
    -        *self.zoom
    -    }
    -
    -    pub fn did_zoom_change(&self) -> bool {
    -        self.zoom.did_change(0.05)
    -    }
    -
    -    pub fn update_zoom(&mut self, new_zoom: Zoom) {
    -        *self.zoom = new_zoom;
    -        log::info!("zoom: {new_zoom}");
    -    }
    -
    -    pub fn camera(&self) -> &Camera {
    -        self.camera.deref()
    -    }
    -
    -    pub fn camera_mut(&mut self) -> &mut Camera {
    -        self.camera.deref_mut()
    -    }
    -
    -    pub fn did_camera_change(&self) -> bool {
    -        self.camera.did_change(0.05)
    -    }
    -
    -    pub fn update_references(&mut self) {
    -        self.camera.update_reference();
    -        self.zoom.update_reference();
    -    }
    -}
    -
    \ No newline at end of file