{p      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ (c) Fumiaki Kinoshita 2015BSD3'Fumiaki Kinoshita <fumiexcel@gmail.com> experimental non-portableNone!"&'(+-./234=HJKM Poly-kinded Maybe 1Turn a wrapper type into one clause that returns a.Poly-kinded Const Just a value. % :: Lens' s a -> (a -> a) -> (s -> s) % :: Lens' s a -> (a -> r) -> (s -> r) % :: Lens' s a -> (a -> a) -> (s -> s) Destruct . Apply a function to its content.      (c) Fumiaki Kinoshita 2015BSD3'Fumiaki Kinoshita <fumiexcel@gmail.com> experimental non-portableNone!"&'(+2346=HJKM -.A type sugar to make type error more readable...A type sugar to make type error more readable./.A type sugar to make type error more readable.0 Member x xs or x " xs indicates that x is an element of xs.2Unicode flipped alias for 07The position of x in the type level set xs.8 Generates a 72 that corresponds to the given ordinal (0-origin).9/Embodies a type equivalence to ensure that the 7 points the first element.@GHC can't prove this/ !"#$%&'()*+,-./0123456789:;<=>?@A6 !"#$%&'()*+,-./0123456789:;<=>?@A%79:83654;<=>?012&)('$%#"!+*@A ,/.-& !"#$%&)('*+,-./0123654789:;<=>?@ANone!"&'(+234=HJKMBCDEFBCDEFBDCEFBDCEFC(c) Fumiaki Kinoshita 2015BSD3'Fumiaki Kinoshita <fumiexcel@gmail.com> experimental non-portableNone!"&'(*+234=HJKMGThe extensible sum typeIChange the wrapper.JO(log n) lift a value.KO(1) Naive pattern matchLThere is no empty union.M3A traversal that tries to point a specific element.GHIJKLMGHIJKLMGHIJKLMGHIJKLMK(c) Fumiaki Kinoshita 2015BSD3'Fumiaki Kinoshita <fumiexcel@gmail.com> experimental non-portableNone!"&'(*+2346=HJKMN4Guarantees the all elements satisfies the predicate.OO(n) Analogous to Q!, but it also supplies a context c x for every elements in xs.PSGiven a function that maps types to values, we can "collect" entities all you want.QO(n)- generates a product with the given function.RThe extensible product typeUO(1) Extract the head element.VO(n)6 Extract the tail of the product. FIXME: unsafeCoerceW)Split a product to the head and the tail.XAn alias for (Y).YO(log n) Add an element to a product.Z<Transform every elements in a product, preserving the order.[<Transform every elements in a product, preserving the order.\Combine products.] for heterogeneous product^ for heterogeneous product_Combine all elements.`Traverse all elements.aO(log n) Pick up an elemtnt.bZ with its indices.cO(log n) A lens for a specific element.dO(log n)( A lens for a value in a known position.eTurn a product into B.fBuild a product from B.NOPQRSTUVWXYZ[\]^_`abcdefNOPQRSTUVWXYZ[\]^_`abcdefRTSYX\UVWZ[]^_`bacdPQNOfeNOPQRTSUVWXYZ[\]^_`abcdefXY\None!"&'(+2346=HJKMg%Composition for a class and a wrapperghijklmnopqrstuvwxy ghijklmnopqmnopijklqyxwvutshgrghijklmnopqrstuvwxy(c) Fumiaki Kinoshita 2015BSD3'Fumiaki Kinoshita <fumiexcel@gmail.com> experimental non-portableNone!"&'(+234=HJKM zWrap a type that has a kind * -> *.}Alias for plain sums~Alias for plain productsO(log n) Add a plain value to a product.Extract a plain value.Embed a plain value.)Naive pattern matching for a plain value.O(log n)' A lens for a plain value in a product.O(log n)' A lens for a plain value in a product.#Prepend a clause for a plain value.+Prepend a clause for a parameterized value. z{|}~z{|}~~}z{| z{|}~(c) Fumiaki Kinoshita 2015BSD3'Fumiaki Kinoshita <fumiexcel@gmail.com> experimental non-portableNone!"&'(+234=HJKMA lens for a specific clause.$Applies a function to the result of  .O(log n) Perform pattern matching.Flipped    (c) Fumiaki Kinoshita 2015BSD3'Fumiaki Kinoshita <fumiexcel@gmail.com> experimental non-portableNone!"&'(+234=HJKMFlipped Qhttp://hackage.haskell.org/package/kan-extensions/docs/Data-Functor-Coyoneda.htmlCoyoneda A union of * -> * types.O(log n) Embed a value. for the content.Prepend a clause for   ( x) as well as (<?!). fast fmap  (c) Fumiaki Kinoshita 2015BSD3'Fumiaki Kinoshita <fumiexcel@gmail.com> experimental non-portableNone!"&'(+234=HJKMFlipped Whttp://hackage.haskell.org/package/kan-extensions-4.1.0.1/docs/Data-Functor-Yoneda.htmlYoneda)A much more efficient representation for Union of s.O(log n) Embed a functor.Fuse " to retract a substantial functor. for the content.Prepend a clause for   ( x) as well as (<?!). fast fmap  (c) Fumiaki Kinoshita 2015BSD3'Fumiaki Kinoshita <fumiexcel@gmail.com> experimental non-portableNone!"&'(+234=HJKMys contains xsUnicode alias for 'Reify the inclusion of type level sets. O(m log n) Select some elements.O(log n) Embed to a larger union.The inverse of .,Extend a product and fill missing fields by .)Narrow the range of the sum, if possible. -./01278979201/.-8 (c) Fumiaki Kinoshita 2015BSD3'Fumiaki Kinoshita <fumiexcel@gmail.com> experimental non-portableNone!"&'(+23468=HJKM "An internal class to characterize +A ghostly type which reifies the field name4When you see this type as an argument, it expects a A. This type is used to resolve the name of the field internally. FieldLens s- is a type of lens that points a field named s.  s = (s " xs) => Lens' ( xs) ( s) 1The type of records which contain several fields.The type of fields.%Associates names with concrete types.#Annotate a value by the field name.Generate a field.  "foo" [t|Int|] defines: =type instance FieldValue "foo" = Int foo :: FieldLens "foo" The yielding field is a  Jhttp://hackage.haskell.org/package/lens/docs/Control-Lens-Lens.html#t:LensLens. Shows in field @= value" style instead of the derived one.(-./012789RTXYYXRT  (c) Fumiaki Kinoshita 2015BSD3'Fumiaki Kinoshita <fumiexcel@gmail.com> experimental non-portableNone!"&'(+234=HJKMm -./012789GHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefz{|}~ !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqqrstuvwxyz{|}~                   ?  extensible-0.2.6Data.Extensible.Internal.RigData.Extensible.InternalData.Extensible.Internal.HListData.Extensible.SumData.Extensible.ProductData.Extensible.DictionaryData.Extensible.PlainData.Extensible.MatchData.Extensible.UnionData.Extensible.LeagueData.Extensible.InclusionData.Extensible.RecordData.Extensible MergeList getMergedPairNullableEineNullWrap2unwrap2MatchrunMatchConst' getConst'K0getK0viewviewsovernullable mapNullable$fMonoidMergeList$fShowK0 $fMonadK0$fApplicativeK0MergeConcat++MapMapSuccSuccLookupToInttheIntNatSDNatDNatZeroTailHalfCheck AmbiguousMissing ExpectingMember membership∈NavNavRNavLHerePositionord runPositioncomparePositionnavigateherenavNextnavLnavR lemmaHalfTail lemmaMergingHListHConsHNilmergesplit:|UnionAthoistembed<:|exhaustpickedForall generateForGenerategenerate:*TreeNilhheadhtailhuncons<:*<:hmaphtrans*++*hzipWith hzipWith3hfoldMap htraversehlookup htabulatesectorsectorAttoHList fromHList Instance1 WrapForall WrapMonoid unwrapEmpty unwrapAppendDictOfdictShowdictEqdictOrd dictMonoid$fInstance1kkchx$fOrd:|$fEq:|$fShow:| $fMonoid:*$fOrd:*$fEq:*$fShow:*K1getK1OneOfAllOf<%pluckbury<%|recordrecordAt)