2 .;      !"#$%&'()*+,-./0123456789: SafeDQNone &'DFQTV A constant mapping to type a.  ( a)3 is the type of maps from types to values of type a.^An extensible type family mapping types (as keys) to types of values, parameterized by types x.Map from types t of kind * to values of type Item x t. Whether the map is empty. Empty type map. "Insert an element indexed by type t. "Lookup an element indexed by type t. Map a function on all elements.Traverse the map.   None y  None DFQTVh "Insert an element indexed by type t."Lookup an element indexed by type t. None  None,-<FQSTVh4!All elements except the last one.Last element of a list.Append a type to a list.Type associated with a in d . If the key a/ occurs multiple times, the first one is used.Index of type key a in association list d.Helper to define index functions.Helper to define cons functions.Helper to define snoc functions. ;<=>?None ,-<FSTVh!IntMap-backed type-map.# Empty vector.$"Access an element indexed by type a. O(log n)If a is associated to b in the type list d: $ @a (v :: ! d) :: b glet v = (0 :: Int) <| True <| "Hello" <| empty :: TypeMap '[ '("a", Int), '("b", Bool), '("c", String)] index @"c" v"Hello"%*Add an element to the beginning of a map. O(log n)& Synonym of %.'%Add an element to the end of a list. O(log n)( Synonym of '.  !"#$%&'( !" #$%&'( !"%5&5'5(5None ,-<FSTVh#`)List-backed type-map.+ Empty list.,&Access an element indexed by its type a. O(n)If a is associated to b in the type list d: , @a (l :: ) d) :: b hlet l = (0 :: Int) <| True <| "Hello" <| empty :: TypeList '[ '("a", Int), '("b", Bool), '("c", String)] index @"c" l"Hello"-+Add an element to the beginning of a list. O(1). Synonym of -./%Add an element to the end of a list. O(n)0 Synonym of /.)*+,-./0)*+,-./0)*-5.5/505None ,-<FSTVh+1Vector-backed type-map.3 Empty vector.4"Access an element indexed by type a. O(1)If a is associated to b in the type list d: 4 @a (v :: 1 d) :: b jlet v = (0 :: Int) <| True <| "Hello" <| empty :: TypeVector '[ '("a", Int), '("b", Bool), '("c", String)] index @"c" v"Hello"5-Add an element to the beginning of a vector. O(n)6 Synonym of 5.7'Add an element to the end of a vector. O(n)8 Synonym of 7.12345678123456781255657585None,F,s9 Convert from a list to a vector.)+,-./09)+,-./09 None,!#$%&'(!#$%&'( None-[None.;: Convert from a vector to a list.1345678:1345678:@ !"#$%&&'()*+,,'()*+--'()*+./012345067089089:'type-map-0.1.1.0-Evs1LBtMGZs7N3AzjlXzabData.TypeMap.Internal.Dynamic!Data.TypeMap.Internal.Dynamic.AltData.TypeMap.Internal.UnsafeData.TypeMap.Internal.MapData.TypeMap.Internal.ListData.TypeMap.Internal.VectorData.TypeMap.ListData.TypeMap.VectorData.TypeMap.CheckData.TypeMap.DynamicData.TypeMap.Dynamic.AltData.TypeMap.MapData.TypeMap.StaticX ItemKleisliItemFunUnTypedTypedOfTypeItemTypeMapnullemptyinsertlookupmaptraverse withTypeRepTyped_InitLastSnocLookupIndex unsafeIndex unsafeCons unsafeSnocTypeMap'indexcons<|snoc|>TypeList TypeVectortoVectortoListbase GHC.TypeNatsKnownNatghc-prim GHC.TypesAny Unsafe.Coerce unsafeCoerce Data.ProxyProxy