I]Bmd      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abc None!"&'(+246=JKM  Member x xs or x " xs indicates that x is an element of xs. Unicode flipped alias for  The position of x in the type level set xs./Embodies a type equivalence to ensure that the  points the first element." defghij     defghij(c) Fumiaki Kinoshita 2015BSD3'Fumiaki Kinoshita <fumiexcel@gmail.com> experimental non-portableNone!"&'(*+234=HJKMThe extensible sum typeChange the wrapper.O(log n) lift a value.O(1) Naive pattern match There is no empty union.!3A traversal that tries to point a specific element.  !kl ! ! !kl(c) Fumiaki Kinoshita 2015BSD3'Fumiaki Kinoshita <fumiexcel@gmail.com> experimental non-portableNone!"&'(*+246=HJKM"4Guarantees the all elements satisfies the predicate.$SGiven a function that maps types to values, we can "collect" entities all you want.&%Composition for a class and a wrapper'The extensible product type*O(1) Extract the head element.+O(n)! Extract the tail of the product.,)Split a product to the head and the tail.-O(log n) Add an element to a product..:Transform every elements in a union, preserving the order./m for heterogeneous product0n for heterogeneous product1Combine all elements.2Traverse all elements.3O(log n) Pick up an elemtnt.4O(log n) A lens for a specific element.5O(log n)( A lens for a value in a known position.'"#$%opqrstuvw&'()*+,-./01234x5yz{|}~"#$%&'()*+,-./012345')(-*+,./012345$%"#&"#$%opqrstuvw&')(*+,-./01234x5yz{|}~-(c) Fumiaki Kinoshita 2015BSD3'Fumiaki Kinoshita <fumiexcel@gmail.com> experimental non-portableNone'+=JK61Turn a wrapper type into one clause that returns a.9$Applies a function to the result of 6.:O(log n) Perform pattern matching.;Flipped :6789:;6789:;678:9;6789:;;(c) Fumiaki Kinoshita 2015BSD3'Fumiaki Kinoshita <fumiexcel@gmail.com> experimental non-portableNone(+-./JK <Wrap a type that has a kind * -> *.A Just a value.DO(log n) Add a plain value to a product.EExtract a plain value.FEmbed a plain value.G)Naive pattern matching for a plain value.HO(log n)' A lens for a plain value in a product.IO(log n)' A lens for a plain value in a product.J#Prepend a clause for a plain value.K+Prepend a clause for a parameterized value.<=>?@ABCDEFGHIJK<=>?@ABCDEFGHIJKABC@?DEFGHIJ<=>K<=>?@ABCDEFGHIJKDJK(c) Fumiaki Kinoshita 2015BSD3'Fumiaki Kinoshita <fumiexcel@gmail.com> experimental non-portableNone(+HJKMLFlipped Whttp://hackage.haskell.org/package/kan-extensions-4.1.0.1/docs/Data-Functor-Yoneda.htmlYonedaO)A much more efficient representation for Union of s.RO(log n) Embed a functor.SFuse L" to retract a substantial functor.T for the content.UPrepend a clause for 6 (L x) as well as (<?!).V fast fmap LMNOPQRSTUV LMNOPQRSTU OPQVRLMNSTULMNOPQRSTUVU(c) Fumiaki Kinoshita 2015BSD3'Fumiaki Kinoshita <fumiexcel@gmail.com> experimental non-portableNone !"(+234HJKMWFlipped Qhttp://hackage.haskell.org/package/kan-extensions/docs/Data-Functor-Coyoneda.htmlCoyonedaY)A much more efficient representation for Y of s.\O(log n) Embed a value.] for the content.^Prepend a clause for 6 (W x) as well as (<?!). fast fmap WXYZ[\]^WXYZ[\]^^YZ[\WX]WXYZ[\]^^(c) Fumiaki Kinoshita 2015BSD3'Fumiaki Kinoshita <fumiexcel@gmail.com> experimental non-portableNone&+3JKM_ys contains xs`Unicode alias for _a'Reify the inclusion of type level sets.b O(m log n) Select some elements.cO(log n) Embed to a larger union._`abc_`abc`_abc_`abc (c) Fumiaki Kinoshita 2015BSD3'Fumiaki Kinoshita <fumiexcel@gmail.com> experimental non-portableNone+JK<  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJK_`abc      !"#$%&'()*+,-./0123456789:;<=>?@@ABCDEEFGHIIJKLMNOPQRSSTUUVWXYZ[\\]]V^_`abcdefghijklmnopnoqrrsttuvvwxyz{|}~nnextensible-0.2.2Data.Extensible.InternalData.Extensible.SumData.Extensible.ProductData.Extensible.MatchData.Extensible.PlainData.Extensible.LeagueData.Extensible.UnionData.Extensible.InclusionData.ExtensibleSuccLookupRecordtheIntNatNotFoundSDNatDNatZeroTailHalfMember membership∈NavNavRNavLHerePositionord runPositioncomparePositionnavigateherenavLnavR lemmaHalfTail:|UnionAthoistembed<:|exhaustpickedForall generateForGenerategenerate ClassComp:*TreeNilhheadhtailhuncons<:*hmaphzipWith hzipWith3hfoldMap htraversehlookupsectorsectorAtMatchrunMatchmapMatchmatchcaseOfK1getK1OneOfAllOfK0getK0<%pluckbury<%|recordrecordAt