-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | A framework for generating singleton types -- -- This library generates singleton types, promoted functions, and -- singleton functions using Template Haskell. It is useful for -- programmers who wish to use dependently typed programming techniques. -- The library was originally presented in Dependently Typed -- Programming with Singletons, published at the Haskell Symposium, -- 2012. -- (http://www.cis.upenn.edu/~eir/papers/2012/singletons/paper.pdf) -- Version 1.0 and onwards works a lot harder to promote functions. See -- the paper published at Haskell Symposium, 2014: -- http://www.cis.upenn.edu/~eir/papers/2014/promotion/promotion.pdf. @package singletons @version 2.0.1 module Data.Singletons.SuppressUnusedWarnings -- | This class (which users should never see) is to be instantiated in -- order to use an otherwise-unused data constructor, such as the -- "kind-inference" data constructor for defunctionalization symbols. class SuppressUnusedWarnings (t :: k) suppressUnusedWarnings :: SuppressUnusedWarnings t => Proxy t -> () -- | This module exports the basic definitions to use singletons. For -- routine use, consider importing Prelude, which exports -- constructors for singletons based on types in the Prelude. -- -- You may also want to read -- http://www.cis.upenn.edu/~eir/packages/singletons/README.html -- and the original paper presenting this library, available at -- http://www.cis.upenn.edu/~eir/papers/2012/singletons/paper.pdf. module Data.Singletons -- | The singleton kind-indexed data family. -- | A SingI constraint is essentially an implicitly-passed -- singleton. If you need to satisfy this constraint with an explicit -- singleton, please see withSingI. class SingI (a :: k) -- | Produce the singleton explicitly. You will likely need the -- ScopedTypeVariables extension to use this method the way you -- want. sing :: SingI a => Sing a -- | The SingKind class is essentially a kind class. It -- classifies all kinds for which singletons are defined. The class -- supports converting between a singleton type and the base (unrefined) -- type which it is built from. class (kparam ~ KProxy) => SingKind (kparam :: KProxy k) where type family DemoteRep kparam :: * -- | Convert a singleton to its unrefined version. fromSing :: SingKind kparam => Sing (a :: k) -> DemoteRep kparam -- | Convert an unrefined type to an existentially-quantified singleton -- type. toSing :: SingKind kparam => DemoteRep kparam -> SomeSing kparam -- | Convenient synonym to refer to the kind of a type variable: type -- KindOf (a :: k) = ('KProxy :: KProxy k) type KindOf (a :: k) = (KProxy :: KProxy k) -- | Convenient abbreviation for DemoteRep: type Demote (a :: k) -- = DemoteRep ('KProxy :: KProxy k) type Demote (a :: k) = DemoteRep (KProxy :: KProxy k) -- | A SingInstance wraps up a SingI instance for explicit -- handling. data SingInstance (a :: k) SingInstance :: SingInstance a -- | An existentially-quantified singleton. This type is useful when -- you want a singleton type, but there is no way of knowing, at -- compile-time, what the type index will be. To make use of this type, -- you will generally have to use a pattern-match: -- --
-- foo :: Bool -> ...
-- foo b = case toSing b of
-- SomeSing sb -> {- fancy dependently-typed code with sb -}
--
--
-- An example like the one above may be easier to write using
-- withSomeSing.
data SomeSing (kproxy :: KProxy k)
SomeSing :: Sing (a :: k) -> SomeSing (KProxy :: KProxy k)
-- | Get an implicit singleton (a SingI instance) from an explicit
-- one.
singInstance :: Sing a -> SingInstance a
-- | Convenience function for creating a context with an implicit singleton
-- available.
withSingI :: Sing n -> (SingI n => r) -> r
-- | Convert a normal datatype (like Bool) to a singleton for that
-- datatype, passing it into a continuation.
withSomeSing :: SingKind (KProxy :: KProxy k) => DemoteRep (KProxy :: KProxy k) -> (forall (a :: k). Sing a -> r) -> r
-- | Allows creation of a singleton when a proxy is at hand.
singByProxy :: SingI a => proxy a -> Sing a
-- | Allows creation of a singleton when a proxy# is at hand.
singByProxy# :: SingI a => Proxy# a -> Sing a
-- | A convenience function useful when we need to name a singleton value
-- multiple times. Without this function, each use of sing could
-- potentially refer to a different singleton, and one has to use type
-- signatures (often with ScopedTypeVariables) to ensure that
-- they are the same.
withSing :: SingI a => (Sing a -> b) -> b
-- | A convenience function that names a singleton satisfying a certain
-- property. If the singleton does not satisfy the property, then the
-- function returns Nothing. The property is expressed in terms of
-- the underlying representation of the singleton.
singThat :: (SingKind (KProxy :: KProxy k), SingI a) => (Demote a -> Bool) -> Maybe (Sing a)
-- | Representation of the kind of a type-level function. The difference
-- between term-level arrows and this type-level arrow is that at the
-- term level applications can be unsaturated, whereas at the type level
-- all applications have to be fully saturated.
data TyFun :: * -> * -> *
-- | Wrapper for converting the normal type-level arrow into a
-- TyFun. For example, given:
--
-- -- data Nat = Zero | Succ Nat -- type family Map (a :: TyFun a b -> *) (a :: [a]) :: [b] -- Map f '[] = '[] -- Map f (x ': xs) = Apply f x ': Map f xs ---- -- We can write: -- --
-- Map (TyCon1 Succ) [Zero, Succ Zero] --data TyCon1 :: (k1 -> k2) -> (TyFun k1 k2) -> * -- | Similar to TyCon1, but for two-parameter type constructors. data TyCon2 :: (k1 -> k2 -> k3) -> TyFun k1 (TyFun k2 k3 -> *) -> * data TyCon3 :: (k1 -> k2 -> k3 -> k4) -> TyFun k1 (TyFun k2 (TyFun k3 k4 -> *) -> *) -> * data TyCon4 :: (k1 -> k2 -> k3 -> k4 -> k5) -> TyFun k1 (TyFun k2 (TyFun k3 (TyFun k4 k5 -> *) -> *) -> *) -> * data TyCon5 :: (k1 -> k2 -> k3 -> k4 -> k5 -> k6) -> TyFun k1 (TyFun k2 (TyFun k3 (TyFun k4 (TyFun k5 k6 -> *) -> *) -> *) -> *) -> * data TyCon6 :: (k1 -> k2 -> k3 -> k4 -> k5 -> k6 -> k7) -> TyFun k1 (TyFun k2 (TyFun k3 (TyFun k4 (TyFun k5 (TyFun k6 k7 -> *) -> *) -> *) -> *) -> *) -> * data TyCon7 :: (k1 -> k2 -> k3 -> k4 -> k5 -> k6 -> k7 -> k8) -> TyFun k1 (TyFun k2 (TyFun k3 (TyFun k4 (TyFun k5 (TyFun k6 (TyFun k7 k8 -> *) -> *) -> *) -> *) -> *) -> *) -> * data TyCon8 :: (k1 -> k2 -> k3 -> k4 -> k5 -> k6 -> k7 -> k8 -> k9) -> TyFun k1 (TyFun k2 (TyFun k3 (TyFun k4 (TyFun k5 (TyFun k6 (TyFun k7 (TyFun k8 k9 -> *) -> *) -> *) -> *) -> *) -> *) -> *) -> * -- | Type level function application -- | An infix synonym for Apply type (@@) a b = Apply a b -- | Use this function when passing a function on singletons as a -- higher-order function. You will often need an explicit type annotation -- to get this to work. For example: -- --
-- falses = sMap (singFun1 (Proxy :: Proxy NotSym0) sNot) -- (STrue `SCons` STrue `SCons` SNil) ---- -- There are a family of singFun... functions, keyed by the -- number of parameters of the function. singFun1 :: Proxy f -> SingFunction1 f -> Sing f singFun2 :: Proxy f -> SingFunction2 f -> Sing f singFun3 :: Proxy f -> SingFunction3 f -> Sing f singFun4 :: Proxy f -> SingFunction4 f -> Sing f singFun5 :: Proxy f -> SingFunction5 f -> Sing f singFun6 :: Proxy f -> SingFunction6 f -> Sing f singFun7 :: Proxy f -> SingFunction7 f -> Sing f singFun8 :: Proxy f -> SingFunction8 f -> Sing f -- | This is the inverse of singFun1, and likewise for the other -- unSingFun... functions. unSingFun1 :: Proxy f -> Sing f -> SingFunction1 f unSingFun2 :: Proxy f -> Sing f -> SingFunction2 f unSingFun3 :: Proxy f -> Sing f -> SingFunction3 f unSingFun4 :: Proxy f -> Sing f -> SingFunction4 f unSingFun5 :: Proxy f -> Sing f -> SingFunction5 f unSingFun6 :: Proxy f -> Sing f -> SingFunction6 f unSingFun7 :: Proxy f -> Sing f -> SingFunction7 f unSingFun8 :: Proxy f -> Sing f -> SingFunction8 f type SingFunction1 f = forall t. Sing t -> Sing (f @@ t) type SingFunction2 f = forall t. Sing t -> SingFunction1 (f @@ t) type SingFunction3 f = forall t. Sing t -> SingFunction2 (f @@ t) type SingFunction4 f = forall t. Sing t -> SingFunction3 (f @@ t) type SingFunction5 f = forall t. Sing t -> SingFunction4 (f @@ t) type SingFunction6 f = forall t. Sing t -> SingFunction5 (f @@ t) type SingFunction7 f = forall t. Sing t -> SingFunction6 (f @@ t) type SingFunction8 f = forall t. Sing t -> SingFunction7 (f @@ t) -- | GHC 7.8 sometimes warns about incomplete pattern matches when no such -- patterns are possible, due to GADT constraints. See the bug report at -- https://ghc.haskell.org/trac/ghc/ticket/3927. In such cases, -- it's useful to have a catch-all pattern that then has bugInGHC -- as its right-hand side. bugInGHC :: a -- | A concrete, promotable proxy type, for use at the kind level There are -- no instances for this because it is intended at the kind level only data KProxy t :: * -> * KProxy :: KProxy t instance (Data.Singletons.SingKind 'Data.Proxy.KProxy, Data.Singletons.SingKind 'Data.Proxy.KProxy) => Data.Singletons.SingKind 'Data.Proxy.KProxy -- | Defines the class SDecide, allowing for decidable equality over -- singletons. module Data.Singletons.Decide -- | Members of the SDecide "kind" class support decidable equality. -- Instances of this class are generated alongside singleton definitions -- for datatypes that derive an Eq instance. class (kparam ~ KProxy) => SDecide (kparam :: KProxy k) -- | Compute a proof or disproof of equality, given two singletons. (%~) :: SDecide kparam => Sing a -> Sing b -> Decision (a :~: b) -- | Propositional equality. If a :~: b is inhabited by some -- terminating value, then the type a is the same as the type -- b. To use this equality in practice, pattern-match on the -- a :~: b to get out the Refl constructor; in the body -- of the pattern-match, the compiler knows that a ~ b. data (:~:) (a :: k) (b :: k) :: k -> k -> * Refl :: (:~:) k b b -- | Uninhabited data type data Void :: * -- | Because we can never create a value of type Void, a function -- that type-checks at a -> Void shows that objects of type -- a can never exist. Thus, we say that a is -- Refuted type Refuted a = a -> Void -- | A Decision about a type a is either a proof of -- existence or a proof that a cannot exist. data Decision a -- | Witness for a Proved :: a -> Decision a -- | Proof that no a exists Disproved :: (Refuted a) -> Decision a instance Data.Singletons.Decide.SDecide 'Data.Proxy.KProxy => Data.Type.Equality.TestEquality Data.Singletons.Sing -- | Defines functions and datatypes relating to the singleton for -- Bool, including a singletons version of all the definitions in -- Data.Bool. -- -- Because many of these definitions are produced by Template Haskell, it -- is not possible to create proper Haddock documentation. Please look up -- the corresponding operation in Data.Bool. Also, please excuse -- the apparent repeated variable names. This is due to an interaction -- between Template Haskell and Haddock. module Data.Singletons.Prelude.Bool -- | The singleton kind-indexed data family. type SBool = (Sing :: Bool -> *) -- | Type-level If. If True a b ==> a; If -- False a b ==> b -- | Conditional over singletons sIf :: Sing a -> Sing b -> Sing c -> Sing (If a b c) sNot :: Sing t_aFXd -> Sing (Apply NotSym0 t_aFXd :: Bool) (%:&&) :: Sing t_aFXg -> Sing t_aFXh -> Sing (Apply (Apply (:&&$) t_aFXg) t_aFXh :: Bool) (%:||) :: Sing t_aFXe -> Sing t_aFXf -> Sing (Apply (Apply (:||$) t_aFXe) t_aFXf :: Bool) bool_ :: a_aFKx -> a_aFKx -> Bool -> a_aFKx sBool_ :: Sing t_aFKV -> Sing t_aFKW -> Sing t_aFKX -> Sing (Apply (Apply (Apply Bool_Sym0 t_aFKV) t_aFKW) t_aFKX :: a_aFKx) sOtherwise :: Sing (OtherwiseSym0 :: Bool) type TrueSym0 = True type FalseSym0 = False data NotSym0 (l_aFWK :: TyFun Bool Bool) type NotSym1 (t_aFWJ :: Bool) = Not t_aFWJ data (:&&$) (l_aFX2 :: TyFun Bool (TyFun Bool Bool -> *)) data (:&&$$) (l_aFX5 :: Bool) (l_aFX4 :: TyFun Bool Bool) type (:&&$$$) (t_aFX0 :: Bool) (t_aFX1 :: Bool) = (:&&) t_aFX0 t_aFX1 data (:||$) (l_aFWP :: TyFun Bool (TyFun Bool Bool -> *)) data (:||$$) (l_aFWS :: Bool) (l_aFWR :: TyFun Bool Bool) type (:||$$$) (t_aFWN :: Bool) (t_aFWO :: Bool) = (:||) t_aFWN t_aFWO data Bool_Sym0 (l_aFKF :: TyFun a_aFKx (TyFun a_aFKx (TyFun Bool a_aFKx -> *) -> *)) data Bool_Sym1 (l_aFKI :: a_aFKx) (l_aFKH :: TyFun a_aFKx (TyFun Bool a_aFKx -> *)) data Bool_Sym2 (l_aFKL :: a_aFKx) (l_aFKM :: a_aFKx) (l_aFKK :: TyFun Bool a_aFKx) type Bool_Sym3 (t_aFKC :: a_aFKx) (t_aFKD :: a_aFKx) (t_aFKE :: Bool) = Bool_ t_aFKC t_aFKD t_aFKE type OtherwiseSym0 = Otherwise instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Bool.NotSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings (Data.Singletons.Prelude.Bool.:||$$) instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings (Data.Singletons.Prelude.Bool.:||$) instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings (Data.Singletons.Prelude.Bool.:&&$$) instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings (Data.Singletons.Prelude.Bool.:&&$) instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Bool.Bool_Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Bool.Bool_Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Bool.Bool_Sym0 -- | Defines the SEq singleton version of the Eq type class. module Data.Singletons.Prelude.Eq -- | The promoted analogue of Eq. If you supply no definition for -- '(:==)', then it defaults to a use of '(==)', from -- Data.Type.Equality. class kproxy ~ KProxy => PEq (kproxy :: KProxy a) where type family (:==) (x :: a) (y :: a) :: Bool type family (:/=) (x :: a) (y :: a) :: Bool (:==) (x :: a) (y :: a) = x == y (:/=) (x :: a) (y :: a) = Not (x :== y) -- | The singleton analogue of Eq. Unlike the definition for -- Eq, it is required that instances define a body for '(%:==)'. -- You may also supply a body for '(%:/=)'. class (kparam ~ KProxy) => SEq (kparam :: KProxy k) where a %:/= b = sNot (a %:== b) -- | Boolean equality on singletons (%:==) :: SEq kparam => Sing a -> Sing b -> Sing (a :== b) -- | Boolean disequality on singletons (%:/=) :: SEq kparam => Sing a -> Sing b -> Sing (a :/= b) data (:==$) (l_aGuk :: TyFun a_aGtw (TyFun a_aGtw Bool -> *)) data (:==$$) (l_aGun :: a_aGtw) (l_aGum :: TyFun a_aGtw Bool) type (:==$$$) (t_aGui :: a_aGtw) (t_aGuj :: a_aGtw) = (:==) t_aGui t_aGuj data (:/=$) (l_aGur :: TyFun a_aGtw (TyFun a_aGtw Bool -> *)) data (:/=$$) (l_aGuu :: a_aGtw) (l_aGut :: TyFun a_aGtw Bool) type (:/=$$$) (t_aGup :: a_aGtw) (t_aGuq :: a_aGtw) = (:/=) t_aGup t_aGuq instance Data.Singletons.Prelude.Eq.SEq 'Data.Proxy.KProxy => Data.Singletons.Prelude.Eq.SEq 'Data.Proxy.KProxy instance Data.Singletons.Prelude.Eq.PEq 'Data.Proxy.KProxy instance Data.Singletons.Prelude.Eq.SEq 'Data.Proxy.KProxy => Data.Singletons.Prelude.Eq.SEq 'Data.Proxy.KProxy instance Data.Singletons.Prelude.Eq.PEq 'Data.Proxy.KProxy instance (Data.Singletons.Prelude.Eq.SEq 'Data.Proxy.KProxy, Data.Singletons.Prelude.Eq.SEq 'Data.Proxy.KProxy) => Data.Singletons.Prelude.Eq.SEq 'Data.Proxy.KProxy instance Data.Singletons.Prelude.Eq.PEq 'Data.Proxy.KProxy instance (Data.Singletons.Prelude.Eq.SEq 'Data.Proxy.KProxy, Data.Singletons.Prelude.Eq.SEq 'Data.Proxy.KProxy) => Data.Singletons.Prelude.Eq.SEq 'Data.Proxy.KProxy instance Data.Singletons.Prelude.Eq.PEq 'Data.Proxy.KProxy instance (Data.Singletons.Prelude.Eq.SEq 'Data.Proxy.KProxy, Data.Singletons.Prelude.Eq.SEq 'Data.Proxy.KProxy, Data.Singletons.Prelude.Eq.SEq 'Data.Proxy.KProxy) => Data.Singletons.Prelude.Eq.SEq 'Data.Proxy.KProxy instance Data.Singletons.Prelude.Eq.PEq 'Data.Proxy.KProxy instance (Data.Singletons.Prelude.Eq.SEq 'Data.Proxy.KProxy, Data.Singletons.Prelude.Eq.SEq 'Data.Proxy.KProxy, Data.Singletons.Prelude.Eq.SEq 'Data.Proxy.KProxy, Data.Singletons.Prelude.Eq.SEq 'Data.Proxy.KProxy) => Data.Singletons.Prelude.Eq.SEq 'Data.Proxy.KProxy instance Data.Singletons.Prelude.Eq.PEq 'Data.Proxy.KProxy instance (Data.Singletons.Prelude.Eq.SEq 'Data.Proxy.KProxy, Data.Singletons.Prelude.Eq.SEq 'Data.Proxy.KProxy, Data.Singletons.Prelude.Eq.SEq 'Data.Proxy.KProxy, Data.Singletons.Prelude.Eq.SEq 'Data.Proxy.KProxy, Data.Singletons.Prelude.Eq.SEq 'Data.Proxy.KProxy) => Data.Singletons.Prelude.Eq.SEq 'Data.Proxy.KProxy instance Data.Singletons.Prelude.Eq.PEq 'Data.Proxy.KProxy instance (Data.Singletons.Prelude.Eq.SEq 'Data.Proxy.KProxy, Data.Singletons.Prelude.Eq.SEq 'Data.Proxy.KProxy, Data.Singletons.Prelude.Eq.SEq 'Data.Proxy.KProxy, Data.Singletons.Prelude.Eq.SEq 'Data.Proxy.KProxy, Data.Singletons.Prelude.Eq.SEq 'Data.Proxy.KProxy, Data.Singletons.Prelude.Eq.SEq 'Data.Proxy.KProxy) => Data.Singletons.Prelude.Eq.SEq 'Data.Proxy.KProxy instance Data.Singletons.Prelude.Eq.PEq 'Data.Proxy.KProxy instance (Data.Singletons.Prelude.Eq.SEq 'Data.Proxy.KProxy, Data.Singletons.Prelude.Eq.SEq 'Data.Proxy.KProxy, Data.Singletons.Prelude.Eq.SEq 'Data.Proxy.KProxy, Data.Singletons.Prelude.Eq.SEq 'Data.Proxy.KProxy, Data.Singletons.Prelude.Eq.SEq 'Data.Proxy.KProxy, Data.Singletons.Prelude.Eq.SEq 'Data.Proxy.KProxy, Data.Singletons.Prelude.Eq.SEq 'Data.Proxy.KProxy) => Data.Singletons.Prelude.Eq.SEq 'Data.Proxy.KProxy instance Data.Singletons.Prelude.Eq.PEq 'Data.Proxy.KProxy instance Data.Singletons.Prelude.Eq.SEq 'Data.Proxy.KProxy instance Data.Singletons.Prelude.Eq.PEq 'Data.Proxy.KProxy instance Data.Singletons.Prelude.Eq.SEq 'Data.Proxy.KProxy instance Data.Singletons.Prelude.Eq.PEq 'Data.Proxy.KProxy instance Data.Singletons.Prelude.Eq.SEq 'Data.Proxy.KProxy instance Data.Singletons.Prelude.Eq.PEq 'Data.Proxy.KProxy instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings (Data.Singletons.Prelude.Eq.:==$$) instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings (Data.Singletons.Prelude.Eq.:==$) instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings (Data.Singletons.Prelude.Eq.:/=$$) instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings (Data.Singletons.Prelude.Eq.:/=$) -- | This file implements singletonStar, which generates a datatype -- Rep and associated singleton from a list of types. The -- promoted version of Rep is kind * and the Haskell -- types themselves. This is still very experimental, so expect unusual -- results! module Data.Singletons.CustomStar -- | Produce a representation and singleton for the collection of types -- given. -- -- A datatype Rep is created, with one constructor per type in -- the declared universe. When this type is promoted by the singletons -- library, the constructors become full types in *, not just -- promoted data constructors. -- -- For example, -- --
-- $(singletonStar [''Nat, ''Bool, ''Maybe]) ---- -- generates the following: -- --
-- data Rep = Nat | Bool | Maybe Rep deriving (Eq, Show, Read) ---- -- and its singleton. However, because Rep is promoted to -- *, the singleton is perhaps slightly unexpected: -- --
-- data instance Sing (a :: *) where -- SNat :: Sing Nat -- SBool :: Sing Bool -- SMaybe :: SingRep a => Sing a -> Sing (Maybe a) ---- -- The unexpected part is that Nat, Bool, and -- Maybe above are the real Nat, Bool, and -- Maybe, not just promoted data constructors. -- -- Please note that this function is very experimental. Use at -- your own risk. singletonStar :: DsMonad q => [Name] -> q [Dec] -- | Provided promoted definitions related to type-level equality. module Data.Promotion.Prelude.Eq -- | The promoted analogue of Eq. If you supply no definition for -- '(:==)', then it defaults to a use of '(==)', from -- Data.Type.Equality. class kproxy ~ KProxy => PEq (kproxy :: KProxy a) where type family (:==) (x :: a) (y :: a) :: Bool type family (:/=) (x :: a) (y :: a) :: Bool (:==) (x :: a) (y :: a) = x == y (:/=) (x :: a) (y :: a) = Not (x :== y) data (:==$) (l_aGuk :: TyFun a_aGtw (TyFun a_aGtw Bool -> *)) data (:==$$) (l_aGun :: a_aGtw) (l_aGum :: TyFun a_aGtw Bool) type (:==$$$) (t_aGui :: a_aGtw) (t_aGuj :: a_aGtw) = (:==) t_aGui t_aGuj data (:/=$) (l_aGur :: TyFun a_aGtw (TyFun a_aGtw Bool -> *)) data (:/=$$) (l_aGuu :: a_aGtw) (l_aGut :: TyFun a_aGtw Bool) type (:/=$$$) (t_aGup :: a_aGtw) (t_aGuq :: a_aGtw) = (:/=) t_aGup t_aGuq -- | Defines promoted functions and datatypes relating to Bool, -- including a promoted version of all the definitions in -- Data.Bool. -- -- Because many of these definitions are produced by Template Haskell, it -- is not possible to create proper Haddock documentation. Please look up -- the corresponding operation in Data.Bool. Also, please excuse -- the apparent repeated variable names. This is due to an interaction -- between Template Haskell and Haddock. module Data.Promotion.Prelude.Bool -- | Type-level If. If True a b ==> a; If -- False a b ==> b bool_ :: a_aFKx -> a_aFKx -> Bool -> a_aFKx type TrueSym0 = True type FalseSym0 = False data NotSym0 (l_aFWK :: TyFun Bool Bool) type NotSym1 (t_aFWJ :: Bool) = Not t_aFWJ data (:&&$) (l_aFX2 :: TyFun Bool (TyFun Bool Bool -> *)) data (:&&$$) (l_aFX5 :: Bool) (l_aFX4 :: TyFun Bool Bool) type (:&&$$$) (t_aFX0 :: Bool) (t_aFX1 :: Bool) = (:&&) t_aFX0 t_aFX1 data (:||$) (l_aFWP :: TyFun Bool (TyFun Bool Bool -> *)) data (:||$$) (l_aFWS :: Bool) (l_aFWR :: TyFun Bool Bool) type (:||$$$) (t_aFWN :: Bool) (t_aFWO :: Bool) = (:||) t_aFWN t_aFWO data Bool_Sym0 (l_aFKF :: TyFun a_aFKx (TyFun a_aFKx (TyFun Bool a_aFKx -> *) -> *)) data Bool_Sym1 (l_aFKI :: a_aFKx) (l_aFKH :: TyFun a_aFKx (TyFun Bool a_aFKx -> *)) data Bool_Sym2 (l_aFKL :: a_aFKx) (l_aFKM :: a_aFKx) (l_aFKK :: TyFun Bool a_aFKx) type Bool_Sym3 (t_aFKC :: a_aFKx) (t_aFKD :: a_aFKx) (t_aFKE :: Bool) = Bool_ t_aFKC t_aFKD t_aFKE type OtherwiseSym0 = Otherwise -- | Defines the promoted version of Ord, POrd, and the singleton -- version, SOrd. module Data.Singletons.Prelude.Ord class (PEq (KProxy :: KProxy a_aJJr), kproxy_aJVz ~ KProxy) => POrd (kproxy_aJVz :: KProxy a_aJJr) where type family Compare (arg_aJVA :: a_aJJr) (arg_aJVB :: a_aJJr) :: Ordering type family (:<) (arg_aJVJ :: a_aJJr) (arg_aJVK :: a_aJJr) :: Bool type family (:<=) (arg_aJVS :: a_aJJr) (arg_aJVT :: a_aJJr) :: Bool type family (:>) (arg_aJW1 :: a_aJJr) (arg_aJW2 :: a_aJJr) :: Bool type family (:>=) (arg_aJWa :: a_aJJr) (arg_aJWb :: a_aJJr) :: Bool type family Max (arg_aJWj :: a_aJJr) (arg_aJWk :: a_aJJr) :: a_aJJr type family Min (arg_aJWs :: a_aJJr) (arg_aJWt :: a_aJJr) :: a_aJJr Compare (a_aJX8 :: a_aJJr) (a_aJX9 :: a_aJJr) = Apply (Apply Compare_1627566600Sym0 a_aJX8) a_aJX9 (:<) (a_aJXF :: a_aJJr) (a_aJXG :: a_aJJr) = Apply (Apply TFHelper_1627566633Sym0 a_aJXF) a_aJXG (:<=) (a_aJYc :: a_aJJr) (a_aJYd :: a_aJJr) = Apply (Apply TFHelper_1627566666Sym0 a_aJYc) a_aJYd (:>) (a_aJYJ :: a_aJJr) (a_aJYK :: a_aJJr) = Apply (Apply TFHelper_1627566699Sym0 a_aJYJ) a_aJYK (:>=) (a_aJZg :: a_aJJr) (a_aJZh :: a_aJJr) = Apply (Apply TFHelper_1627566732Sym0 a_aJZg) a_aJZh Max (a_aJZN :: a_aJJr) (a_aJZO :: a_aJJr) = Apply (Apply Max_1627566765Sym0 a_aJZN) a_aJZO Min (a_aK0k :: a_aJJr) (a_aK0l :: a_aJJr) = Apply (Apply Min_1627566798Sym0 a_aK0k) a_aK0l class (SEq (KProxy :: KProxy a_aJJr), kproxy_aK1o ~ KProxy) => SOrd (kproxy_aK1o :: KProxy a_aJJr) where sCompare sX sY = let lambda_aK0J :: forall x_aJWK y_aJWL. (t_aK0v ~ x_aJWK, t_aK0w ~ y_aJWL) => Sing x_aJWK -> Sing y_aJWL -> Sing (Apply (Apply CompareSym0 x_aJWK) y_aJWL :: Ordering) lambda_aK0J x_aK0K y_aK0L = let sScrutinee_1627565764 :: Sing (Let1627566576Scrutinee_1627565764Sym2 x_aJWK y_aJWL) sScrutinee_1627565764 = applySing (applySing (singFun2 (Proxy :: Proxy (:==$)) (%:==)) x_aK0K) y_aK0L in case sScrutinee_1627565764 of { STrue -> let lambda_aK0M :: TrueSym0 ~ Let1627566576Scrutinee_1627565764Sym2 x_aJWK y_aJWL => Sing (Case_1627566584 x_aJWK y_aJWL TrueSym0) lambda_aK0M = SEQ in lambda_aK0M SFalse -> let lambda_aK0N :: FalseSym0 ~ Let1627566576Scrutinee_1627565764Sym2 x_aJWK y_aJWL => Sing (Case_1627566584 x_aJWK y_aJWL FalseSym0) lambda_aK0N = let sScrutinee_1627565766 :: Sing (Let1627566586Scrutinee_1627565766Sym2 x_aJWK y_aJWL) sScrutinee_1627565766 = applySing (applySing (singFun2 (Proxy :: Proxy (:<=$)) (%:<=)) x_aK0K) y_aK0L in case sScrutinee_1627565766 of { STrue -> let lambda_aK0O :: TrueSym0 ~ Let1627566586Scrutinee_1627565766Sym2 x_aJWK y_aJWL => Sing (Case_1627566594 x_aJWK y_aJWL TrueSym0) lambda_aK0O = SLT in lambda_aK0O SFalse -> let lambda_aK0P :: FalseSym0 ~ Let1627566586Scrutinee_1627565766Sym2 x_aJWK y_aJWL => Sing (Case_1627566594 x_aJWK y_aJWL FalseSym0) lambda_aK0P = SGT in lambda_aK0P } :: Sing (Case_1627566594 x_aJWK y_aJWL (Let1627566586Scrutinee_1627565766Sym2 x_aJWK y_aJWL)) in lambda_aK0N } :: Sing (Case_1627566584 x_aJWK y_aJWL (Let1627566576Scrutinee_1627565764Sym2 x_aJWK y_aJWL)) in lambda_aK0J sX sY (%:<) sX sY = let lambda_aK0Q :: forall x_aJXs y_aJXt. (t_aK0x ~ x_aJXs, t_aK0y ~ y_aJXt) => Sing x_aJXs -> Sing y_aJXt -> Sing (Apply (Apply (:<$) x_aJXs) y_aJXt :: Bool) lambda_aK0Q x_aK0R y_aK0S = let sScrutinee_1627565768 :: Sing (Let1627566620Scrutinee_1627565768Sym2 x_aJXs y_aJXt) sScrutinee_1627565768 = applySing (applySing (singFun2 (Proxy :: Proxy CompareSym0) sCompare) x_aK0R) y_aK0S in case sScrutinee_1627565768 of { SLT -> let lambda_aK0T :: LTSym0 ~ Let1627566620Scrutinee_1627565768Sym2 x_aJXs y_aJXt => Sing (Case_1627566628 x_aJXs y_aJXt LTSym0) lambda_aK0T = STrue in lambda_aK0T SEQ -> let lambda_aK0U :: EQSym0 ~ Let1627566620Scrutinee_1627565768Sym2 x_aJXs y_aJXt => Sing (Case_1627566628 x_aJXs y_aJXt EQSym0) lambda_aK0U = SFalse in lambda_aK0U SGT -> let lambda_aK0V :: GTSym0 ~ Let1627566620Scrutinee_1627565768Sym2 x_aJXs y_aJXt => Sing (Case_1627566628 x_aJXs y_aJXt GTSym0) lambda_aK0V = SFalse in lambda_aK0V } :: Sing (Case_1627566628 x_aJXs y_aJXt (Let1627566620Scrutinee_1627565768Sym2 x_aJXs y_aJXt)) in lambda_aK0Q sX sY (%:<=) sX sY = let lambda_aK0W :: forall x_aJXZ y_aJY0. (t_aK0z ~ x_aJXZ, t_aK0A ~ y_aJY0) => Sing x_aJXZ -> Sing y_aJY0 -> Sing (Apply (Apply (:<=$) x_aJXZ) y_aJY0 :: Bool) lambda_aK0W x_aK0X y_aK0Y = let sScrutinee_1627565770 :: Sing (Let1627566653Scrutinee_1627565770Sym2 x_aJXZ y_aJY0) sScrutinee_1627565770 = applySing (applySing (singFun2 (Proxy :: Proxy CompareSym0) sCompare) x_aK0X) y_aK0Y in case sScrutinee_1627565770 of { SLT -> let lambda_aK0Z :: LTSym0 ~ Let1627566653Scrutinee_1627565770Sym2 x_aJXZ y_aJY0 => Sing (Case_1627566661 x_aJXZ y_aJY0 LTSym0) lambda_aK0Z = STrue in lambda_aK0Z SEQ -> let lambda_aK10 :: EQSym0 ~ Let1627566653Scrutinee_1627565770Sym2 x_aJXZ y_aJY0 => Sing (Case_1627566661 x_aJXZ y_aJY0 EQSym0) lambda_aK10 = STrue in lambda_aK10 SGT -> let lambda_aK11 :: GTSym0 ~ Let1627566653Scrutinee_1627565770Sym2 x_aJXZ y_aJY0 => Sing (Case_1627566661 x_aJXZ y_aJY0 GTSym0) lambda_aK11 = SFalse in lambda_aK11 } :: Sing (Case_1627566661 x_aJXZ y_aJY0 (Let1627566653Scrutinee_1627565770Sym2 x_aJXZ y_aJY0)) in lambda_aK0W sX sY (%:>) sX sY = let lambda_aK12 :: forall x_aJYw y_aJYx. (t_aK0B ~ x_aJYw, t_aK0C ~ y_aJYx) => Sing x_aJYw -> Sing y_aJYx -> Sing (Apply (Apply (:>$) x_aJYw) y_aJYx :: Bool) lambda_aK12 x_aK13 y_aK14 = let sScrutinee_1627565772 :: Sing (Let1627566686Scrutinee_1627565772Sym2 x_aJYw y_aJYx) sScrutinee_1627565772 = applySing (applySing (singFun2 (Proxy :: Proxy CompareSym0) sCompare) x_aK13) y_aK14 in case sScrutinee_1627565772 of { SLT -> let lambda_aK15 :: LTSym0 ~ Let1627566686Scrutinee_1627565772Sym2 x_aJYw y_aJYx => Sing (Case_1627566694 x_aJYw y_aJYx LTSym0) lambda_aK15 = SFalse in lambda_aK15 SEQ -> let lambda_aK16 :: EQSym0 ~ Let1627566686Scrutinee_1627565772Sym2 x_aJYw y_aJYx => Sing (Case_1627566694 x_aJYw y_aJYx EQSym0) lambda_aK16 = SFalse in lambda_aK16 SGT -> let lambda_aK17 :: GTSym0 ~ Let1627566686Scrutinee_1627565772Sym2 x_aJYw y_aJYx => Sing (Case_1627566694 x_aJYw y_aJYx GTSym0) lambda_aK17 = STrue in lambda_aK17 } :: Sing (Case_1627566694 x_aJYw y_aJYx (Let1627566686Scrutinee_1627565772Sym2 x_aJYw y_aJYx)) in lambda_aK12 sX sY (%:>=) sX sY = let lambda_aK18 :: forall x_aJZ3 y_aJZ4. (t_aK0D ~ x_aJZ3, t_aK0E ~ y_aJZ4) => Sing x_aJZ3 -> Sing y_aJZ4 -> Sing (Apply (Apply (:>=$) x_aJZ3) y_aJZ4 :: Bool) lambda_aK18 x_aK19 y_aK1a = let sScrutinee_1627565774 :: Sing (Let1627566719Scrutinee_1627565774Sym2 x_aJZ3 y_aJZ4) sScrutinee_1627565774 = applySing (applySing (singFun2 (Proxy :: Proxy CompareSym0) sCompare) x_aK19) y_aK1a in case sScrutinee_1627565774 of { SLT -> let lambda_aK1b :: LTSym0 ~ Let1627566719Scrutinee_1627565774Sym2 x_aJZ3 y_aJZ4 => Sing (Case_1627566727 x_aJZ3 y_aJZ4 LTSym0) lambda_aK1b = SFalse in lambda_aK1b SEQ -> let lambda_aK1c :: EQSym0 ~ Let1627566719Scrutinee_1627565774Sym2 x_aJZ3 y_aJZ4 => Sing (Case_1627566727 x_aJZ3 y_aJZ4 EQSym0) lambda_aK1c = STrue in lambda_aK1c SGT -> let lambda_aK1d :: GTSym0 ~ Let1627566719Scrutinee_1627565774Sym2 x_aJZ3 y_aJZ4 => Sing (Case_1627566727 x_aJZ3 y_aJZ4 GTSym0) lambda_aK1d = STrue in lambda_aK1d } :: Sing (Case_1627566727 x_aJZ3 y_aJZ4 (Let1627566719Scrutinee_1627565774Sym2 x_aJZ3 y_aJZ4)) in lambda_aK18 sX sY sMax sX sY = let lambda_aK1e :: forall x_aJZA y_aJZB. (t_aK0F ~ x_aJZA, t_aK0G ~ y_aJZB) => Sing x_aJZA -> Sing y_aJZB -> Sing (Apply (Apply MaxSym0 x_aJZA) y_aJZB :: a_aJJr) lambda_aK1e x_aK1f y_aK1g = let sScrutinee_1627565776 :: Sing (Let1627566752Scrutinee_1627565776Sym2 x_aJZA y_aJZB) sScrutinee_1627565776 = applySing (applySing (singFun2 (Proxy :: Proxy (:<=$)) (%:<=)) x_aK1f) y_aK1g in case sScrutinee_1627565776 of { STrue -> let lambda_aK1h :: TrueSym0 ~ Let1627566752Scrutinee_1627565776Sym2 x_aJZA y_aJZB => Sing (Case_1627566760 x_aJZA y_aJZB TrueSym0) lambda_aK1h = y_aK1g in lambda_aK1h SFalse -> let lambda_aK1i :: FalseSym0 ~ Let1627566752Scrutinee_1627565776Sym2 x_aJZA y_aJZB => Sing (Case_1627566760 x_aJZA y_aJZB FalseSym0) lambda_aK1i = x_aK1f in lambda_aK1i } :: Sing (Case_1627566760 x_aJZA y_aJZB (Let1627566752Scrutinee_1627565776Sym2 x_aJZA y_aJZB)) in lambda_aK1e sX sY sMin sX sY = let lambda_aK1j :: forall x_aK07 y_aK08. (t_aK0H ~ x_aK07, t_aK0I ~ y_aK08) => Sing x_aK07 -> Sing y_aK08 -> Sing (Apply (Apply MinSym0 x_aK07) y_aK08 :: a_aJJr) lambda_aK1j x_aK1k y_aK1l = let sScrutinee_1627565778 :: Sing (Let1627566785Scrutinee_1627565778Sym2 x_aK07 y_aK08) sScrutinee_1627565778 = applySing (applySing (singFun2 (Proxy :: Proxy (:<=$)) (%:<=)) x_aK1k) y_aK1l in case sScrutinee_1627565778 of { STrue -> let lambda_aK1m :: TrueSym0 ~ Let1627566785Scrutinee_1627565778Sym2 x_aK07 y_aK08 => Sing (Case_1627566793 x_aK07 y_aK08 TrueSym0) lambda_aK1m = x_aK1k in lambda_aK1m SFalse -> let lambda_aK1n :: FalseSym0 ~ Let1627566785Scrutinee_1627565778Sym2 x_aK07 y_aK08 => Sing (Case_1627566793 x_aK07 y_aK08 FalseSym0) lambda_aK1n = y_aK1l in lambda_aK1n } :: Sing (Case_1627566793 x_aK07 y_aK08 (Let1627566785Scrutinee_1627565778Sym2 x_aK07 y_aK08)) in lambda_aK1j sX sY sCompare :: SOrd kproxy_aK1o => Sing t_aK0v -> Sing t_aK0w -> Sing (Apply (Apply CompareSym0 t_aK0v) t_aK0w :: Ordering) (%:<) :: SOrd kproxy_aK1o => Sing t_aK0x -> Sing t_aK0y -> Sing (Apply (Apply (:<$) t_aK0x) t_aK0y :: Bool) (%:<=) :: SOrd kproxy_aK1o => Sing t_aK0z -> Sing t_aK0A -> Sing (Apply (Apply (:<=$) t_aK0z) t_aK0A :: Bool) (%:>) :: SOrd kproxy_aK1o => Sing t_aK0B -> Sing t_aK0C -> Sing (Apply (Apply (:>$) t_aK0B) t_aK0C :: Bool) (%:>=) :: SOrd kproxy_aK1o => Sing t_aK0D -> Sing t_aK0E -> Sing (Apply (Apply (:>=$) t_aK0D) t_aK0E :: Bool) sMax :: SOrd kproxy_aK1o => Sing t_aK0F -> Sing t_aK0G -> Sing (Apply (Apply MaxSym0 t_aK0F) t_aK0G :: a_aJJr) sMin :: SOrd kproxy_aK1o => Sing t_aK0H -> Sing t_aK0I -> Sing (Apply (Apply MinSym0 t_aK0H) t_aK0I :: a_aJJr) thenCmp :: Ordering -> Ordering -> Ordering sThenCmp :: Sing t_aM7l -> Sing t_aM7m -> Sing (Apply (Apply ThenCmpSym0 t_aM7l) t_aM7m :: Ordering) -- | The singleton kind-indexed data family. data ThenCmpSym0 (l_aM77 :: TyFun Ordering (TyFun Ordering Ordering -> *)) data ThenCmpSym1 (l_aM7a :: Ordering) (l_aM79 :: TyFun Ordering Ordering) type ThenCmpSym2 (t_aM75 :: Ordering) (t_aM76 :: Ordering) = ThenCmp t_aM75 t_aM76 type LTSym0 = LT type EQSym0 = EQ type GTSym0 = GT data CompareSym0 (l_aJVE :: TyFun a_aJJr (TyFun a_aJJr Ordering -> *)) data CompareSym1 (l_aJVH :: a_aJJr) (l_aJVG :: TyFun a_aJJr Ordering) type CompareSym2 (t_aJVC :: a_aJJr) (t_aJVD :: a_aJJr) = Compare t_aJVC t_aJVD data (:<$) (l_aJVN :: TyFun a_aJJr (TyFun a_aJJr Bool -> *)) data (:<$$) (l_aJVQ :: a_aJJr) (l_aJVP :: TyFun a_aJJr Bool) type (:<$$$) (t_aJVL :: a_aJJr) (t_aJVM :: a_aJJr) = (:<) t_aJVL t_aJVM data (:<=$) (l_aJVW :: TyFun a_aJJr (TyFun a_aJJr Bool -> *)) data (:<=$$) (l_aJVZ :: a_aJJr) (l_aJVY :: TyFun a_aJJr Bool) type (:<=$$$) (t_aJVU :: a_aJJr) (t_aJVV :: a_aJJr) = (:<=) t_aJVU t_aJVV data (:>$) (l_aJW5 :: TyFun a_aJJr (TyFun a_aJJr Bool -> *)) data (:>$$) (l_aJW8 :: a_aJJr) (l_aJW7 :: TyFun a_aJJr Bool) type (:>$$$) (t_aJW3 :: a_aJJr) (t_aJW4 :: a_aJJr) = (:>) t_aJW3 t_aJW4 data (:>=$) (l_aJWe :: TyFun a_aJJr (TyFun a_aJJr Bool -> *)) data (:>=$$) (l_aJWh :: a_aJJr) (l_aJWg :: TyFun a_aJJr Bool) type (:>=$$$) (t_aJWc :: a_aJJr) (t_aJWd :: a_aJJr) = (:>=) t_aJWc t_aJWd data MaxSym0 (l_aJWn :: TyFun a_aJJr (TyFun a_aJJr a_aJJr -> *)) data MaxSym1 (l_aJWq :: a_aJJr) (l_aJWp :: TyFun a_aJJr a_aJJr) type MaxSym2 (t_aJWl :: a_aJJr) (t_aJWm :: a_aJJr) = Max t_aJWl t_aJWm data MinSym0 (l_aJWw :: TyFun a_aJJr (TyFun a_aJJr a_aJJr -> *)) data MinSym1 (l_aJWz :: a_aJJr) (l_aJWy :: TyFun a_aJJr a_aJJr) type MinSym2 (t_aJWu :: a_aJJr) (t_aJWv :: a_aJJr) = Min t_aJWu t_aJWv instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627575292Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627575292Sym0 instance Data.Singletons.Prelude.Ord.POrd 'Data.Proxy.KProxy instance Data.Singletons.Prelude.Ord.SOrd 'Data.Proxy.KProxy => Data.Singletons.Prelude.Ord.SOrd 'Data.Proxy.KProxy instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627575344Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627575344Sym0 instance Data.Singletons.Prelude.Ord.POrd 'Data.Proxy.KProxy instance (Data.Singletons.Prelude.Ord.SOrd 'Data.Proxy.KProxy, Data.Singletons.Prelude.Ord.SOrd 'Data.Proxy.KProxy) => Data.Singletons.Prelude.Ord.SOrd 'Data.Proxy.KProxy instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627575400Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627575400Sym0 instance Data.Singletons.Prelude.Ord.POrd 'Data.Proxy.KProxy instance (Data.Singletons.Prelude.Ord.SOrd 'Data.Proxy.KProxy, Data.Singletons.Prelude.Ord.SOrd 'Data.Proxy.KProxy) => Data.Singletons.Prelude.Ord.SOrd 'Data.Proxy.KProxy instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627575444Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627575444Sym0 instance Data.Singletons.Prelude.Ord.POrd 'Data.Proxy.KProxy instance (Data.Singletons.Prelude.Ord.SOrd 'Data.Proxy.KProxy, Data.Singletons.Prelude.Ord.SOrd 'Data.Proxy.KProxy) => Data.Singletons.Prelude.Ord.SOrd 'Data.Proxy.KProxy instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627575487Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627575487Sym0 instance Data.Singletons.Prelude.Ord.POrd 'Data.Proxy.KProxy instance (Data.Singletons.Prelude.Ord.SOrd 'Data.Proxy.KProxy, Data.Singletons.Prelude.Ord.SOrd 'Data.Proxy.KProxy, Data.Singletons.Prelude.Ord.SOrd 'Data.Proxy.KProxy) => Data.Singletons.Prelude.Ord.SOrd 'Data.Proxy.KProxy instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627575538Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627575538Sym0 instance Data.Singletons.Prelude.Ord.POrd 'Data.Proxy.KProxy instance (Data.Singletons.Prelude.Ord.SOrd 'Data.Proxy.KProxy, Data.Singletons.Prelude.Ord.SOrd 'Data.Proxy.KProxy, Data.Singletons.Prelude.Ord.SOrd 'Data.Proxy.KProxy, Data.Singletons.Prelude.Ord.SOrd 'Data.Proxy.KProxy) => Data.Singletons.Prelude.Ord.SOrd 'Data.Proxy.KProxy instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627575597Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627575597Sym0 instance Data.Singletons.Prelude.Ord.POrd 'Data.Proxy.KProxy instance (Data.Singletons.Prelude.Ord.SOrd 'Data.Proxy.KProxy, Data.Singletons.Prelude.Ord.SOrd 'Data.Proxy.KProxy, Data.Singletons.Prelude.Ord.SOrd 'Data.Proxy.KProxy, Data.Singletons.Prelude.Ord.SOrd 'Data.Proxy.KProxy, Data.Singletons.Prelude.Ord.SOrd 'Data.Proxy.KProxy) => Data.Singletons.Prelude.Ord.SOrd 'Data.Proxy.KProxy instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627575664Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627575664Sym0 instance Data.Singletons.Prelude.Ord.POrd 'Data.Proxy.KProxy instance (Data.Singletons.Prelude.Ord.SOrd 'Data.Proxy.KProxy, Data.Singletons.Prelude.Ord.SOrd 'Data.Proxy.KProxy, Data.Singletons.Prelude.Ord.SOrd 'Data.Proxy.KProxy, Data.Singletons.Prelude.Ord.SOrd 'Data.Proxy.KProxy, Data.Singletons.Prelude.Ord.SOrd 'Data.Proxy.KProxy, Data.Singletons.Prelude.Ord.SOrd 'Data.Proxy.KProxy) => Data.Singletons.Prelude.Ord.SOrd 'Data.Proxy.KProxy instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627575739Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627575739Sym0 instance Data.Singletons.Prelude.Ord.POrd 'Data.Proxy.KProxy instance (Data.Singletons.Prelude.Ord.SOrd 'Data.Proxy.KProxy, Data.Singletons.Prelude.Ord.SOrd 'Data.Proxy.KProxy, Data.Singletons.Prelude.Ord.SOrd 'Data.Proxy.KProxy, Data.Singletons.Prelude.Ord.SOrd 'Data.Proxy.KProxy, Data.Singletons.Prelude.Ord.SOrd 'Data.Proxy.KProxy, Data.Singletons.Prelude.Ord.SOrd 'Data.Proxy.KProxy, Data.Singletons.Prelude.Ord.SOrd 'Data.Proxy.KProxy) => Data.Singletons.Prelude.Ord.SOrd 'Data.Proxy.KProxy instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627575774Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627575774Sym0 instance Data.Singletons.Prelude.Ord.POrd 'Data.Proxy.KProxy instance Data.Singletons.Prelude.Ord.SOrd 'Data.Proxy.KProxy instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627575798Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627575798Sym0 instance Data.Singletons.Prelude.Ord.POrd 'Data.Proxy.KProxy instance Data.Singletons.Prelude.Ord.SOrd 'Data.Proxy.KProxy instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627575827Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627575827Sym0 instance Data.Singletons.Prelude.Ord.POrd 'Data.Proxy.KProxy instance Data.Singletons.Prelude.Ord.SOrd 'Data.Proxy.KProxy instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.ThenCmpSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.ThenCmpSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.CompareSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.CompareSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings (Data.Singletons.Prelude.Ord.:<$$) instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings (Data.Singletons.Prelude.Ord.:<$) instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings (Data.Singletons.Prelude.Ord.:<=$$) instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings (Data.Singletons.Prelude.Ord.:<=$) instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings (Data.Singletons.Prelude.Ord.:>$$) instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings (Data.Singletons.Prelude.Ord.:>$) instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings (Data.Singletons.Prelude.Ord.:>=$$) instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings (Data.Singletons.Prelude.Ord.:>=$) instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.MaxSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.MaxSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.MinSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.MinSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Let1627566576Scrutinee_1627565764Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Let1627566576Scrutinee_1627565764Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Let1627566586Scrutinee_1627565766Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Let1627566586Scrutinee_1627565766Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627566600Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627566600Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Let1627566620Scrutinee_1627565768Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Let1627566620Scrutinee_1627565768Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.TFHelper_1627566633Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.TFHelper_1627566633Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Let1627566653Scrutinee_1627565770Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Let1627566653Scrutinee_1627565770Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.TFHelper_1627566666Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.TFHelper_1627566666Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Let1627566686Scrutinee_1627565772Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Let1627566686Scrutinee_1627565772Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.TFHelper_1627566699Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.TFHelper_1627566699Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Let1627566719Scrutinee_1627565774Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Let1627566719Scrutinee_1627565774Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.TFHelper_1627566732Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.TFHelper_1627566732Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Let1627566752Scrutinee_1627565776Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Let1627566752Scrutinee_1627565776Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Max_1627566765Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Max_1627566765Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Let1627566785Scrutinee_1627565778Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Let1627566785Scrutinee_1627565778Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Min_1627566798Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Min_1627566798Sym0 -- | Provides promoted definitions related to type-level comparisons. module Data.Promotion.Prelude.Ord class (PEq (KProxy :: KProxy a_aJJr), kproxy_aJVz ~ KProxy) => POrd (kproxy_aJVz :: KProxy a_aJJr) where type family Compare (arg_aJVA :: a_aJJr) (arg_aJVB :: a_aJJr) :: Ordering type family (:<) (arg_aJVJ :: a_aJJr) (arg_aJVK :: a_aJJr) :: Bool type family (:<=) (arg_aJVS :: a_aJJr) (arg_aJVT :: a_aJJr) :: Bool type family (:>) (arg_aJW1 :: a_aJJr) (arg_aJW2 :: a_aJJr) :: Bool type family (:>=) (arg_aJWa :: a_aJJr) (arg_aJWb :: a_aJJr) :: Bool type family Max (arg_aJWj :: a_aJJr) (arg_aJWk :: a_aJJr) :: a_aJJr type family Min (arg_aJWs :: a_aJJr) (arg_aJWt :: a_aJJr) :: a_aJJr Compare (a_aJX8 :: a_aJJr) (a_aJX9 :: a_aJJr) = Apply (Apply Compare_1627566600Sym0 a_aJX8) a_aJX9 (:<) (a_aJXF :: a_aJJr) (a_aJXG :: a_aJJr) = Apply (Apply TFHelper_1627566633Sym0 a_aJXF) a_aJXG (:<=) (a_aJYc :: a_aJJr) (a_aJYd :: a_aJJr) = Apply (Apply TFHelper_1627566666Sym0 a_aJYc) a_aJYd (:>) (a_aJYJ :: a_aJJr) (a_aJYK :: a_aJJr) = Apply (Apply TFHelper_1627566699Sym0 a_aJYJ) a_aJYK (:>=) (a_aJZg :: a_aJJr) (a_aJZh :: a_aJJr) = Apply (Apply TFHelper_1627566732Sym0 a_aJZg) a_aJZh Max (a_aJZN :: a_aJJr) (a_aJZO :: a_aJJr) = Apply (Apply Max_1627566765Sym0 a_aJZN) a_aJZO Min (a_aK0k :: a_aJJr) (a_aK0l :: a_aJJr) = Apply (Apply Min_1627566798Sym0 a_aK0k) a_aK0l type LTSym0 = LT type EQSym0 = EQ type GTSym0 = GT data CompareSym0 (l_aJVE :: TyFun a_aJJr (TyFun a_aJJr Ordering -> *)) data CompareSym1 (l_aJVH :: a_aJJr) (l_aJVG :: TyFun a_aJJr Ordering) type CompareSym2 (t_aJVC :: a_aJJr) (t_aJVD :: a_aJJr) = Compare t_aJVC t_aJVD data (:<$) (l_aJVN :: TyFun a_aJJr (TyFun a_aJJr Bool -> *)) data (:<$$) (l_aJVQ :: a_aJJr) (l_aJVP :: TyFun a_aJJr Bool) type (:<$$$) (t_aJVL :: a_aJJr) (t_aJVM :: a_aJJr) = (:<) t_aJVL t_aJVM data (:<=$) (l_aJVW :: TyFun a_aJJr (TyFun a_aJJr Bool -> *)) data (:<=$$) (l_aJVZ :: a_aJJr) (l_aJVY :: TyFun a_aJJr Bool) type (:<=$$$) (t_aJVU :: a_aJJr) (t_aJVV :: a_aJJr) = (:<=) t_aJVU t_aJVV data (:>$) (l_aJW5 :: TyFun a_aJJr (TyFun a_aJJr Bool -> *)) data (:>$$) (l_aJW8 :: a_aJJr) (l_aJW7 :: TyFun a_aJJr Bool) type (:>$$$) (t_aJW3 :: a_aJJr) (t_aJW4 :: a_aJJr) = (:>) t_aJW3 t_aJW4 data (:>=$) (l_aJWe :: TyFun a_aJJr (TyFun a_aJJr Bool -> *)) data (:>=$$) (l_aJWh :: a_aJJr) (l_aJWg :: TyFun a_aJJr Bool) type (:>=$$$) (t_aJWc :: a_aJJr) (t_aJWd :: a_aJJr) = (:>=) t_aJWc t_aJWd data MaxSym0 (l_aJWn :: TyFun a_aJJr (TyFun a_aJJr a_aJJr -> *)) data MaxSym1 (l_aJWq :: a_aJJr) (l_aJWp :: TyFun a_aJJr a_aJJr) type MaxSym2 (t_aJWl :: a_aJJr) (t_aJWm :: a_aJJr) = Max t_aJWl t_aJWm data MinSym0 (l_aJWw :: TyFun a_aJJr (TyFun a_aJJr a_aJJr -> *)) data MinSym1 (l_aJWz :: a_aJJr) (l_aJWy :: TyFun a_aJJr a_aJJr) type MinSym2 (t_aJWu :: a_aJJr) (t_aJWv :: a_aJJr) = Min t_aJWu t_aJWv -- | This module defines singleton instances making Typeable the -- singleton for the kind *. The definitions don't fully line up -- with what is expected within the singletons library, so expect unusual -- results! module Data.Singletons.TypeRepStar -- | The singleton kind-indexed data family. instance Data.Typeable.Internal.Typeable a => Data.Singletons.SingI a instance Data.Singletons.SingKind 'Data.Proxy.KProxy instance Data.Singletons.Prelude.Eq.PEq 'Data.Proxy.KProxy instance Data.Singletons.Prelude.Eq.SEq 'Data.Proxy.KProxy instance Data.Singletons.Decide.SDecide 'Data.Proxy.KProxy instance Data.Type.Coercion.TestCoercion Data.Singletons.Sing -- | Implements singletonized versions of functions from GHC.Base -- module. -- -- Because many of these definitions are produced by Template Haskell, it -- is not possible to create proper Haddock documentation. Please look up -- the corresponding operation in Data.Tuple. Also, please -- excuse the apparent repeated variable names. This is due to an -- interaction between Template Haskell and Haddock. module Data.Singletons.Prelude.Base sFoldr :: Sing t_a10Ub -> Sing t_a10Uc -> Sing t_a10Ud -> Sing (Apply (Apply (Apply FoldrSym0 t_a10Ub) t_a10Uc) t_a10Ud :: b_a10Qt) sMap :: Sing t_a10U9 -> Sing t_a10Ua -> Sing (Apply (Apply MapSym0 t_a10U9) t_a10Ua :: [b_a10QA]) (%:++) :: Sing t_a10U7 -> Sing t_a10U8 -> Sing (Apply (Apply (:++$) t_a10U7) t_a10U8 :: [a_a10QE]) sOtherwise :: Sing (OtherwiseSym0 :: Bool) sId :: Sing t_a10U6 -> Sing (Apply IdSym0 t_a10U6 :: a_a10QJ) sConst :: Sing t_a10U2 -> Sing t_a10U3 -> Sing (Apply (Apply ConstSym0 t_a10U2) t_a10U3 :: a_a10QL) (%:.) :: Sing t_a10TZ -> Sing t_a10U0 -> Sing t_a10U1 -> Sing (Apply (Apply (Apply (:.$) t_a10TZ) t_a10U0) t_a10U1 :: c_a10QP) (%$) :: Sing f -> Sing x -> Sing ((($$) @@ f) @@ x) (%$!) :: Sing f -> Sing x -> Sing ((($!$) @@ f) @@ x) sFlip :: Sing t_a10TW -> Sing t_a10TX -> Sing t_a10TY -> Sing (Apply (Apply (Apply FlipSym0 t_a10TW) t_a10TX) t_a10TY :: c_a10QW) sAsTypeOf :: Sing t_a10U4 -> Sing t_a10U5 -> Sing (Apply (Apply AsTypeOfSym0 t_a10U4) t_a10U5 :: a_a10R0) sSeq :: Sing t_a10TU -> Sing t_a10TV -> Sing (Apply (Apply SeqSym0 t_a10TU) t_a10TV :: b_a10R2) data FoldrSym0 (l_a10Th :: TyFun (TyFun a_a10Qs (TyFun b_a10Qt b_a10Qt -> *) -> *) (TyFun b_a10Qt (TyFun [a_a10Qs] b_a10Qt -> *) -> *)) data FoldrSym1 (l_a10Tk :: TyFun a_a10Qs (TyFun b_a10Qt b_a10Qt -> *) -> *) (l_a10Tj :: TyFun b_a10Qt (TyFun [a_a10Qs] b_a10Qt -> *)) data FoldrSym2 (l_a10Tn :: TyFun a_a10Qs (TyFun b_a10Qt b_a10Qt -> *) -> *) (l_a10To :: b_a10Qt) (l_a10Tm :: TyFun [a_a10Qs] b_a10Qt) type FoldrSym3 (t_a10Te :: TyFun a_a10Qs (TyFun b_a10Qt b_a10Qt -> *) -> *) (t_a10Tf :: b_a10Qt) (t_a10Tg :: [a_a10Qs]) = Foldr t_a10Te t_a10Tf t_a10Tg data MapSym0 (l_a10T1 :: TyFun (TyFun a_a10Qz b_a10QA -> *) (TyFun [a_a10Qz] [b_a10QA] -> *)) data MapSym1 (l_a10T4 :: TyFun a_a10Qz b_a10QA -> *) (l_a10T3 :: TyFun [a_a10Qz] [b_a10QA]) type MapSym2 (t_a10SZ :: TyFun a_a10Qz b_a10QA -> *) (t_a10T0 :: [a_a10Qz]) = Map t_a10SZ t_a10T0 data (:++$) (l_a10SO :: TyFun [a_a10QE] (TyFun [a_a10QE] [a_a10QE] -> *)) data (:++$$) (l_a10SR :: [a_a10QE]) (l_a10SQ :: TyFun [a_a10QE] [a_a10QE]) type (:++$$$) (t_a10SM :: [a_a10QE]) (t_a10SN :: [a_a10QE]) = (:++) t_a10SM t_a10SN type OtherwiseSym0 = Otherwise data IdSym0 (l_a10SI :: TyFun a_a10QJ a_a10QJ) type IdSym1 (t_a10SH :: a_a10QJ) = Id t_a10SH data ConstSym0 (l_a10Sh :: TyFun a_a10QL (TyFun b_a10QM a_a10QL -> *)) data ConstSym1 (l_a10Sk :: a_a10QL) (l_a10Sj :: TyFun b_a10QM a_a10QL) type ConstSym2 (t_a10Sf :: a_a10QL) (t_a10Sg :: b_a10QM) = Const t_a10Sf t_a10Sg data (:.$) (l_a10RC :: TyFun (TyFun b_a10QO c_a10QP -> *) (TyFun (TyFun a_a10QQ b_a10QO -> *) (TyFun a_a10QQ c_a10QP -> *) -> *)) data (:.$$) (l_a10RF :: TyFun b_a10QO c_a10QP -> *) (l_a10RE :: TyFun (TyFun a_a10QQ b_a10QO -> *) (TyFun a_a10QQ c_a10QP -> *)) data (:.$$$) (l_a10RI :: TyFun b_a10QO c_a10QP -> *) (l_a10RJ :: TyFun a_a10QQ b_a10QO -> *) (l_a10RH :: TyFun a_a10QQ c_a10QP) type (:.$$$$) (t_a10Rz :: TyFun b_a10QO c_a10QP -> *) (t_a10RA :: TyFun a_a10QQ b_a10QO -> *) (t_a10RB :: a_a10QQ) = (:.) t_a10Rz t_a10RA t_a10RB data ($$) :: TyFun (TyFun a b -> *) (TyFun a b -> *) -> * data ($$$) :: (TyFun a b -> *) -> TyFun a b -> * type ($$$$) a b = ($) a b data ($!$) :: TyFun (TyFun a b -> *) (TyFun a b -> *) -> * data ($!$$) :: (TyFun a b -> *) -> TyFun a b -> * type ($!$$$) a b = ($!) a b data FlipSym0 (l_a10Rk :: TyFun (TyFun a_a10QU (TyFun b_a10QV c_a10QW -> *) -> *) (TyFun b_a10QV (TyFun a_a10QU c_a10QW -> *) -> *)) data FlipSym1 (l_a10Rn :: TyFun a_a10QU (TyFun b_a10QV c_a10QW -> *) -> *) (l_a10Rm :: TyFun b_a10QV (TyFun a_a10QU c_a10QW -> *)) data FlipSym2 (l_a10Rq :: TyFun a_a10QU (TyFun b_a10QV c_a10QW -> *) -> *) (l_a10Rr :: b_a10QV) (l_a10Rp :: TyFun a_a10QU c_a10QW) type FlipSym3 (t_a10Rh :: TyFun a_a10QU (TyFun b_a10QV c_a10QW -> *) -> *) (t_a10Ri :: b_a10QV) (t_a10Rj :: a_a10QU) = Flip t_a10Rh t_a10Ri t_a10Rj data AsTypeOfSym0 (l_a10Sy :: TyFun a_a10R0 (TyFun a_a10R0 a_a10R0 -> *)) data AsTypeOfSym1 (l_a10SB :: a_a10R0) (l_a10SA :: TyFun a_a10R0 a_a10R0) type AsTypeOfSym2 (t_a10Sw :: a_a10R0) (t_a10Sx :: a_a10R0) = AsTypeOf t_a10Sw t_a10Sx data SeqSym0 (l_a10R6 :: TyFun a_a10R1 (TyFun b_a10R2 b_a10R2 -> *)) data SeqSym1 (l_a10R9 :: a_a10R1) (l_a10R8 :: TyFun b_a10R2 b_a10R2) type SeqSym2 (t_a10R4 :: a_a10R1) (t_a10R5 :: b_a10R2) = Seq t_a10R4 t_a10R5 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Base.Lambda_1627631621Sym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Base.Lambda_1627631621Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Base.Lambda_1627631621Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Base.Lambda_1627631621Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Base.Let1627631724GoSym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Base.Let1627631724GoSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Base.Let1627631724GoSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Base.Let1627631724GoSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Base.SeqSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Base.SeqSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Base.FlipSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Base.FlipSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Base.FlipSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings (Data.Singletons.Prelude.Base.:.$$$) instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings (Data.Singletons.Prelude.Base.:.$$) instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings (Data.Singletons.Prelude.Base.:.$) instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Base.ConstSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Base.ConstSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Base.AsTypeOfSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Base.AsTypeOfSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Base.IdSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings (Data.Singletons.Prelude.Base.:++$$) instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings (Data.Singletons.Prelude.Base.:++$) instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Base.MapSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Base.MapSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Base.FoldrSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Base.FoldrSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Base.FoldrSym0 -- | Defines and exports promoted and singleton versions of definitions -- from GHC.Num. module Data.Singletons.Prelude.Num class kproxy_a14wf ~ KProxy => PNum (kproxy_a14wf :: KProxy a_a14wb) where type family (:+) (arg_a14wg :: a_a14wb) (arg_a14wh :: a_a14wb) :: a_a14wb type family (:-) (arg_a14wp :: a_a14wb) (arg_a14wq :: a_a14wb) :: a_a14wb type family (:*) (arg_a14wy :: a_a14wb) (arg_a14wz :: a_a14wb) :: a_a14wb type family Negate (arg_a14wH :: a_a14wb) :: a_a14wb type family Abs (arg_a14wL :: a_a14wb) :: a_a14wb type family Signum (arg_a14wP :: a_a14wb) :: a_a14wb type family FromInteger (arg_a14wT :: Nat) :: a_a14wb (:-) (a_a14x8 :: a_a14wb) (a_a14x9 :: a_a14wb) = Apply (Apply TFHelper_1627645712Sym0 a_a14x8) a_a14x9 Negate (a_a14xo :: a_a14wb) = Apply Negate_1627645727Sym0 a_a14xo class kproxy_a14xJ ~ KProxy => SNum (kproxy_a14xJ :: KProxy a_a14wb) where (%:-) sX sY = let lambda_a14xE :: forall x_a14x6 y_a14x7. (t_a14xw ~ x_a14x6, t_a14xx ~ y_a14x7) => Sing x_a14x6 -> Sing y_a14x7 -> Sing (Apply (Apply (:-$) x_a14x6) y_a14x7 :: a_a14wb) lambda_a14xE x_a14xF y_a14xG = applySing (applySing (singFun2 (Proxy :: Proxy (:+$)) (%:+)) x_a14xF) (applySing (singFun1 (Proxy :: Proxy NegateSym0) sNegate) y_a14xG) in lambda_a14xE sX sY sNegate sX = let lambda_a14xH :: forall x_a14xn. t_a14xA ~ x_a14xn => Sing x_a14xn -> Sing (Apply NegateSym0 x_a14xn :: a_a14wb) lambda_a14xH x_a14xI = applySing (applySing (singFun2 (Proxy :: Proxy (:-$)) (%:-)) (sFromInteger (sing :: Sing 0))) x_a14xI in lambda_a14xH sX (%:+) :: SNum kproxy_a14xJ => Sing t_a14xu -> Sing t_a14xv -> Sing (Apply (Apply (:+$) t_a14xu) t_a14xv :: a_a14wb) (%:-) :: SNum kproxy_a14xJ => Sing t_a14xw -> Sing t_a14xx -> Sing (Apply (Apply (:-$) t_a14xw) t_a14xx :: a_a14wb) (%:*) :: SNum kproxy_a14xJ => Sing t_a14xy -> Sing t_a14xz -> Sing (Apply (Apply (:*$) t_a14xy) t_a14xz :: a_a14wb) sNegate :: SNum kproxy_a14xJ => Sing t_a14xA -> Sing (Apply NegateSym0 t_a14xA :: a_a14wb) sAbs :: SNum kproxy_a14xJ => Sing t_a14xB -> Sing (Apply AbsSym0 t_a14xB :: a_a14wb) sSignum :: SNum kproxy_a14xJ => Sing t_a14xC -> Sing (Apply SignumSym0 t_a14xC :: a_a14wb) sFromInteger :: SNum kproxy_a14xJ => Sing t_a14xD -> Sing (Apply FromIntegerSym0 t_a14xD :: a_a14wb) sSubtract :: SNum (KProxy :: KProxy a_a15ch) => Sing t_a15cI -> Sing t_a15cJ -> Sing (Apply (Apply SubtractSym0 t_a15cI) t_a15cJ :: a_a15ch) data (:+$) (l_a14wk :: TyFun a_a14wb (TyFun a_a14wb a_a14wb -> *)) data (:+$$) (l_a14wn :: a_a14wb) (l_a14wm :: TyFun a_a14wb a_a14wb) type (:+$$$) (t_a14wi :: a_a14wb) (t_a14wj :: a_a14wb) = (:+) t_a14wi t_a14wj data (:-$) (l_a14wt :: TyFun a_a14wb (TyFun a_a14wb a_a14wb -> *)) data (:-$$) (l_a14ww :: a_a14wb) (l_a14wv :: TyFun a_a14wb a_a14wb) type (:-$$$) (t_a14wr :: a_a14wb) (t_a14ws :: a_a14wb) = (:-) t_a14wr t_a14ws data (:*$) (l_a14wC :: TyFun a_a14wb (TyFun a_a14wb a_a14wb -> *)) data (:*$$) (l_a14wF :: a_a14wb) (l_a14wE :: TyFun a_a14wb a_a14wb) type (:*$$$) (t_a14wA :: a_a14wb) (t_a14wB :: a_a14wb) = (:*) t_a14wA t_a14wB data NegateSym0 (l_a14wJ :: TyFun a_a14wb a_a14wb) type NegateSym1 (t_a14wI :: a_a14wb) = Negate t_a14wI data AbsSym0 (l_a14wN :: TyFun a_a14wb a_a14wb) type AbsSym1 (t_a14wM :: a_a14wb) = Abs t_a14wM data SignumSym0 (l_a14wR :: TyFun a_a14wb a_a14wb) type SignumSym1 (t_a14wQ :: a_a14wb) = Signum t_a14wQ data FromIntegerSym0 (l_a14wV :: TyFun Nat a_a14wb) type FromIntegerSym1 (t_a14wU :: Nat) = FromInteger t_a14wU data SubtractSym0 (l_a15cz :: TyFun a_a15ch (TyFun a_a15ch a_a15ch -> *)) data SubtractSym1 (l_a15cC :: a_a15ch) (l_a15cB :: TyFun a_a15ch a_a15ch) type SubtractSym2 (t_a15cx :: a_a15ch) (t_a15cy :: a_a15ch) = Subtract t_a15cx t_a15cy instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Num.SubtractSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Num.SubtractSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings (Data.Singletons.Prelude.Num.:+$$) instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings (Data.Singletons.Prelude.Num.:+$) instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings (Data.Singletons.Prelude.Num.:-$$) instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings (Data.Singletons.Prelude.Num.:-$) instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings (Data.Singletons.Prelude.Num.:*$$) instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings (Data.Singletons.Prelude.Num.:*$) instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Num.NegateSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Num.AbsSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Num.SignumSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Num.FromIntegerSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Num.TFHelper_1627645712Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Num.TFHelper_1627645712Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Num.Negate_1627645727Sym0 instance Data.Singletons.Prelude.Num.PNum 'Data.Proxy.KProxy instance Data.Singletons.Prelude.Num.SNum 'Data.Proxy.KProxy -- | Defines and exports singletons useful for the Nat and Symbol kinds. -- This exports the internal, unsafe constructors. Use -- Data.Singletons.TypeLits for a safe interface. module Data.Singletons.TypeLits -- | (Kind) This is the kind of type-level natural numbers. data Nat :: * -- | (Kind) This is the kind of type-level symbols. data Symbol :: * -- | Kind-restricted synonym for Sing for Nats type SNat (x :: Nat) = Sing x -- | Kind-restricted synonym for Sing for Symbols type SSymbol (x :: Symbol) = Sing x -- | Given a singleton for Nat, call something requiring a -- KnownNat instance. withKnownNat :: Sing n -> (KnownNat n => r) -> r -- | Given a singleton for Symbol, call something requiring a -- KnownSymbol instance. withKnownSymbol :: Sing n -> (KnownSymbol n => r) -> r -- | The promotion of error. This version is more poly-kinded for -- easier use. data ErrorSym0 (l_a13LW :: TyFun k0_a13wC k_a13wB) type ErrorSym1 (t_a13LV :: k0_a13wC) = Error t_a13LV -- | The singleton for error sError :: Sing (str :: Symbol) -> a -- | This class gives the integer associated with a type-level natural. -- There are instances of the class for every concrete literal: 0, 1, 2, -- etc. class KnownNat (n :: Nat) natVal :: KnownNat n => proxy n -> Integer -- | This class gives the string associated with a type-level symbol. There -- are instances of the class for every concrete literal: "hello", etc. class KnownSymbol (n :: Symbol) symbolVal :: KnownSymbol n => proxy n -> String type (:^) a b = a ^ b data (:^$) l_a13OU data (:^$$) (l_a13OX :: Nat) l_a13OW type (:^$$$) (t_a13OS :: Nat) (t_a13OT :: Nat) = (:^) t_a13OS t_a13OT instance GHC.Num.Num GHC.TypeLits.Nat -- | This module contains everything you need to derive your own singletons -- via Template Haskell. -- -- TURN ON -XScopedTypeVariables IN YOUR MODULE IF YOU WANT THIS -- TO WORK. module Data.Singletons.TH -- | Make promoted and singleton versions of all declarations given, -- retaining the original declarations. See -- http://www.cis.upenn.edu/~eir/packages/singletons/README.html -- for further explanation. singletons :: DsMonad q => q [Dec] -> q [Dec] -- | Make promoted and singleton versions of all declarations given, -- discarding the original declarations. Note that a singleton based on a -- datatype needs the original datatype, so this will fail if it sees any -- datatype declarations. Classes, instances, and functions are all fine. singletonsOnly :: DsMonad q => q [Dec] -> q [Dec] -- | Generate singleton definitions from a type that is already defined. -- For example, the singletons package itself uses -- --
-- $(genSingletons [''Bool, ''Maybe, ''Either, ''[]]) ---- -- to generate singletons for Prelude types. genSingletons :: DsMonad q => [Name] -> q [Dec] -- | Promote every declaration given to the type level, retaining the -- originals. promote :: DsMonad q => q [Dec] -> q [Dec] -- | Promote each declaration, discarding the originals. Note that a -- promoted datatype uses the same definition as an original datatype, so -- this will not work with datatypes. Classes, instances, and functions -- are all fine. promoteOnly :: DsMonad q => q [Dec] -> q [Dec] -- | Generate defunctionalization symbols for existing type family genDefunSymbols :: DsMonad q => [Name] -> q [Dec] -- | Generate promoted definitions from a type that is already defined. -- This is generally only useful with classes. genPromotions :: DsMonad q => [Name] -> q [Dec] -- | Produce instances for '(:==)' (type-level equality) from the given -- types promoteEqInstances :: DsMonad q => [Name] -> q [Dec] -- | Produce an instance for '(:==)' (type-level equality) from the given -- type promoteEqInstance :: DsMonad q => Name -> q [Dec] -- | Create instances of SEq and type-level '(:==)' for each type -- in the list singEqInstances :: DsMonad q => [Name] -> q [Dec] -- | Create instance of SEq and type-level '(:==)' for the given -- type singEqInstance :: DsMonad q => Name -> q [Dec] -- | Create instances of SEq (only -- no instance for '(:==)', -- which SEq generally relies on) for each type in the list singEqInstancesOnly :: DsMonad q => [Name] -> q [Dec] -- | Create instances of SEq (only -- no instance for '(:==)', -- which SEq generally relies on) for the given type singEqInstanceOnly :: DsMonad q => Name -> q [Dec] -- | Create instances of SDecide for each type in the list. singDecideInstances :: DsMonad q => [Name] -> q [Dec] -- | Create instance of SDecide for the given type. singDecideInstance :: DsMonad q => Name -> q [Dec] -- | Produce instances for POrd from the given types promoteOrdInstances :: DsMonad q => [Name] -> q [Dec] -- | Produce an instance for POrd from the given type promoteOrdInstance :: DsMonad q => Name -> q [Dec] -- | Create instances of SOrd for the given types singOrdInstances :: DsMonad q => [Name] -> q [Dec] -- | Create instance of SOrd for the given type singOrdInstance :: DsMonad q => Name -> q [Dec] -- | Produce instances for PBounded from the given types promoteBoundedInstances :: DsMonad q => [Name] -> q [Dec] -- | Produce an instance for PBounded from the given type promoteBoundedInstance :: DsMonad q => Name -> q [Dec] -- | Create instances of SBounded for the given types singBoundedInstances :: DsMonad q => [Name] -> q [Dec] -- | Create instance of SBounded for the given type singBoundedInstance :: DsMonad q => Name -> q [Dec] -- | Produce instances for PEnum from the given types promoteEnumInstances :: DsMonad q => [Name] -> q [Dec] -- | Produce an instance for PEnum from the given type promoteEnumInstance :: DsMonad q => Name -> q [Dec] -- | Create instances of SEnum for the given types singEnumInstances :: DsMonad q => [Name] -> q [Dec] -- | Create instance of SEnum for the given type singEnumInstance :: DsMonad q => Name -> q [Dec] -- | The function cases generates a case expression where each -- right-hand side is identical. This may be useful if the type-checker -- requires knowledge of which constructor is used to satisfy equality or -- type-class constraints, but where each constructor is treated the -- same. cases :: DsMonad q => Name -> q Exp -> q Exp -> q Exp -- | The function sCases generates a case expression where each -- right-hand side is identical. This may be useful if the type-checker -- requires knowledge of which constructor is used to satisfy equality or -- type-class constraints, but where each constructor is treated the -- same. For sCases, unlike cases, the scrutinee is a -- singleton. But make sure to pass in the name of the original -- datatype, preferring ''Maybe over ''SMaybe. sCases :: DsMonad q => Name -> q Exp -> q Exp -> q Exp -- | The singleton kind-indexed data family. -- | The promoted analogue of Eq. If you supply no definition for -- '(:==)', then it defaults to a use of '(==)', from -- Data.Type.Equality. class kproxy ~ KProxy => PEq (kproxy :: KProxy a) where type family (:==) (x :: a) (y :: a) :: Bool type family (:/=) (x :: a) (y :: a) :: Bool (:==) (x :: a) (y :: a) = x == y (:/=) (x :: a) (y :: a) = Not (x :== y) -- | Type-level If. If True a b ==> a; If -- False a b ==> b -- | Conditional over singletons sIf :: Sing a -> Sing b -> Sing c -> Sing (If a b c) -- | The singleton analogue of Eq. Unlike the definition for -- Eq, it is required that instances define a body for '(%:==)'. -- You may also supply a body for '(%:/=)'. class (kparam ~ KProxy) => SEq (kparam :: KProxy k) where a %:/= b = sNot (a %:== b) -- | Boolean equality on singletons (%:==) :: SEq kparam => Sing a -> Sing b -> Sing (a :== b) -- | Boolean disequality on singletons (%:/=) :: SEq kparam => Sing a -> Sing b -> Sing (a :/= b) class (PEq (KProxy :: KProxy a_aJJr), kproxy_aJVz ~ KProxy) => POrd (kproxy_aJVz :: KProxy a_aJJr) where type family Compare (arg_aJVA :: a_aJJr) (arg_aJVB :: a_aJJr) :: Ordering type family (:<) (arg_aJVJ :: a_aJJr) (arg_aJVK :: a_aJJr) :: Bool type family (:<=) (arg_aJVS :: a_aJJr) (arg_aJVT :: a_aJJr) :: Bool type family (:>) (arg_aJW1 :: a_aJJr) (arg_aJW2 :: a_aJJr) :: Bool type family (:>=) (arg_aJWa :: a_aJJr) (arg_aJWb :: a_aJJr) :: Bool type family Max (arg_aJWj :: a_aJJr) (arg_aJWk :: a_aJJr) :: a_aJJr type family Min (arg_aJWs :: a_aJJr) (arg_aJWt :: a_aJJr) :: a_aJJr Compare (a_aJX8 :: a_aJJr) (a_aJX9 :: a_aJJr) = Apply (Apply Compare_1627566600Sym0 a_aJX8) a_aJX9 (:<) (a_aJXF :: a_aJJr) (a_aJXG :: a_aJJr) = Apply (Apply TFHelper_1627566633Sym0 a_aJXF) a_aJXG (:<=) (a_aJYc :: a_aJJr) (a_aJYd :: a_aJJr) = Apply (Apply TFHelper_1627566666Sym0 a_aJYc) a_aJYd (:>) (a_aJYJ :: a_aJJr) (a_aJYK :: a_aJJr) = Apply (Apply TFHelper_1627566699Sym0 a_aJYJ) a_aJYK (:>=) (a_aJZg :: a_aJJr) (a_aJZh :: a_aJJr) = Apply (Apply TFHelper_1627566732Sym0 a_aJZg) a_aJZh Max (a_aJZN :: a_aJJr) (a_aJZO :: a_aJJr) = Apply (Apply Max_1627566765Sym0 a_aJZN) a_aJZO Min (a_aK0k :: a_aJJr) (a_aK0l :: a_aJJr) = Apply (Apply Min_1627566798Sym0 a_aK0k) a_aK0l class (SEq (KProxy :: KProxy a_aJJr), kproxy_aK1o ~ KProxy) => SOrd (kproxy_aK1o :: KProxy a_aJJr) where sCompare sX sY = let lambda_aK0J :: forall x_aJWK y_aJWL. (t_aK0v ~ x_aJWK, t_aK0w ~ y_aJWL) => Sing x_aJWK -> Sing y_aJWL -> Sing (Apply (Apply CompareSym0 x_aJWK) y_aJWL :: Ordering) lambda_aK0J x_aK0K y_aK0L = let sScrutinee_1627565764 :: Sing (Let1627566576Scrutinee_1627565764Sym2 x_aJWK y_aJWL) sScrutinee_1627565764 = applySing (applySing (singFun2 (Proxy :: Proxy (:==$)) (%:==)) x_aK0K) y_aK0L in case sScrutinee_1627565764 of { STrue -> let lambda_aK0M :: TrueSym0 ~ Let1627566576Scrutinee_1627565764Sym2 x_aJWK y_aJWL => Sing (Case_1627566584 x_aJWK y_aJWL TrueSym0) lambda_aK0M = SEQ in lambda_aK0M SFalse -> let lambda_aK0N :: FalseSym0 ~ Let1627566576Scrutinee_1627565764Sym2 x_aJWK y_aJWL => Sing (Case_1627566584 x_aJWK y_aJWL FalseSym0) lambda_aK0N = let sScrutinee_1627565766 :: Sing (Let1627566586Scrutinee_1627565766Sym2 x_aJWK y_aJWL) sScrutinee_1627565766 = applySing (applySing (singFun2 (Proxy :: Proxy (:<=$)) (%:<=)) x_aK0K) y_aK0L in case sScrutinee_1627565766 of { STrue -> let lambda_aK0O :: TrueSym0 ~ Let1627566586Scrutinee_1627565766Sym2 x_aJWK y_aJWL => Sing (Case_1627566594 x_aJWK y_aJWL TrueSym0) lambda_aK0O = SLT in lambda_aK0O SFalse -> let lambda_aK0P :: FalseSym0 ~ Let1627566586Scrutinee_1627565766Sym2 x_aJWK y_aJWL => Sing (Case_1627566594 x_aJWK y_aJWL FalseSym0) lambda_aK0P = SGT in lambda_aK0P } :: Sing (Case_1627566594 x_aJWK y_aJWL (Let1627566586Scrutinee_1627565766Sym2 x_aJWK y_aJWL)) in lambda_aK0N } :: Sing (Case_1627566584 x_aJWK y_aJWL (Let1627566576Scrutinee_1627565764Sym2 x_aJWK y_aJWL)) in lambda_aK0J sX sY (%:<) sX sY = let lambda_aK0Q :: forall x_aJXs y_aJXt. (t_aK0x ~ x_aJXs, t_aK0y ~ y_aJXt) => Sing x_aJXs -> Sing y_aJXt -> Sing (Apply (Apply (:<$) x_aJXs) y_aJXt :: Bool) lambda_aK0Q x_aK0R y_aK0S = let sScrutinee_1627565768 :: Sing (Let1627566620Scrutinee_1627565768Sym2 x_aJXs y_aJXt) sScrutinee_1627565768 = applySing (applySing (singFun2 (Proxy :: Proxy CompareSym0) sCompare) x_aK0R) y_aK0S in case sScrutinee_1627565768 of { SLT -> let lambda_aK0T :: LTSym0 ~ Let1627566620Scrutinee_1627565768Sym2 x_aJXs y_aJXt => Sing (Case_1627566628 x_aJXs y_aJXt LTSym0) lambda_aK0T = STrue in lambda_aK0T SEQ -> let lambda_aK0U :: EQSym0 ~ Let1627566620Scrutinee_1627565768Sym2 x_aJXs y_aJXt => Sing (Case_1627566628 x_aJXs y_aJXt EQSym0) lambda_aK0U = SFalse in lambda_aK0U SGT -> let lambda_aK0V :: GTSym0 ~ Let1627566620Scrutinee_1627565768Sym2 x_aJXs y_aJXt => Sing (Case_1627566628 x_aJXs y_aJXt GTSym0) lambda_aK0V = SFalse in lambda_aK0V } :: Sing (Case_1627566628 x_aJXs y_aJXt (Let1627566620Scrutinee_1627565768Sym2 x_aJXs y_aJXt)) in lambda_aK0Q sX sY (%:<=) sX sY = let lambda_aK0W :: forall x_aJXZ y_aJY0. (t_aK0z ~ x_aJXZ, t_aK0A ~ y_aJY0) => Sing x_aJXZ -> Sing y_aJY0 -> Sing (Apply (Apply (:<=$) x_aJXZ) y_aJY0 :: Bool) lambda_aK0W x_aK0X y_aK0Y = let sScrutinee_1627565770 :: Sing (Let1627566653Scrutinee_1627565770Sym2 x_aJXZ y_aJY0) sScrutinee_1627565770 = applySing (applySing (singFun2 (Proxy :: Proxy CompareSym0) sCompare) x_aK0X) y_aK0Y in case sScrutinee_1627565770 of { SLT -> let lambda_aK0Z :: LTSym0 ~ Let1627566653Scrutinee_1627565770Sym2 x_aJXZ y_aJY0 => Sing (Case_1627566661 x_aJXZ y_aJY0 LTSym0) lambda_aK0Z = STrue in lambda_aK0Z SEQ -> let lambda_aK10 :: EQSym0 ~ Let1627566653Scrutinee_1627565770Sym2 x_aJXZ y_aJY0 => Sing (Case_1627566661 x_aJXZ y_aJY0 EQSym0) lambda_aK10 = STrue in lambda_aK10 SGT -> let lambda_aK11 :: GTSym0 ~ Let1627566653Scrutinee_1627565770Sym2 x_aJXZ y_aJY0 => Sing (Case_1627566661 x_aJXZ y_aJY0 GTSym0) lambda_aK11 = SFalse in lambda_aK11 } :: Sing (Case_1627566661 x_aJXZ y_aJY0 (Let1627566653Scrutinee_1627565770Sym2 x_aJXZ y_aJY0)) in lambda_aK0W sX sY (%:>) sX sY = let lambda_aK12 :: forall x_aJYw y_aJYx. (t_aK0B ~ x_aJYw, t_aK0C ~ y_aJYx) => Sing x_aJYw -> Sing y_aJYx -> Sing (Apply (Apply (:>$) x_aJYw) y_aJYx :: Bool) lambda_aK12 x_aK13 y_aK14 = let sScrutinee_1627565772 :: Sing (Let1627566686Scrutinee_1627565772Sym2 x_aJYw y_aJYx) sScrutinee_1627565772 = applySing (applySing (singFun2 (Proxy :: Proxy CompareSym0) sCompare) x_aK13) y_aK14 in case sScrutinee_1627565772 of { SLT -> let lambda_aK15 :: LTSym0 ~ Let1627566686Scrutinee_1627565772Sym2 x_aJYw y_aJYx => Sing (Case_1627566694 x_aJYw y_aJYx LTSym0) lambda_aK15 = SFalse in lambda_aK15 SEQ -> let lambda_aK16 :: EQSym0 ~ Let1627566686Scrutinee_1627565772Sym2 x_aJYw y_aJYx => Sing (Case_1627566694 x_aJYw y_aJYx EQSym0) lambda_aK16 = SFalse in lambda_aK16 SGT -> let lambda_aK17 :: GTSym0 ~ Let1627566686Scrutinee_1627565772Sym2 x_aJYw y_aJYx => Sing (Case_1627566694 x_aJYw y_aJYx GTSym0) lambda_aK17 = STrue in lambda_aK17 } :: Sing (Case_1627566694 x_aJYw y_aJYx (Let1627566686Scrutinee_1627565772Sym2 x_aJYw y_aJYx)) in lambda_aK12 sX sY (%:>=) sX sY = let lambda_aK18 :: forall x_aJZ3 y_aJZ4. (t_aK0D ~ x_aJZ3, t_aK0E ~ y_aJZ4) => Sing x_aJZ3 -> Sing y_aJZ4 -> Sing (Apply (Apply (:>=$) x_aJZ3) y_aJZ4 :: Bool) lambda_aK18 x_aK19 y_aK1a = let sScrutinee_1627565774 :: Sing (Let1627566719Scrutinee_1627565774Sym2 x_aJZ3 y_aJZ4) sScrutinee_1627565774 = applySing (applySing (singFun2 (Proxy :: Proxy CompareSym0) sCompare) x_aK19) y_aK1a in case sScrutinee_1627565774 of { SLT -> let lambda_aK1b :: LTSym0 ~ Let1627566719Scrutinee_1627565774Sym2 x_aJZ3 y_aJZ4 => Sing (Case_1627566727 x_aJZ3 y_aJZ4 LTSym0) lambda_aK1b = SFalse in lambda_aK1b SEQ -> let lambda_aK1c :: EQSym0 ~ Let1627566719Scrutinee_1627565774Sym2 x_aJZ3 y_aJZ4 => Sing (Case_1627566727 x_aJZ3 y_aJZ4 EQSym0) lambda_aK1c = STrue in lambda_aK1c SGT -> let lambda_aK1d :: GTSym0 ~ Let1627566719Scrutinee_1627565774Sym2 x_aJZ3 y_aJZ4 => Sing (Case_1627566727 x_aJZ3 y_aJZ4 GTSym0) lambda_aK1d = STrue in lambda_aK1d } :: Sing (Case_1627566727 x_aJZ3 y_aJZ4 (Let1627566719Scrutinee_1627565774Sym2 x_aJZ3 y_aJZ4)) in lambda_aK18 sX sY sMax sX sY = let lambda_aK1e :: forall x_aJZA y_aJZB. (t_aK0F ~ x_aJZA, t_aK0G ~ y_aJZB) => Sing x_aJZA -> Sing y_aJZB -> Sing (Apply (Apply MaxSym0 x_aJZA) y_aJZB :: a_aJJr) lambda_aK1e x_aK1f y_aK1g = let sScrutinee_1627565776 :: Sing (Let1627566752Scrutinee_1627565776Sym2 x_aJZA y_aJZB) sScrutinee_1627565776 = applySing (applySing (singFun2 (Proxy :: Proxy (:<=$)) (%:<=)) x_aK1f) y_aK1g in case sScrutinee_1627565776 of { STrue -> let lambda_aK1h :: TrueSym0 ~ Let1627566752Scrutinee_1627565776Sym2 x_aJZA y_aJZB => Sing (Case_1627566760 x_aJZA y_aJZB TrueSym0) lambda_aK1h = y_aK1g in lambda_aK1h SFalse -> let lambda_aK1i :: FalseSym0 ~ Let1627566752Scrutinee_1627565776Sym2 x_aJZA y_aJZB => Sing (Case_1627566760 x_aJZA y_aJZB FalseSym0) lambda_aK1i = x_aK1f in lambda_aK1i } :: Sing (Case_1627566760 x_aJZA y_aJZB (Let1627566752Scrutinee_1627565776Sym2 x_aJZA y_aJZB)) in lambda_aK1e sX sY sMin sX sY = let lambda_aK1j :: forall x_aK07 y_aK08. (t_aK0H ~ x_aK07, t_aK0I ~ y_aK08) => Sing x_aK07 -> Sing y_aK08 -> Sing (Apply (Apply MinSym0 x_aK07) y_aK08 :: a_aJJr) lambda_aK1j x_aK1k y_aK1l = let sScrutinee_1627565778 :: Sing (Let1627566785Scrutinee_1627565778Sym2 x_aK07 y_aK08) sScrutinee_1627565778 = applySing (applySing (singFun2 (Proxy :: Proxy (:<=$)) (%:<=)) x_aK1k) y_aK1l in case sScrutinee_1627565778 of { STrue -> let lambda_aK1m :: TrueSym0 ~ Let1627566785Scrutinee_1627565778Sym2 x_aK07 y_aK08 => Sing (Case_1627566793 x_aK07 y_aK08 TrueSym0) lambda_aK1m = x_aK1k in lambda_aK1m SFalse -> let lambda_aK1n :: FalseSym0 ~ Let1627566785Scrutinee_1627565778Sym2 x_aK07 y_aK08 => Sing (Case_1627566793 x_aK07 y_aK08 FalseSym0) lambda_aK1n = y_aK1l in lambda_aK1n } :: Sing (Case_1627566793 x_aK07 y_aK08 (Let1627566785Scrutinee_1627565778Sym2 x_aK07 y_aK08)) in lambda_aK1j sX sY sCompare :: SOrd kproxy_aK1o => Sing t_aK0v -> Sing t_aK0w -> Sing (Apply (Apply CompareSym0 t_aK0v) t_aK0w :: Ordering) (%:<) :: SOrd kproxy_aK1o => Sing t_aK0x -> Sing t_aK0y -> Sing (Apply (Apply (:<$) t_aK0x) t_aK0y :: Bool) (%:<=) :: SOrd kproxy_aK1o => Sing t_aK0z -> Sing t_aK0A -> Sing (Apply (Apply (:<=$) t_aK0z) t_aK0A :: Bool) (%:>) :: SOrd kproxy_aK1o => Sing t_aK0B -> Sing t_aK0C -> Sing (Apply (Apply (:>$) t_aK0B) t_aK0C :: Bool) (%:>=) :: SOrd kproxy_aK1o => Sing t_aK0D -> Sing t_aK0E -> Sing (Apply (Apply (:>=$) t_aK0D) t_aK0E :: Bool) sMax :: SOrd kproxy_aK1o => Sing t_aK0F -> Sing t_aK0G -> Sing (Apply (Apply MaxSym0 t_aK0F) t_aK0G :: a_aJJr) sMin :: SOrd kproxy_aK1o => Sing t_aK0H -> Sing t_aK0I -> Sing (Apply (Apply MinSym0 t_aK0H) t_aK0I :: a_aJJr) sThenCmp :: Sing t_aM7l -> Sing t_aM7m -> Sing (Apply (Apply ThenCmpSym0 t_aM7l) t_aM7m :: Ordering) sFoldl :: Sing t_aB34 -> Sing t_aB35 -> Sing t_aB36 -> Sing (Apply (Apply (Apply FoldlSym0 t_aB34) t_aB35) t_aB36 :: b_aB26) -- | The type constructor Any is type to which you can unsafely -- coerce any lifted type, and back. -- --
-- length :: forall a. [a] -> Int ---- -- and the list datacon for the empty list has type -- --
-- [] :: forall a. [a] ---- -- In order to compose these two terms as length [] a type -- application is required, but there is no constraint on the choice. In -- this situation GHC uses Any: -- --
-- length (Any *) ([] (Any *)) ---- -- Above, we print kinds explicitly, as if with -- -fprint-explicit-kinds. -- -- Note that Any is kind polymorphic; its kind is thus -- forall k. k. -- | Members of the SDecide "kind" class support decidable equality. -- Instances of this class are generated alongside singleton definitions -- for datatypes that derive an Eq instance. class (kparam ~ KProxy) => SDecide (kparam :: KProxy k) -- | Compute a proof or disproof of equality, given two singletons. (%~) :: SDecide kparam => Sing a -> Sing b -> Decision (a :~: b) -- | Propositional equality. If a :~: b is inhabited by some -- terminating value, then the type a is the same as the type -- b. To use this equality in practice, pattern-match on the -- a :~: b to get out the Refl constructor; in the body -- of the pattern-match, the compiler knows that a ~ b. data (:~:) (a :: k) (b :: k) :: k -> k -> * Refl :: (:~:) k b b -- | Uninhabited data type data Void :: * -- | Because we can never create a value of type Void, a function -- that type-checks at a -> Void shows that objects of type -- a can never exist. Thus, we say that a is -- Refuted type Refuted a = a -> Void -- | A Decision about a type a is either a proof of -- existence or a proof that a cannot exist. data Decision a -- | Witness for a Proved :: a -> Decision a -- | Proof that no a exists Disproved :: (Refuted a) -> Decision a -- | A concrete, poly-kinded proxy type data Proxy (t :: k) :: k -> * Proxy :: Proxy -- | A concrete, promotable proxy type, for use at the kind level There are -- no instances for this because it is intended at the kind level only data KProxy t :: * -> * KProxy :: KProxy t -- | An existentially-quantified singleton. This type is useful when -- you want a singleton type, but there is no way of knowing, at -- compile-time, what the type index will be. To make use of this type, -- you will generally have to use a pattern-match: -- --
-- foo :: Bool -> ...
-- foo b = case toSing b of
-- SomeSing sb -> {- fancy dependently-typed code with sb -}
--
--
-- An example like the one above may be easier to write using
-- withSomeSing.
data SomeSing (kproxy :: KProxy k)
SomeSing :: Sing (a :: k) -> SomeSing (KProxy :: KProxy k)
-- | The promotion of error. This version is more poly-kinded for
-- easier use.
data ErrorSym0 (l_a13LW :: TyFun k0_a13wC k_a13wB)
type TrueSym0 = True
type FalseSym0 = False
type LTSym0 = LT
type EQSym0 = EQ
type GTSym0 = GT
type Tuple0Sym0 = '()
data Tuple2Sym0 (l_axS9 :: TyFun a_12 (TyFun b_13 (a_12, b_13) -> *))
data Tuple2Sym1 (l_axSc :: a_12) (l_axSb :: TyFun b_13 (a_12, b_13))
type Tuple2Sym2 (t_axS7 :: a_12) (t_axS8 :: b_13) = '(t_axS7, t_axS8)
data Tuple3Sym0 (l_axSt :: TyFun a_12 (TyFun b_13 (TyFun c_14 (a_12, b_13, c_14) -> *) -> *))
data Tuple3Sym1 (l_axSw :: a_12) (l_axSv :: TyFun b_13 (TyFun c_14 (a_12, b_13, c_14) -> *))
data Tuple3Sym2 (l_axSz :: a_12) (l_axSA :: b_13) (l_axSy :: TyFun c_14 (a_12, b_13, c_14))
type Tuple3Sym3 (t_axSq :: a_12) (t_axSr :: b_13) (t_axSs :: c_14) = '(t_axSq, t_axSr, t_axSs)
data Tuple4Sym0 (l_axSX :: TyFun a_12 (TyFun b_13 (TyFun c_14 (TyFun d_15 (a_12, b_13, c_14, d_15) -> *) -> *) -> *))
data Tuple4Sym1 (l_axT0 :: a_12) (l_axSZ :: TyFun b_13 (TyFun c_14 (TyFun d_15 (a_12, b_13, c_14, d_15) -> *) -> *))
data Tuple4Sym2 (l_axT3 :: a_12) (l_axT4 :: b_13) (l_axT2 :: TyFun c_14 (TyFun d_15 (a_12, b_13, c_14, d_15) -> *))
data Tuple4Sym3 (l_axT7 :: a_12) (l_axT8 :: b_13) (l_axT9 :: c_14) (l_axT6 :: TyFun d_15 (a_12, b_13, c_14, d_15))
type Tuple4Sym4 (t_axST :: a_12) (t_axSU :: b_13) (t_axSV :: c_14) (t_axSW :: d_15) = '(t_axST, t_axSU, t_axSV, t_axSW)
data Tuple5Sym0 (l_axTC :: TyFun a_12 (TyFun b_13 (TyFun c_14 (TyFun d_15 (TyFun e_16 (a_12, b_13, c_14, d_15, e_16) -> *) -> *) -> *) -> *))
data Tuple5Sym1 (l_axTF :: a_12) (l_axTE :: TyFun b_13 (TyFun c_14 (TyFun d_15 (TyFun e_16 (a_12, b_13, c_14, d_15, e_16) -> *) -> *) -> *))
data Tuple5Sym2 (l_axTI :: a_12) (l_axTJ :: b_13) (l_axTH :: TyFun c_14 (TyFun d_15 (TyFun e_16 (a_12, b_13, c_14, d_15, e_16) -> *) -> *))
data Tuple5Sym3 (l_axTM :: a_12) (l_axTN :: b_13) (l_axTO :: c_14) (l_axTL :: TyFun d_15 (TyFun e_16 (a_12, b_13, c_14, d_15, e_16) -> *))
data Tuple5Sym4 (l_axTR :: a_12) (l_axTS :: b_13) (l_axTT :: c_14) (l_axTU :: d_15) (l_axTQ :: TyFun e_16 (a_12, b_13, c_14, d_15, e_16))
type Tuple5Sym5 (t_axTx :: a_12) (t_axTy :: b_13) (t_axTz :: c_14) (t_axTA :: d_15) (t_axTB :: e_16) = '(t_axTx, t_axTy, t_axTz, t_axTA, t_axTB)
data Tuple6Sym0 (l_axUt :: TyFun a_12 (TyFun b_13 (TyFun c_14 (TyFun d_15 (TyFun e_16 (TyFun f_17 (a_12, b_13, c_14, d_15, e_16, f_17) -> *) -> *) -> *) -> *) -> *))
data Tuple6Sym1 (l_axUw :: a_12) (l_axUv :: TyFun b_13 (TyFun c_14 (TyFun d_15 (TyFun e_16 (TyFun f_17 (a_12, b_13, c_14, d_15, e_16, f_17) -> *) -> *) -> *) -> *))
data Tuple6Sym2 (l_axUz :: a_12) (l_axUA :: b_13) (l_axUy :: TyFun c_14 (TyFun d_15 (TyFun e_16 (TyFun f_17 (a_12, b_13, c_14, d_15, e_16, f_17) -> *) -> *) -> *))
data Tuple6Sym3 (l_axUD :: a_12) (l_axUE :: b_13) (l_axUF :: c_14) (l_axUC :: TyFun d_15 (TyFun e_16 (TyFun f_17 (a_12, b_13, c_14, d_15, e_16, f_17) -> *) -> *))
data Tuple6Sym4 (l_axUI :: a_12) (l_axUJ :: b_13) (l_axUK :: c_14) (l_axUL :: d_15) (l_axUH :: TyFun e_16 (TyFun f_17 (a_12, b_13, c_14, d_15, e_16, f_17) -> *))
data Tuple6Sym5 (l_axUO :: a_12) (l_axUP :: b_13) (l_axUQ :: c_14) (l_axUR :: d_15) (l_axUS :: e_16) (l_axUN :: TyFun f_17 (a_12, b_13, c_14, d_15, e_16, f_17))
type Tuple6Sym6 (t_axUn :: a_12) (t_axUo :: b_13) (t_axUp :: c_14) (t_axUq :: d_15) (t_axUr :: e_16) (t_axUs :: f_17) = '(t_axUn, t_axUo, t_axUp, t_axUq, t_axUr, t_axUs)
data Tuple7Sym0 (l_axVx :: TyFun a_12 (TyFun b_13 (TyFun c_14 (TyFun d_15 (TyFun e_16 (TyFun f_17 (TyFun g_18 (a_12, b_13, c_14, d_15, e_16, f_17, g_18) -> *) -> *) -> *) -> *) -> *) -> *))
data Tuple7Sym1 (l_axVA :: a_12) (l_axVz :: TyFun b_13 (TyFun c_14 (TyFun d_15 (TyFun e_16 (TyFun f_17 (TyFun g_18 (a_12, b_13, c_14, d_15, e_16, f_17, g_18) -> *) -> *) -> *) -> *) -> *))
data Tuple7Sym2 (l_axVD :: a_12) (l_axVE :: b_13) (l_axVC :: TyFun c_14 (TyFun d_15 (TyFun e_16 (TyFun f_17 (TyFun g_18 (a_12, b_13, c_14, d_15, e_16, f_17, g_18) -> *) -> *) -> *) -> *))
data Tuple7Sym3 (l_axVH :: a_12) (l_axVI :: b_13) (l_axVJ :: c_14) (l_axVG :: TyFun d_15 (TyFun e_16 (TyFun f_17 (TyFun g_18 (a_12, b_13, c_14, d_15, e_16, f_17, g_18) -> *) -> *) -> *))
data Tuple7Sym4 (l_axVM :: a_12) (l_axVN :: b_13) (l_axVO :: c_14) (l_axVP :: d_15) (l_axVL :: TyFun e_16 (TyFun f_17 (TyFun g_18 (a_12, b_13, c_14, d_15, e_16, f_17, g_18) -> *) -> *))
data Tuple7Sym5 (l_axVS :: a_12) (l_axVT :: b_13) (l_axVU :: c_14) (l_axVV :: d_15) (l_axVW :: e_16) (l_axVR :: TyFun f_17 (TyFun g_18 (a_12, b_13, c_14, d_15, e_16, f_17, g_18) -> *))
data Tuple7Sym6 (l_axVZ :: a_12) (l_axW0 :: b_13) (l_axW1 :: c_14) (l_axW2 :: d_15) (l_axW3 :: e_16) (l_axW4 :: f_17) (l_axVY :: TyFun g_18 (a_12, b_13, c_14, d_15, e_16, f_17, g_18))
type Tuple7Sym7 (t_axVq :: a_12) (t_axVr :: b_13) (t_axVs :: c_14) (t_axVt :: d_15) (t_axVu :: e_16) (t_axVv :: f_17) (t_axVw :: g_18) = '(t_axVq, t_axVr, t_axVs, t_axVt, t_axVu, t_axVv, t_axVw)
data CompareSym0 (l_aJVE :: TyFun a_aJJr (TyFun a_aJJr Ordering -> *))
data ThenCmpSym0 (l_aM77 :: TyFun Ordering (TyFun Ordering Ordering -> *))
data FoldlSym0 (l_aB2j :: TyFun (TyFun b_aB26 (TyFun a_aB25 b_aB26 -> *) -> *) (TyFun b_aB26 (TyFun [a_aB25] b_aB26 -> *) -> *))
-- | This class (which users should never see) is to be instantiated in
-- order to use an otherwise-unused data constructor, such as the
-- "kind-inference" data constructor for defunctionalization symbols.
class SuppressUnusedWarnings (t :: k)
suppressUnusedWarnings :: SuppressUnusedWarnings t => Proxy t -> ()
-- | Defines functions and datatypes relating to the singleton for
-- Either, including a singletons version of all the definitions
-- in Data.Either.
--
-- Because many of these definitions are produced by Template Haskell, it
-- is not possible to create proper Haddock documentation. Please look up
-- the corresponding operation in Data.Either. Also, please
-- excuse the apparent repeated variable names. This is due to an
-- interaction between Template Haskell and Haddock.
module Data.Singletons.Prelude.Either
-- | The singleton kind-indexed data family.
type SEither = (Sing :: Either a_a7DQ b_a7DR -> *)
either_ :: (a_a16pC -> c_a16pD) -> (b_a16pE -> c_a16pD) -> Either a_a16pC b_a16pE -> c_a16pD
sEither_ :: Sing t_a16q8 -> Sing t_a16q9 -> Sing t_a16qa -> Sing (Apply (Apply (Apply Either_Sym0 t_a16q8) t_a16q9) t_a16qa :: c_a16pD)
sLefts :: Sing t_a16Nw -> Sing (Apply LeftsSym0 t_a16Nw :: [a_a16LK])
sRights :: Sing t_a16Nv -> Sing (Apply RightsSym0 t_a16Nv :: [b_a16LQ])
sPartitionEithers :: Sing t_a16Nu -> Sing (Apply PartitionEithersSym0 t_a16Nu :: ([a_a16LU], [b_a16LV]))
sIsLeft :: Sing t_a16Nt -> Sing (Apply IsLeftSym0 t_a16Nt :: Bool)
sIsRight :: Sing t_a16Ns -> Sing (Apply IsRightSym0 t_a16Ns :: Bool)
data LeftSym0 (l_axRR :: TyFun a_a7DQ (Either a_a7DQ b_a7DR))
type LeftSym1 (t_axRQ :: a_a7DQ) = Left t_axRQ
data RightSym0 (l_axRU :: TyFun b_a7DR (Either a_a7DQ b_a7DR))
type RightSym1 (t_axRT :: b_a7DR) = Right t_axRT
data Either_Sym0 (l_a16pM :: TyFun (TyFun a_a16pC c_a16pD -> *) (TyFun (TyFun b_a16pE c_a16pD -> *) (TyFun (Either a_a16pC b_a16pE) c_a16pD -> *) -> *))
data Either_Sym1 (l_a16pP :: TyFun a_a16pC c_a16pD -> *) (l_a16pO :: TyFun (TyFun b_a16pE c_a16pD -> *) (TyFun (Either a_a16pC b_a16pE) c_a16pD -> *))
data Either_Sym2 (l_a16pS :: TyFun a_a16pC c_a16pD -> *) (l_a16pT :: TyFun b_a16pE c_a16pD -> *) (l_a16pR :: TyFun (Either a_a16pC b_a16pE) c_a16pD)
type Either_Sym3 (t_a16pJ :: TyFun a_a16pC c_a16pD -> *) (t_a16pK :: TyFun b_a16pE c_a16pD -> *) (t_a16pL :: Either a_a16pC b_a16pE) = Either_ t_a16pJ t_a16pK t_a16pL
data LeftsSym0 (l_a16Nj :: TyFun [Either a_a16LK b_a16LL] [a_a16LK])
type LeftsSym1 (t_a16Ni :: [Either a_a16LK b_a16LL]) = Lefts t_a16Ni
data RightsSym0 (l_a16N9 :: TyFun [Either a_a16LP b_a16LQ] [b_a16LQ])
type RightsSym1 (t_a16N8 :: [Either a_a16LP b_a16LQ]) = Rights t_a16N8
data IsLeftSym0 (l_a16Mj :: TyFun (Either a_a16M4 b_a16M5) Bool)
type IsLeftSym1 (t_a16Mi :: Either a_a16M4 b_a16M5) = IsLeft t_a16Mi
data IsRightSym0 (l_a16M9 :: TyFun (Either a_a16M6 b_a16M7) Bool)
type IsRightSym1 (t_a16M8 :: Either a_a16M6 b_a16M7) = IsRight t_a16M8
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Either.Let1627654355RightSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Either.Let1627654355RightSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Either.Let1627654355RightSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Either.Let1627654355LeftSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Either.Let1627654355LeftSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Either.Let1627654355LeftSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Either.IsRightSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Either.IsLeftSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Either.PartitionEithersSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Either.RightsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Either.LeftsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Either.Either_Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Either.Either_Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Either.Either_Sym0
-- | Defines promoted functions and datatypes relating to Either,
-- including a promoted version of all the definitions in
-- Data.Either.
--
-- Because many of these definitions are produced by Template Haskell, it
-- is not possible to create proper Haddock documentation. Please look up
-- the corresponding operation in Data.Either. Also, please
-- excuse the apparent repeated variable names. This is due to an
-- interaction between Template Haskell and Haddock.
module Data.Promotion.Prelude.Either
either_ :: (a_a16pC -> c_a16pD) -> (b_a16pE -> c_a16pD) -> Either a_a16pC b_a16pE -> c_a16pD
data LeftSym0 (l_axRR :: TyFun a_a7DQ (Either a_a7DQ b_a7DR))
type LeftSym1 (t_axRQ :: a_a7DQ) = Left t_axRQ
data RightSym0 (l_axRU :: TyFun b_a7DR (Either a_a7DQ b_a7DR))
type RightSym1 (t_axRT :: b_a7DR) = Right t_axRT
data Either_Sym0 (l_a16pM :: TyFun (TyFun a_a16pC c_a16pD -> *) (TyFun (TyFun b_a16pE c_a16pD -> *) (TyFun (Either a_a16pC b_a16pE) c_a16pD -> *) -> *))
data Either_Sym1 (l_a16pP :: TyFun a_a16pC c_a16pD -> *) (l_a16pO :: TyFun (TyFun b_a16pE c_a16pD -> *) (TyFun (Either a_a16pC b_a16pE) c_a16pD -> *))
data Either_Sym2 (l_a16pS :: TyFun a_a16pC c_a16pD -> *) (l_a16pT :: TyFun b_a16pE c_a16pD -> *) (l_a16pR :: TyFun (Either a_a16pC b_a16pE) c_a16pD)
type Either_Sym3 (t_a16pJ :: TyFun a_a16pC c_a16pD -> *) (t_a16pK :: TyFun b_a16pE c_a16pD -> *) (t_a16pL :: Either a_a16pC b_a16pE) = Either_ t_a16pJ t_a16pK t_a16pL
data LeftsSym0 (l_a16Nj :: TyFun [Either a_a16LK b_a16LL] [a_a16LK])
type LeftsSym1 (t_a16Ni :: [Either a_a16LK b_a16LL]) = Lefts t_a16Ni
data RightsSym0 (l_a16N9 :: TyFun [Either a_a16LP b_a16LQ] [b_a16LQ])
type RightsSym1 (t_a16N8 :: [Either a_a16LP b_a16LQ]) = Rights t_a16N8
data IsLeftSym0 (l_a16Mj :: TyFun (Either a_a16M4 b_a16M5) Bool)
type IsLeftSym1 (t_a16Mi :: Either a_a16M4 b_a16M5) = IsLeft t_a16Mi
data IsRightSym0 (l_a16M9 :: TyFun (Either a_a16M6 b_a16M7) Bool)
type IsRightSym1 (t_a16M8 :: Either a_a16M6 b_a16M7) = IsRight t_a16M8
-- | Defines functions and datatypes relating to the singleton for tuples,
-- including a singletons version of all the definitions in
-- Data.Tuple.
--
-- Because many of these definitions are produced by Template Haskell, it
-- is not possible to create proper Haddock documentation. Please look up
-- the corresponding operation in Data.Tuple. Also, please
-- excuse the apparent repeated variable names. This is due to an
-- interaction between Template Haskell and Haddock.
module Data.Singletons.Prelude.Tuple
-- | The singleton kind-indexed data family.
type STuple0 = (Sing :: () -> *)
type STuple2 = (Sing :: (a_12, b_13) -> *)
type STuple3 = (Sing :: (a_12, b_13, c_14) -> *)
type STuple4 = (Sing :: (a_12, b_13, c_14, d_15) -> *)
type STuple5 = (Sing :: (a_12, b_13, c_14, d_15, e_16) -> *)
type STuple6 = (Sing :: (a_12, b_13, c_14, d_15, e_16, f_17) -> *)
type STuple7 = (Sing :: (a_12, b_13, c_14, d_15, e_16, f_17, g_18) -> *)
sFst :: Sing t_a18PR -> Sing (Apply FstSym0 t_a18PR :: a_a18OB)
sSnd :: Sing t_a18PQ -> Sing (Apply SndSym0 t_a18PQ :: b_a18OF)
sCurry :: Sing t_a18PN -> Sing t_a18PO -> Sing t_a18PP -> Sing (Apply (Apply (Apply CurrySym0 t_a18PN) t_a18PO) t_a18PP :: c_a18OJ)
sUncurry :: Sing t_a18PS -> Sing t_a18PT -> Sing (Apply (Apply UncurrySym0 t_a18PS) t_a18PT :: c_a18OP)
sSwap :: Sing t_a18PM -> Sing (Apply SwapSym0 t_a18PM :: (b_a18OT, a_a18OS))
type Tuple0Sym0 = '()
data Tuple2Sym0 (l_axS9 :: TyFun a_12 (TyFun b_13 (a_12, b_13) -> *))
data Tuple2Sym1 (l_axSc :: a_12) (l_axSb :: TyFun b_13 (a_12, b_13))
type Tuple2Sym2 (t_axS7 :: a_12) (t_axS8 :: b_13) = '(t_axS7, t_axS8)
data Tuple3Sym0 (l_axSt :: TyFun a_12 (TyFun b_13 (TyFun c_14 (a_12, b_13, c_14) -> *) -> *))
data Tuple3Sym1 (l_axSw :: a_12) (l_axSv :: TyFun b_13 (TyFun c_14 (a_12, b_13, c_14) -> *))
data Tuple3Sym2 (l_axSz :: a_12) (l_axSA :: b_13) (l_axSy :: TyFun c_14 (a_12, b_13, c_14))
type Tuple3Sym3 (t_axSq :: a_12) (t_axSr :: b_13) (t_axSs :: c_14) = '(t_axSq, t_axSr, t_axSs)
data Tuple4Sym0 (l_axSX :: TyFun a_12 (TyFun b_13 (TyFun c_14 (TyFun d_15 (a_12, b_13, c_14, d_15) -> *) -> *) -> *))
data Tuple4Sym1 (l_axT0 :: a_12) (l_axSZ :: TyFun b_13 (TyFun c_14 (TyFun d_15 (a_12, b_13, c_14, d_15) -> *) -> *))
data Tuple4Sym2 (l_axT3 :: a_12) (l_axT4 :: b_13) (l_axT2 :: TyFun c_14 (TyFun d_15 (a_12, b_13, c_14, d_15) -> *))
data Tuple4Sym3 (l_axT7 :: a_12) (l_axT8 :: b_13) (l_axT9 :: c_14) (l_axT6 :: TyFun d_15 (a_12, b_13, c_14, d_15))
type Tuple4Sym4 (t_axST :: a_12) (t_axSU :: b_13) (t_axSV :: c_14) (t_axSW :: d_15) = '(t_axST, t_axSU, t_axSV, t_axSW)
data Tuple5Sym0 (l_axTC :: TyFun a_12 (TyFun b_13 (TyFun c_14 (TyFun d_15 (TyFun e_16 (a_12, b_13, c_14, d_15, e_16) -> *) -> *) -> *) -> *))
data Tuple5Sym1 (l_axTF :: a_12) (l_axTE :: TyFun b_13 (TyFun c_14 (TyFun d_15 (TyFun e_16 (a_12, b_13, c_14, d_15, e_16) -> *) -> *) -> *))
data Tuple5Sym2 (l_axTI :: a_12) (l_axTJ :: b_13) (l_axTH :: TyFun c_14 (TyFun d_15 (TyFun e_16 (a_12, b_13, c_14, d_15, e_16) -> *) -> *))
data Tuple5Sym3 (l_axTM :: a_12) (l_axTN :: b_13) (l_axTO :: c_14) (l_axTL :: TyFun d_15 (TyFun e_16 (a_12, b_13, c_14, d_15, e_16) -> *))
data Tuple5Sym4 (l_axTR :: a_12) (l_axTS :: b_13) (l_axTT :: c_14) (l_axTU :: d_15) (l_axTQ :: TyFun e_16 (a_12, b_13, c_14, d_15, e_16))
type Tuple5Sym5 (t_axTx :: a_12) (t_axTy :: b_13) (t_axTz :: c_14) (t_axTA :: d_15) (t_axTB :: e_16) = '(t_axTx, t_axTy, t_axTz, t_axTA, t_axTB)
data Tuple6Sym0 (l_axUt :: TyFun a_12 (TyFun b_13 (TyFun c_14 (TyFun d_15 (TyFun e_16 (TyFun f_17 (a_12, b_13, c_14, d_15, e_16, f_17) -> *) -> *) -> *) -> *) -> *))
data Tuple6Sym1 (l_axUw :: a_12) (l_axUv :: TyFun b_13 (TyFun c_14 (TyFun d_15 (TyFun e_16 (TyFun f_17 (a_12, b_13, c_14, d_15, e_16, f_17) -> *) -> *) -> *) -> *))
data Tuple6Sym2 (l_axUz :: a_12) (l_axUA :: b_13) (l_axUy :: TyFun c_14 (TyFun d_15 (TyFun e_16 (TyFun f_17 (a_12, b_13, c_14, d_15, e_16, f_17) -> *) -> *) -> *))
data Tuple6Sym3 (l_axUD :: a_12) (l_axUE :: b_13) (l_axUF :: c_14) (l_axUC :: TyFun d_15 (TyFun e_16 (TyFun f_17 (a_12, b_13, c_14, d_15, e_16, f_17) -> *) -> *))
data Tuple6Sym4 (l_axUI :: a_12) (l_axUJ :: b_13) (l_axUK :: c_14) (l_axUL :: d_15) (l_axUH :: TyFun e_16 (TyFun f_17 (a_12, b_13, c_14, d_15, e_16, f_17) -> *))
data Tuple6Sym5 (l_axUO :: a_12) (l_axUP :: b_13) (l_axUQ :: c_14) (l_axUR :: d_15) (l_axUS :: e_16) (l_axUN :: TyFun f_17 (a_12, b_13, c_14, d_15, e_16, f_17))
type Tuple6Sym6 (t_axUn :: a_12) (t_axUo :: b_13) (t_axUp :: c_14) (t_axUq :: d_15) (t_axUr :: e_16) (t_axUs :: f_17) = '(t_axUn, t_axUo, t_axUp, t_axUq, t_axUr, t_axUs)
data Tuple7Sym0 (l_axVx :: TyFun a_12 (TyFun b_13 (TyFun c_14 (TyFun d_15 (TyFun e_16 (TyFun f_17 (TyFun g_18 (a_12, b_13, c_14, d_15, e_16, f_17, g_18) -> *) -> *) -> *) -> *) -> *) -> *))
data Tuple7Sym1 (l_axVA :: a_12) (l_axVz :: TyFun b_13 (TyFun c_14 (TyFun d_15 (TyFun e_16 (TyFun f_17 (TyFun g_18 (a_12, b_13, c_14, d_15, e_16, f_17, g_18) -> *) -> *) -> *) -> *) -> *))
data Tuple7Sym2 (l_axVD :: a_12) (l_axVE :: b_13) (l_axVC :: TyFun c_14 (TyFun d_15 (TyFun e_16 (TyFun f_17 (TyFun g_18 (a_12, b_13, c_14, d_15, e_16, f_17, g_18) -> *) -> *) -> *) -> *))
data Tuple7Sym3 (l_axVH :: a_12) (l_axVI :: b_13) (l_axVJ :: c_14) (l_axVG :: TyFun d_15 (TyFun e_16 (TyFun f_17 (TyFun g_18 (a_12, b_13, c_14, d_15, e_16, f_17, g_18) -> *) -> *) -> *))
data Tuple7Sym4 (l_axVM :: a_12) (l_axVN :: b_13) (l_axVO :: c_14) (l_axVP :: d_15) (l_axVL :: TyFun e_16 (TyFun f_17 (TyFun g_18 (a_12, b_13, c_14, d_15, e_16, f_17, g_18) -> *) -> *))
data Tuple7Sym5 (l_axVS :: a_12) (l_axVT :: b_13) (l_axVU :: c_14) (l_axVV :: d_15) (l_axVW :: e_16) (l_axVR :: TyFun f_17 (TyFun g_18 (a_12, b_13, c_14, d_15, e_16, f_17, g_18) -> *))
data Tuple7Sym6 (l_axVZ :: a_12) (l_axW0 :: b_13) (l_axW1 :: c_14) (l_axW2 :: d_15) (l_axW3 :: e_16) (l_axW4 :: f_17) (l_axVY :: TyFun g_18 (a_12, b_13, c_14, d_15, e_16, f_17, g_18))
type Tuple7Sym7 (t_axVq :: a_12) (t_axVr :: b_13) (t_axVs :: c_14) (t_axVt :: d_15) (t_axVu :: e_16) (t_axVv :: f_17) (t_axVw :: g_18) = '(t_axVq, t_axVr, t_axVs, t_axVt, t_axVu, t_axVv, t_axVw)
data FstSym0 (l_a18Pu :: TyFun (a_a18OB, b_a18OC) a_a18OB)
type FstSym1 (t_a18Pt :: (a_a18OB, b_a18OC)) = Fst t_a18Pt
data SndSym0 (l_a18Pm :: TyFun (a_a18OE, b_a18OF) b_a18OF)
type SndSym1 (t_a18Pl :: (a_a18OE, b_a18OF)) = Snd t_a18Pl
data CurrySym0 (l_a18P6 :: TyFun (TyFun (a_a18OH, b_a18OI) c_a18OJ -> *) (TyFun a_a18OH (TyFun b_a18OI c_a18OJ -> *) -> *))
data CurrySym1 (l_a18P9 :: TyFun (a_a18OH, b_a18OI) c_a18OJ -> *) (l_a18P8 :: TyFun a_a18OH (TyFun b_a18OI c_a18OJ -> *))
data CurrySym2 (l_a18Pc :: TyFun (a_a18OH, b_a18OI) c_a18OJ -> *) (l_a18Pd :: a_a18OH) (l_a18Pb :: TyFun b_a18OI c_a18OJ)
type CurrySym3 (t_a18P3 :: TyFun (a_a18OH, b_a18OI) c_a18OJ -> *) (t_a18P4 :: a_a18OH) (t_a18P5 :: b_a18OI) = Curry t_a18P3 t_a18P4 t_a18P5
data UncurrySym0 (l_a18PD :: TyFun (TyFun a_a18ON (TyFun b_a18OO c_a18OP -> *) -> *) (TyFun (a_a18ON, b_a18OO) c_a18OP -> *))
data UncurrySym1 (l_a18PG :: TyFun a_a18ON (TyFun b_a18OO c_a18OP -> *) -> *) (l_a18PF :: TyFun (a_a18ON, b_a18OO) c_a18OP)
type UncurrySym2 (t_a18PB :: TyFun a_a18ON (TyFun b_a18OO c_a18OP -> *) -> *) (t_a18PC :: (a_a18ON, b_a18OO)) = Uncurry t_a18PB t_a18PC
data SwapSym0 (l_a18OY :: TyFun (a_a18OS, b_a18OT) (b_a18OT, a_a18OS))
type SwapSym1 (t_a18OX :: (a_a18OS, b_a18OT)) = Swap t_a18OX
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Tuple.SwapSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Tuple.CurrySym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Tuple.CurrySym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Tuple.CurrySym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Tuple.SndSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Tuple.FstSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Tuple.UncurrySym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Tuple.UncurrySym0
-- | Defines promoted functions and datatypes relating to tuples, including
-- a promoted version of all the definitions in Data.Tuple.
--
-- Because many of these definitions are produced by Template Haskell, it
-- is not possible to create proper Haddock documentation. Please look up
-- the corresponding operation in Data.Tuple. Also, please
-- excuse the apparent repeated variable names. This is due to an
-- interaction between Template Haskell and Haddock.
module Data.Promotion.Prelude.Tuple
type Tuple0Sym0 = '()
data Tuple2Sym0 (l_axS9 :: TyFun a_12 (TyFun b_13 (a_12, b_13) -> *))
data Tuple2Sym1 (l_axSc :: a_12) (l_axSb :: TyFun b_13 (a_12, b_13))
type Tuple2Sym2 (t_axS7 :: a_12) (t_axS8 :: b_13) = '(t_axS7, t_axS8)
data Tuple3Sym0 (l_axSt :: TyFun a_12 (TyFun b_13 (TyFun c_14 (a_12, b_13, c_14) -> *) -> *))
data Tuple3Sym1 (l_axSw :: a_12) (l_axSv :: TyFun b_13 (TyFun c_14 (a_12, b_13, c_14) -> *))
data Tuple3Sym2 (l_axSz :: a_12) (l_axSA :: b_13) (l_axSy :: TyFun c_14 (a_12, b_13, c_14))
type Tuple3Sym3 (t_axSq :: a_12) (t_axSr :: b_13) (t_axSs :: c_14) = '(t_axSq, t_axSr, t_axSs)
data Tuple4Sym0 (l_axSX :: TyFun a_12 (TyFun b_13 (TyFun c_14 (TyFun d_15 (a_12, b_13, c_14, d_15) -> *) -> *) -> *))
data Tuple4Sym1 (l_axT0 :: a_12) (l_axSZ :: TyFun b_13 (TyFun c_14 (TyFun d_15 (a_12, b_13, c_14, d_15) -> *) -> *))
data Tuple4Sym2 (l_axT3 :: a_12) (l_axT4 :: b_13) (l_axT2 :: TyFun c_14 (TyFun d_15 (a_12, b_13, c_14, d_15) -> *))
data Tuple4Sym3 (l_axT7 :: a_12) (l_axT8 :: b_13) (l_axT9 :: c_14) (l_axT6 :: TyFun d_15 (a_12, b_13, c_14, d_15))
type Tuple4Sym4 (t_axST :: a_12) (t_axSU :: b_13) (t_axSV :: c_14) (t_axSW :: d_15) = '(t_axST, t_axSU, t_axSV, t_axSW)
data Tuple5Sym0 (l_axTC :: TyFun a_12 (TyFun b_13 (TyFun c_14 (TyFun d_15 (TyFun e_16 (a_12, b_13, c_14, d_15, e_16) -> *) -> *) -> *) -> *))
data Tuple5Sym1 (l_axTF :: a_12) (l_axTE :: TyFun b_13 (TyFun c_14 (TyFun d_15 (TyFun e_16 (a_12, b_13, c_14, d_15, e_16) -> *) -> *) -> *))
data Tuple5Sym2 (l_axTI :: a_12) (l_axTJ :: b_13) (l_axTH :: TyFun c_14 (TyFun d_15 (TyFun e_16 (a_12, b_13, c_14, d_15, e_16) -> *) -> *))
data Tuple5Sym3 (l_axTM :: a_12) (l_axTN :: b_13) (l_axTO :: c_14) (l_axTL :: TyFun d_15 (TyFun e_16 (a_12, b_13, c_14, d_15, e_16) -> *))
data Tuple5Sym4 (l_axTR :: a_12) (l_axTS :: b_13) (l_axTT :: c_14) (l_axTU :: d_15) (l_axTQ :: TyFun e_16 (a_12, b_13, c_14, d_15, e_16))
type Tuple5Sym5 (t_axTx :: a_12) (t_axTy :: b_13) (t_axTz :: c_14) (t_axTA :: d_15) (t_axTB :: e_16) = '(t_axTx, t_axTy, t_axTz, t_axTA, t_axTB)
data Tuple6Sym0 (l_axUt :: TyFun a_12 (TyFun b_13 (TyFun c_14 (TyFun d_15 (TyFun e_16 (TyFun f_17 (a_12, b_13, c_14, d_15, e_16, f_17) -> *) -> *) -> *) -> *) -> *))
data Tuple6Sym1 (l_axUw :: a_12) (l_axUv :: TyFun b_13 (TyFun c_14 (TyFun d_15 (TyFun e_16 (TyFun f_17 (a_12, b_13, c_14, d_15, e_16, f_17) -> *) -> *) -> *) -> *))
data Tuple6Sym2 (l_axUz :: a_12) (l_axUA :: b_13) (l_axUy :: TyFun c_14 (TyFun d_15 (TyFun e_16 (TyFun f_17 (a_12, b_13, c_14, d_15, e_16, f_17) -> *) -> *) -> *))
data Tuple6Sym3 (l_axUD :: a_12) (l_axUE :: b_13) (l_axUF :: c_14) (l_axUC :: TyFun d_15 (TyFun e_16 (TyFun f_17 (a_12, b_13, c_14, d_15, e_16, f_17) -> *) -> *))
data Tuple6Sym4 (l_axUI :: a_12) (l_axUJ :: b_13) (l_axUK :: c_14) (l_axUL :: d_15) (l_axUH :: TyFun e_16 (TyFun f_17 (a_12, b_13, c_14, d_15, e_16, f_17) -> *))
data Tuple6Sym5 (l_axUO :: a_12) (l_axUP :: b_13) (l_axUQ :: c_14) (l_axUR :: d_15) (l_axUS :: e_16) (l_axUN :: TyFun f_17 (a_12, b_13, c_14, d_15, e_16, f_17))
type Tuple6Sym6 (t_axUn :: a_12) (t_axUo :: b_13) (t_axUp :: c_14) (t_axUq :: d_15) (t_axUr :: e_16) (t_axUs :: f_17) = '(t_axUn, t_axUo, t_axUp, t_axUq, t_axUr, t_axUs)
data Tuple7Sym0 (l_axVx :: TyFun a_12 (TyFun b_13 (TyFun c_14 (TyFun d_15 (TyFun e_16 (TyFun f_17 (TyFun g_18 (a_12, b_13, c_14, d_15, e_16, f_17, g_18) -> *) -> *) -> *) -> *) -> *) -> *))
data Tuple7Sym1 (l_axVA :: a_12) (l_axVz :: TyFun b_13 (TyFun c_14 (TyFun d_15 (TyFun e_16 (TyFun f_17 (TyFun g_18 (a_12, b_13, c_14, d_15, e_16, f_17, g_18) -> *) -> *) -> *) -> *) -> *))
data Tuple7Sym2 (l_axVD :: a_12) (l_axVE :: b_13) (l_axVC :: TyFun c_14 (TyFun d_15 (TyFun e_16 (TyFun f_17 (TyFun g_18 (a_12, b_13, c_14, d_15, e_16, f_17, g_18) -> *) -> *) -> *) -> *))
data Tuple7Sym3 (l_axVH :: a_12) (l_axVI :: b_13) (l_axVJ :: c_14) (l_axVG :: TyFun d_15 (TyFun e_16 (TyFun f_17 (TyFun g_18 (a_12, b_13, c_14, d_15, e_16, f_17, g_18) -> *) -> *) -> *))
data Tuple7Sym4 (l_axVM :: a_12) (l_axVN :: b_13) (l_axVO :: c_14) (l_axVP :: d_15) (l_axVL :: TyFun e_16 (TyFun f_17 (TyFun g_18 (a_12, b_13, c_14, d_15, e_16, f_17, g_18) -> *) -> *))
data Tuple7Sym5 (l_axVS :: a_12) (l_axVT :: b_13) (l_axVU :: c_14) (l_axVV :: d_15) (l_axVW :: e_16) (l_axVR :: TyFun f_17 (TyFun g_18 (a_12, b_13, c_14, d_15, e_16, f_17, g_18) -> *))
data Tuple7Sym6 (l_axVZ :: a_12) (l_axW0 :: b_13) (l_axW1 :: c_14) (l_axW2 :: d_15) (l_axW3 :: e_16) (l_axW4 :: f_17) (l_axVY :: TyFun g_18 (a_12, b_13, c_14, d_15, e_16, f_17, g_18))
type Tuple7Sym7 (t_axVq :: a_12) (t_axVr :: b_13) (t_axVs :: c_14) (t_axVt :: d_15) (t_axVu :: e_16) (t_axVv :: f_17) (t_axVw :: g_18) = '(t_axVq, t_axVr, t_axVs, t_axVt, t_axVu, t_axVv, t_axVw)
data FstSym0 (l_a18Pu :: TyFun (a_a18OB, b_a18OC) a_a18OB)
type FstSym1 (t_a18Pt :: (a_a18OB, b_a18OC)) = Fst t_a18Pt
data SndSym0 (l_a18Pm :: TyFun (a_a18OE, b_a18OF) b_a18OF)
type SndSym1 (t_a18Pl :: (a_a18OE, b_a18OF)) = Snd t_a18Pl
data CurrySym0 (l_a18P6 :: TyFun (TyFun (a_a18OH, b_a18OI) c_a18OJ -> *) (TyFun a_a18OH (TyFun b_a18OI c_a18OJ -> *) -> *))
data CurrySym1 (l_a18P9 :: TyFun (a_a18OH, b_a18OI) c_a18OJ -> *) (l_a18P8 :: TyFun a_a18OH (TyFun b_a18OI c_a18OJ -> *))
data CurrySym2 (l_a18Pc :: TyFun (a_a18OH, b_a18OI) c_a18OJ -> *) (l_a18Pd :: a_a18OH) (l_a18Pb :: TyFun b_a18OI c_a18OJ)
type CurrySym3 (t_a18P3 :: TyFun (a_a18OH, b_a18OI) c_a18OJ -> *) (t_a18P4 :: a_a18OH) (t_a18P5 :: b_a18OI) = Curry t_a18P3 t_a18P4 t_a18P5
data UncurrySym0 (l_a18PD :: TyFun (TyFun a_a18ON (TyFun b_a18OO c_a18OP -> *) -> *) (TyFun (a_a18ON, b_a18OO) c_a18OP -> *))
data UncurrySym1 (l_a18PG :: TyFun a_a18ON (TyFun b_a18OO c_a18OP -> *) -> *) (l_a18PF :: TyFun (a_a18ON, b_a18OO) c_a18OP)
type UncurrySym2 (t_a18PB :: TyFun a_a18ON (TyFun b_a18OO c_a18OP -> *) -> *) (t_a18PC :: (a_a18ON, b_a18OO)) = Uncurry t_a18PB t_a18PC
data SwapSym0 (l_a18OY :: TyFun (a_a18OS, b_a18OT) (b_a18OT, a_a18OS))
type SwapSym1 (t_a18OX :: (a_a18OS, b_a18OT)) = Swap t_a18OX
-- | Implements promoted functions from GHC.Base module.
--
-- Because many of these definitions are produced by Template Haskell, it
-- is not possible to create proper Haddock documentation. Please look up
-- the corresponding operation in Prelude. Also, please excuse
-- the apparent repeated variable names. This is due to an interaction
-- between Template Haskell and Haddock.
module Data.Promotion.Prelude.Base
data FoldrSym0 (l_a10Th :: TyFun (TyFun a_a10Qs (TyFun b_a10Qt b_a10Qt -> *) -> *) (TyFun b_a10Qt (TyFun [a_a10Qs] b_a10Qt -> *) -> *))
data FoldrSym1 (l_a10Tk :: TyFun a_a10Qs (TyFun b_a10Qt b_a10Qt -> *) -> *) (l_a10Tj :: TyFun b_a10Qt (TyFun [a_a10Qs] b_a10Qt -> *))
data FoldrSym2 (l_a10Tn :: TyFun a_a10Qs (TyFun b_a10Qt b_a10Qt -> *) -> *) (l_a10To :: b_a10Qt) (l_a10Tm :: TyFun [a_a10Qs] b_a10Qt)
type FoldrSym3 (t_a10Te :: TyFun a_a10Qs (TyFun b_a10Qt b_a10Qt -> *) -> *) (t_a10Tf :: b_a10Qt) (t_a10Tg :: [a_a10Qs]) = Foldr t_a10Te t_a10Tf t_a10Tg
data MapSym0 (l_a10T1 :: TyFun (TyFun a_a10Qz b_a10QA -> *) (TyFun [a_a10Qz] [b_a10QA] -> *))
data MapSym1 (l_a10T4 :: TyFun a_a10Qz b_a10QA -> *) (l_a10T3 :: TyFun [a_a10Qz] [b_a10QA])
type MapSym2 (t_a10SZ :: TyFun a_a10Qz b_a10QA -> *) (t_a10T0 :: [a_a10Qz]) = Map t_a10SZ t_a10T0
data (:++$) (l_a10SO :: TyFun [a_a10QE] (TyFun [a_a10QE] [a_a10QE] -> *))
data (:++$$) (l_a10SR :: [a_a10QE]) (l_a10SQ :: TyFun [a_a10QE] [a_a10QE])
type (:++$$$) (t_a10SM :: [a_a10QE]) (t_a10SN :: [a_a10QE]) = (:++) t_a10SM t_a10SN
type OtherwiseSym0 = Otherwise
data IdSym0 (l_a10SI :: TyFun a_a10QJ a_a10QJ)
type IdSym1 (t_a10SH :: a_a10QJ) = Id t_a10SH
data ConstSym0 (l_a10Sh :: TyFun a_a10QL (TyFun b_a10QM a_a10QL -> *))
data ConstSym1 (l_a10Sk :: a_a10QL) (l_a10Sj :: TyFun b_a10QM a_a10QL)
type ConstSym2 (t_a10Sf :: a_a10QL) (t_a10Sg :: b_a10QM) = Const t_a10Sf t_a10Sg
data (:.$) (l_a10RC :: TyFun (TyFun b_a10QO c_a10QP -> *) (TyFun (TyFun a_a10QQ b_a10QO -> *) (TyFun a_a10QQ c_a10QP -> *) -> *))
data (:.$$) (l_a10RF :: TyFun b_a10QO c_a10QP -> *) (l_a10RE :: TyFun (TyFun a_a10QQ b_a10QO -> *) (TyFun a_a10QQ c_a10QP -> *))
data (:.$$$) (l_a10RI :: TyFun b_a10QO c_a10QP -> *) (l_a10RJ :: TyFun a_a10QQ b_a10QO -> *) (l_a10RH :: TyFun a_a10QQ c_a10QP)
type (:.$$$$) (t_a10Rz :: TyFun b_a10QO c_a10QP -> *) (t_a10RA :: TyFun a_a10QQ b_a10QO -> *) (t_a10RB :: a_a10QQ) = (:.) t_a10Rz t_a10RA t_a10RB
data ($$) :: TyFun (TyFun a b -> *) (TyFun a b -> *) -> *
data ($$$) :: (TyFun a b -> *) -> TyFun a b -> *
type ($$$$) a b = ($) a b
data ($!$) :: TyFun (TyFun a b -> *) (TyFun a b -> *) -> *
data ($!$$) :: (TyFun a b -> *) -> TyFun a b -> *
type ($!$$$) a b = ($!) a b
data FlipSym0 (l_a10Rk :: TyFun (TyFun a_a10QU (TyFun b_a10QV c_a10QW -> *) -> *) (TyFun b_a10QV (TyFun a_a10QU c_a10QW -> *) -> *))
data FlipSym1 (l_a10Rn :: TyFun a_a10QU (TyFun b_a10QV c_a10QW -> *) -> *) (l_a10Rm :: TyFun b_a10QV (TyFun a_a10QU c_a10QW -> *))
data FlipSym2 (l_a10Rq :: TyFun a_a10QU (TyFun b_a10QV c_a10QW -> *) -> *) (l_a10Rr :: b_a10QV) (l_a10Rp :: TyFun a_a10QU c_a10QW)
type FlipSym3 (t_a10Rh :: TyFun a_a10QU (TyFun b_a10QV c_a10QW -> *) -> *) (t_a10Ri :: b_a10QV) (t_a10Rj :: a_a10QU) = Flip t_a10Rh t_a10Ri t_a10Rj
data UntilSym0 (l_a19L5 :: TyFun (TyFun a_a19KV Bool -> *) (TyFun (TyFun a_a19KV a_a19KV -> *) (TyFun a_a19KV a_a19KV -> *) -> *))
data UntilSym1 (l_a19L8 :: TyFun a_a19KV Bool -> *) (l_a19L7 :: TyFun (TyFun a_a19KV a_a19KV -> *) (TyFun a_a19KV a_a19KV -> *))
data UntilSym2 (l_a19Lb :: TyFun a_a19KV Bool -> *) (l_a19Lc :: TyFun a_a19KV a_a19KV -> *) (l_a19La :: TyFun a_a19KV a_a19KV)
type UntilSym3 (t_a19L2 :: TyFun a_a19KV Bool -> *) (t_a19L3 :: TyFun a_a19KV a_a19KV -> *) (t_a19L4 :: a_a19KV) = Until t_a19L2 t_a19L3 t_a19L4
data AsTypeOfSym0 (l_a10Sy :: TyFun a_a10R0 (TyFun a_a10R0 a_a10R0 -> *))
data AsTypeOfSym1 (l_a10SB :: a_a10R0) (l_a10SA :: TyFun a_a10R0 a_a10R0)
type AsTypeOfSym2 (t_a10Sw :: a_a10R0) (t_a10Sx :: a_a10R0) = AsTypeOf t_a10Sw t_a10Sx
data SeqSym0 (l_a10R6 :: TyFun a_a10R1 (TyFun b_a10R2 b_a10R2 -> *))
data SeqSym1 (l_a10R9 :: a_a10R1) (l_a10R8 :: TyFun b_a10R2 b_a10R2)
type SeqSym2 (t_a10R4 :: a_a10R1) (t_a10R5 :: b_a10R2) = Seq t_a10R4 t_a10R5
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.Base.Let1627665812GoSym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.Base.Let1627665812GoSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.Base.Let1627665812GoSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.Base.Let1627665812GoSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.Base.UntilSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.Base.UntilSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.Base.UntilSym0
-- | Defines functions and datatypes relating to the singleton for
-- Maybe, including a singletons version of all the definitions in
-- Data.Maybe.
--
-- Because many of these definitions are produced by Template Haskell, it
-- is not possible to create proper Haddock documentation. Please look up
-- the corresponding operation in Data.Maybe. Also, please
-- excuse the apparent repeated variable names. This is due to an
-- interaction between Template Haskell and Haddock.
module Data.Singletons.Prelude.Maybe
-- | The singleton kind-indexed data family.
type SMaybe = (Sing :: Maybe a_a6j7 -> *)
maybe_ :: b_a1acO -> (a_a1acP -> b_a1acO) -> Maybe a_a1acP -> b_a1acO
sMaybe_ :: Sing t_a1adi -> Sing t_a1adj -> Sing t_a1adk -> Sing (Apply (Apply (Apply Maybe_Sym0 t_a1adi) t_a1adj) t_a1adk :: b_a1acO)
sIsJust :: Sing t_a1aAy -> Sing (Apply IsJustSym0 t_a1aAy :: Bool)
sIsNothing :: Sing t_a1aAx -> Sing (Apply IsNothingSym0 t_a1aAx :: Bool)
sFromJust :: Sing t_a1aAw -> Sing (Apply FromJustSym0 t_a1aAw :: a_a1ayh)
sFromMaybe :: Sing t_a1aAu -> Sing t_a1aAv -> Sing (Apply (Apply FromMaybeSym0 t_a1aAu) t_a1aAv :: a_a1ayj)
sListToMaybe :: Sing t_a1aAs -> Sing (Apply ListToMaybeSym0 t_a1aAs :: Maybe a_a1ayp)
sMaybeToList :: Sing t_a1aAt -> Sing (Apply MaybeToListSym0 t_a1aAt :: [a_a1ayn])
sCatMaybes :: Sing t_a1aAr -> Sing (Apply CatMaybesSym0 t_a1aAr :: [a_a1ayr])
sMapMaybe :: Sing t_a1aAp -> Sing t_a1aAq -> Sing (Apply (Apply MapMaybeSym0 t_a1aAp) t_a1aAq :: [b_a1ayw])
type NothingSym0 = Nothing
data JustSym0 (l_axRq :: TyFun a_a6j7 (Maybe a_a6j7))
type JustSym1 (t_axRp :: a_a6j7) = Just t_axRp
data Maybe_Sym0 (l_a1acX :: TyFun b_a1acO (TyFun (TyFun a_a1acP b_a1acO -> *) (TyFun (Maybe a_a1acP) b_a1acO -> *) -> *))
data Maybe_Sym1 (l_a1ad0 :: b_a1acO) (l_a1acZ :: TyFun (TyFun a_a1acP b_a1acO -> *) (TyFun (Maybe a_a1acP) b_a1acO -> *))
data Maybe_Sym2 (l_a1ad3 :: b_a1acO) (l_a1ad4 :: TyFun a_a1acP b_a1acO -> *) (l_a1ad2 :: TyFun (Maybe a_a1acP) b_a1acO)
type Maybe_Sym3 (t_a1acU :: b_a1acO) (t_a1acV :: TyFun a_a1acP b_a1acO -> *) (t_a1acW :: Maybe a_a1acP) = Maybe_ t_a1acU t_a1acV t_a1acW
data IsJustSym0 (l_a1aAj :: TyFun (Maybe a_a1ayf) Bool)
type IsJustSym1 (t_a1aAi :: Maybe a_a1ayf) = IsJust t_a1aAi
data IsNothingSym0 (l_a1aAc :: TyFun (Maybe a_a1ayg) Bool)
type IsNothingSym1 (t_a1aAb :: Maybe a_a1ayg) = IsNothing t_a1aAb
data FromJustSym0 (l_a1aA7 :: TyFun (Maybe a_a1ayh) a_a1ayh)
type FromJustSym1 (t_a1aA6 :: Maybe a_a1ayh) = FromJust t_a1aA6
data FromMaybeSym0 (l_a1azL :: TyFun a_a1ayj (TyFun (Maybe a_a1ayj) a_a1ayj -> *))
data FromMaybeSym1 (l_a1azO :: a_a1ayj) (l_a1azN :: TyFun (Maybe a_a1ayj) a_a1ayj)
type FromMaybeSym2 (t_a1azJ :: a_a1ayj) (t_a1azK :: Maybe a_a1ayj) = FromMaybe t_a1azJ t_a1azK
data ListToMaybeSym0 (l_a1azx :: TyFun [a_a1ayp] (Maybe a_a1ayp))
type ListToMaybeSym1 (t_a1azw :: [a_a1ayp]) = ListToMaybe t_a1azw
data MaybeToListSym0 (l_a1azF :: TyFun (Maybe a_a1ayn) [a_a1ayn])
type MaybeToListSym1 (t_a1azE :: Maybe a_a1ayn) = MaybeToList t_a1azE
data CatMaybesSym0 (l_a1azq :: TyFun [Maybe a_a1ayr] [a_a1ayr])
type CatMaybesSym1 (t_a1azp :: [Maybe a_a1ayr]) = CatMaybes t_a1azp
data MapMaybeSym0 (l_a1ayI :: TyFun (TyFun a_a1ayv (Maybe b_a1ayw) -> *) (TyFun [a_a1ayv] [b_a1ayw] -> *))
data MapMaybeSym1 (l_a1ayL :: TyFun a_a1ayv (Maybe b_a1ayw) -> *) (l_a1ayK :: TyFun [a_a1ayv] [b_a1ayw])
type MapMaybeSym2 (t_a1ayG :: TyFun a_a1ayv (Maybe b_a1ayw) -> *) (t_a1ayH :: [a_a1ayv]) = MapMaybe t_a1ayG t_a1ayH
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Maybe.Let1627668885RsSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Maybe.Let1627668885RsSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Maybe.Let1627668885RsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Maybe.Let1627668898Scrutinee_1627668868Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Maybe.Let1627668898Scrutinee_1627668868Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Maybe.Let1627668898Scrutinee_1627668868Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Maybe.Let1627668946Scrutinee_1627668866Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Maybe.Let1627668946Scrutinee_1627668866Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Maybe.MapMaybeSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Maybe.MapMaybeSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Maybe.CatMaybesSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Maybe.ListToMaybeSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Maybe.MaybeToListSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Maybe.FromMaybeSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Maybe.FromMaybeSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Maybe.FromJustSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Maybe.IsNothingSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Maybe.IsJustSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Maybe.Maybe_Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Maybe.Maybe_Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Maybe.Maybe_Sym0
-- | Defines promoted functions and datatypes relating to Maybe,
-- including a promoted version of all the definitions in
-- Data.Maybe.
--
-- Because many of these definitions are produced by Template Haskell, it
-- is not possible to create proper Haddock documentation. Please look up
-- the corresponding operation in Data.Maybe. Also, please
-- excuse the apparent repeated variable names. This is due to an
-- interaction between Template Haskell and Haddock.
module Data.Promotion.Prelude.Maybe
maybe_ :: b_a1acO -> (a_a1acP -> b_a1acO) -> Maybe a_a1acP -> b_a1acO
type NothingSym0 = Nothing
data JustSym0 (l_axRq :: TyFun a_a6j7 (Maybe a_a6j7))
type JustSym1 (t_axRp :: a_a6j7) = Just t_axRp
data Maybe_Sym0 (l_a1acX :: TyFun b_a1acO (TyFun (TyFun a_a1acP b_a1acO -> *) (TyFun (Maybe a_a1acP) b_a1acO -> *) -> *))
data Maybe_Sym1 (l_a1ad0 :: b_a1acO) (l_a1acZ :: TyFun (TyFun a_a1acP b_a1acO -> *) (TyFun (Maybe a_a1acP) b_a1acO -> *))
data Maybe_Sym2 (l_a1ad3 :: b_a1acO) (l_a1ad4 :: TyFun a_a1acP b_a1acO -> *) (l_a1ad2 :: TyFun (Maybe a_a1acP) b_a1acO)
type Maybe_Sym3 (t_a1acU :: b_a1acO) (t_a1acV :: TyFun a_a1acP b_a1acO -> *) (t_a1acW :: Maybe a_a1acP) = Maybe_ t_a1acU t_a1acV t_a1acW
data IsJustSym0 (l_a1aAj :: TyFun (Maybe a_a1ayf) Bool)
type IsJustSym1 (t_a1aAi :: Maybe a_a1ayf) = IsJust t_a1aAi
data IsNothingSym0 (l_a1aAc :: TyFun (Maybe a_a1ayg) Bool)
type IsNothingSym1 (t_a1aAb :: Maybe a_a1ayg) = IsNothing t_a1aAb
data FromJustSym0 (l_a1aA7 :: TyFun (Maybe a_a1ayh) a_a1ayh)
type FromJustSym1 (t_a1aA6 :: Maybe a_a1ayh) = FromJust t_a1aA6
data FromMaybeSym0 (l_a1azL :: TyFun a_a1ayj (TyFun (Maybe a_a1ayj) a_a1ayj -> *))
data FromMaybeSym1 (l_a1azO :: a_a1ayj) (l_a1azN :: TyFun (Maybe a_a1ayj) a_a1ayj)
type FromMaybeSym2 (t_a1azJ :: a_a1ayj) (t_a1azK :: Maybe a_a1ayj) = FromMaybe t_a1azJ t_a1azK
data MaybeToListSym0 (l_a1azF :: TyFun (Maybe a_a1ayn) [a_a1ayn])
type MaybeToListSym1 (t_a1azE :: Maybe a_a1ayn) = MaybeToList t_a1azE
data ListToMaybeSym0 (l_a1azx :: TyFun [a_a1ayp] (Maybe a_a1ayp))
type ListToMaybeSym1 (t_a1azw :: [a_a1ayp]) = ListToMaybe t_a1azw
data CatMaybesSym0 (l_a1azq :: TyFun [Maybe a_a1ayr] [a_a1ayr])
type CatMaybesSym1 (t_a1azp :: [Maybe a_a1ayr]) = CatMaybes t_a1azp
data MapMaybeSym0 (l_a1ayI :: TyFun (TyFun a_a1ayv (Maybe b_a1ayw) -> *) (TyFun [a_a1ayv] [b_a1ayw] -> *))
data MapMaybeSym1 (l_a1ayL :: TyFun a_a1ayv (Maybe b_a1ayw) -> *) (l_a1ayK :: TyFun [a_a1ayv] [b_a1ayw])
type MapMaybeSym2 (t_a1ayG :: TyFun a_a1ayv (Maybe b_a1ayw) -> *) (t_a1ayH :: [a_a1ayv]) = MapMaybe t_a1ayG t_a1ayH
-- | Defines the promoted and singleton version of Bounded, PBounded
-- and SBounded
module Data.Singletons.Prelude.Enum
class kproxy_a1cHF ~ KProxy => PBounded (kproxy_a1cHF :: KProxy a_a1cHE) where type family MinBound :: a_a1cHE type family MaxBound :: a_a1cHE
class kproxy_a1cHG ~ KProxy => SBounded (kproxy_a1cHG :: KProxy a_a1cHE)
sMinBound :: SBounded kproxy_a1cHG => Sing (MinBoundSym0 :: a_a1cHE)
sMaxBound :: SBounded kproxy_a1cHG => Sing (MaxBoundSym0 :: a_a1cHE)
class kproxy_a1e7c ~ KProxy => PEnum (kproxy_a1e7c :: KProxy a_a1dYE) where type family Succ (arg_a1e7d :: a_a1dYE) :: a_a1dYE type family Pred (arg_a1e7h :: a_a1dYE) :: a_a1dYE type family ToEnum (arg_a1e7l :: Nat) :: a_a1dYE type family FromEnum (arg_a1e7p :: a_a1dYE) :: Nat type family EnumFromTo (arg_a1e7t :: a_a1dYE) (arg_a1e7u :: a_a1dYE) :: [a_a1dYE] type family EnumFromThenTo (arg_a1e7C :: a_a1dYE) (arg_a1e7D :: a_a1dYE) (arg_a1e7E :: a_a1dYE) :: [a_a1dYE] Succ (a_a1e7Y :: a_a1dYE) = Apply Succ_1627682591Sym0 a_a1e7Y Pred (a_a1e8b :: a_a1dYE) = Apply Pred_1627682604Sym0 a_a1e8b EnumFromTo (a_a1e8s :: a_a1dYE) (a_a1e8t :: a_a1dYE) = Apply (Apply EnumFromTo_1627682622Sym0 a_a1e8s) a_a1e8t EnumFromThenTo (a_a1e8V :: a_a1dYE) (a_a1e8W :: a_a1dYE) (a_a1e8X :: a_a1dYE) = Apply (Apply (Apply EnumFromThenTo_1627682652Sym0 a_a1e8V) a_a1e8W) a_a1e8X
class kproxy_a1ecw ~ KProxy => SEnum (kproxy_a1ecw :: KProxy a_a1dYE) where sSucc sA_1627682583 = let lambda_a1eci :: forall a_1627682583_a1e7X. t_a1ec9 ~ a_1627682583_a1e7X => Sing a_1627682583_a1e7X -> Sing (Apply SuccSym0 a_1627682583_a1e7X :: a_a1dYE) lambda_a1eci a_1627682583_a1ecj = applySing (applySing (applySing (singFun3 (Proxy :: Proxy (:.$)) (%:.)) (singFun1 (Proxy :: Proxy ToEnumSym0) sToEnum)) (applySing (applySing (singFun3 (Proxy :: Proxy (:.$)) (%:.)) (applySing (singFun2 (Proxy :: Proxy (:+$)) (%:+)) (sFromInteger (sing :: Sing 1)))) (singFun1 (Proxy :: Proxy FromEnumSym0) sFromEnum))) a_1627682583_a1ecj in lambda_a1eci sA_1627682583 sPred sA_1627682596 = let lambda_a1eck :: forall a_1627682596_a1e8a. t_a1eca ~ a_1627682596_a1e8a => Sing a_1627682596_a1e8a -> Sing (Apply PredSym0 a_1627682596_a1e8a :: a_a1dYE) lambda_a1eck a_1627682596_a1ecl = applySing (applySing (applySing (singFun3 (Proxy :: Proxy (:.$)) (%:.)) (singFun1 (Proxy :: Proxy ToEnumSym0) sToEnum)) (applySing (applySing (singFun3 (Proxy :: Proxy (:.$)) (%:.)) (applySing (singFun2 (Proxy :: Proxy SubtractSym0) sSubtract) (sFromInteger (sing :: Sing 1)))) (singFun1 (Proxy :: Proxy FromEnumSym0) sFromEnum))) a_1627682596_a1ecl in lambda_a1eck sA_1627682596 sEnumFromTo sX sY = let lambda_a1ecn :: forall x_a1e8q y_a1e8r. (t_a1ecd ~ x_a1e8q, t_a1ece ~ y_a1e8r) => Sing x_a1e8q -> Sing y_a1e8r -> Sing (Apply (Apply EnumFromToSym0 x_a1e8q) y_a1e8r :: [a_a1dYE]) lambda_a1ecn x_a1eco y_a1ecp = applySing (applySing (singFun2 (Proxy :: Proxy MapSym0) sMap) (singFun1 (Proxy :: Proxy ToEnumSym0) sToEnum)) (applySing (applySing (singFun2 (Proxy :: Proxy EnumFromToSym0) sEnumFromTo) (applySing (singFun1 (Proxy :: Proxy FromEnumSym0) sFromEnum) x_a1eco)) (applySing (singFun1 (Proxy :: Proxy FromEnumSym0) sFromEnum) y_a1ecp)) in lambda_a1ecn sX sY sEnumFromThenTo sX1 sX2 sY = let lambda_a1ecr :: forall x1_a1e8S x2_a1e8T y_a1e8U. (t_a1ecf ~ x1_a1e8S, t_a1ecg ~ x2_a1e8T, t_a1ech ~ y_a1e8U) => Sing x1_a1e8S -> Sing x2_a1e8T -> Sing y_a1e8U -> Sing (Apply (Apply (Apply EnumFromThenToSym0 x1_a1e8S) x2_a1e8T) y_a1e8U :: [a_a1dYE]) lambda_a1ecr x1_a1ecs x2_a1ect y_a1ecu = applySing (applySing (singFun2 (Proxy :: Proxy MapSym0) sMap) (singFun1 (Proxy :: Proxy ToEnumSym0) sToEnum)) (applySing (applySing (applySing (singFun3 (Proxy :: Proxy EnumFromThenToSym0) sEnumFromThenTo) (applySing (singFun1 (Proxy :: Proxy FromEnumSym0) sFromEnum) x1_a1ecs)) (applySing (singFun1 (Proxy :: Proxy FromEnumSym0) sFromEnum) x2_a1ect)) (applySing (singFun1 (Proxy :: Proxy FromEnumSym0) sFromEnum) y_a1ecu)) in lambda_a1ecr sX1 sX2 sY
sSucc :: SEnum kproxy_a1ecw => Sing t_a1ec9 -> Sing (Apply SuccSym0 t_a1ec9 :: a_a1dYE)
sPred :: SEnum kproxy_a1ecw => Sing t_a1eca -> Sing (Apply PredSym0 t_a1eca :: a_a1dYE)
sToEnum :: SEnum kproxy_a1ecw => Sing t_a1ecb -> Sing (Apply ToEnumSym0 t_a1ecb :: a_a1dYE)
sFromEnum :: SEnum kproxy_a1ecw => Sing t_a1ecc -> Sing (Apply FromEnumSym0 t_a1ecc :: Nat)
sEnumFromTo :: SEnum kproxy_a1ecw => Sing t_a1ecd -> Sing t_a1ece -> Sing (Apply (Apply EnumFromToSym0 t_a1ecd) t_a1ece :: [a_a1dYE])
sEnumFromThenTo :: SEnum kproxy_a1ecw => Sing t_a1ecf -> Sing t_a1ecg -> Sing t_a1ech -> Sing (Apply (Apply (Apply EnumFromThenToSym0 t_a1ecf) t_a1ecg) t_a1ech :: [a_a1dYE])
type MinBoundSym0 = MinBound
type MaxBoundSym0 = MaxBound
data SuccSym0 (l_a1e7f :: TyFun a_a1dYE a_a1dYE)
type SuccSym1 (t_a1e7e :: a_a1dYE) = Succ t_a1e7e
data PredSym0 (l_a1e7j :: TyFun a_a1dYE a_a1dYE)
type PredSym1 (t_a1e7i :: a_a1dYE) = Pred t_a1e7i
data ToEnumSym0 (l_a1e7n :: TyFun Nat a_a1dYE)
type ToEnumSym1 (t_a1e7m :: Nat) = ToEnum t_a1e7m
data FromEnumSym0 (l_a1e7r :: TyFun a_a1dYE Nat)
type FromEnumSym1 (t_a1e7q :: a_a1dYE) = FromEnum t_a1e7q
data EnumFromToSym0 (l_a1e7x :: TyFun a_a1dYE (TyFun a_a1dYE [a_a1dYE] -> *))
data EnumFromToSym1 (l_a1e7A :: a_a1dYE) (l_a1e7z :: TyFun a_a1dYE [a_a1dYE])
type EnumFromToSym2 (t_a1e7v :: a_a1dYE) (t_a1e7w :: a_a1dYE) = EnumFromTo t_a1e7v t_a1e7w
data EnumFromThenToSym0 (l_a1e7I :: TyFun a_a1dYE (TyFun a_a1dYE (TyFun a_a1dYE [a_a1dYE] -> *) -> *))
data EnumFromThenToSym1 (l_a1e7L :: a_a1dYE) (l_a1e7K :: TyFun a_a1dYE (TyFun a_a1dYE [a_a1dYE] -> *))
data EnumFromThenToSym2 (l_a1e7O :: a_a1dYE) (l_a1e7P :: a_a1dYE) (l_a1e7N :: TyFun a_a1dYE [a_a1dYE])
type EnumFromThenToSym3 (t_a1e7F :: a_a1dYE) (t_a1e7G :: a_a1dYE) (t_a1e7H :: a_a1dYE) = EnumFromThenTo t_a1e7F t_a1e7G t_a1e7H
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.ToEnum_1627706696Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.FromEnum_1627706706Sym0
instance Data.Singletons.Prelude.Enum.PEnum 'Data.Proxy.KProxy
instance Data.Singletons.Prelude.Enum.SEnum 'Data.Proxy.KProxy
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.ToEnum_1627706735Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.FromEnum_1627706745Sym0
instance Data.Singletons.Prelude.Enum.PEnum 'Data.Proxy.KProxy
instance Data.Singletons.Prelude.Enum.SEnum 'Data.Proxy.KProxy
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.ToEnum_1627706771Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.FromEnum_1627706781Sym0
instance Data.Singletons.Prelude.Enum.PEnum 'Data.Proxy.KProxy
instance Data.Singletons.Prelude.Enum.SEnum 'Data.Proxy.KProxy
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682100Scrutinee_1627682071Sym5
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682100Scrutinee_1627682071Sym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682100Scrutinee_1627682071Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682100Scrutinee_1627682071Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682100Scrutinee_1627682071Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682100Scrutinee_1627682071Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682137DeltaSym5
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682137DeltaSym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682137DeltaSym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682137DeltaSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682137DeltaSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682137DeltaSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682137Y'Sym5
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682137Y'Sym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682137Y'Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682137Y'Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682137Y'Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682137Y'Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682137Go_dnSym6
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682137Go_dnSym5
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682137Go_dnSym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682137Go_dnSym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682137Go_dnSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682137Go_dnSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682137Go_dnSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682282Scrutinee_1627682061Sym5
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682282Scrutinee_1627682061Sym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682282Scrutinee_1627682061Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682282Scrutinee_1627682061Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682282Scrutinee_1627682061Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682282Scrutinee_1627682061Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682319DeltaSym5
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682319DeltaSym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682319DeltaSym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682319DeltaSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682319DeltaSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682319DeltaSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682319Y'Sym5
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682319Y'Sym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682319Y'Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682319Y'Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682319Y'Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682319Y'Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682319Go_upSym6
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682319Go_upSym5
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682319Go_upSym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682319Go_upSym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682319Go_upSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682319Go_upSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682319Go_upSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682509Scrutinee_1627682047Sym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682509Scrutinee_1627682047Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682509Scrutinee_1627682047Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682509Scrutinee_1627682047Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682509Scrutinee_1627682047Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682481GoSym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682481GoSym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682481GoSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682481GoSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627682481GoSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.EfdtNatDnSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.EfdtNatDnSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.EfdtNatDnSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.EfdtNatUpSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.EfdtNatUpSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.EfdtNatUpSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.EfdtNatSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.EfdtNatSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.EfdtNatSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.EftNatSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.EftNatSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.SuccSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.PredSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.ToEnumSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.FromEnumSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.EnumFromToSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.EnumFromToSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.EnumFromThenToSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.EnumFromThenToSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.EnumFromThenToSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Succ_1627682591Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Pred_1627682604Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.EnumFromTo_1627682622Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.EnumFromTo_1627682622Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.EnumFromThenTo_1627682652Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.EnumFromThenTo_1627682652Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.EnumFromThenTo_1627682652Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Succ_1627682672Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Pred_1627682683Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.ToEnum_1627682694Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.FromEnum_1627682705Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.EnumFromTo_1627682727Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.EnumFromTo_1627682727Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.EnumFromThenTo_1627682763Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.EnumFromThenTo_1627682763Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.EnumFromThenTo_1627682763Sym0
instance Data.Singletons.Prelude.Enum.PEnum 'Data.Proxy.KProxy
instance Data.Singletons.Prelude.Enum.SEnum 'Data.Proxy.KProxy
instance Data.Singletons.Prelude.Enum.PBounded 'Data.Proxy.KProxy
instance (Data.Singletons.Prelude.Enum.SBounded 'Data.Proxy.KProxy, Data.Singletons.Prelude.Enum.SBounded 'Data.Proxy.KProxy) => Data.Singletons.Prelude.Enum.SBounded 'Data.Proxy.KProxy
instance Data.Singletons.Prelude.Enum.PBounded 'Data.Proxy.KProxy
instance (Data.Singletons.Prelude.Enum.SBounded 'Data.Proxy.KProxy, Data.Singletons.Prelude.Enum.SBounded 'Data.Proxy.KProxy, Data.Singletons.Prelude.Enum.SBounded 'Data.Proxy.KProxy) => Data.Singletons.Prelude.Enum.SBounded 'Data.Proxy.KProxy
instance Data.Singletons.Prelude.Enum.PBounded 'Data.Proxy.KProxy
instance (Data.Singletons.Prelude.Enum.SBounded 'Data.Proxy.KProxy, Data.Singletons.Prelude.Enum.SBounded 'Data.Proxy.KProxy, Data.Singletons.Prelude.Enum.SBounded 'Data.Proxy.KProxy, Data.Singletons.Prelude.Enum.SBounded 'Data.Proxy.KProxy) => Data.Singletons.Prelude.Enum.SBounded 'Data.Proxy.KProxy
instance Data.Singletons.Prelude.Enum.PBounded 'Data.Proxy.KProxy
instance (Data.Singletons.Prelude.Enum.SBounded 'Data.Proxy.KProxy, Data.Singletons.Prelude.Enum.SBounded 'Data.Proxy.KProxy, Data.Singletons.Prelude.Enum.SBounded 'Data.Proxy.KProxy, Data.Singletons.Prelude.Enum.SBounded 'Data.Proxy.KProxy, Data.Singletons.Prelude.Enum.SBounded 'Data.Proxy.KProxy) => Data.Singletons.Prelude.Enum.SBounded 'Data.Proxy.KProxy
instance Data.Singletons.Prelude.Enum.PBounded 'Data.Proxy.KProxy
instance (Data.Singletons.Prelude.Enum.SBounded 'Data.Proxy.KProxy, Data.Singletons.Prelude.Enum.SBounded 'Data.Proxy.KProxy, Data.Singletons.Prelude.Enum.SBounded 'Data.Proxy.KProxy, Data.Singletons.Prelude.Enum.SBounded 'Data.Proxy.KProxy, Data.Singletons.Prelude.Enum.SBounded 'Data.Proxy.KProxy, Data.Singletons.Prelude.Enum.SBounded 'Data.Proxy.KProxy) => Data.Singletons.Prelude.Enum.SBounded 'Data.Proxy.KProxy
instance Data.Singletons.Prelude.Enum.PBounded 'Data.Proxy.KProxy
instance (Data.Singletons.Prelude.Enum.SBounded 'Data.Proxy.KProxy, Data.Singletons.Prelude.Enum.SBounded 'Data.Proxy.KProxy, Data.Singletons.Prelude.Enum.SBounded 'Data.Proxy.KProxy, Data.Singletons.Prelude.Enum.SBounded 'Data.Proxy.KProxy, Data.Singletons.Prelude.Enum.SBounded 'Data.Proxy.KProxy, Data.Singletons.Prelude.Enum.SBounded 'Data.Proxy.KProxy, Data.Singletons.Prelude.Enum.SBounded 'Data.Proxy.KProxy) => Data.Singletons.Prelude.Enum.SBounded 'Data.Proxy.KProxy
instance Data.Singletons.Prelude.Enum.PBounded 'Data.Proxy.KProxy
instance Data.Singletons.Prelude.Enum.SBounded 'Data.Proxy.KProxy
instance Data.Singletons.Prelude.Enum.PBounded 'Data.Proxy.KProxy
instance Data.Singletons.Prelude.Enum.SBounded 'Data.Proxy.KProxy
instance Data.Singletons.Prelude.Enum.PBounded 'Data.Proxy.KProxy
instance Data.Singletons.Prelude.Enum.SBounded 'Data.Proxy.KProxy
-- | Exports promoted versions of Enum and Bounded
module Data.Promotion.Prelude.Enum
class kproxy_a1cHF ~ KProxy => PBounded (kproxy_a1cHF :: KProxy a_a1cHE) where type family MinBound :: a_a1cHE type family MaxBound :: a_a1cHE
class kproxy_a1e7c ~ KProxy => PEnum (kproxy_a1e7c :: KProxy a_a1dYE) where type family Succ (arg_a1e7d :: a_a1dYE) :: a_a1dYE type family Pred (arg_a1e7h :: a_a1dYE) :: a_a1dYE type family ToEnum (arg_a1e7l :: Nat) :: a_a1dYE type family FromEnum (arg_a1e7p :: a_a1dYE) :: Nat type family EnumFromTo (arg_a1e7t :: a_a1dYE) (arg_a1e7u :: a_a1dYE) :: [a_a1dYE] type family EnumFromThenTo (arg_a1e7C :: a_a1dYE) (arg_a1e7D :: a_a1dYE) (arg_a1e7E :: a_a1dYE) :: [a_a1dYE] Succ (a_a1e7Y :: a_a1dYE) = Apply Succ_1627682591Sym0 a_a1e7Y Pred (a_a1e8b :: a_a1dYE) = Apply Pred_1627682604Sym0 a_a1e8b EnumFromTo (a_a1e8s :: a_a1dYE) (a_a1e8t :: a_a1dYE) = Apply (Apply EnumFromTo_1627682622Sym0 a_a1e8s) a_a1e8t EnumFromThenTo (a_a1e8V :: a_a1dYE) (a_a1e8W :: a_a1dYE) (a_a1e8X :: a_a1dYE) = Apply (Apply (Apply EnumFromThenTo_1627682652Sym0 a_a1e8V) a_a1e8W) a_a1e8X
type MinBoundSym0 = MinBound
type MaxBoundSym0 = MaxBound
data SuccSym0 (l_a1e7f :: TyFun a_a1dYE a_a1dYE)
type SuccSym1 (t_a1e7e :: a_a1dYE) = Succ t_a1e7e
data PredSym0 (l_a1e7j :: TyFun a_a1dYE a_a1dYE)
type PredSym1 (t_a1e7i :: a_a1dYE) = Pred t_a1e7i
data ToEnumSym0 (l_a1e7n :: TyFun Nat a_a1dYE)
type ToEnumSym1 (t_a1e7m :: Nat) = ToEnum t_a1e7m
data FromEnumSym0 (l_a1e7r :: TyFun a_a1dYE Nat)
type FromEnumSym1 (t_a1e7q :: a_a1dYE) = FromEnum t_a1e7q
data EnumFromToSym0 (l_a1e7x :: TyFun a_a1dYE (TyFun a_a1dYE [a_a1dYE] -> *))
data EnumFromToSym1 (l_a1e7A :: a_a1dYE) (l_a1e7z :: TyFun a_a1dYE [a_a1dYE])
type EnumFromToSym2 (t_a1e7v :: a_a1dYE) (t_a1e7w :: a_a1dYE) = EnumFromTo t_a1e7v t_a1e7w
data EnumFromThenToSym0 (l_a1e7I :: TyFun a_a1dYE (TyFun a_a1dYE (TyFun a_a1dYE [a_a1dYE] -> *) -> *))
data EnumFromThenToSym1 (l_a1e7L :: a_a1dYE) (l_a1e7K :: TyFun a_a1dYE (TyFun a_a1dYE [a_a1dYE] -> *))
data EnumFromThenToSym2 (l_a1e7O :: a_a1dYE) (l_a1e7P :: a_a1dYE) (l_a1e7N :: TyFun a_a1dYE [a_a1dYE])
type EnumFromThenToSym3 (t_a1e7F :: a_a1dYE) (t_a1e7G :: a_a1dYE) (t_a1e7H :: a_a1dYE) = EnumFromThenTo t_a1e7F t_a1e7G t_a1e7H
-- | Defines functions and datatypes relating to the singleton for '[]',
-- including a singletons version of a few of the definitions in
-- Data.List.
--
-- Because many of these definitions are produced by Template Haskell, it
-- is not possible to create proper Haddock documentation. Please look up
-- the corresponding operation in Data.List. Also, please excuse
-- the apparent repeated variable names. This is due to an interaction
-- between Template Haskell and Haddock.
module Data.Singletons.Prelude.List
-- | The singleton kind-indexed data family.
type SList = (Sing :: [a_12] -> *)
(%:++) :: Sing t_a10U7 -> Sing t_a10U8 -> Sing (Apply (Apply (:++$) t_a10U7) t_a10U8 :: [a_a10QE])
sHead :: Sing t_a1woy -> Sing (Apply HeadSym0 t_a1woy :: a_a1vjC)
sLast :: Sing t_a1wox -> Sing (Apply LastSym0 t_a1wox :: a_a1vjE)
sTail :: Sing t_a1wow -> Sing (Apply TailSym0 t_a1wow :: [a_a1vjI])
sInit :: Sing t_a1wov -> Sing (Apply InitSym0 t_a1wov :: [a_a1vjK])
sNull :: Sing t_a1wos -> Sing (Apply NullSym0 t_a1wos :: Bool)
sLength :: Sing t_a1wm4 -> Sing (Apply LengthSym0 t_a1wm4 :: Nat)
sMap :: Sing t_a10U9 -> Sing t_a10Ua -> Sing (Apply (Apply MapSym0 t_a10U9) t_a10Ua :: [b_a10QA])
sReverse :: Sing t_a1wop -> Sing (Apply ReverseSym0 t_a1wop :: [a_a1vjT])
sIntersperse :: Sing t_a1wol -> Sing t_a1wom -> Sing (Apply (Apply IntersperseSym0 t_a1wol) t_a1wom :: [a_a1vk1])
sIntercalate :: Sing t_a1won -> Sing t_a1woo -> Sing (Apply (Apply IntercalateSym0 t_a1won) t_a1woo :: [a_a1vk5])
sTranspose :: Sing t_a1woz -> Sing (Apply TransposeSym0 t_a1woz :: [[a_a1vqN]])
sSubsequences :: Sing t_a1wok -> Sing (Apply SubsequencesSym0 t_a1wok :: [[a_a1vk8]])
sPermutations :: Sing t_a1wog -> Sing (Apply PermutationsSym0 t_a1wog :: [[a_a1vkk]])
sFoldl :: Sing t_aB34 -> Sing t_aB35 -> Sing t_aB36 -> Sing (Apply (Apply (Apply FoldlSym0 t_aB34) t_aB35) t_aB36 :: b_aB26)
sFoldl' :: Sing t_a1wob -> Sing t_a1woc -> Sing t_a1wod -> Sing (Apply (Apply (Apply Foldl'Sym0 t_a1wob) t_a1woc) t_a1wod :: b_a1vi9)
sFoldl1 :: Sing t_a1wo3 -> Sing t_a1wo4 -> Sing (Apply (Apply Foldl1Sym0 t_a1wo3) t_a1wo4 :: a_a1vkL)
sFoldl1' :: Sing t_a1woe -> Sing t_a1wof -> Sing (Apply (Apply Foldl1'Sym0 t_a1woe) t_a1wof :: a_a1vkP)
sFoldr :: Sing t_a10Ub -> Sing t_a10Uc -> Sing t_a10Ud -> Sing (Apply (Apply (Apply FoldrSym0 t_a10Ub) t_a10Uc) t_a10Ud :: b_a10Qt)
sFoldr1 :: Sing t_a1wo1 -> Sing t_a1wo2 -> Sing (Apply (Apply Foldr1Sym0 t_a1wo1) t_a1wo2 :: a_a1vkT)
sConcat :: Sing t_a1wo0 -> Sing (Apply ConcatSym0 t_a1wo0 :: [a_a1vkY])
sConcatMap :: Sing t_a1wnY -> Sing t_a1wnZ -> Sing (Apply (Apply ConcatMapSym0 t_a1wnY) t_a1wnZ :: [b_a1vl0])
sAnd :: Sing t_a1wnX -> Sing (Apply AndSym0 t_a1wnX :: Bool)
sOr :: Sing t_a1wnW -> Sing (Apply OrSym0 t_a1wnW :: Bool)
sAny_ :: Sing t_a1swE -> Sing t_a1swF -> Sing (Apply (Apply Any_Sym0 t_a1swE) t_a1swF :: Bool)
sAll :: Sing t_a1wnU -> Sing t_a1wnV -> Sing (Apply (Apply AllSym0 t_a1wnU) t_a1wnV :: Bool)
sSum :: SNum (KProxy :: KProxy a_a1vi7) => Sing t_a1wm6 -> Sing (Apply SumSym0 t_a1wm6 :: a_a1vi7)
sProduct :: SNum (KProxy :: KProxy a_a1vi6) => Sing t_a1wm5 -> Sing (Apply ProductSym0 t_a1wm5 :: a_a1vi6)
sMaximum :: SOrd (KProxy :: KProxy a_a1vq3) => Sing t_a1wo9 -> Sing (Apply MaximumSym0 t_a1wo9 :: a_a1vq3)
sMinimum :: SOrd (KProxy :: KProxy a_a1vq5) => Sing t_a1woa -> Sing (Apply MinimumSym0 t_a1woa :: a_a1vq5)
any_ :: (a_a1swk -> Bool) -> [a_a1swk] -> Bool
sScanl :: Sing t_a1wnP -> Sing t_a1wnQ -> Sing t_a1wnR -> Sing (Apply (Apply (Apply ScanlSym0 t_a1wnP) t_a1wnQ) t_a1wnR :: [b_a1vla])
sScanl1 :: Sing t_a1wnS -> Sing t_a1wnT -> Sing (Apply (Apply Scanl1Sym0 t_a1wnS) t_a1wnT :: [a_a1vlh])
sScanr :: Sing t_a1wnM -> Sing t_a1wnN -> Sing t_a1wnO -> Sing (Apply (Apply (Apply ScanrSym0 t_a1wnM) t_a1wnN) t_a1wnO :: [b_a1vlm])
sScanr1 :: Sing t_a1wnK -> Sing t_a1wnL -> Sing (Apply (Apply Scanr1Sym0 t_a1wnK) t_a1wnL :: [a_a1vlu])
sMapAccumL :: Sing t_a1wnH -> Sing t_a1wnI -> Sing t_a1wnJ -> Sing (Apply (Apply (Apply MapAccumLSym0 t_a1wnH) t_a1wnI) t_a1wnJ :: (acc_a1vlB, [y_a1vlD]))
sMapAccumR :: Sing t_a1wnE -> Sing t_a1wnF -> Sing t_a1wnG -> Sing (Apply (Apply (Apply MapAccumRSym0 t_a1wnE) t_a1wnF) t_a1wnG :: (acc_a1vlN, [y_a1vlP]))
sReplicate :: Sing t_a1wm2 -> Sing t_a1wm3 -> Sing (Apply (Apply ReplicateSym0 t_a1wm2) t_a1wm3 :: [a_a1vqK])
sUnfoldr :: Sing t_a1wnC -> Sing t_a1wnD -> Sing (Apply (Apply UnfoldrSym0 t_a1wnC) t_a1wnD :: [a_a1vm0])
sTake :: Sing t_a1wmg -> Sing t_a1wmh -> Sing (Apply (Apply TakeSym0 t_a1wmg) t_a1wmh :: [a_a1vpQ])
sDrop :: Sing t_a1wme -> Sing t_a1wmf -> Sing (Apply (Apply DropSym0 t_a1wme) t_a1wmf :: [a_a1vpU])
sSplitAt :: Sing t_a1wmi -> Sing t_a1wmj -> Sing (Apply (Apply SplitAtSym0 t_a1wmi) t_a1wmj :: ([a_a1vpY], [a_a1vpY]))
sTakeWhile :: Sing t_a1wmt -> Sing t_a1wmu -> Sing (Apply (Apply TakeWhileSym0 t_a1wmt) t_a1wmu :: [a_a1vpn])
sDropWhile :: Sing t_a1wmr -> Sing t_a1wms -> Sing (Apply (Apply DropWhileSym0 t_a1wmr) t_a1wms :: [a_a1vpr])
sDropWhileEnd :: Sing t_a1wot -> Sing t_a1wou -> Sing (Apply (Apply DropWhileEndSym0 t_a1wot) t_a1wou :: [a_a1vpw])
sSpan :: Sing t_a1wmm -> Sing t_a1wmn -> Sing (Apply (Apply SpanSym0 t_a1wmm) t_a1wmn :: ([a_a1vpA], [a_a1vpA]))
sBreak :: Sing t_a1wmk -> Sing t_a1wml -> Sing (Apply (Apply BreakSym0 t_a1wmk) t_a1wml :: ([a_a1vpI], [a_a1vpI]))
sGroup :: SEq (KProxy :: KProxy a_a1vq1) => Sing t_a1wmq -> Sing (Apply GroupSym0 t_a1wmq :: [[a_a1vq1]])
sInits :: Sing t_a1wnB -> Sing (Apply InitsSym0 t_a1wnB :: [[a_a1vm5]])
sTails :: Sing t_a1wny -> Sing (Apply TailsSym0 t_a1wny :: [[a_a1vm9]])
sIsPrefixOf :: SEq (KProxy :: KProxy a_a1vmc) => Sing t_a1wnw -> Sing t_a1wnx -> Sing (Apply (Apply IsPrefixOfSym0 t_a1wnw) t_a1wnx :: Bool)
sIsSuffixOf :: SEq (KProxy :: KProxy a_a1vmh) => Sing t_a1woq -> Sing t_a1wor -> Sing (Apply (Apply IsSuffixOfSym0 t_a1woq) t_a1wor :: Bool)
sIsInfixOf :: SEq (KProxy :: KProxy a_a1vmk) => Sing t_a1wnz -> Sing t_a1wnA -> Sing (Apply (Apply IsInfixOfSym0 t_a1wnz) t_a1wnA :: Bool)
sElem :: SEq (KProxy :: KProxy a_a1vmn) => Sing t_a1wnt -> Sing t_a1wnu -> Sing (Apply (Apply ElemSym0 t_a1wnt) t_a1wnu :: Bool)
sNotElem :: SEq (KProxy :: KProxy a_a1vmr) => Sing t_a1wnr -> Sing t_a1wns -> Sing (Apply (Apply NotElemSym0 t_a1wnr) t_a1wns :: Bool)
sLookup :: SEq (KProxy :: KProxy a_a1vqh) => Sing t_a1wmc -> Sing t_a1wmd -> Sing (Apply (Apply LookupSym0 t_a1wmc) t_a1wmd :: Maybe b_a1vqi)
sFind :: Sing t_a1wmx -> Sing t_a1wmy -> Sing (Apply (Apply FindSym0 t_a1wmx) t_a1wmy :: Maybe a_a1vp1)
sFilter :: Sing t_a1wmv -> Sing t_a1wmw -> Sing (Apply (Apply FilterSym0 t_a1wmv) t_a1wmw :: [a_a1voW])
sPartition :: Sing t_a1wma -> Sing t_a1wmb -> Sing (Apply (Apply PartitionSym0 t_a1wma) t_a1wmb :: ([a_a1vqo], [a_a1vqo]))
(%:!!) :: Sing t_a1wm0 -> Sing t_a1wm1 -> Sing (Apply (Apply (:!!$) t_a1wm0) t_a1wm1 :: a_a1vqS)
sElemIndex :: SEq (KProxy :: KProxy a_a1vp3) => Sing t_a1wnp -> Sing t_a1wnq -> Sing (Apply (Apply ElemIndexSym0 t_a1wnp) t_a1wnq :: Maybe Nat)
sElemIndices :: SEq (KProxy :: KProxy a_a1vp5) => Sing t_a1wnl -> Sing t_a1wnm -> Sing (Apply (Apply ElemIndicesSym0 t_a1wnl) t_a1wnm :: [Nat])
sFindIndex :: Sing t_a1wnn -> Sing t_a1wno -> Sing (Apply (Apply FindIndexSym0 t_a1wnn) t_a1wno :: Maybe Nat)
sFindIndices :: Sing t_a1wnj -> Sing t_a1wnk -> Sing (Apply (Apply FindIndicesSym0 t_a1wnj) t_a1wnk :: [Nat])
sZip :: Sing t_a1wnh -> Sing t_a1wni -> Sing (Apply (Apply ZipSym0 t_a1wnh) t_a1wni :: [(a_a1vmv, b_a1vmw)])
sZip3 :: Sing t_a1wne -> Sing t_a1wnf -> Sing t_a1wng -> Sing (Apply (Apply (Apply Zip3Sym0 t_a1wne) t_a1wnf) t_a1wng :: [(a_a1vmB, b_a1vmC, c_a1vmD)])
sZipWith :: Sing t_a1wnb -> Sing t_a1wnc -> Sing t_a1wnd -> Sing (Apply (Apply (Apply ZipWithSym0 t_a1wnb) t_a1wnc) t_a1wnd :: [c_a1vmM])
sZipWith3 :: Sing t_a1wn7 -> Sing t_a1wn8 -> Sing t_a1wn9 -> Sing t_a1wna -> Sing (Apply (Apply (Apply (Apply ZipWith3Sym0 t_a1wn7) t_a1wn8) t_a1wn9) t_a1wna :: [d_a1vmV])
sUnzip :: Sing t_a1wn6 -> Sing (Apply UnzipSym0 t_a1wn6 :: ([a_a1vn3], [b_a1vn4]))
sUnzip3 :: Sing t_a1wn5 -> Sing (Apply Unzip3Sym0 t_a1wn5 :: ([a_a1vna], [b_a1vnb], [c_a1vnc]))
sUnzip4 :: Sing t_a1wn4 -> Sing (Apply Unzip4Sym0 t_a1wn4 :: ([a_a1vnk], [b_a1vnl], [c_a1vnm], [d_a1vnn]))
sUnzip5 :: Sing t_a1wn3 -> Sing (Apply Unzip5Sym0 t_a1wn3 :: ([a_a1vnx], [b_a1vny], [c_a1vnz], [d_a1vnA], [e_a1vnB]))
sUnzip6 :: Sing t_a1wn2 -> Sing (Apply Unzip6Sym0 t_a1wn2 :: ([a_a1vnN], [b_a1vnO], [c_a1vnP], [d_a1vnQ], [e_a1vnR], [f_a1vnS]))
sUnzip7 :: Sing t_a1wn1 -> Sing (Apply Unzip7Sym0 t_a1wn1 :: ([a_a1vo6], [b_a1vo7], [c_a1vo8], [d_a1vo9], [e_a1voa], [f_a1vob], [g_a1voc]))
sNub :: SEq (KProxy :: KProxy a_a1vi5) => Sing t_a1wnv -> Sing (Apply NubSym0 t_a1wnv :: [a_a1vi5])
sDelete :: SEq (KProxy :: KProxy a_a1vos) => Sing t_a1wmX -> Sing t_a1wmY -> Sing (Apply (Apply DeleteSym0 t_a1wmX) t_a1wmY :: [a_a1vos])
(%:\\) :: SEq (KProxy :: KProxy a_a1vot) => Sing t_a1wmZ -> Sing t_a1wn0 -> Sing (Apply (Apply (:\\$) t_a1wmZ) t_a1wn0 :: [a_a1vot])
sUnion :: SEq (KProxy :: KProxy a_a1vrh) => Sing t_a1wmV -> Sing t_a1wmW -> Sing (Apply (Apply UnionSym0 t_a1wmV) t_a1wmW :: [a_a1vrh])
sIntersect :: SEq (KProxy :: KProxy a_a1vph) => Sing t_a1wmC -> Sing t_a1wmD -> Sing (Apply (Apply IntersectSym0 t_a1wmC) t_a1wmD :: [a_a1vph])
sInsert :: SOrd (KProxy :: KProxy a_a1vq7) => Sing t_a1wmH -> Sing t_a1wmI -> Sing (Apply (Apply InsertSym0 t_a1wmH) t_a1wmI :: [a_a1vq7])
sSort :: SOrd (KProxy :: KProxy a_a1vqa) => Sing t_a1wmL -> Sing (Apply SortSym0 t_a1wmL :: [a_a1vqa])
sNubBy :: Sing t_a1wlY -> Sing t_a1wlZ -> Sing (Apply (Apply NubBySym0 t_a1wlY) t_a1wlZ :: [a_a1vr1])
sDeleteBy :: Sing t_a1wmM -> Sing t_a1wmN -> Sing t_a1wmO -> Sing (Apply (Apply (Apply DeleteBySym0 t_a1wmM) t_a1wmN) t_a1wmO :: [a_a1vou])
sDeleteFirstsBy :: Sing t_a1wmP -> Sing t_a1wmQ -> Sing t_a1wmR -> Sing (Apply (Apply (Apply DeleteFirstsBySym0 t_a1wmP) t_a1wmQ) t_a1wmR :: [a_a1voz])
sUnionBy :: Sing t_a1wmS -> Sing t_a1wmT -> Sing t_a1wmU -> Sing (Apply (Apply (Apply UnionBySym0 t_a1wmS) t_a1wmT) t_a1wmU :: [a_a1vrd])
sIntersectBy :: Sing t_a1wmz -> Sing t_a1wmA -> Sing t_a1wmB -> Sing (Apply (Apply (Apply IntersectBySym0 t_a1wmz) t_a1wmA) t_a1wmB :: [a_a1vpi])
sGroupBy :: Sing t_a1wmo -> Sing t_a1wmp -> Sing (Apply (Apply GroupBySym0 t_a1wmo) t_a1wmp :: [[a_a1vqb]])
sSortBy :: Sing t_a1wmJ -> Sing t_a1wmK -> Sing (Apply (Apply SortBySym0 t_a1wmJ) t_a1wmK :: [a_a1voB])
sInsertBy :: Sing t_a1wmE -> Sing t_a1wmF -> Sing t_a1wmG -> Sing (Apply (Apply (Apply InsertBySym0 t_a1wmE) t_a1wmF) t_a1wmG :: [a_a1voD])
sMaximumBy :: Sing t_a1wo5 -> Sing t_a1wo6 -> Sing (Apply (Apply MaximumBySym0 t_a1wo5) t_a1wo6 :: a_a1voK)
sMinimumBy :: Sing t_a1wo7 -> Sing t_a1wo8 -> Sing (Apply (Apply MinimumBySym0 t_a1wo7) t_a1wo8 :: a_a1voQ)
sGenericLength :: SNum (KProxy :: KProxy i_a1vrj) => Sing t_a1wlU -> Sing (Apply GenericLengthSym0 t_a1wlU :: i_a1vrj)
type NilSym0 = '[]
data (:$) (l_axRA :: TyFun a_12 (TyFun [a_12] [a_12] -> *))
data (:$$) (l_axRD :: a_12) (l_axRC :: TyFun [a_12] [a_12])
type (:$$$) (t_axRy :: a_12) (t_axRz :: [a_12]) = (:) t_axRy t_axRz
type (:++$$$) (t_a10SM :: [a_a10QE]) (t_a10SN :: [a_a10QE]) = (:++) t_a10SM t_a10SN
data (:++$$) (l_a10SR :: [a_a10QE]) (l_a10SQ :: TyFun [a_a10QE] [a_a10QE])
data (:++$) (l_a10SO :: TyFun [a_a10QE] (TyFun [a_a10QE] [a_a10QE] -> *))
data HeadSym0 (l_a1wlF :: TyFun [a_a1vjC] a_a1vjC)
type HeadSym1 (t_a1wlE :: [a_a1vjC]) = Head t_a1wlE
data LastSym0 (l_a1wlv :: TyFun [a_a1vjE] a_a1vjE)
type LastSym1 (t_a1wlu :: [a_a1vjE]) = Last t_a1wlu
data TailSym0 (l_a1wln :: TyFun [a_a1vjI] [a_a1vjI])
type TailSym1 (t_a1wlm :: [a_a1vjI]) = Tail t_a1wlm
data InitSym0 (l_a1wkQ :: TyFun [a_a1vjK] [a_a1vjK])
type InitSym1 (t_a1wkP :: [a_a1vjK]) = Init t_a1wkP
data NullSym0 (l_a1wjJ :: TyFun [a_a1vjS] Bool)
type NullSym1 (t_a1wjI :: [a_a1vjS]) = Null t_a1wjI
data LengthSym0 (l_a1vvD :: TyFun [a_a1vqI] Nat)
type LengthSym1 (t_a1vvC :: [a_a1vqI]) = Length t_a1vvC
data MapSym0 (l_a10T1 :: TyFun (TyFun a_a10Qz b_a10QA -> *) (TyFun [a_a10Qz] [b_a10QA] -> *))
data MapSym1 (l_a10T4 :: TyFun a_a10Qz b_a10QA -> *) (l_a10T3 :: TyFun [a_a10Qz] [b_a10QA])
type MapSym2 (t_a10SZ :: TyFun a_a10Qz b_a10QA -> *) (t_a10T0 :: [a_a10Qz]) = Map t_a10SZ t_a10T0
data ReverseSym0 (l_a1wja :: TyFun [a_a1vjT] [a_a1vjT])
type ReverseSym1 (t_a1wj9 :: [a_a1vjT]) = Reverse t_a1wj9
data IntersperseSym0 (l_a1wiL :: TyFun a_a1vk1 (TyFun [a_a1vk1] [a_a1vk1] -> *))
data IntersperseSym1 (l_a1wiO :: a_a1vk1) (l_a1wiN :: TyFun [a_a1vk1] [a_a1vk1])
type IntersperseSym2 (t_a1wiJ :: a_a1vk1) (t_a1wiK :: [a_a1vk1]) = Intersperse t_a1wiJ t_a1wiK
data IntercalateSym0 (l_a1wj0 :: TyFun [a_a1vk5] (TyFun [[a_a1vk5]] [a_a1vk5] -> *))
data IntercalateSym1 (l_a1wj3 :: [a_a1vk5]) (l_a1wj2 :: TyFun [[a_a1vk5]] [a_a1vk5])
type IntercalateSym2 (t_a1wiY :: [a_a1vk5]) (t_a1wiZ :: [[a_a1vk5]]) = Intercalate t_a1wiY t_a1wiZ
data TransposeSym0 (l_a1wlN :: TyFun [[a_a1vqN]] [[a_a1vqN]])
type TransposeSym1 (t_a1wlM :: [[a_a1vqN]]) = Transpose t_a1wlM
data SubsequencesSym0 (l_a1wiF :: TyFun [a_a1vk8] [[a_a1vk8]])
type SubsequencesSym1 (t_a1wiE :: [a_a1vk8]) = Subsequences t_a1wiE
data PermutationsSym0 (l_a1wbX :: TyFun [a_a1vkk] [[a_a1vkk]])
type PermutationsSym1 (t_a1wbW :: [a_a1vkk]) = Permutations t_a1wbW
data FoldlSym0 (l_aB2j :: TyFun (TyFun b_aB26 (TyFun a_aB25 b_aB26 -> *) -> *) (TyFun b_aB26 (TyFun [a_aB25] b_aB26 -> *) -> *))
data FoldlSym1 (l_aB2m :: TyFun b_aB26 (TyFun a_aB25 b_aB26 -> *) -> *) (l_aB2l :: TyFun b_aB26 (TyFun [a_aB25] b_aB26 -> *))
data FoldlSym2 (l_aB2p :: TyFun b_aB26 (TyFun a_aB25 b_aB26 -> *) -> *) (l_aB2q :: b_aB26) (l_aB2o :: TyFun [a_aB25] b_aB26)
type FoldlSym3 (t_aB2g :: TyFun b_aB26 (TyFun a_aB25 b_aB26 -> *) -> *) (t_aB2h :: b_aB26) (t_aB2i :: [a_aB25]) = Foldl t_aB2g t_aB2h t_aB2i
data Foldl'Sym0 (l_a1wao :: TyFun (TyFun b_a1vi9 (TyFun a_a1vi8 b_a1vi9 -> *) -> *) (TyFun b_a1vi9 (TyFun [a_a1vi8] b_a1vi9 -> *) -> *))
data Foldl'Sym1 (l_a1war :: TyFun b_a1vi9 (TyFun a_a1vi8 b_a1vi9 -> *) -> *) (l_a1waq :: TyFun b_a1vi9 (TyFun [a_a1vi8] b_a1vi9 -> *))
data Foldl'Sym2 (l_a1wau :: TyFun b_a1vi9 (TyFun a_a1vi8 b_a1vi9 -> *) -> *) (l_a1wav :: b_a1vi9) (l_a1wat :: TyFun [a_a1vi8] b_a1vi9)
type Foldl'Sym3 (t_a1wal :: TyFun b_a1vi9 (TyFun a_a1vi8 b_a1vi9 -> *) -> *) (t_a1wam :: b_a1vi9) (t_a1wan :: [a_a1vi8]) = Foldl' t_a1wal t_a1wam t_a1wan
data Foldl1Sym0 (l_a1w6S :: TyFun (TyFun a_a1vkL (TyFun a_a1vkL a_a1vkL -> *) -> *) (TyFun [a_a1vkL] a_a1vkL -> *))
data Foldl1Sym1 (l_a1w6V :: TyFun a_a1vkL (TyFun a_a1vkL a_a1vkL -> *) -> *) (l_a1w6U :: TyFun [a_a1vkL] a_a1vkL)
type Foldl1Sym2 (t_a1w6Q :: TyFun a_a1vkL (TyFun a_a1vkL a_a1vkL -> *) -> *) (t_a1w6R :: [a_a1vkL]) = Foldl1 t_a1w6Q t_a1w6R
data Foldl1'Sym0 (l_a1wbJ :: TyFun (TyFun a_a1vkP (TyFun a_a1vkP a_a1vkP -> *) -> *) (TyFun [a_a1vkP] a_a1vkP -> *))
data Foldl1'Sym1 (l_a1wbM :: TyFun a_a1vkP (TyFun a_a1vkP a_a1vkP -> *) -> *) (l_a1wbL :: TyFun [a_a1vkP] a_a1vkP)
type Foldl1'Sym2 (t_a1wbH :: TyFun a_a1vkP (TyFun a_a1vkP a_a1vkP -> *) -> *) (t_a1wbI :: [a_a1vkP]) = Foldl1' t_a1wbH t_a1wbI
data FoldrSym0 (l_a10Th :: TyFun (TyFun a_a10Qs (TyFun b_a10Qt b_a10Qt -> *) -> *) (TyFun b_a10Qt (TyFun [a_a10Qs] b_a10Qt -> *) -> *))
data FoldrSym1 (l_a10Tk :: TyFun a_a10Qs (TyFun b_a10Qt b_a10Qt -> *) -> *) (l_a10Tj :: TyFun b_a10Qt (TyFun [a_a10Qs] b_a10Qt -> *))
data FoldrSym2 (l_a10Tn :: TyFun a_a10Qs (TyFun b_a10Qt b_a10Qt -> *) -> *) (l_a10To :: b_a10Qt) (l_a10Tm :: TyFun [a_a10Qs] b_a10Qt)
type FoldrSym3 (t_a10Te :: TyFun a_a10Qs (TyFun b_a10Qt b_a10Qt -> *) -> *) (t_a10Tf :: b_a10Qt) (t_a10Tg :: [a_a10Qs]) = Foldr t_a10Te t_a10Tf t_a10Tg
data Foldr1Sym0 (l_a1w6f :: TyFun (TyFun a_a1vkT (TyFun a_a1vkT a_a1vkT -> *) -> *) (TyFun [a_a1vkT] a_a1vkT -> *))
data Foldr1Sym1 (l_a1w6i :: TyFun a_a1vkT (TyFun a_a1vkT a_a1vkT -> *) -> *) (l_a1w6h :: TyFun [a_a1vkT] a_a1vkT)
type Foldr1Sym2 (t_a1w6d :: TyFun a_a1vkT (TyFun a_a1vkT a_a1vkT -> *) -> *) (t_a1w6e :: [a_a1vkT]) = Foldr1 t_a1w6d t_a1w6e
data ConcatSym0 (l_a1w69 :: TyFun [[a_a1vkY]] [a_a1vkY])
type ConcatSym1 (t_a1w68 :: [[a_a1vkY]]) = Concat t_a1w68
data ConcatMapSym0 (l_a1w5V :: TyFun (TyFun a_a1vkZ [b_a1vl0] -> *) (TyFun [a_a1vkZ] [b_a1vl0] -> *))
data ConcatMapSym1 (l_a1w5Y :: TyFun a_a1vkZ [b_a1vl0] -> *) (l_a1w5X :: TyFun [a_a1vkZ] [b_a1vl0])
type ConcatMapSym2 (t_a1w5T :: TyFun a_a1vkZ [b_a1vl0] -> *) (t_a1w5U :: [a_a1vkZ]) = ConcatMap t_a1w5T t_a1w5U
data AndSym0 (l_a1w5O :: TyFun [Bool] Bool)
type AndSym1 (t_a1w5N :: [Bool]) = And t_a1w5N
data OrSym0 (l_a1w5I :: TyFun [Bool] Bool)
type OrSym1 (t_a1w5H :: [Bool]) = Or t_a1w5H
data Any_Sym0 (l_a1swr :: TyFun (TyFun a_a1swk Bool -> *) (TyFun [a_a1swk] Bool -> *))
data Any_Sym1 (l_a1swu :: TyFun a_a1swk Bool -> *) (l_a1swt :: TyFun [a_a1swk] Bool)
type Any_Sym2 (t_a1swp :: TyFun a_a1swk Bool -> *) (t_a1swq :: [a_a1swk]) = Any_ t_a1swp t_a1swq
data AllSym0 (l_a1w5u :: TyFun (TyFun a_a1vl6 Bool -> *) (TyFun [a_a1vl6] Bool -> *))
data AllSym1 (l_a1w5x :: TyFun a_a1vl6 Bool -> *) (l_a1w5w :: TyFun [a_a1vl6] Bool)
type AllSym2 (t_a1w5s :: TyFun a_a1vl6 Bool -> *) (t_a1w5t :: [a_a1vl6]) = All t_a1w5s t_a1w5t
data SumSym0 (l_a1vw9 :: TyFun [a_a1vi7] a_a1vi7)
type SumSym1 (t_a1vw8 :: [a_a1vi7]) = Sum t_a1vw8
data ProductSym0 (l_a1vvL :: TyFun [a_a1vi6] a_a1vi6)
type ProductSym1 (t_a1vvK :: [a_a1vi6]) = Product t_a1vvK
data MaximumSym0 (l_a1w9U :: TyFun [a_a1vq3] a_a1vq3)
type MaximumSym1 (t_a1w9T :: [a_a1vq3]) = Maximum t_a1w9T
data MinimumSym0 (l_a1wa8 :: TyFun [a_a1vq5] a_a1vq5)
type MinimumSym1 (t_a1wa7 :: [a_a1vq5]) = Minimum t_a1wa7
data ScanlSym0 (l_a1w4G :: TyFun (TyFun b_a1vla (TyFun a_a1vlb b_a1vla -> *) -> *) (TyFun b_a1vla (TyFun [a_a1vlb] [b_a1vla] -> *) -> *))
data ScanlSym1 (l_a1w4J :: TyFun b_a1vla (TyFun a_a1vlb b_a1vla -> *) -> *) (l_a1w4I :: TyFun b_a1vla (TyFun [a_a1vlb] [b_a1vla] -> *))
data ScanlSym2 (l_a1w4M :: TyFun b_a1vla (TyFun a_a1vlb b_a1vla -> *) -> *) (l_a1w4N :: b_a1vla) (l_a1w4L :: TyFun [a_a1vlb] [b_a1vla])
type ScanlSym3 (t_a1w4D :: TyFun b_a1vla (TyFun a_a1vlb b_a1vla -> *) -> *) (t_a1w4E :: b_a1vla) (t_a1w4F :: [a_a1vlb]) = Scanl t_a1w4D t_a1w4E t_a1w4F
data Scanl1Sym0 (l_a1w5f :: TyFun (TyFun a_a1vlh (TyFun a_a1vlh a_a1vlh -> *) -> *) (TyFun [a_a1vlh] [a_a1vlh] -> *))
data Scanl1Sym1 (l_a1w5i :: TyFun a_a1vlh (TyFun a_a1vlh a_a1vlh -> *) -> *) (l_a1w5h :: TyFun [a_a1vlh] [a_a1vlh])
type Scanl1Sym2 (t_a1w5d :: TyFun a_a1vlh (TyFun a_a1vlh a_a1vlh -> *) -> *) (t_a1w5e :: [a_a1vlh]) = Scanl1 t_a1w5d t_a1w5e
data ScanrSym0 (l_a1w3V :: TyFun (TyFun a_a1vll (TyFun b_a1vlm b_a1vlm -> *) -> *) (TyFun b_a1vlm (TyFun [a_a1vll] [b_a1vlm] -> *) -> *))
data ScanrSym1 (l_a1w3Y :: TyFun a_a1vll (TyFun b_a1vlm b_a1vlm -> *) -> *) (l_a1w3X :: TyFun b_a1vlm (TyFun [a_a1vll] [b_a1vlm] -> *))
data ScanrSym2 (l_a1w41 :: TyFun a_a1vll (TyFun b_a1vlm b_a1vlm -> *) -> *) (l_a1w42 :: b_a1vlm) (l_a1w40 :: TyFun [a_a1vll] [b_a1vlm])
type ScanrSym3 (t_a1w3S :: TyFun a_a1vll (TyFun b_a1vlm b_a1vlm -> *) -> *) (t_a1w3T :: b_a1vlm) (t_a1w3U :: [a_a1vll]) = Scanr t_a1w3S t_a1w3T t_a1w3U
data Scanr1Sym0 (l_a1w2T :: TyFun (TyFun a_a1vlu (TyFun a_a1vlu a_a1vlu -> *) -> *) (TyFun [a_a1vlu] [a_a1vlu] -> *))
data Scanr1Sym1 (l_a1w2W :: TyFun a_a1vlu (TyFun a_a1vlu a_a1vlu -> *) -> *) (l_a1w2V :: TyFun [a_a1vlu] [a_a1vlu])
type Scanr1Sym2 (t_a1w2R :: TyFun a_a1vlu (TyFun a_a1vlu a_a1vlu -> *) -> *) (t_a1w2S :: [a_a1vlu]) = Scanr1 t_a1w2R t_a1w2S
data MapAccumLSym0 (l_a1w08 :: TyFun (TyFun acc_a1vlB (TyFun x_a1vlC (acc_a1vlB, y_a1vlD) -> *) -> *) (TyFun acc_a1vlB (TyFun [x_a1vlC] (acc_a1vlB, [y_a1vlD]) -> *) -> *))
data MapAccumLSym1 (l_a1w0b :: TyFun acc_a1vlB (TyFun x_a1vlC (acc_a1vlB, y_a1vlD) -> *) -> *) (l_a1w0a :: TyFun acc_a1vlB (TyFun [x_a1vlC] (acc_a1vlB, [y_a1vlD]) -> *))
data MapAccumLSym2 (l_a1w0e :: TyFun acc_a1vlB (TyFun x_a1vlC (acc_a1vlB, y_a1vlD) -> *) -> *) (l_a1w0f :: acc_a1vlB) (l_a1w0d :: TyFun [x_a1vlC] (acc_a1vlB, [y_a1vlD]))
type MapAccumLSym3 (t_a1w05 :: TyFun acc_a1vlB (TyFun x_a1vlC (acc_a1vlB, y_a1vlD) -> *) -> *) (t_a1w06 :: acc_a1vlB) (t_a1w07 :: [x_a1vlC]) = MapAccumL t_a1w05 t_a1w06 t_a1w07
data MapAccumRSym0 (l_a1vXm :: TyFun (TyFun acc_a1vlN (TyFun x_a1vlO (acc_a1vlN, y_a1vlP) -> *) -> *) (TyFun acc_a1vlN (TyFun [x_a1vlO] (acc_a1vlN, [y_a1vlP]) -> *) -> *))
data MapAccumRSym1 (l_a1vXp :: TyFun acc_a1vlN (TyFun x_a1vlO (acc_a1vlN, y_a1vlP) -> *) -> *) (l_a1vXo :: TyFun acc_a1vlN (TyFun [x_a1vlO] (acc_a1vlN, [y_a1vlP]) -> *))
data MapAccumRSym2 (l_a1vXs :: TyFun acc_a1vlN (TyFun x_a1vlO (acc_a1vlN, y_a1vlP) -> *) -> *) (l_a1vXt :: acc_a1vlN) (l_a1vXr :: TyFun [x_a1vlO] (acc_a1vlN, [y_a1vlP]))
type MapAccumRSym3 (t_a1vXj :: TyFun acc_a1vlN (TyFun x_a1vlO (acc_a1vlN, y_a1vlP) -> *) -> *) (t_a1vXk :: acc_a1vlN) (t_a1vXl :: [x_a1vlO]) = MapAccumR t_a1vXj t_a1vXk t_a1vXl
data ReplicateSym0 (l_a1vvi :: TyFun Nat (TyFun a_a1vqK [a_a1vqK] -> *))
data ReplicateSym1 (l_a1vvl :: Nat) (l_a1vvk :: TyFun a_a1vqK [a_a1vqK])
type ReplicateSym2 (t_a1vvg :: Nat) (t_a1vvh :: a_a1vqK) = Replicate t_a1vvg t_a1vvh
data UnfoldrSym0 (l_a1vWX :: TyFun (TyFun b_a1vlZ (Maybe (a_a1vm0, b_a1vlZ)) -> *) (TyFun b_a1vlZ [a_a1vm0] -> *))
data UnfoldrSym1 (l_a1vX0 :: TyFun b_a1vlZ (Maybe (a_a1vm0, b_a1vlZ)) -> *) (l_a1vWZ :: TyFun b_a1vlZ [a_a1vm0])
type UnfoldrSym2 (t_a1vWV :: TyFun b_a1vlZ (Maybe (a_a1vm0, b_a1vlZ)) -> *) (t_a1vWW :: b_a1vlZ) = Unfoldr t_a1vWV t_a1vWW
data TakeSym0 (l_a1vyt :: TyFun Nat (TyFun [a_a1vpQ] [a_a1vpQ] -> *))
data TakeSym1 (l_a1vyw :: Nat) (l_a1vyv :: TyFun [a_a1vpQ] [a_a1vpQ])
type TakeSym2 (t_a1vyr :: Nat) (t_a1vys :: [a_a1vpQ]) = Take t_a1vyr t_a1vys
data DropSym0 (l_a1vxY :: TyFun Nat (TyFun [a_a1vpU] [a_a1vpU] -> *))
data DropSym1 (l_a1vy1 :: Nat) (l_a1vy0 :: TyFun [a_a1vpU] [a_a1vpU])
type DropSym2 (t_a1vxW :: Nat) (t_a1vxX :: [a_a1vpU]) = Drop t_a1vxW t_a1vxX
data SplitAtSym0 (l_a1vyY :: TyFun Nat (TyFun [a_a1vpY] ([a_a1vpY], [a_a1vpY]) -> *))
data SplitAtSym1 (l_a1vz1 :: Nat) (l_a1vz0 :: TyFun [a_a1vpY] ([a_a1vpY], [a_a1vpY]))
type SplitAtSym2 (t_a1vyW :: Nat) (t_a1vyX :: [a_a1vpY]) = SplitAt t_a1vyW t_a1vyX
data TakeWhileSym0 (l_a1vEu :: TyFun (TyFun a_a1vpn Bool -> *) (TyFun [a_a1vpn] [a_a1vpn] -> *))
data TakeWhileSym1 (l_a1vEx :: TyFun a_a1vpn Bool -> *) (l_a1vEw :: TyFun [a_a1vpn] [a_a1vpn])
type TakeWhileSym2 (t_a1vEs :: TyFun a_a1vpn Bool -> *) (t_a1vEt :: [a_a1vpn]) = TakeWhile t_a1vEs t_a1vEt
data DropWhileSym0 (l_a1vDM :: TyFun (TyFun a_a1vpr Bool -> *) (TyFun [a_a1vpr] [a_a1vpr] -> *))
data DropWhileSym1 (l_a1vDP :: TyFun a_a1vpr Bool -> *) (l_a1vDO :: TyFun [a_a1vpr] [a_a1vpr])
type DropWhileSym2 (t_a1vDK :: TyFun a_a1vpr Bool -> *) (t_a1vDL :: [a_a1vpr]) = DropWhile t_a1vDK t_a1vDL
data DropWhileEndSym0 (l_a1wjU :: TyFun (TyFun a_a1vpw Bool -> *) (TyFun [a_a1vpw] [a_a1vpw] -> *))
data DropWhileEndSym1 (l_a1wjX :: TyFun a_a1vpw Bool -> *) (l_a1wjW :: TyFun [a_a1vpw] [a_a1vpw])
type DropWhileEndSym2 (t_a1wjS :: TyFun a_a1vpw Bool -> *) (t_a1wjT :: [a_a1vpw]) = DropWhileEnd t_a1wjS t_a1wjT
data SpanSym0 (l_a1vAQ :: TyFun (TyFun a_a1vpA Bool -> *) (TyFun [a_a1vpA] ([a_a1vpA], [a_a1vpA]) -> *))
data SpanSym1 (l_a1vAT :: TyFun a_a1vpA Bool -> *) (l_a1vAS :: TyFun [a_a1vpA] ([a_a1vpA], [a_a1vpA]))
type SpanSym2 (t_a1vAO :: TyFun a_a1vpA Bool -> *) (t_a1vAP :: [a_a1vpA]) = Span t_a1vAO t_a1vAP
data BreakSym0 (l_a1vz9 :: TyFun (TyFun a_a1vpI Bool -> *) (TyFun [a_a1vpI] ([a_a1vpI], [a_a1vpI]) -> *))
data BreakSym1 (l_a1vzc :: TyFun a_a1vpI Bool -> *) (l_a1vzb :: TyFun [a_a1vpI] ([a_a1vpI], [a_a1vpI]))
type BreakSym2 (t_a1vz7 :: TyFun a_a1vpI Bool -> *) (t_a1vz8 :: [a_a1vpI]) = Break t_a1vz7 t_a1vz8
data GroupSym0 (l_a1vDG :: TyFun [a_a1vq1] [[a_a1vq1]])
type GroupSym1 (t_a1vDF :: [a_a1vq1]) = Group t_a1vDF
data InitsSym0 (l_a1vWI :: TyFun [a_a1vm5] [[a_a1vm5]])
type InitsSym1 (t_a1vWH :: [a_a1vm5]) = Inits t_a1vWH
data TailsSym0 (l_a1vWh :: TyFun [a_a1vm9] [[a_a1vm9]])
type TailsSym1 (t_a1vWg :: [a_a1vm9]) = Tails t_a1vWg
data IsPrefixOfSym0 (l_a1vVT :: TyFun [a_a1vmc] (TyFun [a_a1vmc] Bool -> *))
data IsPrefixOfSym1 (l_a1vVW :: [a_a1vmc]) (l_a1vVV :: TyFun [a_a1vmc] Bool)
type IsPrefixOfSym2 (t_a1vVR :: [a_a1vmc]) (t_a1vVS :: [a_a1vmc]) = IsPrefixOf t_a1vVR t_a1vVS
data IsSuffixOfSym0 (l_a1wjz :: TyFun [a_a1vmh] (TyFun [a_a1vmh] Bool -> *))
data IsSuffixOfSym1 (l_a1wjC :: [a_a1vmh]) (l_a1wjB :: TyFun [a_a1vmh] Bool)
type IsSuffixOfSym2 (t_a1wjx :: [a_a1vmh]) (t_a1wjy :: [a_a1vmh]) = IsSuffixOf t_a1wjx t_a1wjy
data IsInfixOfSym0 (l_a1vWy :: TyFun [a_a1vmk] (TyFun [a_a1vmk] Bool -> *))
data IsInfixOfSym1 (l_a1vWB :: [a_a1vmk]) (l_a1vWA :: TyFun [a_a1vmk] Bool)
type IsInfixOfSym2 (t_a1vWw :: [a_a1vmk]) (t_a1vWx :: [a_a1vmk]) = IsInfixOf t_a1vWw t_a1vWx
data ElemSym0 (l_a1vUS :: TyFun a_a1vmn (TyFun [a_a1vmn] Bool -> *))
data ElemSym1 (l_a1vUV :: a_a1vmn) (l_a1vUU :: TyFun [a_a1vmn] Bool)
type ElemSym2 (t_a1vUQ :: a_a1vmn) (t_a1vUR :: [a_a1vmn]) = Elem t_a1vUQ t_a1vUR
data NotElemSym0 (l_a1vUD :: TyFun a_a1vmr (TyFun [a_a1vmr] Bool -> *))
data NotElemSym1 (l_a1vUG :: a_a1vmr) (l_a1vUF :: TyFun [a_a1vmr] Bool)
type NotElemSym2 (t_a1vUB :: a_a1vmr) (t_a1vUC :: [a_a1vmr]) = NotElem t_a1vUB t_a1vUC
data LookupSym0 (l_a1vxo :: TyFun a_a1vqh (TyFun [(a_a1vqh, b_a1vqi)] (Maybe b_a1vqi) -> *))
data LookupSym1 (l_a1vxr :: a_a1vqh) (l_a1vxq :: TyFun [(a_a1vqh, b_a1vqi)] (Maybe b_a1vqi))
type LookupSym2 (t_a1vxm :: a_a1vqh) (t_a1vxn :: [(a_a1vqh, b_a1vqi)]) = Lookup t_a1vxm t_a1vxn
data FindSym0 (l_a1vFs :: TyFun (TyFun a_a1vp1 Bool -> *) (TyFun [a_a1vp1] (Maybe a_a1vp1) -> *))
data FindSym1 (l_a1vFv :: TyFun a_a1vp1 Bool -> *) (l_a1vFu :: TyFun [a_a1vp1] (Maybe a_a1vp1))
type FindSym2 (t_a1vFq :: TyFun a_a1vp1 Bool -> *) (t_a1vFr :: [a_a1vp1]) = Find t_a1vFq t_a1vFr
data FilterSym0 (l_a1vEZ :: TyFun (TyFun a_a1voW Bool -> *) (TyFun [a_a1voW] [a_a1voW] -> *))
data FilterSym1 (l_a1vF2 :: TyFun a_a1voW Bool -> *) (l_a1vF1 :: TyFun [a_a1voW] [a_a1voW])
type FilterSym2 (t_a1vEX :: TyFun a_a1voW Bool -> *) (t_a1vEY :: [a_a1voW]) = Filter t_a1vEX t_a1vEY
data PartitionSym0 (l_a1vxd :: TyFun (TyFun a_a1vqo Bool -> *) (TyFun [a_a1vqo] ([a_a1vqo], [a_a1vqo]) -> *))
data PartitionSym1 (l_a1vxg :: TyFun a_a1vqo Bool -> *) (l_a1vxf :: TyFun [a_a1vqo] ([a_a1vqo], [a_a1vqo]))
type PartitionSym2 (t_a1vxb :: TyFun a_a1vqo Bool -> *) (t_a1vxc :: [a_a1vqo]) = Partition t_a1vxb t_a1vxc
data (:!!$) (l_a1vuN :: TyFun [a_a1vqS] (TyFun Nat a_a1vqS -> *))
data (:!!$$) (l_a1vuQ :: [a_a1vqS]) (l_a1vuP :: TyFun Nat a_a1vqS)
type (:!!$$$) (t_a1vuL :: [a_a1vqS]) (t_a1vuM :: Nat) = (:!!) t_a1vuL t_a1vuM
data ElemIndexSym0 (l_a1vUq :: TyFun a_a1vp3 (TyFun [a_a1vp3] (Maybe Nat) -> *))
data ElemIndexSym1 (l_a1vUt :: a_a1vp3) (l_a1vUs :: TyFun [a_a1vp3] (Maybe Nat))
type ElemIndexSym2 (t_a1vUo :: a_a1vp3) (t_a1vUp :: [a_a1vp3]) = ElemIndex t_a1vUo t_a1vUp
data ElemIndicesSym0 (l_a1vU0 :: TyFun a_a1vp5 (TyFun [a_a1vp5] [Nat] -> *))
data ElemIndicesSym1 (l_a1vU3 :: a_a1vp5) (l_a1vU2 :: TyFun [a_a1vp5] [Nat])
type ElemIndicesSym2 (t_a1vTY :: a_a1vp5) (t_a1vTZ :: [a_a1vp5]) = ElemIndices t_a1vTY t_a1vTZ
data FindIndexSym0 (l_a1vUd :: TyFun (TyFun a_a1vp7 Bool -> *) (TyFun [a_a1vp7] (Maybe Nat) -> *))
data FindIndexSym1 (l_a1vUg :: TyFun a_a1vp7 Bool -> *) (l_a1vUf :: TyFun [a_a1vp7] (Maybe Nat))
type FindIndexSym2 (t_a1vUb :: TyFun a_a1vp7 Bool -> *) (t_a1vUc :: [a_a1vp7]) = FindIndex t_a1vUb t_a1vUc
data FindIndicesSym0 (l_a1vSZ :: TyFun (TyFun a_a1vp9 Bool -> *) (TyFun [a_a1vp9] [Nat] -> *))
data FindIndicesSym1 (l_a1vT2 :: TyFun a_a1vp9 Bool -> *) (l_a1vT1 :: TyFun [a_a1vp9] [Nat])
type FindIndicesSym2 (t_a1vSX :: TyFun a_a1vp9 Bool -> *) (t_a1vSY :: [a_a1vp9]) = FindIndices t_a1vSX t_a1vSY
data ZipSym0 (l_a1vSA :: TyFun [a_a1vmv] (TyFun [b_a1vmw] [(a_a1vmv, b_a1vmw)] -> *))
data ZipSym1 (l_a1vSD :: [a_a1vmv]) (l_a1vSC :: TyFun [b_a1vmw] [(a_a1vmv, b_a1vmw)])
type ZipSym2 (t_a1vSy :: [a_a1vmv]) (t_a1vSz :: [b_a1vmw]) = Zip t_a1vSy t_a1vSz
data Zip3Sym0 (l_a1vRo :: TyFun [a_a1vmB] (TyFun [b_a1vmC] (TyFun [c_a1vmD] [(a_a1vmB, b_a1vmC, c_a1vmD)] -> *) -> *))
data Zip3Sym1 (l_a1vRr :: [a_a1vmB]) (l_a1vRq :: TyFun [b_a1vmC] (TyFun [c_a1vmD] [(a_a1vmB, b_a1vmC, c_a1vmD)] -> *))
data Zip3Sym2 (l_a1vRu :: [a_a1vmB]) (l_a1vRv :: [b_a1vmC]) (l_a1vRt :: TyFun [c_a1vmD] [(a_a1vmB, b_a1vmC, c_a1vmD)])
type Zip3Sym3 (t_a1vRl :: [a_a1vmB]) (t_a1vRm :: [b_a1vmC]) (t_a1vRn :: [c_a1vmD]) = Zip3 t_a1vRl t_a1vRm t_a1vRn
data ZipWithSym0 (l_a1vQJ :: TyFun (TyFun a_a1vmK (TyFun b_a1vmL c_a1vmM -> *) -> *) (TyFun [a_a1vmK] (TyFun [b_a1vmL] [c_a1vmM] -> *) -> *))
data ZipWithSym1 (l_a1vQM :: TyFun a_a1vmK (TyFun b_a1vmL c_a1vmM -> *) -> *) (l_a1vQL :: TyFun [a_a1vmK] (TyFun [b_a1vmL] [c_a1vmM] -> *))
data ZipWithSym2 (l_a1vQP :: TyFun a_a1vmK (TyFun b_a1vmL c_a1vmM -> *) -> *) (l_a1vQQ :: [a_a1vmK]) (l_a1vQO :: TyFun [b_a1vmL] [c_a1vmM])
type ZipWithSym3 (t_a1vQG :: TyFun a_a1vmK (TyFun b_a1vmL c_a1vmM -> *) -> *) (t_a1vQH :: [a_a1vmK]) (t_a1vQI :: [b_a1vmL]) = ZipWith t_a1vQG t_a1vQH t_a1vQI
data ZipWith3Sym0 (l_a1vP4 :: TyFun (TyFun a_a1vmS (TyFun b_a1vmT (TyFun c_a1vmU d_a1vmV -> *) -> *) -> *) (TyFun [a_a1vmS] (TyFun [b_a1vmT] (TyFun [c_a1vmU] [d_a1vmV] -> *) -> *) -> *))
data ZipWith3Sym1 (l_a1vP7 :: TyFun a_a1vmS (TyFun b_a1vmT (TyFun c_a1vmU d_a1vmV -> *) -> *) -> *) (l_a1vP6 :: TyFun [a_a1vmS] (TyFun [b_a1vmT] (TyFun [c_a1vmU] [d_a1vmV] -> *) -> *))
data ZipWith3Sym2 (l_a1vPa :: TyFun a_a1vmS (TyFun b_a1vmT (TyFun c_a1vmU d_a1vmV -> *) -> *) -> *) (l_a1vPb :: [a_a1vmS]) (l_a1vP9 :: TyFun [b_a1vmT] (TyFun [c_a1vmU] [d_a1vmV] -> *))
data ZipWith3Sym3 (l_a1vPe :: TyFun a_a1vmS (TyFun b_a1vmT (TyFun c_a1vmU d_a1vmV -> *) -> *) -> *) (l_a1vPf :: [a_a1vmS]) (l_a1vPg :: [b_a1vmT]) (l_a1vPd :: TyFun [c_a1vmU] [d_a1vmV])
type ZipWith3Sym4 (t_a1vP0 :: TyFun a_a1vmS (TyFun b_a1vmT (TyFun c_a1vmU d_a1vmV -> *) -> *) -> *) (t_a1vP1 :: [a_a1vmS]) (t_a1vP2 :: [b_a1vmT]) (t_a1vP3 :: [c_a1vmU]) = ZipWith3 t_a1vP0 t_a1vP1 t_a1vP2 t_a1vP3
data UnzipSym0 (l_a1vOx :: TyFun [(a_a1vn3, b_a1vn4)] ([a_a1vn3], [b_a1vn4]))
type UnzipSym1 (t_a1vOw :: [(a_a1vn3, b_a1vn4)]) = Unzip t_a1vOw
data Unzip3Sym0 (l_a1vO1 :: TyFun [(a_a1vna, b_a1vnb, c_a1vnc)] ([a_a1vna], [b_a1vnb], [c_a1vnc]))
type Unzip3Sym1 (t_a1vO0 :: [(a_a1vna, b_a1vnb, c_a1vnc)]) = Unzip3 t_a1vO0
data Unzip4Sym0 (l_a1vNt :: TyFun [(a_a1vnk, b_a1vnl, c_a1vnm, d_a1vnn)] ([a_a1vnk], [b_a1vnl], [c_a1vnm], [d_a1vnn]))
type Unzip4Sym1 (t_a1vNs :: [(a_a1vnk, b_a1vnl, c_a1vnm, d_a1vnn)]) = Unzip4 t_a1vNs
data Unzip5Sym0 (l_a1vMT :: TyFun [(a_a1vnx, b_a1vny, c_a1vnz, d_a1vnA, e_a1vnB)] ([a_a1vnx], [b_a1vny], [c_a1vnz], [d_a1vnA], [e_a1vnB]))
type Unzip5Sym1 (t_a1vMS :: [(a_a1vnx, b_a1vny, c_a1vnz, d_a1vnA, e_a1vnB)]) = Unzip5 t_a1vMS
data Unzip6Sym0 (l_a1vMh :: TyFun [(a_a1vnN, b_a1vnO, c_a1vnP, d_a1vnQ, e_a1vnR, f_a1vnS)] ([a_a1vnN], [b_a1vnO], [c_a1vnP], [d_a1vnQ], [e_a1vnR], [f_a1vnS]))
type Unzip6Sym1 (t_a1vMg :: [(a_a1vnN, b_a1vnO, c_a1vnP, d_a1vnQ, e_a1vnR, f_a1vnS)]) = Unzip6 t_a1vMg
data Unzip7Sym0 (l_a1vLD :: TyFun [(a_a1vo6, b_a1vo7, c_a1vo8, d_a1vo9, e_a1voa, f_a1vob, g_a1voc)] ([a_a1vo6], [b_a1vo7], [c_a1vo8], [d_a1vo9], [e_a1voa], [f_a1vob], [g_a1voc]))
type Unzip7Sym1 (t_a1vLC :: [(a_a1vo6, b_a1vo7, c_a1vo8, d_a1vo9, e_a1voa, f_a1vob, g_a1voc)]) = Unzip7 t_a1vLC
data NubSym0 (l_a1vV6 :: TyFun [a_a1vi5] [a_a1vi5])
type NubSym1 (t_a1vV5 :: [a_a1vi5]) = Nub t_a1vV5
data DeleteSym0 (l_a1vLe :: TyFun a_a1vos (TyFun [a_a1vos] [a_a1vos] -> *))
data DeleteSym1 (l_a1vLh :: a_a1vos) (l_a1vLg :: TyFun [a_a1vos] [a_a1vos])
type DeleteSym2 (t_a1vLc :: a_a1vos) (t_a1vLd :: [a_a1vos]) = Delete t_a1vLc t_a1vLd
data (:\\$) (l_a1vLt :: TyFun [a_a1vot] (TyFun [a_a1vot] [a_a1vot] -> *))
data (:\\$$) (l_a1vLw :: [a_a1vot]) (l_a1vLv :: TyFun [a_a1vot] [a_a1vot])
type (:\\$$$) (t_a1vLr :: [a_a1vot]) (t_a1vLs :: [a_a1vot]) = (:\\) t_a1vLr t_a1vLs
data UnionSym0 (l_a1vKZ :: TyFun [a_a1vrh] (TyFun [a_a1vrh] [a_a1vrh] -> *))
data UnionSym1 (l_a1vL2 :: [a_a1vrh]) (l_a1vL1 :: TyFun [a_a1vrh] [a_a1vrh])
type UnionSym2 (t_a1vKX :: [a_a1vrh]) (t_a1vKY :: [a_a1vrh]) = Union t_a1vKX t_a1vKY
data IntersectSym0 (l_a1vHO :: TyFun [a_a1vph] (TyFun [a_a1vph] [a_a1vph] -> *))
data IntersectSym1 (l_a1vHR :: [a_a1vph]) (l_a1vHQ :: TyFun [a_a1vph] [a_a1vph])
type IntersectSym2 (t_a1vHM :: [a_a1vph]) (t_a1vHN :: [a_a1vph]) = Intersect t_a1vHM t_a1vHN
data InsertSym0 (l_a1vJ1 :: TyFun a_a1vq7 (TyFun [a_a1vq7] [a_a1vq7] -> *))
data InsertSym1 (l_a1vJ4 :: a_a1vq7) (l_a1vJ3 :: TyFun [a_a1vq7] [a_a1vq7])
type InsertSym2 (t_a1vIZ :: a_a1vq7) (t_a1vJ0 :: [a_a1vq7]) = Insert t_a1vIZ t_a1vJ0
data SortSym0 (l_a1vJq :: TyFun [a_a1vqa] [a_a1vqa])
type SortSym1 (t_a1vJp :: [a_a1vqa]) = Sort t_a1vJp
data NubBySym0 (l_a1vtI :: TyFun (TyFun a_a1vr1 (TyFun a_a1vr1 Bool -> *) -> *) (TyFun [a_a1vr1] [a_a1vr1] -> *))
data NubBySym1 (l_a1vtL :: TyFun a_a1vr1 (TyFun a_a1vr1 Bool -> *) -> *) (l_a1vtK :: TyFun [a_a1vr1] [a_a1vr1])
type NubBySym2 (t_a1vtG :: TyFun a_a1vr1 (TyFun a_a1vr1 Bool -> *) -> *) (t_a1vtH :: [a_a1vr1]) = NubBy t_a1vtG t_a1vtH
data DeleteBySym0 (l_a1vJx :: TyFun (TyFun a_a1vou (TyFun a_a1vou Bool -> *) -> *) (TyFun a_a1vou (TyFun [a_a1vou] [a_a1vou] -> *) -> *))
data DeleteBySym1 (l_a1vJA :: TyFun a_a1vou (TyFun a_a1vou Bool -> *) -> *) (l_a1vJz :: TyFun a_a1vou (TyFun [a_a1vou] [a_a1vou] -> *))
data DeleteBySym2 (l_a1vJD :: TyFun a_a1vou (TyFun a_a1vou Bool -> *) -> *) (l_a1vJE :: a_a1vou) (l_a1vJC :: TyFun [a_a1vou] [a_a1vou])
type DeleteBySym3 (t_a1vJu :: TyFun a_a1vou (TyFun a_a1vou Bool -> *) -> *) (t_a1vJv :: a_a1vou) (t_a1vJw :: [a_a1vou]) = DeleteBy t_a1vJu t_a1vJv t_a1vJw
data DeleteFirstsBySym0 (l_a1vKi :: TyFun (TyFun a_a1voz (TyFun a_a1voz Bool -> *) -> *) (TyFun [a_a1voz] (TyFun [a_a1voz] [a_a1voz] -> *) -> *))
data DeleteFirstsBySym1 (l_a1vKl :: TyFun a_a1voz (TyFun a_a1voz Bool -> *) -> *) (l_a1vKk :: TyFun [a_a1voz] (TyFun [a_a1voz] [a_a1voz] -> *))
data DeleteFirstsBySym2 (l_a1vKo :: TyFun a_a1voz (TyFun a_a1voz Bool -> *) -> *) (l_a1vKp :: [a_a1voz]) (l_a1vKn :: TyFun [a_a1voz] [a_a1voz])
type DeleteFirstsBySym3 (t_a1vKf :: TyFun a_a1voz (TyFun a_a1voz Bool -> *) -> *) (t_a1vKg :: [a_a1voz]) (t_a1vKh :: [a_a1voz]) = DeleteFirstsBy t_a1vKf t_a1vKg t_a1vKh
data UnionBySym0 (l_a1vKE :: TyFun (TyFun a_a1vrd (TyFun a_a1vrd Bool -> *) -> *) (TyFun [a_a1vrd] (TyFun [a_a1vrd] [a_a1vrd] -> *) -> *))
data UnionBySym1 (l_a1vKH :: TyFun a_a1vrd (TyFun a_a1vrd Bool -> *) -> *) (l_a1vKG :: TyFun [a_a1vrd] (TyFun [a_a1vrd] [a_a1vrd] -> *))
data UnionBySym2 (l_a1vKK :: TyFun a_a1vrd (TyFun a_a1vrd Bool -> *) -> *) (l_a1vKL :: [a_a1vrd]) (l_a1vKJ :: TyFun [a_a1vrd] [a_a1vrd])
type UnionBySym3 (t_a1vKB :: TyFun a_a1vrd (TyFun a_a1vrd Bool -> *) -> *) (t_a1vKC :: [a_a1vrd]) (t_a1vKD :: [a_a1vrd]) = UnionBy t_a1vKB t_a1vKC t_a1vKD
data IntersectBySym0 (l_a1vFG :: TyFun (TyFun a_a1vpi (TyFun a_a1vpi Bool -> *) -> *) (TyFun [a_a1vpi] (TyFun [a_a1vpi] [a_a1vpi] -> *) -> *))
data IntersectBySym1 (l_a1vFJ :: TyFun a_a1vpi (TyFun a_a1vpi Bool -> *) -> *) (l_a1vFI :: TyFun [a_a1vpi] (TyFun [a_a1vpi] [a_a1vpi] -> *))
data IntersectBySym2 (l_a1vFM :: TyFun a_a1vpi (TyFun a_a1vpi Bool -> *) -> *) (l_a1vFN :: [a_a1vpi]) (l_a1vFL :: TyFun [a_a1vpi] [a_a1vpi])
type IntersectBySym3 (t_a1vFD :: TyFun a_a1vpi (TyFun a_a1vpi Bool -> *) -> *) (t_a1vFE :: [a_a1vpi]) (t_a1vFF :: [a_a1vpi]) = IntersectBy t_a1vFD t_a1vFE t_a1vFF
data GroupBySym0 (l_a1vCx :: TyFun (TyFun a_a1vqb (TyFun a_a1vqb Bool -> *) -> *) (TyFun [a_a1vqb] [[a_a1vqb]] -> *))
data GroupBySym1 (l_a1vCA :: TyFun a_a1vqb (TyFun a_a1vqb Bool -> *) -> *) (l_a1vCz :: TyFun [a_a1vqb] [[a_a1vqb]])
type GroupBySym2 (t_a1vCv :: TyFun a_a1vqb (TyFun a_a1vqb Bool -> *) -> *) (t_a1vCw :: [a_a1vqb]) = GroupBy t_a1vCv t_a1vCw
data SortBySym0 (l_a1vJc :: TyFun (TyFun a_a1voB (TyFun a_a1voB Ordering -> *) -> *) (TyFun [a_a1voB] [a_a1voB] -> *))
data SortBySym1 (l_a1vJf :: TyFun a_a1voB (TyFun a_a1voB Ordering -> *) -> *) (l_a1vJe :: TyFun [a_a1voB] [a_a1voB])
type SortBySym2 (t_a1vJa :: TyFun a_a1voB (TyFun a_a1voB Ordering -> *) -> *) (t_a1vJb :: [a_a1voB]) = SortBy t_a1vJa t_a1vJb
data InsertBySym0 (l_a1vI0 :: TyFun (TyFun a_a1voD (TyFun a_a1voD Ordering -> *) -> *) (TyFun a_a1voD (TyFun [a_a1voD] [a_a1voD] -> *) -> *))
data InsertBySym1 (l_a1vI3 :: TyFun a_a1voD (TyFun a_a1voD Ordering -> *) -> *) (l_a1vI2 :: TyFun a_a1voD (TyFun [a_a1voD] [a_a1voD] -> *))
data InsertBySym2 (l_a1vI6 :: TyFun a_a1voD (TyFun a_a1voD Ordering -> *) -> *) (l_a1vI7 :: a_a1voD) (l_a1vI5 :: TyFun [a_a1voD] [a_a1voD])
type InsertBySym3 (t_a1vHX :: TyFun a_a1voD (TyFun a_a1voD Ordering -> *) -> *) (t_a1vHY :: a_a1voD) (t_a1vHZ :: [a_a1voD]) = InsertBy t_a1vHX t_a1vHY t_a1vHZ
data MaximumBySym0 (l_a1w77 :: TyFun (TyFun a_a1voK (TyFun a_a1voK Ordering -> *) -> *) (TyFun [a_a1voK] a_a1voK -> *))
data MaximumBySym1 (l_a1w7a :: TyFun a_a1voK (TyFun a_a1voK Ordering -> *) -> *) (l_a1w79 :: TyFun [a_a1voK] a_a1voK)
type MaximumBySym2 (t_a1w75 :: TyFun a_a1voK (TyFun a_a1voK Ordering -> *) -> *) (t_a1w76 :: [a_a1voK]) = MaximumBy t_a1w75 t_a1w76
data MinimumBySym0 (l_a1w8w :: TyFun (TyFun a_a1voQ (TyFun a_a1voQ Ordering -> *) -> *) (TyFun [a_a1voQ] a_a1voQ -> *))
data MinimumBySym1 (l_a1w8z :: TyFun a_a1voQ (TyFun a_a1voQ Ordering -> *) -> *) (l_a1w8y :: TyFun [a_a1voQ] a_a1voQ)
type MinimumBySym2 (t_a1w8u :: TyFun a_a1voQ (TyFun a_a1voQ Ordering -> *) -> *) (t_a1w8v :: [a_a1voQ]) = MinimumBy t_a1w8u t_a1w8v
data GenericLengthSym0 (l_a1vta :: TyFun [a_a1vri] i_a1vrj)
type GenericLengthSym1 (t_a1vt9 :: [a_a1vri]) = GenericLength t_a1vt9
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749322Scrutinee_1627749243Sym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749322Scrutinee_1627749243Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749322Scrutinee_1627749243Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749322Scrutinee_1627749243Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749322Scrutinee_1627749243Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749295NubBy'Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749295NubBy'Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749295NubBy'Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749295NubBy'Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749366Scrutinee_1627749239Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749366Scrutinee_1627749239Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749366Scrutinee_1627749239Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749393Scrutinee_1627749237Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749393Scrutinee_1627749237Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749417ProdSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749417ProdSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749417ProdSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749441Sum'Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749441Sum'Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749441Sum'Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749479Scrutinee_1627749235Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749479Scrutinee_1627749235Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749479Scrutinee_1627749235Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749479Scrutinee_1627749235Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749526Scrutinee_1627749233Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749526Scrutinee_1627749233Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749526Scrutinee_1627749233Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749526Scrutinee_1627749233Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749563Scrutinee_1627749223Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749563Scrutinee_1627749223Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749563Scrutinee_1627749223Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749594Scrutinee_1627749221Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749594Scrutinee_1627749221Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749594Scrutinee_1627749221Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749633XsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749640XsSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749640XsSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749640XsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749653Scrutinee_1627749219Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749653Scrutinee_1627749219Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749653Scrutinee_1627749219Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749668YsSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749668YsSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749668YsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749668ZsSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749668ZsSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749668ZsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749668X_1627749669Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749668X_1627749669Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749668X_1627749669Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749738XsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749745XsSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749745XsSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749745XsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749758Scrutinee_1627749217Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749758Scrutinee_1627749217Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749758Scrutinee_1627749217Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749773YsSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749773YsSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749773YsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749773ZsSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749773ZsSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749773ZsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749773X_1627749774Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749773X_1627749774Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749773X_1627749774Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749846YsSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749846YsSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749846YsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749846ZsSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749846ZsSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749846ZsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749846X_1627749847Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749846X_1627749847Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749846X_1627749847Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749923XsSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749923XsSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749923XsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749936Scrutinee_1627749213Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749936Scrutinee_1627749213Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749936Scrutinee_1627749213Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749967Scrutinee_1627749211Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749967Scrutinee_1627749211Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749967Scrutinee_1627749211Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749996Scrutinee_1627749199Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749996Scrutinee_1627749199Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627749996Scrutinee_1627749199Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627750066XsSym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627750066XsSym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627750066XsSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627750066XsSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627750066XsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627750066YsSym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627750066YsSym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627750066YsSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627750066YsSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627750066YsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627750117Sym5
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627750117Sym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627750117Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627750117Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627750117Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627750117Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627750192YsSym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627750192YsSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627750192YsSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627750192YsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627750211Scrutinee_1627749185Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627750211Scrutinee_1627749185Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627750211Scrutinee_1627749185Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627750211Scrutinee_1627749185Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627750289Scrutinee_1627749183Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627750289Scrutinee_1627749183Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627750289Scrutinee_1627749183Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627750289Scrutinee_1627749183Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627750401Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627750401Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627750401Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627750441Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627750441Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627750441Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627750479Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627750479Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627750479Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627750515Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627750515Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627750515Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627750549Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627750549Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627750549Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627750581Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627750581Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627750581Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627750862BuildListSym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627750862BuildListSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627750862BuildListSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627750862BuildListSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627750891Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627750891Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627750891Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751009Scrutinee_1627749241Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751009Scrutinee_1627749241Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751009Scrutinee_1627749241Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751009Scrutinee_1627749241Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627750988Nub'Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627750988Nub'Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627750988Nub'Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751061Scrutinee_1627749157Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751088Scrutinee_1627749155Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751108Scrutinee_1627749153Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751108Scrutinee_1627749153Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751144S'Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751144S'Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751144S'Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751144S'Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751144YsSym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751144YsSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751144YsSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751144YsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751144S''Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751144S''Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751144S''Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751144S''Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751144YSym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751144YSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751144YSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751144YSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751144X_1627751145Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751144X_1627751145Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751144X_1627751145Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751144X_1627751145Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751144X_1627751151Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751144X_1627751151Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751144X_1627751151Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751144X_1627751151Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751316S'Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751316S'Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751316S'Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751316S'Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751316YSym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751316YSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751316YSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751316YSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751316S''Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751316S''Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751316S''Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751316S''Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751316YsSym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751316YsSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751316YsSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751316YsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751316X_1627751317Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751316X_1627751317Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751316X_1627751317Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751316X_1627751317Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751316X_1627751323Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751316X_1627751323Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751316X_1627751323Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751316X_1627751323Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751485XsSym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751485XsSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751485XsSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751485XsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751504Scrutinee_1627749147Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751504Scrutinee_1627749147Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751504Scrutinee_1627749147Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751504Scrutinee_1627749147Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751551Scrutinee_1627749145Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751551Scrutinee_1627749145Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751551Scrutinee_1627749145Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751551Scrutinee_1627749145Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751593Scrutinee_1627749143Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751593Scrutinee_1627749143Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751593Scrutinee_1627749143Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751690XsSym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751690XsSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751690XsSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751690XsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751742XsSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751742XsSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751742XsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751785Scrutinee_1627749187Sym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751785Scrutinee_1627749187Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751785Scrutinee_1627749187Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751785Scrutinee_1627749187Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751785Scrutinee_1627749187Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751755MaxBySym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751755MaxBySym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751755MaxBySym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751755MaxBySym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751755MaxBySym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751829XsSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751829XsSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751829XsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751872Scrutinee_1627749193Sym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751872Scrutinee_1627749193Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751872Scrutinee_1627749193Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751872Scrutinee_1627749193Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751872Scrutinee_1627749193Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751842MinBySym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751842MinBySym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751842MinBySym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751842MinBySym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751842MinBySym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751907XsSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751907XsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751921XsSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751921XsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751979Z'Sym5
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751979Z'Sym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751979Z'Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751979Z'Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751979Z'Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751979Z'Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751947LgoSym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751947LgoSym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751947LgoSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751947LgoSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627751947LgoSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752108UsSym7
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752108UsSym6
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752108UsSym5
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752108UsSym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752108UsSym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752108UsSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752108UsSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752108UsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752108ZsSym7
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752108ZsSym6
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752108ZsSym5
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752108ZsSym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752108ZsSym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752108ZsSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752108ZsSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752108ZsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752108X_1627752109Sym7
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752108X_1627752109Sym6
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752108X_1627752109Sym5
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752108X_1627752109Sym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752108X_1627752109Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752108X_1627752109Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752108X_1627752109Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752108X_1627752109Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752322ZsSym5
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752322ZsSym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752322ZsSym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752322ZsSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752322ZsSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752322ZsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752322X_1627752323Sym5
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752322X_1627752323Sym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752322X_1627752323Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752322X_1627752323Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752322X_1627752323Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752322X_1627752323Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752054Interleave'Sym6
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752054Interleave'Sym5
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752054Interleave'Sym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752054Interleave'Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752054Interleave'Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752054Interleave'Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752054Interleave'Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752054InterleaveSym5
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752054InterleaveSym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752054InterleaveSym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752054InterleaveSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752054InterleaveSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752054InterleaveSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752033PermsSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752033PermsSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752033PermsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752421FSym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752421FSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752421FSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752421FSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752480RevSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752480RevSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752480RevSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752537Scrutinee_1627749215Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752537Scrutinee_1627749215Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752537Scrutinee_1627749215Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752537Scrutinee_1627749215Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627752533Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627752533Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627752533Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627752533Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752585Init'Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752585Init'Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752585Init'Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627752585Init'Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.GenericLengthSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Elem_bySym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Elem_bySym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Elem_bySym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.NubBySym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.NubBySym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings (Data.Singletons.Prelude.List.:!!$$)
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings (Data.Singletons.Prelude.List.:!!$)
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ReplicateSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ReplicateSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.LengthSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ProductSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.SumSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.SelectSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.SelectSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.SelectSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.PartitionSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.PartitionSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.LookupSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.LookupSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.DropSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.DropSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.TakeSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.TakeSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.SplitAtSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.SplitAtSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.BreakSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.BreakSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.SpanSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.SpanSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.GroupBySym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.GroupBySym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.GroupSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.DropWhileSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.DropWhileSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.TakeWhileSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.TakeWhileSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.FilterSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.FilterSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.FindSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.FindSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.IntersectBySym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.IntersectBySym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.IntersectBySym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.IntersectSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.IntersectSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.InsertBySym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.InsertBySym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.InsertBySym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.InsertSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.InsertSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.SortBySym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.SortBySym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.SortSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.DeleteBySym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.DeleteBySym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.DeleteBySym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.DeleteFirstsBySym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.DeleteFirstsBySym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.DeleteFirstsBySym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.UnionBySym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.UnionBySym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.UnionBySym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.UnionSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.UnionSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.DeleteSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.DeleteSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings (Data.Singletons.Prelude.List.:\\$$)
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings (Data.Singletons.Prelude.List.:\\$)
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Unzip7Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Unzip6Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Unzip5Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Unzip4Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Unzip3Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.UnzipSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ZipWith3Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ZipWith3Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ZipWith3Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ZipWith3Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ZipWithSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ZipWithSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ZipWithSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Zip3Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Zip3Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Zip3Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ZipSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ZipSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.FindIndicesSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.FindIndicesSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ElemIndicesSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ElemIndicesSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.FindIndexSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.FindIndexSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ElemIndexSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ElemIndexSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.NotElemSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.NotElemSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ElemSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ElemSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.NubSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.IsPrefixOfSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.IsPrefixOfSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.TailsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.IsInfixOfSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.IsInfixOfSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.InitsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.UnfoldrSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.UnfoldrSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.MapAccumRSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.MapAccumRSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.MapAccumRSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.MapAccumLSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.MapAccumLSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.MapAccumLSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Scanr1Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Scanr1Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ScanrSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ScanrSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ScanrSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ScanlSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ScanlSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ScanlSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Scanl1Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Scanl1Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.AllSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.AllSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.OrSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.AndSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ConcatMapSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ConcatMapSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ConcatSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Foldr1Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Foldr1Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Foldl1Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Foldl1Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.MaximumBySym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.MaximumBySym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.MinimumBySym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.MinimumBySym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.MaximumSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.MinimumSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Foldl'Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Foldl'Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Foldl'Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Foldl1'Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Foldl1'Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.PermutationsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.PrependToAllSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.PrependToAllSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.NonEmptySubsequencesSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.SubsequencesSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.IntersperseSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.IntersperseSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.IntercalateSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.IntercalateSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ReverseSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.IsSuffixOfSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.IsSuffixOfSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.NullSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.DropWhileEndSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.DropWhileEndSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.InitSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.TailSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.LastSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.HeadSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.TransposeSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Any_Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Any_Sym0
-- | Mimics the Haskell Prelude, but with singleton types. Includes the
-- basic singleton definitions. Note: This is currently very incomplete!
--
-- Because many of these definitions are produced by Template Haskell, it
-- is not possible to create proper Haddock documentation. Also, please
-- excuse the apparent repeated variable names. This is due to an
-- interaction between Template Haskell and Haddock.
module Data.Singletons.Prelude
-- | The singleton kind-indexed data family.
type SBool = (Sing :: Bool -> *)
type SList = (Sing :: [a_12] -> *)
type SMaybe = (Sing :: Maybe a_a6j7 -> *)
type SEither = (Sing :: Either a_a7DQ b_a7DR -> *)
type SOrdering = (Sing :: Ordering -> *)
type STuple0 = (Sing :: () -> *)
type STuple2 = (Sing :: (a_12, b_13) -> *)
type STuple3 = (Sing :: (a_12, b_13, c_14) -> *)
type STuple4 = (Sing :: (a_12, b_13, c_14, d_15) -> *)
type STuple5 = (Sing :: (a_12, b_13, c_14, d_15, e_16) -> *)
type STuple6 = (Sing :: (a_12, b_13, c_14, d_15, e_16, f_17) -> *)
type STuple7 = (Sing :: (a_12, b_13, c_14, d_15, e_16, f_17, g_18) -> *)
-- | Type-level If. If True a b ==> a; If
-- False a b ==> b
-- | Conditional over singletons
sIf :: Sing a -> Sing b -> Sing c -> Sing (If a b c)
sNot :: Sing t_aFXd -> Sing (Apply NotSym0 t_aFXd :: Bool)
(%:&&) :: Sing t_aFXg -> Sing t_aFXh -> Sing (Apply (Apply (:&&$) t_aFXg) t_aFXh :: Bool)
(%:||) :: Sing t_aFXe -> Sing t_aFXf -> Sing (Apply (Apply (:||$) t_aFXe) t_aFXf :: Bool)
sOtherwise :: Sing (OtherwiseSym0 :: Bool)
-- | The promotion of error. This version is more poly-kinded for
-- easier use.
data ErrorSym0 (l_a13LW :: TyFun k0_a13wC k_a13wB)
-- | The singleton for error
sError :: Sing (str :: Symbol) -> a
sId :: Sing t_a10U6 -> Sing (Apply IdSym0 t_a10U6 :: a_a10QJ)
sConst :: Sing t_a10U2 -> Sing t_a10U3 -> Sing (Apply (Apply ConstSym0 t_a10U2) t_a10U3 :: a_a10QL)
(%:.) :: Sing t_a10TZ -> Sing t_a10U0 -> Sing t_a10U1 -> Sing (Apply (Apply (Apply (:.$) t_a10TZ) t_a10U0) t_a10U1 :: c_a10QP)
(%$) :: Sing f -> Sing x -> Sing ((($$) @@ f) @@ x)
(%$!) :: Sing f -> Sing x -> Sing ((($!$) @@ f) @@ x)
sFlip :: Sing t_a10TW -> Sing t_a10TX -> Sing t_a10TY -> Sing (Apply (Apply (Apply FlipSym0 t_a10TW) t_a10TX) t_a10TY :: c_a10QW)
sAsTypeOf :: Sing t_a10U4 -> Sing t_a10U5 -> Sing (Apply (Apply AsTypeOfSym0 t_a10U4) t_a10U5 :: a_a10R0)
sSeq :: Sing t_a10TU -> Sing t_a10TV -> Sing (Apply (Apply SeqSym0 t_a10TU) t_a10TV :: b_a10R2)
sMap :: Sing t_a10U9 -> Sing t_a10Ua -> Sing (Apply (Apply MapSym0 t_a10U9) t_a10Ua :: [b_a10QA])
(%:++) :: Sing t_a10U7 -> Sing t_a10U8 -> Sing (Apply (Apply (:++$) t_a10U7) t_a10U8 :: [a_a10QE])
sHead :: Sing t_a1woy -> Sing (Apply HeadSym0 t_a1woy :: a_a1vjC)
sLast :: Sing t_a1wox -> Sing (Apply LastSym0 t_a1wox :: a_a1vjE)
sTail :: Sing t_a1wow -> Sing (Apply TailSym0 t_a1wow :: [a_a1vjI])
sInit :: Sing t_a1wov -> Sing (Apply InitSym0 t_a1wov :: [a_a1vjK])
sNull :: Sing t_a1wos -> Sing (Apply NullSym0 t_a1wos :: Bool)
sReverse :: Sing t_a1wop -> Sing (Apply ReverseSym0 t_a1wop :: [a_a1vjT])
sFoldl :: Sing t_aB34 -> Sing t_aB35 -> Sing t_aB36 -> Sing (Apply (Apply (Apply FoldlSym0 t_aB34) t_aB35) t_aB36 :: b_aB26)
sFoldl1 :: Sing t_a1wo3 -> Sing t_a1wo4 -> Sing (Apply (Apply Foldl1Sym0 t_a1wo3) t_a1wo4 :: a_a1vkL)
sFoldr :: Sing t_a10Ub -> Sing t_a10Uc -> Sing t_a10Ud -> Sing (Apply (Apply (Apply FoldrSym0 t_a10Ub) t_a10Uc) t_a10Ud :: b_a10Qt)
sFoldr1 :: Sing t_a1wo1 -> Sing t_a1wo2 -> Sing (Apply (Apply Foldr1Sym0 t_a1wo1) t_a1wo2 :: a_a1vkT)
sAnd :: Sing t_a1wnX -> Sing (Apply AndSym0 t_a1wnX :: Bool)
sOr :: Sing t_a1wnW -> Sing (Apply OrSym0 t_a1wnW :: Bool)
sAny_ :: Sing t_a1swE -> Sing t_a1swF -> Sing (Apply (Apply Any_Sym0 t_a1swE) t_a1swF :: Bool)
sAll :: Sing t_a1wnU -> Sing t_a1wnV -> Sing (Apply (Apply AllSym0 t_a1wnU) t_a1wnV :: Bool)
sConcat :: Sing t_a1wo0 -> Sing (Apply ConcatSym0 t_a1wo0 :: [a_a1vkY])
sConcatMap :: Sing t_a1wnY -> Sing t_a1wnZ -> Sing (Apply (Apply ConcatMapSym0 t_a1wnY) t_a1wnZ :: [b_a1vl0])
sScanl :: Sing t_a1wnP -> Sing t_a1wnQ -> Sing t_a1wnR -> Sing (Apply (Apply (Apply ScanlSym0 t_a1wnP) t_a1wnQ) t_a1wnR :: [b_a1vla])
sScanl1 :: Sing t_a1wnS -> Sing t_a1wnT -> Sing (Apply (Apply Scanl1Sym0 t_a1wnS) t_a1wnT :: [a_a1vlh])
sScanr :: Sing t_a1wnM -> Sing t_a1wnN -> Sing t_a1wnO -> Sing (Apply (Apply (Apply ScanrSym0 t_a1wnM) t_a1wnN) t_a1wnO :: [b_a1vlm])
sScanr1 :: Sing t_a1wnK -> Sing t_a1wnL -> Sing (Apply (Apply Scanr1Sym0 t_a1wnK) t_a1wnL :: [a_a1vlu])
sElem :: SEq (KProxy :: KProxy a_a1vmn) => Sing t_a1wnt -> Sing t_a1wnu -> Sing (Apply (Apply ElemSym0 t_a1wnt) t_a1wnu :: Bool)
sNotElem :: SEq (KProxy :: KProxy a_a1vmr) => Sing t_a1wnr -> Sing t_a1wns -> Sing (Apply (Apply NotElemSym0 t_a1wnr) t_a1wns :: Bool)
sZip :: Sing t_a1wnh -> Sing t_a1wni -> Sing (Apply (Apply ZipSym0 t_a1wnh) t_a1wni :: [(a_a1vmv, b_a1vmw)])
sZip3 :: Sing t_a1wne -> Sing t_a1wnf -> Sing t_a1wng -> Sing (Apply (Apply (Apply Zip3Sym0 t_a1wne) t_a1wnf) t_a1wng :: [(a_a1vmB, b_a1vmC, c_a1vmD)])
sZipWith :: Sing t_a1wnb -> Sing t_a1wnc -> Sing t_a1wnd -> Sing (Apply (Apply (Apply ZipWithSym0 t_a1wnb) t_a1wnc) t_a1wnd :: [c_a1vmM])
sZipWith3 :: Sing t_a1wn7 -> Sing t_a1wn8 -> Sing t_a1wn9 -> Sing t_a1wna -> Sing (Apply (Apply (Apply (Apply ZipWith3Sym0 t_a1wn7) t_a1wn8) t_a1wn9) t_a1wna :: [d_a1vmV])
sUnzip :: Sing t_a1wn6 -> Sing (Apply UnzipSym0 t_a1wn6 :: ([a_a1vn3], [b_a1vn4]))
sUnzip3 :: Sing t_a1wn5 -> Sing (Apply Unzip3Sym0 t_a1wn5 :: ([a_a1vna], [b_a1vnb], [c_a1vnc]))
sMaybe_ :: Sing t_a1adi -> Sing t_a1adj -> Sing t_a1adk -> Sing (Apply (Apply (Apply Maybe_Sym0 t_a1adi) t_a1adj) t_a1adk :: b_a1acO)
sEither_ :: Sing t_a16q8 -> Sing t_a16q9 -> Sing t_a16qa -> Sing (Apply (Apply (Apply Either_Sym0 t_a16q8) t_a16q9) t_a16qa :: c_a16pD)
sFst :: Sing t_a18PR -> Sing (Apply FstSym0 t_a18PR :: a_a18OB)
sSnd :: Sing t_a18PQ -> Sing (Apply SndSym0 t_a18PQ :: b_a18OF)
sCurry :: Sing t_a18PN -> Sing t_a18PO -> Sing t_a18PP -> Sing (Apply (Apply (Apply CurrySym0 t_a18PN) t_a18PO) t_a18PP :: c_a18OJ)
sUncurry :: Sing t_a18PS -> Sing t_a18PT -> Sing (Apply (Apply UncurrySym0 t_a18PS) t_a18PT :: c_a18OP)
-- | (Kind) This is the kind of type-level symbols.
data Symbol :: *
either_ :: (a_a16pC -> c_a16pD) -> (b_a16pE -> c_a16pD) -> Either a_a16pC b_a16pE -> c_a16pD
maybe_ :: b_a1acO -> (a_a1acP -> b_a1acO) -> Maybe a_a1acP -> b_a1acO
bool_ :: a_aFKx -> a_aFKx -> Bool -> a_aFKx
any_ :: (a_a1swk -> Bool) -> [a_a1swk] -> Bool
type FalseSym0 = False
type TrueSym0 = True
data NotSym0 (l_aFWK :: TyFun Bool Bool)
type NotSym1 (t_aFWJ :: Bool) = Not t_aFWJ
data (:&&$) (l_aFX2 :: TyFun Bool (TyFun Bool Bool -> *))
data (:&&$$) (l_aFX5 :: Bool) (l_aFX4 :: TyFun Bool Bool)
type (:&&$$$) (t_aFX0 :: Bool) (t_aFX1 :: Bool) = (:&&) t_aFX0 t_aFX1
data (:||$) (l_aFWP :: TyFun Bool (TyFun Bool Bool -> *))
data (:||$$) (l_aFWS :: Bool) (l_aFWR :: TyFun Bool Bool)
type (:||$$$) (t_aFWN :: Bool) (t_aFWO :: Bool) = (:||) t_aFWN t_aFWO
type OtherwiseSym0 = Otherwise
type NothingSym0 = Nothing
data JustSym0 (l_axRq :: TyFun a_a6j7 (Maybe a_a6j7))
type JustSym1 (t_axRp :: a_a6j7) = Just t_axRp
data Maybe_Sym0 (l_a1acX :: TyFun b_a1acO (TyFun (TyFun a_a1acP b_a1acO -> *) (TyFun (Maybe a_a1acP) b_a1acO -> *) -> *))
data Maybe_Sym1 (l_a1ad0 :: b_a1acO) (l_a1acZ :: TyFun (TyFun a_a1acP b_a1acO -> *) (TyFun (Maybe a_a1acP) b_a1acO -> *))
data Maybe_Sym2 (l_a1ad3 :: b_a1acO) (l_a1ad4 :: TyFun a_a1acP b_a1acO -> *) (l_a1ad2 :: TyFun (Maybe a_a1acP) b_a1acO)
type Maybe_Sym3 (t_a1acU :: b_a1acO) (t_a1acV :: TyFun a_a1acP b_a1acO -> *) (t_a1acW :: Maybe a_a1acP) = Maybe_ t_a1acU t_a1acV t_a1acW
data LeftSym0 (l_axRR :: TyFun a_a7DQ (Either a_a7DQ b_a7DR))
type LeftSym1 (t_axRQ :: a_a7DQ) = Left t_axRQ
data RightSym0 (l_axRU :: TyFun b_a7DR (Either a_a7DQ b_a7DR))
type RightSym1 (t_axRT :: b_a7DR) = Right t_axRT
data Either_Sym0 (l_a16pM :: TyFun (TyFun a_a16pC c_a16pD -> *) (TyFun (TyFun b_a16pE c_a16pD -> *) (TyFun (Either a_a16pC b_a16pE) c_a16pD -> *) -> *))
data Either_Sym1 (l_a16pP :: TyFun a_a16pC c_a16pD -> *) (l_a16pO :: TyFun (TyFun b_a16pE c_a16pD -> *) (TyFun (Either a_a16pC b_a16pE) c_a16pD -> *))
data Either_Sym2 (l_a16pS :: TyFun a_a16pC c_a16pD -> *) (l_a16pT :: TyFun b_a16pE c_a16pD -> *) (l_a16pR :: TyFun (Either a_a16pC b_a16pE) c_a16pD)
type Either_Sym3 (t_a16pJ :: TyFun a_a16pC c_a16pD -> *) (t_a16pK :: TyFun b_a16pE c_a16pD -> *) (t_a16pL :: Either a_a16pC b_a16pE) = Either_ t_a16pJ t_a16pK t_a16pL
type Tuple0Sym0 = '()
data Tuple2Sym0 (l_axS9 :: TyFun a_12 (TyFun b_13 (a_12, b_13) -> *))
data Tuple2Sym1 (l_axSc :: a_12) (l_axSb :: TyFun b_13 (a_12, b_13))
type Tuple2Sym2 (t_axS7 :: a_12) (t_axS8 :: b_13) = '(t_axS7, t_axS8)
data Tuple3Sym0 (l_axSt :: TyFun a_12 (TyFun b_13 (TyFun c_14 (a_12, b_13, c_14) -> *) -> *))
data Tuple3Sym1 (l_axSw :: a_12) (l_axSv :: TyFun b_13 (TyFun c_14 (a_12, b_13, c_14) -> *))
data Tuple3Sym2 (l_axSz :: a_12) (l_axSA :: b_13) (l_axSy :: TyFun c_14 (a_12, b_13, c_14))
type Tuple3Sym3 (t_axSq :: a_12) (t_axSr :: b_13) (t_axSs :: c_14) = '(t_axSq, t_axSr, t_axSs)
data Tuple4Sym0 (l_axSX :: TyFun a_12 (TyFun b_13 (TyFun c_14 (TyFun d_15 (a_12, b_13, c_14, d_15) -> *) -> *) -> *))
data Tuple4Sym1 (l_axT0 :: a_12) (l_axSZ :: TyFun b_13 (TyFun c_14 (TyFun d_15 (a_12, b_13, c_14, d_15) -> *) -> *))
data Tuple4Sym2 (l_axT3 :: a_12) (l_axT4 :: b_13) (l_axT2 :: TyFun c_14 (TyFun d_15 (a_12, b_13, c_14, d_15) -> *))
data Tuple4Sym3 (l_axT7 :: a_12) (l_axT8 :: b_13) (l_axT9 :: c_14) (l_axT6 :: TyFun d_15 (a_12, b_13, c_14, d_15))
type Tuple4Sym4 (t_axST :: a_12) (t_axSU :: b_13) (t_axSV :: c_14) (t_axSW :: d_15) = '(t_axST, t_axSU, t_axSV, t_axSW)
data Tuple5Sym0 (l_axTC :: TyFun a_12 (TyFun b_13 (TyFun c_14 (TyFun d_15 (TyFun e_16 (a_12, b_13, c_14, d_15, e_16) -> *) -> *) -> *) -> *))
data Tuple5Sym1 (l_axTF :: a_12) (l_axTE :: TyFun b_13 (TyFun c_14 (TyFun d_15 (TyFun e_16 (a_12, b_13, c_14, d_15, e_16) -> *) -> *) -> *))
data Tuple5Sym2 (l_axTI :: a_12) (l_axTJ :: b_13) (l_axTH :: TyFun c_14 (TyFun d_15 (TyFun e_16 (a_12, b_13, c_14, d_15, e_16) -> *) -> *))
data Tuple5Sym3 (l_axTM :: a_12) (l_axTN :: b_13) (l_axTO :: c_14) (l_axTL :: TyFun d_15 (TyFun e_16 (a_12, b_13, c_14, d_15, e_16) -> *))
data Tuple5Sym4 (l_axTR :: a_12) (l_axTS :: b_13) (l_axTT :: c_14) (l_axTU :: d_15) (l_axTQ :: TyFun e_16 (a_12, b_13, c_14, d_15, e_16))
type Tuple5Sym5 (t_axTx :: a_12) (t_axTy :: b_13) (t_axTz :: c_14) (t_axTA :: d_15) (t_axTB :: e_16) = '(t_axTx, t_axTy, t_axTz, t_axTA, t_axTB)
data Tuple6Sym0 (l_axUt :: TyFun a_12 (TyFun b_13 (TyFun c_14 (TyFun d_15 (TyFun e_16 (TyFun f_17 (a_12, b_13, c_14, d_15, e_16, f_17) -> *) -> *) -> *) -> *) -> *))
data Tuple6Sym1 (l_axUw :: a_12) (l_axUv :: TyFun b_13 (TyFun c_14 (TyFun d_15 (TyFun e_16 (TyFun f_17 (a_12, b_13, c_14, d_15, e_16, f_17) -> *) -> *) -> *) -> *))
data Tuple6Sym2 (l_axUz :: a_12) (l_axUA :: b_13) (l_axUy :: TyFun c_14 (TyFun d_15 (TyFun e_16 (TyFun f_17 (a_12, b_13, c_14, d_15, e_16, f_17) -> *) -> *) -> *))
data Tuple6Sym3 (l_axUD :: a_12) (l_axUE :: b_13) (l_axUF :: c_14) (l_axUC :: TyFun d_15 (TyFun e_16 (TyFun f_17 (a_12, b_13, c_14, d_15, e_16, f_17) -> *) -> *))
data Tuple6Sym4 (l_axUI :: a_12) (l_axUJ :: b_13) (l_axUK :: c_14) (l_axUL :: d_15) (l_axUH :: TyFun e_16 (TyFun f_17 (a_12, b_13, c_14, d_15, e_16, f_17) -> *))
data Tuple6Sym5 (l_axUO :: a_12) (l_axUP :: b_13) (l_axUQ :: c_14) (l_axUR :: d_15) (l_axUS :: e_16) (l_axUN :: TyFun f_17 (a_12, b_13, c_14, d_15, e_16, f_17))
type Tuple6Sym6 (t_axUn :: a_12) (t_axUo :: b_13) (t_axUp :: c_14) (t_axUq :: d_15) (t_axUr :: e_16) (t_axUs :: f_17) = '(t_axUn, t_axUo, t_axUp, t_axUq, t_axUr, t_axUs)
data Tuple7Sym0 (l_axVx :: TyFun a_12 (TyFun b_13 (TyFun c_14 (TyFun d_15 (TyFun e_16 (TyFun f_17 (TyFun g_18 (a_12, b_13, c_14, d_15, e_16, f_17, g_18) -> *) -> *) -> *) -> *) -> *) -> *))
data Tuple7Sym1 (l_axVA :: a_12) (l_axVz :: TyFun b_13 (TyFun c_14 (TyFun d_15 (TyFun e_16 (TyFun f_17 (TyFun g_18 (a_12, b_13, c_14, d_15, e_16, f_17, g_18) -> *) -> *) -> *) -> *) -> *))
data Tuple7Sym2 (l_axVD :: a_12) (l_axVE :: b_13) (l_axVC :: TyFun c_14 (TyFun d_15 (TyFun e_16 (TyFun f_17 (TyFun g_18 (a_12, b_13, c_14, d_15, e_16, f_17, g_18) -> *) -> *) -> *) -> *))
data Tuple7Sym3 (l_axVH :: a_12) (l_axVI :: b_13) (l_axVJ :: c_14) (l_axVG :: TyFun d_15 (TyFun e_16 (TyFun f_17 (TyFun g_18 (a_12, b_13, c_14, d_15, e_16, f_17, g_18) -> *) -> *) -> *))
data Tuple7Sym4 (l_axVM :: a_12) (l_axVN :: b_13) (l_axVO :: c_14) (l_axVP :: d_15) (l_axVL :: TyFun e_16 (TyFun f_17 (TyFun g_18 (a_12, b_13, c_14, d_15, e_16, f_17, g_18) -> *) -> *))
data Tuple7Sym5 (l_axVS :: a_12) (l_axVT :: b_13) (l_axVU :: c_14) (l_axVV :: d_15) (l_axVW :: e_16) (l_axVR :: TyFun f_17 (TyFun g_18 (a_12, b_13, c_14, d_15, e_16, f_17, g_18) -> *))
data Tuple7Sym6 (l_axVZ :: a_12) (l_axW0 :: b_13) (l_axW1 :: c_14) (l_axW2 :: d_15) (l_axW3 :: e_16) (l_axW4 :: f_17) (l_axVY :: TyFun g_18 (a_12, b_13, c_14, d_15, e_16, f_17, g_18))
type Tuple7Sym7 (t_axVq :: a_12) (t_axVr :: b_13) (t_axVs :: c_14) (t_axVt :: d_15) (t_axVu :: e_16) (t_axVv :: f_17) (t_axVw :: g_18) = '(t_axVq, t_axVr, t_axVs, t_axVt, t_axVu, t_axVv, t_axVw)
data FstSym0 (l_a18Pu :: TyFun (a_a18OB, b_a18OC) a_a18OB)
type FstSym1 (t_a18Pt :: (a_a18OB, b_a18OC)) = Fst t_a18Pt
data SndSym0 (l_a18Pm :: TyFun (a_a18OE, b_a18OF) b_a18OF)
type SndSym1 (t_a18Pl :: (a_a18OE, b_a18OF)) = Snd t_a18Pl
data CurrySym0 (l_a18P6 :: TyFun (TyFun (a_a18OH, b_a18OI) c_a18OJ -> *) (TyFun a_a18OH (TyFun b_a18OI c_a18OJ -> *) -> *))
data CurrySym1 (l_a18P9 :: TyFun (a_a18OH, b_a18OI) c_a18OJ -> *) (l_a18P8 :: TyFun a_a18OH (TyFun b_a18OI c_a18OJ -> *))
data CurrySym2 (l_a18Pc :: TyFun (a_a18OH, b_a18OI) c_a18OJ -> *) (l_a18Pd :: a_a18OH) (l_a18Pb :: TyFun b_a18OI c_a18OJ)
type CurrySym3 (t_a18P3 :: TyFun (a_a18OH, b_a18OI) c_a18OJ -> *) (t_a18P4 :: a_a18OH) (t_a18P5 :: b_a18OI) = Curry t_a18P3 t_a18P4 t_a18P5
data UncurrySym0 (l_a18PD :: TyFun (TyFun a_a18ON (TyFun b_a18OO c_a18OP -> *) -> *) (TyFun (a_a18ON, b_a18OO) c_a18OP -> *))
data UncurrySym1 (l_a18PG :: TyFun a_a18ON (TyFun b_a18OO c_a18OP -> *) -> *) (l_a18PF :: TyFun (a_a18ON, b_a18OO) c_a18OP)
type UncurrySym2 (t_a18PB :: TyFun a_a18ON (TyFun b_a18OO c_a18OP -> *) -> *) (t_a18PC :: (a_a18ON, b_a18OO)) = Uncurry t_a18PB t_a18PC
data IdSym0 (l_a10SI :: TyFun a_a10QJ a_a10QJ)
type IdSym1 (t_a10SH :: a_a10QJ) = Id t_a10SH
data ConstSym0 (l_a10Sh :: TyFun a_a10QL (TyFun b_a10QM a_a10QL -> *))
data ConstSym1 (l_a10Sk :: a_a10QL) (l_a10Sj :: TyFun b_a10QM a_a10QL)
type ConstSym2 (t_a10Sf :: a_a10QL) (t_a10Sg :: b_a10QM) = Const t_a10Sf t_a10Sg
data (:.$) (l_a10RC :: TyFun (TyFun b_a10QO c_a10QP -> *) (TyFun (TyFun a_a10QQ b_a10QO -> *) (TyFun a_a10QQ c_a10QP -> *) -> *))
data (:.$$) (l_a10RF :: TyFun b_a10QO c_a10QP -> *) (l_a10RE :: TyFun (TyFun a_a10QQ b_a10QO -> *) (TyFun a_a10QQ c_a10QP -> *))
data (:.$$$) (l_a10RI :: TyFun b_a10QO c_a10QP -> *) (l_a10RJ :: TyFun a_a10QQ b_a10QO -> *) (l_a10RH :: TyFun a_a10QQ c_a10QP)
data ($$) :: TyFun (TyFun a b -> *) (TyFun a b -> *) -> *
data ($$$) :: (TyFun a b -> *) -> TyFun a b -> *
type ($$$$) a b = ($) a b
data ($!$) :: TyFun (TyFun a b -> *) (TyFun a b -> *) -> *
data ($!$$) :: (TyFun a b -> *) -> TyFun a b -> *
type ($!$$$) a b = ($!) a b
data FlipSym0 (l_a10Rk :: TyFun (TyFun a_a10QU (TyFun b_a10QV c_a10QW -> *) -> *) (TyFun b_a10QV (TyFun a_a10QU c_a10QW -> *) -> *))
data FlipSym1 (l_a10Rn :: TyFun a_a10QU (TyFun b_a10QV c_a10QW -> *) -> *) (l_a10Rm :: TyFun b_a10QV (TyFun a_a10QU c_a10QW -> *))
data FlipSym2 (l_a10Rq :: TyFun a_a10QU (TyFun b_a10QV c_a10QW -> *) -> *) (l_a10Rr :: b_a10QV) (l_a10Rp :: TyFun a_a10QU c_a10QW)
data AsTypeOfSym0 (l_a10Sy :: TyFun a_a10R0 (TyFun a_a10R0 a_a10R0 -> *))
data AsTypeOfSym1 (l_a10SB :: a_a10R0) (l_a10SA :: TyFun a_a10R0 a_a10R0)
type AsTypeOfSym2 (t_a10Sw :: a_a10R0) (t_a10Sx :: a_a10R0) = AsTypeOf t_a10Sw t_a10Sx
data SeqSym0 (l_a10R6 :: TyFun a_a10R1 (TyFun b_a10R2 b_a10R2 -> *))
data SeqSym1 (l_a10R9 :: a_a10R1) (l_a10R8 :: TyFun b_a10R2 b_a10R2)
type SeqSym2 (t_a10R4 :: a_a10R1) (t_a10R5 :: b_a10R2) = Seq t_a10R4 t_a10R5
data (:$) (l_axRA :: TyFun a_12 (TyFun [a_12] [a_12] -> *))
data (:$$) (l_axRD :: a_12) (l_axRC :: TyFun [a_12] [a_12])
type (:$$$) (t_axRy :: a_12) (t_axRz :: [a_12]) = (:) t_axRy t_axRz
type NilSym0 = '[]
data MapSym0 (l_a10T1 :: TyFun (TyFun a_a10Qz b_a10QA -> *) (TyFun [a_a10Qz] [b_a10QA] -> *))
data MapSym1 (l_a10T4 :: TyFun a_a10Qz b_a10QA -> *) (l_a10T3 :: TyFun [a_a10Qz] [b_a10QA])
type MapSym2 (t_a10SZ :: TyFun a_a10Qz b_a10QA -> *) (t_a10T0 :: [a_a10Qz]) = Map t_a10SZ t_a10T0
data ReverseSym0 (l_a1wja :: TyFun [a_a1vjT] [a_a1vjT])
type ReverseSym1 (t_a1wj9 :: [a_a1vjT]) = Reverse t_a1wj9
data (:++$$) (l_a10SR :: [a_a10QE]) (l_a10SQ :: TyFun [a_a10QE] [a_a10QE])
data (:++$) (l_a10SO :: TyFun [a_a10QE] (TyFun [a_a10QE] [a_a10QE] -> *))
data HeadSym0 (l_a1wlF :: TyFun [a_a1vjC] a_a1vjC)
type HeadSym1 (t_a1wlE :: [a_a1vjC]) = Head t_a1wlE
data LastSym0 (l_a1wlv :: TyFun [a_a1vjE] a_a1vjE)
type LastSym1 (t_a1wlu :: [a_a1vjE]) = Last t_a1wlu
data TailSym0 (l_a1wln :: TyFun [a_a1vjI] [a_a1vjI])
type TailSym1 (t_a1wlm :: [a_a1vjI]) = Tail t_a1wlm
data InitSym0 (l_a1wkQ :: TyFun [a_a1vjK] [a_a1vjK])
type InitSym1 (t_a1wkP :: [a_a1vjK]) = Init t_a1wkP
data NullSym0 (l_a1wjJ :: TyFun [a_a1vjS] Bool)
type NullSym1 (t_a1wjI :: [a_a1vjS]) = Null t_a1wjI
data FoldlSym0 (l_aB2j :: TyFun (TyFun b_aB26 (TyFun a_aB25 b_aB26 -> *) -> *) (TyFun b_aB26 (TyFun [a_aB25] b_aB26 -> *) -> *))
data FoldlSym1 (l_aB2m :: TyFun b_aB26 (TyFun a_aB25 b_aB26 -> *) -> *) (l_aB2l :: TyFun b_aB26 (TyFun [a_aB25] b_aB26 -> *))
data FoldlSym2 (l_aB2p :: TyFun b_aB26 (TyFun a_aB25 b_aB26 -> *) -> *) (l_aB2q :: b_aB26) (l_aB2o :: TyFun [a_aB25] b_aB26)
type FoldlSym3 (t_aB2g :: TyFun b_aB26 (TyFun a_aB25 b_aB26 -> *) -> *) (t_aB2h :: b_aB26) (t_aB2i :: [a_aB25]) = Foldl t_aB2g t_aB2h t_aB2i
data Foldl1Sym0 (l_a1w6S :: TyFun (TyFun a_a1vkL (TyFun a_a1vkL a_a1vkL -> *) -> *) (TyFun [a_a1vkL] a_a1vkL -> *))
data Foldl1Sym1 (l_a1w6V :: TyFun a_a1vkL (TyFun a_a1vkL a_a1vkL -> *) -> *) (l_a1w6U :: TyFun [a_a1vkL] a_a1vkL)
type Foldl1Sym2 (t_a1w6Q :: TyFun a_a1vkL (TyFun a_a1vkL a_a1vkL -> *) -> *) (t_a1w6R :: [a_a1vkL]) = Foldl1 t_a1w6Q t_a1w6R
data FoldrSym0 (l_a10Th :: TyFun (TyFun a_a10Qs (TyFun b_a10Qt b_a10Qt -> *) -> *) (TyFun b_a10Qt (TyFun [a_a10Qs] b_a10Qt -> *) -> *))
data FoldrSym1 (l_a10Tk :: TyFun a_a10Qs (TyFun b_a10Qt b_a10Qt -> *) -> *) (l_a10Tj :: TyFun b_a10Qt (TyFun [a_a10Qs] b_a10Qt -> *))
data FoldrSym2 (l_a10Tn :: TyFun a_a10Qs (TyFun b_a10Qt b_a10Qt -> *) -> *) (l_a10To :: b_a10Qt) (l_a10Tm :: TyFun [a_a10Qs] b_a10Qt)
type FoldrSym3 (t_a10Te :: TyFun a_a10Qs (TyFun b_a10Qt b_a10Qt -> *) -> *) (t_a10Tf :: b_a10Qt) (t_a10Tg :: [a_a10Qs]) = Foldr t_a10Te t_a10Tf t_a10Tg
data Foldr1Sym0 (l_a1w6f :: TyFun (TyFun a_a1vkT (TyFun a_a1vkT a_a1vkT -> *) -> *) (TyFun [a_a1vkT] a_a1vkT -> *))
data Foldr1Sym1 (l_a1w6i :: TyFun a_a1vkT (TyFun a_a1vkT a_a1vkT -> *) -> *) (l_a1w6h :: TyFun [a_a1vkT] a_a1vkT)
type Foldr1Sym2 (t_a1w6d :: TyFun a_a1vkT (TyFun a_a1vkT a_a1vkT -> *) -> *) (t_a1w6e :: [a_a1vkT]) = Foldr1 t_a1w6d t_a1w6e
data ConcatSym0 (l_a1w69 :: TyFun [[a_a1vkY]] [a_a1vkY])
type ConcatSym1 (t_a1w68 :: [[a_a1vkY]]) = Concat t_a1w68
data ConcatMapSym0 (l_a1w5V :: TyFun (TyFun a_a1vkZ [b_a1vl0] -> *) (TyFun [a_a1vkZ] [b_a1vl0] -> *))
data ConcatMapSym1 (l_a1w5Y :: TyFun a_a1vkZ [b_a1vl0] -> *) (l_a1w5X :: TyFun [a_a1vkZ] [b_a1vl0])
type ConcatMapSym2 (t_a1w5T :: TyFun a_a1vkZ [b_a1vl0] -> *) (t_a1w5U :: [a_a1vkZ]) = ConcatMap t_a1w5T t_a1w5U
data AndSym0 (l_a1w5O :: TyFun [Bool] Bool)
type AndSym1 (t_a1w5N :: [Bool]) = And t_a1w5N
data OrSym0 (l_a1w5I :: TyFun [Bool] Bool)
type OrSym1 (t_a1w5H :: [Bool]) = Or t_a1w5H
data Any_Sym0 (l_a1swr :: TyFun (TyFun a_a1swk Bool -> *) (TyFun [a_a1swk] Bool -> *))
data Any_Sym1 (l_a1swu :: TyFun a_a1swk Bool -> *) (l_a1swt :: TyFun [a_a1swk] Bool)
type Any_Sym2 (t_a1swp :: TyFun a_a1swk Bool -> *) (t_a1swq :: [a_a1swk]) = Any_ t_a1swp t_a1swq
data AllSym0 (l_a1w5u :: TyFun (TyFun a_a1vl6 Bool -> *) (TyFun [a_a1vl6] Bool -> *))
data AllSym1 (l_a1w5x :: TyFun a_a1vl6 Bool -> *) (l_a1w5w :: TyFun [a_a1vl6] Bool)
type AllSym2 (t_a1w5s :: TyFun a_a1vl6 Bool -> *) (t_a1w5t :: [a_a1vl6]) = All t_a1w5s t_a1w5t
data ScanlSym0 (l_a1w4G :: TyFun (TyFun b_a1vla (TyFun a_a1vlb b_a1vla -> *) -> *) (TyFun b_a1vla (TyFun [a_a1vlb] [b_a1vla] -> *) -> *))
data ScanlSym1 (l_a1w4J :: TyFun b_a1vla (TyFun a_a1vlb b_a1vla -> *) -> *) (l_a1w4I :: TyFun b_a1vla (TyFun [a_a1vlb] [b_a1vla] -> *))
data ScanlSym2 (l_a1w4M :: TyFun b_a1vla (TyFun a_a1vlb b_a1vla -> *) -> *) (l_a1w4N :: b_a1vla) (l_a1w4L :: TyFun [a_a1vlb] [b_a1vla])
type ScanlSym3 (t_a1w4D :: TyFun b_a1vla (TyFun a_a1vlb b_a1vla -> *) -> *) (t_a1w4E :: b_a1vla) (t_a1w4F :: [a_a1vlb]) = Scanl t_a1w4D t_a1w4E t_a1w4F
data Scanl1Sym0 (l_a1w5f :: TyFun (TyFun a_a1vlh (TyFun a_a1vlh a_a1vlh -> *) -> *) (TyFun [a_a1vlh] [a_a1vlh] -> *))
data Scanl1Sym1 (l_a1w5i :: TyFun a_a1vlh (TyFun a_a1vlh a_a1vlh -> *) -> *) (l_a1w5h :: TyFun [a_a1vlh] [a_a1vlh])
type Scanl1Sym2 (t_a1w5d :: TyFun a_a1vlh (TyFun a_a1vlh a_a1vlh -> *) -> *) (t_a1w5e :: [a_a1vlh]) = Scanl1 t_a1w5d t_a1w5e
data ScanrSym0 (l_a1w3V :: TyFun (TyFun a_a1vll (TyFun b_a1vlm b_a1vlm -> *) -> *) (TyFun b_a1vlm (TyFun [a_a1vll] [b_a1vlm] -> *) -> *))
data ScanrSym1 (l_a1w3Y :: TyFun a_a1vll (TyFun b_a1vlm b_a1vlm -> *) -> *) (l_a1w3X :: TyFun b_a1vlm (TyFun [a_a1vll] [b_a1vlm] -> *))
data ScanrSym2 (l_a1w41 :: TyFun a_a1vll (TyFun b_a1vlm b_a1vlm -> *) -> *) (l_a1w42 :: b_a1vlm) (l_a1w40 :: TyFun [a_a1vll] [b_a1vlm])
type ScanrSym3 (t_a1w3S :: TyFun a_a1vll (TyFun b_a1vlm b_a1vlm -> *) -> *) (t_a1w3T :: b_a1vlm) (t_a1w3U :: [a_a1vll]) = Scanr t_a1w3S t_a1w3T t_a1w3U
data Scanr1Sym0 (l_a1w2T :: TyFun (TyFun a_a1vlu (TyFun a_a1vlu a_a1vlu -> *) -> *) (TyFun [a_a1vlu] [a_a1vlu] -> *))
data Scanr1Sym1 (l_a1w2W :: TyFun a_a1vlu (TyFun a_a1vlu a_a1vlu -> *) -> *) (l_a1w2V :: TyFun [a_a1vlu] [a_a1vlu])
type Scanr1Sym2 (t_a1w2R :: TyFun a_a1vlu (TyFun a_a1vlu a_a1vlu -> *) -> *) (t_a1w2S :: [a_a1vlu]) = Scanr1 t_a1w2R t_a1w2S
data ElemSym0 (l_a1vUS :: TyFun a_a1vmn (TyFun [a_a1vmn] Bool -> *))
data ElemSym1 (l_a1vUV :: a_a1vmn) (l_a1vUU :: TyFun [a_a1vmn] Bool)
type ElemSym2 (t_a1vUQ :: a_a1vmn) (t_a1vUR :: [a_a1vmn]) = Elem t_a1vUQ t_a1vUR
data NotElemSym0 (l_a1vUD :: TyFun a_a1vmr (TyFun [a_a1vmr] Bool -> *))
data NotElemSym1 (l_a1vUG :: a_a1vmr) (l_a1vUF :: TyFun [a_a1vmr] Bool)
type NotElemSym2 (t_a1vUB :: a_a1vmr) (t_a1vUC :: [a_a1vmr]) = NotElem t_a1vUB t_a1vUC
data ZipSym0 (l_a1vSA :: TyFun [a_a1vmv] (TyFun [b_a1vmw] [(a_a1vmv, b_a1vmw)] -> *))
data ZipSym1 (l_a1vSD :: [a_a1vmv]) (l_a1vSC :: TyFun [b_a1vmw] [(a_a1vmv, b_a1vmw)])
type ZipSym2 (t_a1vSy :: [a_a1vmv]) (t_a1vSz :: [b_a1vmw]) = Zip t_a1vSy t_a1vSz
data Zip3Sym0 (l_a1vRo :: TyFun [a_a1vmB] (TyFun [b_a1vmC] (TyFun [c_a1vmD] [(a_a1vmB, b_a1vmC, c_a1vmD)] -> *) -> *))
data Zip3Sym1 (l_a1vRr :: [a_a1vmB]) (l_a1vRq :: TyFun [b_a1vmC] (TyFun [c_a1vmD] [(a_a1vmB, b_a1vmC, c_a1vmD)] -> *))
data Zip3Sym2 (l_a1vRu :: [a_a1vmB]) (l_a1vRv :: [b_a1vmC]) (l_a1vRt :: TyFun [c_a1vmD] [(a_a1vmB, b_a1vmC, c_a1vmD)])
type Zip3Sym3 (t_a1vRl :: [a_a1vmB]) (t_a1vRm :: [b_a1vmC]) (t_a1vRn :: [c_a1vmD]) = Zip3 t_a1vRl t_a1vRm t_a1vRn
data ZipWithSym0 (l_a1vQJ :: TyFun (TyFun a_a1vmK (TyFun b_a1vmL c_a1vmM -> *) -> *) (TyFun [a_a1vmK] (TyFun [b_a1vmL] [c_a1vmM] -> *) -> *))
data ZipWithSym1 (l_a1vQM :: TyFun a_a1vmK (TyFun b_a1vmL c_a1vmM -> *) -> *) (l_a1vQL :: TyFun [a_a1vmK] (TyFun [b_a1vmL] [c_a1vmM] -> *))
data ZipWithSym2 (l_a1vQP :: TyFun a_a1vmK (TyFun b_a1vmL c_a1vmM -> *) -> *) (l_a1vQQ :: [a_a1vmK]) (l_a1vQO :: TyFun [b_a1vmL] [c_a1vmM])
type ZipWithSym3 (t_a1vQG :: TyFun a_a1vmK (TyFun b_a1vmL c_a1vmM -> *) -> *) (t_a1vQH :: [a_a1vmK]) (t_a1vQI :: [b_a1vmL]) = ZipWith t_a1vQG t_a1vQH t_a1vQI
data ZipWith3Sym0 (l_a1vP4 :: TyFun (TyFun a_a1vmS (TyFun b_a1vmT (TyFun c_a1vmU d_a1vmV -> *) -> *) -> *) (TyFun [a_a1vmS] (TyFun [b_a1vmT] (TyFun [c_a1vmU] [d_a1vmV] -> *) -> *) -> *))
data ZipWith3Sym1 (l_a1vP7 :: TyFun a_a1vmS (TyFun b_a1vmT (TyFun c_a1vmU d_a1vmV -> *) -> *) -> *) (l_a1vP6 :: TyFun [a_a1vmS] (TyFun [b_a1vmT] (TyFun [c_a1vmU] [d_a1vmV] -> *) -> *))
data ZipWith3Sym2 (l_a1vPa :: TyFun a_a1vmS (TyFun b_a1vmT (TyFun c_a1vmU d_a1vmV -> *) -> *) -> *) (l_a1vPb :: [a_a1vmS]) (l_a1vP9 :: TyFun [b_a1vmT] (TyFun [c_a1vmU] [d_a1vmV] -> *))
data ZipWith3Sym3 (l_a1vPe :: TyFun a_a1vmS (TyFun b_a1vmT (TyFun c_a1vmU d_a1vmV -> *) -> *) -> *) (l_a1vPf :: [a_a1vmS]) (l_a1vPg :: [b_a1vmT]) (l_a1vPd :: TyFun [c_a1vmU] [d_a1vmV])
data UnzipSym0 (l_a1vOx :: TyFun [(a_a1vn3, b_a1vn4)] ([a_a1vn3], [b_a1vn4]))
type UnzipSym1 (t_a1vOw :: [(a_a1vn3, b_a1vn4)]) = Unzip t_a1vOw
-- | Defines promoted functions and datatypes relating to List,
-- including a promoted version of all the definitions in
-- Data.List.
--
-- Because many of these definitions are produced by Template Haskell, it
-- is not possible to create proper Haddock documentation. Please look up
-- the corresponding operation in Data.List. Also, please excuse
-- the apparent repeated variable names. This is due to an interaction
-- between Template Haskell and Haddock.
module Data.Promotion.Prelude.List
any_ :: (a_a1swk -> Bool) -> [a_a1swk] -> Bool
type NilSym0 = '[]
data (:$) (l_axRA :: TyFun a_12 (TyFun [a_12] [a_12] -> *))
data (:$$) (l_axRD :: a_12) (l_axRC :: TyFun [a_12] [a_12])
type (:$$$) (t_axRy :: a_12) (t_axRz :: [a_12]) = (:) t_axRy t_axRz
type (:++$$$) (t_a10SM :: [a_a10QE]) (t_a10SN :: [a_a10QE]) = (:++) t_a10SM t_a10SN
data (:++$$) (l_a10SR :: [a_a10QE]) (l_a10SQ :: TyFun [a_a10QE] [a_a10QE])
data (:++$) (l_a10SO :: TyFun [a_a10QE] (TyFun [a_a10QE] [a_a10QE] -> *))
data HeadSym0 (l_a1wlF :: TyFun [a_a1vjC] a_a1vjC)
type HeadSym1 (t_a1wlE :: [a_a1vjC]) = Head t_a1wlE
data LastSym0 (l_a1wlv :: TyFun [a_a1vjE] a_a1vjE)
type LastSym1 (t_a1wlu :: [a_a1vjE]) = Last t_a1wlu
data TailSym0 (l_a1wln :: TyFun [a_a1vjI] [a_a1vjI])
type TailSym1 (t_a1wlm :: [a_a1vjI]) = Tail t_a1wlm
data InitSym0 (l_a1wkQ :: TyFun [a_a1vjK] [a_a1vjK])
type InitSym1 (t_a1wkP :: [a_a1vjK]) = Init t_a1wkP
data NullSym0 (l_a1wjJ :: TyFun [a_a1vjS] Bool)
type NullSym1 (t_a1wjI :: [a_a1vjS]) = Null t_a1wjI
data MapSym0 (l_a10T1 :: TyFun (TyFun a_a10Qz b_a10QA -> *) (TyFun [a_a10Qz] [b_a10QA] -> *))
data MapSym1 (l_a10T4 :: TyFun a_a10Qz b_a10QA -> *) (l_a10T3 :: TyFun [a_a10Qz] [b_a10QA])
type MapSym2 (t_a10SZ :: TyFun a_a10Qz b_a10QA -> *) (t_a10T0 :: [a_a10Qz]) = Map t_a10SZ t_a10T0
data ReverseSym0 (l_a1wja :: TyFun [a_a1vjT] [a_a1vjT])
type ReverseSym1 (t_a1wj9 :: [a_a1vjT]) = Reverse t_a1wj9
data IntersperseSym0 (l_a1wiL :: TyFun a_a1vk1 (TyFun [a_a1vk1] [a_a1vk1] -> *))
data IntersperseSym1 (l_a1wiO :: a_a1vk1) (l_a1wiN :: TyFun [a_a1vk1] [a_a1vk1])
type IntersperseSym2 (t_a1wiJ :: a_a1vk1) (t_a1wiK :: [a_a1vk1]) = Intersperse t_a1wiJ t_a1wiK
data IntercalateSym0 (l_a1wj0 :: TyFun [a_a1vk5] (TyFun [[a_a1vk5]] [a_a1vk5] -> *))
data IntercalateSym1 (l_a1wj3 :: [a_a1vk5]) (l_a1wj2 :: TyFun [[a_a1vk5]] [a_a1vk5])
type IntercalateSym2 (t_a1wiY :: [a_a1vk5]) (t_a1wiZ :: [[a_a1vk5]]) = Intercalate t_a1wiY t_a1wiZ
data SubsequencesSym0 (l_a1wiF :: TyFun [a_a1vk8] [[a_a1vk8]])
type SubsequencesSym1 (t_a1wiE :: [a_a1vk8]) = Subsequences t_a1wiE
data PermutationsSym0 (l_a1wbX :: TyFun [a_a1vkk] [[a_a1vkk]])
type PermutationsSym1 (t_a1wbW :: [a_a1vkk]) = Permutations t_a1wbW
data FoldlSym0 (l_aB2j :: TyFun (TyFun b_aB26 (TyFun a_aB25 b_aB26 -> *) -> *) (TyFun b_aB26 (TyFun [a_aB25] b_aB26 -> *) -> *))
data FoldlSym1 (l_aB2m :: TyFun b_aB26 (TyFun a_aB25 b_aB26 -> *) -> *) (l_aB2l :: TyFun b_aB26 (TyFun [a_aB25] b_aB26 -> *))
data FoldlSym2 (l_aB2p :: TyFun b_aB26 (TyFun a_aB25 b_aB26 -> *) -> *) (l_aB2q :: b_aB26) (l_aB2o :: TyFun [a_aB25] b_aB26)
type FoldlSym3 (t_aB2g :: TyFun b_aB26 (TyFun a_aB25 b_aB26 -> *) -> *) (t_aB2h :: b_aB26) (t_aB2i :: [a_aB25]) = Foldl t_aB2g t_aB2h t_aB2i
data Foldl'Sym0 (l_a1wao :: TyFun (TyFun b_a1vi9 (TyFun a_a1vi8 b_a1vi9 -> *) -> *) (TyFun b_a1vi9 (TyFun [a_a1vi8] b_a1vi9 -> *) -> *))
data Foldl'Sym1 (l_a1war :: TyFun b_a1vi9 (TyFun a_a1vi8 b_a1vi9 -> *) -> *) (l_a1waq :: TyFun b_a1vi9 (TyFun [a_a1vi8] b_a1vi9 -> *))
data Foldl'Sym2 (l_a1wau :: TyFun b_a1vi9 (TyFun a_a1vi8 b_a1vi9 -> *) -> *) (l_a1wav :: b_a1vi9) (l_a1wat :: TyFun [a_a1vi8] b_a1vi9)
type Foldl'Sym3 (t_a1wal :: TyFun b_a1vi9 (TyFun a_a1vi8 b_a1vi9 -> *) -> *) (t_a1wam :: b_a1vi9) (t_a1wan :: [a_a1vi8]) = Foldl' t_a1wal t_a1wam t_a1wan
data Foldl1Sym0 (l_a1w6S :: TyFun (TyFun a_a1vkL (TyFun a_a1vkL a_a1vkL -> *) -> *) (TyFun [a_a1vkL] a_a1vkL -> *))
data Foldl1Sym1 (l_a1w6V :: TyFun a_a1vkL (TyFun a_a1vkL a_a1vkL -> *) -> *) (l_a1w6U :: TyFun [a_a1vkL] a_a1vkL)
type Foldl1Sym2 (t_a1w6Q :: TyFun a_a1vkL (TyFun a_a1vkL a_a1vkL -> *) -> *) (t_a1w6R :: [a_a1vkL]) = Foldl1 t_a1w6Q t_a1w6R
data Foldl1'Sym0 (l_a1wbJ :: TyFun (TyFun a_a1vkP (TyFun a_a1vkP a_a1vkP -> *) -> *) (TyFun [a_a1vkP] a_a1vkP -> *))
data Foldl1'Sym1 (l_a1wbM :: TyFun a_a1vkP (TyFun a_a1vkP a_a1vkP -> *) -> *) (l_a1wbL :: TyFun [a_a1vkP] a_a1vkP)
type Foldl1'Sym2 (t_a1wbH :: TyFun a_a1vkP (TyFun a_a1vkP a_a1vkP -> *) -> *) (t_a1wbI :: [a_a1vkP]) = Foldl1' t_a1wbH t_a1wbI
data FoldrSym0 (l_a10Th :: TyFun (TyFun a_a10Qs (TyFun b_a10Qt b_a10Qt -> *) -> *) (TyFun b_a10Qt (TyFun [a_a10Qs] b_a10Qt -> *) -> *))
data FoldrSym1 (l_a10Tk :: TyFun a_a10Qs (TyFun b_a10Qt b_a10Qt -> *) -> *) (l_a10Tj :: TyFun b_a10Qt (TyFun [a_a10Qs] b_a10Qt -> *))
data FoldrSym2 (l_a10Tn :: TyFun a_a10Qs (TyFun b_a10Qt b_a10Qt -> *) -> *) (l_a10To :: b_a10Qt) (l_a10Tm :: TyFun [a_a10Qs] b_a10Qt)
type FoldrSym3 (t_a10Te :: TyFun a_a10Qs (TyFun b_a10Qt b_a10Qt -> *) -> *) (t_a10Tf :: b_a10Qt) (t_a10Tg :: [a_a10Qs]) = Foldr t_a10Te t_a10Tf t_a10Tg
data Foldr1Sym0 (l_a1w6f :: TyFun (TyFun a_a1vkT (TyFun a_a1vkT a_a1vkT -> *) -> *) (TyFun [a_a1vkT] a_a1vkT -> *))
data Foldr1Sym1 (l_a1w6i :: TyFun a_a1vkT (TyFun a_a1vkT a_a1vkT -> *) -> *) (l_a1w6h :: TyFun [a_a1vkT] a_a1vkT)
type Foldr1Sym2 (t_a1w6d :: TyFun a_a1vkT (TyFun a_a1vkT a_a1vkT -> *) -> *) (t_a1w6e :: [a_a1vkT]) = Foldr1 t_a1w6d t_a1w6e
data ConcatSym0 (l_a1w69 :: TyFun [[a_a1vkY]] [a_a1vkY])
type ConcatSym1 (t_a1w68 :: [[a_a1vkY]]) = Concat t_a1w68
data ConcatMapSym0 (l_a1w5V :: TyFun (TyFun a_a1vkZ [b_a1vl0] -> *) (TyFun [a_a1vkZ] [b_a1vl0] -> *))
data ConcatMapSym1 (l_a1w5Y :: TyFun a_a1vkZ [b_a1vl0] -> *) (l_a1w5X :: TyFun [a_a1vkZ] [b_a1vl0])
type ConcatMapSym2 (t_a1w5T :: TyFun a_a1vkZ [b_a1vl0] -> *) (t_a1w5U :: [a_a1vkZ]) = ConcatMap t_a1w5T t_a1w5U
data AndSym0 (l_a1w5O :: TyFun [Bool] Bool)
type AndSym1 (t_a1w5N :: [Bool]) = And t_a1w5N
data OrSym0 (l_a1w5I :: TyFun [Bool] Bool)
type OrSym1 (t_a1w5H :: [Bool]) = Or t_a1w5H
data Any_Sym0 (l_a1swr :: TyFun (TyFun a_a1swk Bool -> *) (TyFun [a_a1swk] Bool -> *))
data Any_Sym1 (l_a1swu :: TyFun a_a1swk Bool -> *) (l_a1swt :: TyFun [a_a1swk] Bool)
type Any_Sym2 (t_a1swp :: TyFun a_a1swk Bool -> *) (t_a1swq :: [a_a1swk]) = Any_ t_a1swp t_a1swq
data AllSym0 (l_a1w5u :: TyFun (TyFun a_a1vl6 Bool -> *) (TyFun [a_a1vl6] Bool -> *))
data AllSym1 (l_a1w5x :: TyFun a_a1vl6 Bool -> *) (l_a1w5w :: TyFun [a_a1vl6] Bool)
type AllSym2 (t_a1w5s :: TyFun a_a1vl6 Bool -> *) (t_a1w5t :: [a_a1vl6]) = All t_a1w5s t_a1w5t
data ScanlSym0 (l_a1w4G :: TyFun (TyFun b_a1vla (TyFun a_a1vlb b_a1vla -> *) -> *) (TyFun b_a1vla (TyFun [a_a1vlb] [b_a1vla] -> *) -> *))
data ScanlSym1 (l_a1w4J :: TyFun b_a1vla (TyFun a_a1vlb b_a1vla -> *) -> *) (l_a1w4I :: TyFun b_a1vla (TyFun [a_a1vlb] [b_a1vla] -> *))
data ScanlSym2 (l_a1w4M :: TyFun b_a1vla (TyFun a_a1vlb b_a1vla -> *) -> *) (l_a1w4N :: b_a1vla) (l_a1w4L :: TyFun [a_a1vlb] [b_a1vla])
type ScanlSym3 (t_a1w4D :: TyFun b_a1vla (TyFun a_a1vlb b_a1vla -> *) -> *) (t_a1w4E :: b_a1vla) (t_a1w4F :: [a_a1vlb]) = Scanl t_a1w4D t_a1w4E t_a1w4F
data Scanl1Sym0 (l_a1w5f :: TyFun (TyFun a_a1vlh (TyFun a_a1vlh a_a1vlh -> *) -> *) (TyFun [a_a1vlh] [a_a1vlh] -> *))
data Scanl1Sym1 (l_a1w5i :: TyFun a_a1vlh (TyFun a_a1vlh a_a1vlh -> *) -> *) (l_a1w5h :: TyFun [a_a1vlh] [a_a1vlh])
type Scanl1Sym2 (t_a1w5d :: TyFun a_a1vlh (TyFun a_a1vlh a_a1vlh -> *) -> *) (t_a1w5e :: [a_a1vlh]) = Scanl1 t_a1w5d t_a1w5e
data ScanrSym0 (l_a1w3V :: TyFun (TyFun a_a1vll (TyFun b_a1vlm b_a1vlm -> *) -> *) (TyFun b_a1vlm (TyFun [a_a1vll] [b_a1vlm] -> *) -> *))
data ScanrSym1 (l_a1w3Y :: TyFun a_a1vll (TyFun b_a1vlm b_a1vlm -> *) -> *) (l_a1w3X :: TyFun b_a1vlm (TyFun [a_a1vll] [b_a1vlm] -> *))
data ScanrSym2 (l_a1w41 :: TyFun a_a1vll (TyFun b_a1vlm b_a1vlm -> *) -> *) (l_a1w42 :: b_a1vlm) (l_a1w40 :: TyFun [a_a1vll] [b_a1vlm])
type ScanrSym3 (t_a1w3S :: TyFun a_a1vll (TyFun b_a1vlm b_a1vlm -> *) -> *) (t_a1w3T :: b_a1vlm) (t_a1w3U :: [a_a1vll]) = Scanr t_a1w3S t_a1w3T t_a1w3U
data Scanr1Sym0 (l_a1w2T :: TyFun (TyFun a_a1vlu (TyFun a_a1vlu a_a1vlu -> *) -> *) (TyFun [a_a1vlu] [a_a1vlu] -> *))
data Scanr1Sym1 (l_a1w2W :: TyFun a_a1vlu (TyFun a_a1vlu a_a1vlu -> *) -> *) (l_a1w2V :: TyFun [a_a1vlu] [a_a1vlu])
type Scanr1Sym2 (t_a1w2R :: TyFun a_a1vlu (TyFun a_a1vlu a_a1vlu -> *) -> *) (t_a1w2S :: [a_a1vlu]) = Scanr1 t_a1w2R t_a1w2S
data MapAccumLSym0 (l_a1w08 :: TyFun (TyFun acc_a1vlB (TyFun x_a1vlC (acc_a1vlB, y_a1vlD) -> *) -> *) (TyFun acc_a1vlB (TyFun [x_a1vlC] (acc_a1vlB, [y_a1vlD]) -> *) -> *))
data MapAccumLSym1 (l_a1w0b :: TyFun acc_a1vlB (TyFun x_a1vlC (acc_a1vlB, y_a1vlD) -> *) -> *) (l_a1w0a :: TyFun acc_a1vlB (TyFun [x_a1vlC] (acc_a1vlB, [y_a1vlD]) -> *))
data MapAccumLSym2 (l_a1w0e :: TyFun acc_a1vlB (TyFun x_a1vlC (acc_a1vlB, y_a1vlD) -> *) -> *) (l_a1w0f :: acc_a1vlB) (l_a1w0d :: TyFun [x_a1vlC] (acc_a1vlB, [y_a1vlD]))
type MapAccumLSym3 (t_a1w05 :: TyFun acc_a1vlB (TyFun x_a1vlC (acc_a1vlB, y_a1vlD) -> *) -> *) (t_a1w06 :: acc_a1vlB) (t_a1w07 :: [x_a1vlC]) = MapAccumL t_a1w05 t_a1w06 t_a1w07
data MapAccumRSym0 (l_a1vXm :: TyFun (TyFun acc_a1vlN (TyFun x_a1vlO (acc_a1vlN, y_a1vlP) -> *) -> *) (TyFun acc_a1vlN (TyFun [x_a1vlO] (acc_a1vlN, [y_a1vlP]) -> *) -> *))
data MapAccumRSym1 (l_a1vXp :: TyFun acc_a1vlN (TyFun x_a1vlO (acc_a1vlN, y_a1vlP) -> *) -> *) (l_a1vXo :: TyFun acc_a1vlN (TyFun [x_a1vlO] (acc_a1vlN, [y_a1vlP]) -> *))
data MapAccumRSym2 (l_a1vXs :: TyFun acc_a1vlN (TyFun x_a1vlO (acc_a1vlN, y_a1vlP) -> *) -> *) (l_a1vXt :: acc_a1vlN) (l_a1vXr :: TyFun [x_a1vlO] (acc_a1vlN, [y_a1vlP]))
type MapAccumRSym3 (t_a1vXj :: TyFun acc_a1vlN (TyFun x_a1vlO (acc_a1vlN, y_a1vlP) -> *) -> *) (t_a1vXk :: acc_a1vlN) (t_a1vXl :: [x_a1vlO]) = MapAccumR t_a1vXj t_a1vXk t_a1vXl
data UnfoldrSym0 (l_a1vWX :: TyFun (TyFun b_a1vlZ (Maybe (a_a1vm0, b_a1vlZ)) -> *) (TyFun b_a1vlZ [a_a1vm0] -> *))
data UnfoldrSym1 (l_a1vX0 :: TyFun b_a1vlZ (Maybe (a_a1vm0, b_a1vlZ)) -> *) (l_a1vWZ :: TyFun b_a1vlZ [a_a1vm0])
type UnfoldrSym2 (t_a1vWV :: TyFun b_a1vlZ (Maybe (a_a1vm0, b_a1vlZ)) -> *) (t_a1vWW :: b_a1vlZ) = Unfoldr t_a1vWV t_a1vWW
data InitsSym0 (l_a1vWI :: TyFun [a_a1vm5] [[a_a1vm5]])
type InitsSym1 (t_a1vWH :: [a_a1vm5]) = Inits t_a1vWH
data TailsSym0 (l_a1vWh :: TyFun [a_a1vm9] [[a_a1vm9]])
type TailsSym1 (t_a1vWg :: [a_a1vm9]) = Tails t_a1vWg
data IsPrefixOfSym0 (l_a1vVT :: TyFun [a_a1vmc] (TyFun [a_a1vmc] Bool -> *))
data IsPrefixOfSym1 (l_a1vVW :: [a_a1vmc]) (l_a1vVV :: TyFun [a_a1vmc] Bool)
type IsPrefixOfSym2 (t_a1vVR :: [a_a1vmc]) (t_a1vVS :: [a_a1vmc]) = IsPrefixOf t_a1vVR t_a1vVS
data IsSuffixOfSym0 (l_a1wjz :: TyFun [a_a1vmh] (TyFun [a_a1vmh] Bool -> *))
data IsSuffixOfSym1 (l_a1wjC :: [a_a1vmh]) (l_a1wjB :: TyFun [a_a1vmh] Bool)
type IsSuffixOfSym2 (t_a1wjx :: [a_a1vmh]) (t_a1wjy :: [a_a1vmh]) = IsSuffixOf t_a1wjx t_a1wjy
data IsInfixOfSym0 (l_a1vWy :: TyFun [a_a1vmk] (TyFun [a_a1vmk] Bool -> *))
data IsInfixOfSym1 (l_a1vWB :: [a_a1vmk]) (l_a1vWA :: TyFun [a_a1vmk] Bool)
type IsInfixOfSym2 (t_a1vWw :: [a_a1vmk]) (t_a1vWx :: [a_a1vmk]) = IsInfixOf t_a1vWw t_a1vWx
data ElemSym0 (l_a1vUS :: TyFun a_a1vmn (TyFun [a_a1vmn] Bool -> *))
data ElemSym1 (l_a1vUV :: a_a1vmn) (l_a1vUU :: TyFun [a_a1vmn] Bool)
type ElemSym2 (t_a1vUQ :: a_a1vmn) (t_a1vUR :: [a_a1vmn]) = Elem t_a1vUQ t_a1vUR
data NotElemSym0 (l_a1vUD :: TyFun a_a1vmr (TyFun [a_a1vmr] Bool -> *))
data NotElemSym1 (l_a1vUG :: a_a1vmr) (l_a1vUF :: TyFun [a_a1vmr] Bool)
type NotElemSym2 (t_a1vUB :: a_a1vmr) (t_a1vUC :: [a_a1vmr]) = NotElem t_a1vUB t_a1vUC
data ZipSym0 (l_a1vSA :: TyFun [a_a1vmv] (TyFun [b_a1vmw] [(a_a1vmv, b_a1vmw)] -> *))
data ZipSym1 (l_a1vSD :: [a_a1vmv]) (l_a1vSC :: TyFun [b_a1vmw] [(a_a1vmv, b_a1vmw)])
type ZipSym2 (t_a1vSy :: [a_a1vmv]) (t_a1vSz :: [b_a1vmw]) = Zip t_a1vSy t_a1vSz
data Zip3Sym0 (l_a1vRo :: TyFun [a_a1vmB] (TyFun [b_a1vmC] (TyFun [c_a1vmD] [(a_a1vmB, b_a1vmC, c_a1vmD)] -> *) -> *))
data Zip3Sym1 (l_a1vRr :: [a_a1vmB]) (l_a1vRq :: TyFun [b_a1vmC] (TyFun [c_a1vmD] [(a_a1vmB, b_a1vmC, c_a1vmD)] -> *))
data Zip3Sym2 (l_a1vRu :: [a_a1vmB]) (l_a1vRv :: [b_a1vmC]) (l_a1vRt :: TyFun [c_a1vmD] [(a_a1vmB, b_a1vmC, c_a1vmD)])
type Zip3Sym3 (t_a1vRl :: [a_a1vmB]) (t_a1vRm :: [b_a1vmC]) (t_a1vRn :: [c_a1vmD]) = Zip3 t_a1vRl t_a1vRm t_a1vRn
data ZipWithSym0 (l_a1vQJ :: TyFun (TyFun a_a1vmK (TyFun b_a1vmL c_a1vmM -> *) -> *) (TyFun [a_a1vmK] (TyFun [b_a1vmL] [c_a1vmM] -> *) -> *))
data ZipWithSym1 (l_a1vQM :: TyFun a_a1vmK (TyFun b_a1vmL c_a1vmM -> *) -> *) (l_a1vQL :: TyFun [a_a1vmK] (TyFun [b_a1vmL] [c_a1vmM] -> *))
data ZipWithSym2 (l_a1vQP :: TyFun a_a1vmK (TyFun b_a1vmL c_a1vmM -> *) -> *) (l_a1vQQ :: [a_a1vmK]) (l_a1vQO :: TyFun [b_a1vmL] [c_a1vmM])
type ZipWithSym3 (t_a1vQG :: TyFun a_a1vmK (TyFun b_a1vmL c_a1vmM -> *) -> *) (t_a1vQH :: [a_a1vmK]) (t_a1vQI :: [b_a1vmL]) = ZipWith t_a1vQG t_a1vQH t_a1vQI
data ZipWith3Sym0 (l_a1vP4 :: TyFun (TyFun a_a1vmS (TyFun b_a1vmT (TyFun c_a1vmU d_a1vmV -> *) -> *) -> *) (TyFun [a_a1vmS] (TyFun [b_a1vmT] (TyFun [c_a1vmU] [d_a1vmV] -> *) -> *) -> *))
data ZipWith3Sym1 (l_a1vP7 :: TyFun a_a1vmS (TyFun b_a1vmT (TyFun c_a1vmU d_a1vmV -> *) -> *) -> *) (l_a1vP6 :: TyFun [a_a1vmS] (TyFun [b_a1vmT] (TyFun [c_a1vmU] [d_a1vmV] -> *) -> *))
data ZipWith3Sym2 (l_a1vPa :: TyFun a_a1vmS (TyFun b_a1vmT (TyFun c_a1vmU d_a1vmV -> *) -> *) -> *) (l_a1vPb :: [a_a1vmS]) (l_a1vP9 :: TyFun [b_a1vmT] (TyFun [c_a1vmU] [d_a1vmV] -> *))
data ZipWith3Sym3 (l_a1vPe :: TyFun a_a1vmS (TyFun b_a1vmT (TyFun c_a1vmU d_a1vmV -> *) -> *) -> *) (l_a1vPf :: [a_a1vmS]) (l_a1vPg :: [b_a1vmT]) (l_a1vPd :: TyFun [c_a1vmU] [d_a1vmV])
type ZipWith3Sym4 (t_a1vP0 :: TyFun a_a1vmS (TyFun b_a1vmT (TyFun c_a1vmU d_a1vmV -> *) -> *) -> *) (t_a1vP1 :: [a_a1vmS]) (t_a1vP2 :: [b_a1vmT]) (t_a1vP3 :: [c_a1vmU]) = ZipWith3 t_a1vP0 t_a1vP1 t_a1vP2 t_a1vP3
data UnzipSym0 (l_a1vOx :: TyFun [(a_a1vn3, b_a1vn4)] ([a_a1vn3], [b_a1vn4]))
type UnzipSym1 (t_a1vOw :: [(a_a1vn3, b_a1vn4)]) = Unzip t_a1vOw
data Unzip3Sym0 (l_a1vO1 :: TyFun [(a_a1vna, b_a1vnb, c_a1vnc)] ([a_a1vna], [b_a1vnb], [c_a1vnc]))
type Unzip3Sym1 (t_a1vO0 :: [(a_a1vna, b_a1vnb, c_a1vnc)]) = Unzip3 t_a1vO0
data Unzip4Sym0 (l_a1vNt :: TyFun [(a_a1vnk, b_a1vnl, c_a1vnm, d_a1vnn)] ([a_a1vnk], [b_a1vnl], [c_a1vnm], [d_a1vnn]))
type Unzip4Sym1 (t_a1vNs :: [(a_a1vnk, b_a1vnl, c_a1vnm, d_a1vnn)]) = Unzip4 t_a1vNs
data Unzip5Sym0 (l_a1vMT :: TyFun [(a_a1vnx, b_a1vny, c_a1vnz, d_a1vnA, e_a1vnB)] ([a_a1vnx], [b_a1vny], [c_a1vnz], [d_a1vnA], [e_a1vnB]))
type Unzip5Sym1 (t_a1vMS :: [(a_a1vnx, b_a1vny, c_a1vnz, d_a1vnA, e_a1vnB)]) = Unzip5 t_a1vMS
data Unzip6Sym0 (l_a1vMh :: TyFun [(a_a1vnN, b_a1vnO, c_a1vnP, d_a1vnQ, e_a1vnR, f_a1vnS)] ([a_a1vnN], [b_a1vnO], [c_a1vnP], [d_a1vnQ], [e_a1vnR], [f_a1vnS]))
type Unzip6Sym1 (t_a1vMg :: [(a_a1vnN, b_a1vnO, c_a1vnP, d_a1vnQ, e_a1vnR, f_a1vnS)]) = Unzip6 t_a1vMg
data Unzip7Sym0 (l_a1vLD :: TyFun [(a_a1vo6, b_a1vo7, c_a1vo8, d_a1vo9, e_a1voa, f_a1vob, g_a1voc)] ([a_a1vo6], [b_a1vo7], [c_a1vo8], [d_a1vo9], [e_a1voa], [f_a1vob], [g_a1voc]))
type Unzip7Sym1 (t_a1vLC :: [(a_a1vo6, b_a1vo7, c_a1vo8, d_a1vo9, e_a1voa, f_a1vob, g_a1voc)]) = Unzip7 t_a1vLC
data DeleteSym0 (l_a1vLe :: TyFun a_a1vos (TyFun [a_a1vos] [a_a1vos] -> *))
data DeleteSym1 (l_a1vLh :: a_a1vos) (l_a1vLg :: TyFun [a_a1vos] [a_a1vos])
type DeleteSym2 (t_a1vLc :: a_a1vos) (t_a1vLd :: [a_a1vos]) = Delete t_a1vLc t_a1vLd
data (:\\$) (l_a1vLt :: TyFun [a_a1vot] (TyFun [a_a1vot] [a_a1vot] -> *))
data (:\\$$) (l_a1vLw :: [a_a1vot]) (l_a1vLv :: TyFun [a_a1vot] [a_a1vot])
type (:\\$$$) (t_a1vLr :: [a_a1vot]) (t_a1vLs :: [a_a1vot]) = (:\\) t_a1vLr t_a1vLs
data IntersectSym0 (l_a1vHO :: TyFun [a_a1vph] (TyFun [a_a1vph] [a_a1vph] -> *))
data IntersectSym1 (l_a1vHR :: [a_a1vph]) (l_a1vHQ :: TyFun [a_a1vph] [a_a1vph])
type IntersectSym2 (t_a1vHM :: [a_a1vph]) (t_a1vHN :: [a_a1vph]) = Intersect t_a1vHM t_a1vHN
data InsertSym0 (l_a1vJ1 :: TyFun a_a1vq7 (TyFun [a_a1vq7] [a_a1vq7] -> *))
data InsertSym1 (l_a1vJ4 :: a_a1vq7) (l_a1vJ3 :: TyFun [a_a1vq7] [a_a1vq7])
type InsertSym2 (t_a1vIZ :: a_a1vq7) (t_a1vJ0 :: [a_a1vq7]) = Insert t_a1vIZ t_a1vJ0
data SortSym0 (l_a1vJq :: TyFun [a_a1vqa] [a_a1vqa])
type SortSym1 (t_a1vJp :: [a_a1vqa]) = Sort t_a1vJp
data DeleteBySym0 (l_a1vJx :: TyFun (TyFun a_a1vou (TyFun a_a1vou Bool -> *) -> *) (TyFun a_a1vou (TyFun [a_a1vou] [a_a1vou] -> *) -> *))
data DeleteBySym1 (l_a1vJA :: TyFun a_a1vou (TyFun a_a1vou Bool -> *) -> *) (l_a1vJz :: TyFun a_a1vou (TyFun [a_a1vou] [a_a1vou] -> *))
data DeleteBySym2 (l_a1vJD :: TyFun a_a1vou (TyFun a_a1vou Bool -> *) -> *) (l_a1vJE :: a_a1vou) (l_a1vJC :: TyFun [a_a1vou] [a_a1vou])
type DeleteBySym3 (t_a1vJu :: TyFun a_a1vou (TyFun a_a1vou Bool -> *) -> *) (t_a1vJv :: a_a1vou) (t_a1vJw :: [a_a1vou]) = DeleteBy t_a1vJu t_a1vJv t_a1vJw
data DeleteFirstsBySym0 (l_a1vKi :: TyFun (TyFun a_a1voz (TyFun a_a1voz Bool -> *) -> *) (TyFun [a_a1voz] (TyFun [a_a1voz] [a_a1voz] -> *) -> *))
data DeleteFirstsBySym1 (l_a1vKl :: TyFun a_a1voz (TyFun a_a1voz Bool -> *) -> *) (l_a1vKk :: TyFun [a_a1voz] (TyFun [a_a1voz] [a_a1voz] -> *))
data DeleteFirstsBySym2 (l_a1vKo :: TyFun a_a1voz (TyFun a_a1voz Bool -> *) -> *) (l_a1vKp :: [a_a1voz]) (l_a1vKn :: TyFun [a_a1voz] [a_a1voz])
type DeleteFirstsBySym3 (t_a1vKf :: TyFun a_a1voz (TyFun a_a1voz Bool -> *) -> *) (t_a1vKg :: [a_a1voz]) (t_a1vKh :: [a_a1voz]) = DeleteFirstsBy t_a1vKf t_a1vKg t_a1vKh
data IntersectBySym0 (l_a1vFG :: TyFun (TyFun a_a1vpi (TyFun a_a1vpi Bool -> *) -> *) (TyFun [a_a1vpi] (TyFun [a_a1vpi] [a_a1vpi] -> *) -> *))
data IntersectBySym1 (l_a1vFJ :: TyFun a_a1vpi (TyFun a_a1vpi Bool -> *) -> *) (l_a1vFI :: TyFun [a_a1vpi] (TyFun [a_a1vpi] [a_a1vpi] -> *))
data IntersectBySym2 (l_a1vFM :: TyFun a_a1vpi (TyFun a_a1vpi Bool -> *) -> *) (l_a1vFN :: [a_a1vpi]) (l_a1vFL :: TyFun [a_a1vpi] [a_a1vpi])
data SortBySym0 (l_a1vJc :: TyFun (TyFun a_a1voB (TyFun a_a1voB Ordering -> *) -> *) (TyFun [a_a1voB] [a_a1voB] -> *))
data SortBySym1 (l_a1vJf :: TyFun a_a1voB (TyFun a_a1voB Ordering -> *) -> *) (l_a1vJe :: TyFun [a_a1voB] [a_a1voB])
type SortBySym2 (t_a1vJa :: TyFun a_a1voB (TyFun a_a1voB Ordering -> *) -> *) (t_a1vJb :: [a_a1voB]) = SortBy t_a1vJa t_a1vJb
data InsertBySym0 (l_a1vI0 :: TyFun (TyFun a_a1voD (TyFun a_a1voD Ordering -> *) -> *) (TyFun a_a1voD (TyFun [a_a1voD] [a_a1voD] -> *) -> *))
data InsertBySym1 (l_a1vI3 :: TyFun a_a1voD (TyFun a_a1voD Ordering -> *) -> *) (l_a1vI2 :: TyFun a_a1voD (TyFun [a_a1voD] [a_a1voD] -> *))
data InsertBySym2 (l_a1vI6 :: TyFun a_a1voD (TyFun a_a1voD Ordering -> *) -> *) (l_a1vI7 :: a_a1voD) (l_a1vI5 :: TyFun [a_a1voD] [a_a1voD])
type InsertBySym3 (t_a1vHX :: TyFun a_a1voD (TyFun a_a1voD Ordering -> *) -> *) (t_a1vHY :: a_a1voD) (t_a1vHZ :: [a_a1voD]) = InsertBy t_a1vHX t_a1vHY t_a1vHZ
data MaximumBySym0 (l_a1w77 :: TyFun (TyFun a_a1voK (TyFun a_a1voK Ordering -> *) -> *) (TyFun [a_a1voK] a_a1voK -> *))
data MaximumBySym1 (l_a1w7a :: TyFun a_a1voK (TyFun a_a1voK Ordering -> *) -> *) (l_a1w79 :: TyFun [a_a1voK] a_a1voK)
type MaximumBySym2 (t_a1w75 :: TyFun a_a1voK (TyFun a_a1voK Ordering -> *) -> *) (t_a1w76 :: [a_a1voK]) = MaximumBy t_a1w75 t_a1w76
data MinimumBySym0 (l_a1w8w :: TyFun (TyFun a_a1voQ (TyFun a_a1voQ Ordering -> *) -> *) (TyFun [a_a1voQ] a_a1voQ -> *))
data MinimumBySym1 (l_a1w8z :: TyFun a_a1voQ (TyFun a_a1voQ Ordering -> *) -> *) (l_a1w8y :: TyFun [a_a1voQ] a_a1voQ)
type MinimumBySym2 (t_a1w8u :: TyFun a_a1voQ (TyFun a_a1voQ Ordering -> *) -> *) (t_a1w8v :: [a_a1voQ]) = MinimumBy t_a1w8u t_a1w8v
data LengthSym0 (l_a1vvD :: TyFun [a_a1vqI] Nat)
type LengthSym1 (t_a1vvC :: [a_a1vqI]) = Length t_a1vvC
data SumSym0 (l_a1vw9 :: TyFun [a_a1vi7] a_a1vi7)
type SumSym1 (t_a1vw8 :: [a_a1vi7]) = Sum t_a1vw8
data ProductSym0 (l_a1vvL :: TyFun [a_a1vi6] a_a1vi6)
type ProductSym1 (t_a1vvK :: [a_a1vi6]) = Product t_a1vvK
data ReplicateSym0 (l_a1vvi :: TyFun Nat (TyFun a_a1vqK [a_a1vqK] -> *))
data ReplicateSym1 (l_a1vvl :: Nat) (l_a1vvk :: TyFun a_a1vqK [a_a1vqK])
type ReplicateSym2 (t_a1vvg :: Nat) (t_a1vvh :: a_a1vqK) = Replicate t_a1vvg t_a1vvh
data TransposeSym0 (l_a1wlN :: TyFun [[a_a1vqN]] [[a_a1vqN]])
type TransposeSym1 (t_a1wlM :: [[a_a1vqN]]) = Transpose t_a1wlM
data TakeSym0 (l_a1vyt :: TyFun Nat (TyFun [a_a1vpQ] [a_a1vpQ] -> *))
data TakeSym1 (l_a1vyw :: Nat) (l_a1vyv :: TyFun [a_a1vpQ] [a_a1vpQ])
type TakeSym2 (t_a1vyr :: Nat) (t_a1vys :: [a_a1vpQ]) = Take t_a1vyr t_a1vys
data DropSym0 (l_a1vxY :: TyFun Nat (TyFun [a_a1vpU] [a_a1vpU] -> *))
data DropSym1 (l_a1vy1 :: Nat) (l_a1vy0 :: TyFun [a_a1vpU] [a_a1vpU])
type DropSym2 (t_a1vxW :: Nat) (t_a1vxX :: [a_a1vpU]) = Drop t_a1vxW t_a1vxX
data SplitAtSym0 (l_a1vyY :: TyFun Nat (TyFun [a_a1vpY] ([a_a1vpY], [a_a1vpY]) -> *))
data SplitAtSym1 (l_a1vz1 :: Nat) (l_a1vz0 :: TyFun [a_a1vpY] ([a_a1vpY], [a_a1vpY]))
type SplitAtSym2 (t_a1vyW :: Nat) (t_a1vyX :: [a_a1vpY]) = SplitAt t_a1vyW t_a1vyX
data TakeWhileSym0 (l_a1vEu :: TyFun (TyFun a_a1vpn Bool -> *) (TyFun [a_a1vpn] [a_a1vpn] -> *))
data TakeWhileSym1 (l_a1vEx :: TyFun a_a1vpn Bool -> *) (l_a1vEw :: TyFun [a_a1vpn] [a_a1vpn])
type TakeWhileSym2 (t_a1vEs :: TyFun a_a1vpn Bool -> *) (t_a1vEt :: [a_a1vpn]) = TakeWhile t_a1vEs t_a1vEt
data DropWhileSym0 (l_a1vDM :: TyFun (TyFun a_a1vpr Bool -> *) (TyFun [a_a1vpr] [a_a1vpr] -> *))
data DropWhileSym1 (l_a1vDP :: TyFun a_a1vpr Bool -> *) (l_a1vDO :: TyFun [a_a1vpr] [a_a1vpr])
type DropWhileSym2 (t_a1vDK :: TyFun a_a1vpr Bool -> *) (t_a1vDL :: [a_a1vpr]) = DropWhile t_a1vDK t_a1vDL
data DropWhileEndSym0 (l_a1wjU :: TyFun (TyFun a_a1vpw Bool -> *) (TyFun [a_a1vpw] [a_a1vpw] -> *))
data DropWhileEndSym1 (l_a1wjX :: TyFun a_a1vpw Bool -> *) (l_a1wjW :: TyFun [a_a1vpw] [a_a1vpw])
type DropWhileEndSym2 (t_a1wjS :: TyFun a_a1vpw Bool -> *) (t_a1wjT :: [a_a1vpw]) = DropWhileEnd t_a1wjS t_a1wjT
data SpanSym0 (l_a1vAQ :: TyFun (TyFun a_a1vpA Bool -> *) (TyFun [a_a1vpA] ([a_a1vpA], [a_a1vpA]) -> *))
data SpanSym1 (l_a1vAT :: TyFun a_a1vpA Bool -> *) (l_a1vAS :: TyFun [a_a1vpA] ([a_a1vpA], [a_a1vpA]))
type SpanSym2 (t_a1vAO :: TyFun a_a1vpA Bool -> *) (t_a1vAP :: [a_a1vpA]) = Span t_a1vAO t_a1vAP
data BreakSym0 (l_a1vz9 :: TyFun (TyFun a_a1vpI Bool -> *) (TyFun [a_a1vpI] ([a_a1vpI], [a_a1vpI]) -> *))
data BreakSym1 (l_a1vzc :: TyFun a_a1vpI Bool -> *) (l_a1vzb :: TyFun [a_a1vpI] ([a_a1vpI], [a_a1vpI]))
type BreakSym2 (t_a1vz7 :: TyFun a_a1vpI Bool -> *) (t_a1vz8 :: [a_a1vpI]) = Break t_a1vz7 t_a1vz8
data StripPrefixSym0 (l_a2rxr :: TyFun [a_a2rlY] (TyFun [a_a2rlY] (Maybe [a_a2rlY]) -> *))
data StripPrefixSym1 (l_a2rxu :: [a_a2rlY]) (l_a2rxt :: TyFun [a_a2rlY] (Maybe [a_a2rlY]))
type StripPrefixSym2 (t_a2rxp :: [a_a2rlY]) (t_a2rxq :: [a_a2rlY]) = StripPrefix t_a2rxp t_a2rxq
data MaximumSym0 (l_a1w9U :: TyFun [a_a1vq3] a_a1vq3)
type MaximumSym1 (t_a1w9T :: [a_a1vq3]) = Maximum t_a1w9T
data MinimumSym0 (l_a1wa8 :: TyFun [a_a1vq5] a_a1vq5)
type MinimumSym1 (t_a1wa7 :: [a_a1vq5]) = Minimum t_a1wa7
data GroupSym0 (l_a1vDG :: TyFun [a_a1vq1] [[a_a1vq1]])
type GroupSym1 (t_a1vDF :: [a_a1vq1]) = Group t_a1vDF
data GroupBySym0 (l_a1vCx :: TyFun (TyFun a_a1vqb (TyFun a_a1vqb Bool -> *) -> *) (TyFun [a_a1vqb] [[a_a1vqb]] -> *))
data GroupBySym1 (l_a1vCA :: TyFun a_a1vqb (TyFun a_a1vqb Bool -> *) -> *) (l_a1vCz :: TyFun [a_a1vqb] [[a_a1vqb]])
type GroupBySym2 (t_a1vCv :: TyFun a_a1vqb (TyFun a_a1vqb Bool -> *) -> *) (t_a1vCw :: [a_a1vqb]) = GroupBy t_a1vCv t_a1vCw
data LookupSym0 (l_a1vxo :: TyFun a_a1vqh (TyFun [(a_a1vqh, b_a1vqi)] (Maybe b_a1vqi) -> *))
data LookupSym1 (l_a1vxr :: a_a1vqh) (l_a1vxq :: TyFun [(a_a1vqh, b_a1vqi)] (Maybe b_a1vqi))
type LookupSym2 (t_a1vxm :: a_a1vqh) (t_a1vxn :: [(a_a1vqh, b_a1vqi)]) = Lookup t_a1vxm t_a1vxn
data FindSym0 (l_a1vFs :: TyFun (TyFun a_a1vp1 Bool -> *) (TyFun [a_a1vp1] (Maybe a_a1vp1) -> *))
data FindSym1 (l_a1vFv :: TyFun a_a1vp1 Bool -> *) (l_a1vFu :: TyFun [a_a1vp1] (Maybe a_a1vp1))
type FindSym2 (t_a1vFq :: TyFun a_a1vp1 Bool -> *) (t_a1vFr :: [a_a1vp1]) = Find t_a1vFq t_a1vFr
data FilterSym0 (l_a1vEZ :: TyFun (TyFun a_a1voW Bool -> *) (TyFun [a_a1voW] [a_a1voW] -> *))
data FilterSym1 (l_a1vF2 :: TyFun a_a1voW Bool -> *) (l_a1vF1 :: TyFun [a_a1voW] [a_a1voW])
type FilterSym2 (t_a1vEX :: TyFun a_a1voW Bool -> *) (t_a1vEY :: [a_a1voW]) = Filter t_a1vEX t_a1vEY
data PartitionSym0 (l_a1vxd :: TyFun (TyFun a_a1vqo Bool -> *) (TyFun [a_a1vqo] ([a_a1vqo], [a_a1vqo]) -> *))
data PartitionSym1 (l_a1vxg :: TyFun a_a1vqo Bool -> *) (l_a1vxf :: TyFun [a_a1vqo] ([a_a1vqo], [a_a1vqo]))
type PartitionSym2 (t_a1vxb :: TyFun a_a1vqo Bool -> *) (t_a1vxc :: [a_a1vqo]) = Partition t_a1vxb t_a1vxc
data (:!!$) (l_a1vuN :: TyFun [a_a1vqS] (TyFun Nat a_a1vqS -> *))
data (:!!$$) (l_a1vuQ :: [a_a1vqS]) (l_a1vuP :: TyFun Nat a_a1vqS)
type (:!!$$$) (t_a1vuL :: [a_a1vqS]) (t_a1vuM :: Nat) = (:!!) t_a1vuL t_a1vuM
data ElemIndexSym0 (l_a1vUq :: TyFun a_a1vp3 (TyFun [a_a1vp3] (Maybe Nat) -> *))
data ElemIndexSym1 (l_a1vUt :: a_a1vp3) (l_a1vUs :: TyFun [a_a1vp3] (Maybe Nat))
type ElemIndexSym2 (t_a1vUo :: a_a1vp3) (t_a1vUp :: [a_a1vp3]) = ElemIndex t_a1vUo t_a1vUp
data ElemIndicesSym0 (l_a1vU0 :: TyFun a_a1vp5 (TyFun [a_a1vp5] [Nat] -> *))
data ElemIndicesSym1 (l_a1vU3 :: a_a1vp5) (l_a1vU2 :: TyFun [a_a1vp5] [Nat])
type ElemIndicesSym2 (t_a1vTY :: a_a1vp5) (t_a1vTZ :: [a_a1vp5]) = ElemIndices t_a1vTY t_a1vTZ
data FindIndexSym0 (l_a1vUd :: TyFun (TyFun a_a1vp7 Bool -> *) (TyFun [a_a1vp7] (Maybe Nat) -> *))
data FindIndexSym1 (l_a1vUg :: TyFun a_a1vp7 Bool -> *) (l_a1vUf :: TyFun [a_a1vp7] (Maybe Nat))
type FindIndexSym2 (t_a1vUb :: TyFun a_a1vp7 Bool -> *) (t_a1vUc :: [a_a1vp7]) = FindIndex t_a1vUb t_a1vUc
data FindIndicesSym0 (l_a1vSZ :: TyFun (TyFun a_a1vp9 Bool -> *) (TyFun [a_a1vp9] [Nat] -> *))
data FindIndicesSym1 (l_a1vT2 :: TyFun a_a1vp9 Bool -> *) (l_a1vT1 :: TyFun [a_a1vp9] [Nat])
type FindIndicesSym2 (t_a1vSX :: TyFun a_a1vp9 Bool -> *) (t_a1vSY :: [a_a1vp9]) = FindIndices t_a1vSX t_a1vSY
data Zip4Sym0 (l_a2rx3 :: TyFun [a_a2rm4] (TyFun [b_a2rm5] (TyFun [c_a2rm6] (TyFun [d_a2rm7] [(a_a2rm4, b_a2rm5, c_a2rm6, d_a2rm7)] -> *) -> *) -> *))
data Zip4Sym1 (l_a2rx6 :: [a_a2rm4]) (l_a2rx5 :: TyFun [b_a2rm5] (TyFun [c_a2rm6] (TyFun [d_a2rm7] [(a_a2rm4, b_a2rm5, c_a2rm6, d_a2rm7)] -> *) -> *))
data Zip4Sym2 (l_a2rx9 :: [a_a2rm4]) (l_a2rxa :: [b_a2rm5]) (l_a2rx8 :: TyFun [c_a2rm6] (TyFun [d_a2rm7] [(a_a2rm4, b_a2rm5, c_a2rm6, d_a2rm7)] -> *))
data Zip4Sym3 (l_a2rxd :: [a_a2rm4]) (l_a2rxe :: [b_a2rm5]) (l_a2rxf :: [c_a2rm6]) (l_a2rxc :: TyFun [d_a2rm7] [(a_a2rm4, b_a2rm5, c_a2rm6, d_a2rm7)])
type Zip4Sym4 (t_a2rwZ :: [a_a2rm4]) (t_a2rx0 :: [b_a2rm5]) (t_a2rx1 :: [c_a2rm6]) (t_a2rx2 :: [d_a2rm7]) = Zip4 t_a2rwZ t_a2rx0 t_a2rx1 t_a2rx2
data Zip5Sym0 (l_a2rwn :: TyFun [a_a2rm8] (TyFun [b_a2rm9] (TyFun [c_a2rma] (TyFun [d_a2rmb] (TyFun [e_a2rmc] [(a_a2rm8, b_a2rm9, c_a2rma, d_a2rmb, e_a2rmc)] -> *) -> *) -> *) -> *))
data Zip5Sym1 (l_a2rwq :: [a_a2rm8]) (l_a2rwp :: TyFun [b_a2rm9] (TyFun [c_a2rma] (TyFun [d_a2rmb] (TyFun [e_a2rmc] [(a_a2rm8, b_a2rm9, c_a2rma, d_a2rmb, e_a2rmc)] -> *) -> *) -> *))
data Zip5Sym2 (l_a2rwt :: [a_a2rm8]) (l_a2rwu :: [b_a2rm9]) (l_a2rws :: TyFun [c_a2rma] (TyFun [d_a2rmb] (TyFun [e_a2rmc] [(a_a2rm8, b_a2rm9, c_a2rma, d_a2rmb, e_a2rmc)] -> *) -> *))
data Zip5Sym3 (l_a2rwx :: [a_a2rm8]) (l_a2rwy :: [b_a2rm9]) (l_a2rwz :: [c_a2rma]) (l_a2rww :: TyFun [d_a2rmb] (TyFun [e_a2rmc] [(a_a2rm8, b_a2rm9, c_a2rma, d_a2rmb, e_a2rmc)] -> *))
data Zip5Sym4 (l_a2rwC :: [a_a2rm8]) (l_a2rwD :: [b_a2rm9]) (l_a2rwE :: [c_a2rma]) (l_a2rwF :: [d_a2rmb]) (l_a2rwB :: TyFun [e_a2rmc] [(a_a2rm8, b_a2rm9, c_a2rma, d_a2rmb, e_a2rmc)])
type Zip5Sym5 (t_a2rwi :: [a_a2rm8]) (t_a2rwj :: [b_a2rm9]) (t_a2rwk :: [c_a2rma]) (t_a2rwl :: [d_a2rmb]) (t_a2rwm :: [e_a2rmc]) = Zip5 t_a2rwi t_a2rwj t_a2rwk t_a2rwl t_a2rwm
data Zip6Sym0 (l_a2rvv :: TyFun [a_a2rmd] (TyFun [b_a2rme] (TyFun [c_a2rmf] (TyFun [d_a2rmg] (TyFun [e_a2rmh] (TyFun [f_a2rmi] [(a_a2rmd, b_a2rme, c_a2rmf, d_a2rmg, e_a2rmh, f_a2rmi)] -> *) -> *) -> *) -> *) -> *))
data Zip6Sym1 (l_a2rvy :: [a_a2rmd]) (l_a2rvx :: TyFun [b_a2rme] (TyFun [c_a2rmf] (TyFun [d_a2rmg] (TyFun [e_a2rmh] (TyFun [f_a2rmi] [(a_a2rmd, b_a2rme, c_a2rmf, d_a2rmg, e_a2rmh, f_a2rmi)] -> *) -> *) -> *) -> *))
data Zip6Sym2 (l_a2rvB :: [a_a2rmd]) (l_a2rvC :: [b_a2rme]) (l_a2rvA :: TyFun [c_a2rmf] (TyFun [d_a2rmg] (TyFun [e_a2rmh] (TyFun [f_a2rmi] [(a_a2rmd, b_a2rme, c_a2rmf, d_a2rmg, e_a2rmh, f_a2rmi)] -> *) -> *) -> *))
data Zip6Sym3 (l_a2rvF :: [a_a2rmd]) (l_a2rvG :: [b_a2rme]) (l_a2rvH :: [c_a2rmf]) (l_a2rvE :: TyFun [d_a2rmg] (TyFun [e_a2rmh] (TyFun [f_a2rmi] [(a_a2rmd, b_a2rme, c_a2rmf, d_a2rmg, e_a2rmh, f_a2rmi)] -> *) -> *))
data Zip6Sym4 (l_a2rvK :: [a_a2rmd]) (l_a2rvL :: [b_a2rme]) (l_a2rvM :: [c_a2rmf]) (l_a2rvN :: [d_a2rmg]) (l_a2rvJ :: TyFun [e_a2rmh] (TyFun [f_a2rmi] [(a_a2rmd, b_a2rme, c_a2rmf, d_a2rmg, e_a2rmh, f_a2rmi)] -> *))
data Zip6Sym5 (l_a2rvQ :: [a_a2rmd]) (l_a2rvR :: [b_a2rme]) (l_a2rvS :: [c_a2rmf]) (l_a2rvT :: [d_a2rmg]) (l_a2rvU :: [e_a2rmh]) (l_a2rvP :: TyFun [f_a2rmi] [(a_a2rmd, b_a2rme, c_a2rmf, d_a2rmg, e_a2rmh, f_a2rmi)])
type Zip6Sym6 (t_a2rvp :: [a_a2rmd]) (t_a2rvq :: [b_a2rme]) (t_a2rvr :: [c_a2rmf]) (t_a2rvs :: [d_a2rmg]) (t_a2rvt :: [e_a2rmh]) (t_a2rvu :: [f_a2rmi]) = Zip6 t_a2rvp t_a2rvq t_a2rvr t_a2rvs t_a2rvt t_a2rvu
data Zip7Sym0 (l_a2ruq :: TyFun [a_a2rmj] (TyFun [b_a2rmk] (TyFun [c_a2rml] (TyFun [d_a2rmm] (TyFun [e_a2rmn] (TyFun [f_a2rmo] (TyFun [g_a2rmp] [(a_a2rmj, b_a2rmk, c_a2rml, d_a2rmm, e_a2rmn, f_a2rmo, g_a2rmp)] -> *) -> *) -> *) -> *) -> *) -> *))
data Zip7Sym1 (l_a2rut :: [a_a2rmj]) (l_a2rus :: TyFun [b_a2rmk] (TyFun [c_a2rml] (TyFun [d_a2rmm] (TyFun [e_a2rmn] (TyFun [f_a2rmo] (TyFun [g_a2rmp] [(a_a2rmj, b_a2rmk, c_a2rml, d_a2rmm, e_a2rmn, f_a2rmo, g_a2rmp)] -> *) -> *) -> *) -> *) -> *))
data Zip7Sym2 (l_a2ruw :: [a_a2rmj]) (l_a2rux :: [b_a2rmk]) (l_a2ruv :: TyFun [c_a2rml] (TyFun [d_a2rmm] (TyFun [e_a2rmn] (TyFun [f_a2rmo] (TyFun [g_a2rmp] [(a_a2rmj, b_a2rmk, c_a2rml, d_a2rmm, e_a2rmn, f_a2rmo, g_a2rmp)] -> *) -> *) -> *) -> *))
data Zip7Sym3 (l_a2ruA :: [a_a2rmj]) (l_a2ruB :: [b_a2rmk]) (l_a2ruC :: [c_a2rml]) (l_a2ruz :: TyFun [d_a2rmm] (TyFun [e_a2rmn] (TyFun [f_a2rmo] (TyFun [g_a2rmp] [(a_a2rmj, b_a2rmk, c_a2rml, d_a2rmm, e_a2rmn, f_a2rmo, g_a2rmp)] -> *) -> *) -> *))
data Zip7Sym4 (l_a2ruF :: [a_a2rmj]) (l_a2ruG :: [b_a2rmk]) (l_a2ruH :: [c_a2rml]) (l_a2ruI :: [d_a2rmm]) (l_a2ruE :: TyFun [e_a2rmn] (TyFun [f_a2rmo] (TyFun [g_a2rmp] [(a_a2rmj, b_a2rmk, c_a2rml, d_a2rmm, e_a2rmn, f_a2rmo, g_a2rmp)] -> *) -> *))
data Zip7Sym5 (l_a2ruL :: [a_a2rmj]) (l_a2ruM :: [b_a2rmk]) (l_a2ruN :: [c_a2rml]) (l_a2ruO :: [d_a2rmm]) (l_a2ruP :: [e_a2rmn]) (l_a2ruK :: TyFun [f_a2rmo] (TyFun [g_a2rmp] [(a_a2rmj, b_a2rmk, c_a2rml, d_a2rmm, e_a2rmn, f_a2rmo, g_a2rmp)] -> *))
data Zip7Sym6 (l_a2ruS :: [a_a2rmj]) (l_a2ruT :: [b_a2rmk]) (l_a2ruU :: [c_a2rml]) (l_a2ruV :: [d_a2rmm]) (l_a2ruW :: [e_a2rmn]) (l_a2ruX :: [f_a2rmo]) (l_a2ruR :: TyFun [g_a2rmp] [(a_a2rmj, b_a2rmk, c_a2rml, d_a2rmm, e_a2rmn, f_a2rmo, g_a2rmp)])
type Zip7Sym7 (t_a2ruj :: [a_a2rmj]) (t_a2ruk :: [b_a2rmk]) (t_a2rul :: [c_a2rml]) (t_a2rum :: [d_a2rmm]) (t_a2run :: [e_a2rmn]) (t_a2ruo :: [f_a2rmo]) (t_a2rup :: [g_a2rmp]) = Zip7 t_a2ruj t_a2ruk t_a2rul t_a2rum t_a2run t_a2ruo t_a2rup
data ZipWith4Sym0 (l_a2rti :: TyFun (TyFun a_a2rmq (TyFun b_a2rmr (TyFun c_a2rms (TyFun d_a2rmt e_a2rmu -> *) -> *) -> *) -> *) (TyFun [a_a2rmq] (TyFun [b_a2rmr] (TyFun [c_a2rms] (TyFun [d_a2rmt] [e_a2rmu] -> *) -> *) -> *) -> *))
data ZipWith4Sym1 (l_a2rtl :: TyFun a_a2rmq (TyFun b_a2rmr (TyFun c_a2rms (TyFun d_a2rmt e_a2rmu -> *) -> *) -> *) -> *) (l_a2rtk :: TyFun [a_a2rmq] (TyFun [b_a2rmr] (TyFun [c_a2rms] (TyFun [d_a2rmt] [e_a2rmu] -> *) -> *) -> *))
data ZipWith4Sym2 (l_a2rto :: TyFun a_a2rmq (TyFun b_a2rmr (TyFun c_a2rms (TyFun d_a2rmt e_a2rmu -> *) -> *) -> *) -> *) (l_a2rtp :: [a_a2rmq]) (l_a2rtn :: TyFun [b_a2rmr] (TyFun [c_a2rms] (TyFun [d_a2rmt] [e_a2rmu] -> *) -> *))
data ZipWith4Sym3 (l_a2rts :: TyFun a_a2rmq (TyFun b_a2rmr (TyFun c_a2rms (TyFun d_a2rmt e_a2rmu -> *) -> *) -> *) -> *) (l_a2rtt :: [a_a2rmq]) (l_a2rtu :: [b_a2rmr]) (l_a2rtr :: TyFun [c_a2rms] (TyFun [d_a2rmt] [e_a2rmu] -> *))
data ZipWith4Sym4 (l_a2rtx :: TyFun a_a2rmq (TyFun b_a2rmr (TyFun c_a2rms (TyFun d_a2rmt e_a2rmu -> *) -> *) -> *) -> *) (l_a2rty :: [a_a2rmq]) (l_a2rtz :: [b_a2rmr]) (l_a2rtA :: [c_a2rms]) (l_a2rtw :: TyFun [d_a2rmt] [e_a2rmu])
type ZipWith4Sym5 (t_a2rtd :: TyFun a_a2rmq (TyFun b_a2rmr (TyFun c_a2rms (TyFun d_a2rmt e_a2rmu -> *) -> *) -> *) -> *) (t_a2rte :: [a_a2rmq]) (t_a2rtf :: [b_a2rmr]) (t_a2rtg :: [c_a2rms]) (t_a2rth :: [d_a2rmt]) = ZipWith4 t_a2rtd t_a2rte t_a2rtf t_a2rtg t_a2rth
data ZipWith5Sym0 (l_a2rsd :: TyFun (TyFun a_a2rmE (TyFun b_a2rmF (TyFun c_a2rmG (TyFun d_a2rmH (TyFun e_a2rmI f_a2rmJ -> *) -> *) -> *) -> *) -> *) (TyFun [a_a2rmE] (TyFun [b_a2rmF] (TyFun [c_a2rmG] (TyFun [d_a2rmH] (TyFun [e_a2rmI] [f_a2rmJ] -> *) -> *) -> *) -> *) -> *))
data ZipWith5Sym1 (l_a2rsg :: TyFun a_a2rmE (TyFun b_a2rmF (TyFun c_a2rmG (TyFun d_a2rmH (TyFun e_a2rmI f_a2rmJ -> *) -> *) -> *) -> *) -> *) (l_a2rsf :: TyFun [a_a2rmE] (TyFun [b_a2rmF] (TyFun [c_a2rmG] (TyFun [d_a2rmH] (TyFun [e_a2rmI] [f_a2rmJ] -> *) -> *) -> *) -> *))
data ZipWith5Sym2 (l_a2rsj :: TyFun a_a2rmE (TyFun b_a2rmF (TyFun c_a2rmG (TyFun d_a2rmH (TyFun e_a2rmI f_a2rmJ -> *) -> *) -> *) -> *) -> *) (l_a2rsk :: [a_a2rmE]) (l_a2rsi :: TyFun [b_a2rmF] (TyFun [c_a2rmG] (TyFun [d_a2rmH] (TyFun [e_a2rmI] [f_a2rmJ] -> *) -> *) -> *))
data ZipWith5Sym3 (l_a2rsn :: TyFun a_a2rmE (TyFun b_a2rmF (TyFun c_a2rmG (TyFun d_a2rmH (TyFun e_a2rmI f_a2rmJ -> *) -> *) -> *) -> *) -> *) (l_a2rso :: [a_a2rmE]) (l_a2rsp :: [b_a2rmF]) (l_a2rsm :: TyFun [c_a2rmG] (TyFun [d_a2rmH] (TyFun [e_a2rmI] [f_a2rmJ] -> *) -> *))
data ZipWith5Sym4 (l_a2rss :: TyFun a_a2rmE (TyFun b_a2rmF (TyFun c_a2rmG (TyFun d_a2rmH (TyFun e_a2rmI f_a2rmJ -> *) -> *) -> *) -> *) -> *) (l_a2rst :: [a_a2rmE]) (l_a2rsu :: [b_a2rmF]) (l_a2rsv :: [c_a2rmG]) (l_a2rsr :: TyFun [d_a2rmH] (TyFun [e_a2rmI] [f_a2rmJ] -> *))
data ZipWith5Sym5 (l_a2rsy :: TyFun a_a2rmE (TyFun b_a2rmF (TyFun c_a2rmG (TyFun d_a2rmH (TyFun e_a2rmI f_a2rmJ -> *) -> *) -> *) -> *) -> *) (l_a2rsz :: [a_a2rmE]) (l_a2rsA :: [b_a2rmF]) (l_a2rsB :: [c_a2rmG]) (l_a2rsC :: [d_a2rmH]) (l_a2rsx :: TyFun [e_a2rmI] [f_a2rmJ])
type ZipWith5Sym6 (t_a2rs7 :: TyFun a_a2rmE (TyFun b_a2rmF (TyFun c_a2rmG (TyFun d_a2rmH (TyFun e_a2rmI f_a2rmJ -> *) -> *) -> *) -> *) -> *) (t_a2rs8 :: [a_a2rmE]) (t_a2rs9 :: [b_a2rmF]) (t_a2rsa :: [c_a2rmG]) (t_a2rsb :: [d_a2rmH]) (t_a2rsc :: [e_a2rmI]) = ZipWith5 t_a2rs7 t_a2rs8 t_a2rs9 t_a2rsa t_a2rsb t_a2rsc
data ZipWith6Sym0 (l_a2rqT :: TyFun (TyFun a_a2rmV (TyFun b_a2rmW (TyFun c_a2rmX (TyFun d_a2rmY (TyFun e_a2rmZ (TyFun f_a2rn0 g_a2rn1 -> *) -> *) -> *) -> *) -> *) -> *) (TyFun [a_a2rmV] (TyFun [b_a2rmW] (TyFun [c_a2rmX] (TyFun [d_a2rmY] (TyFun [e_a2rmZ] (TyFun [f_a2rn0] [g_a2rn1] -> *) -> *) -> *) -> *) -> *) -> *))
data ZipWith6Sym1 (l_a2rqW :: TyFun a_a2rmV (TyFun b_a2rmW (TyFun c_a2rmX (TyFun d_a2rmY (TyFun e_a2rmZ (TyFun f_a2rn0 g_a2rn1 -> *) -> *) -> *) -> *) -> *) -> *) (l_a2rqV :: TyFun [a_a2rmV] (TyFun [b_a2rmW] (TyFun [c_a2rmX] (TyFun [d_a2rmY] (TyFun [e_a2rmZ] (TyFun [f_a2rn0] [g_a2rn1] -> *) -> *) -> *) -> *) -> *))
data ZipWith6Sym2 (l_a2rqZ :: TyFun a_a2rmV (TyFun b_a2rmW (TyFun c_a2rmX (TyFun d_a2rmY (TyFun e_a2rmZ (TyFun f_a2rn0 g_a2rn1 -> *) -> *) -> *) -> *) -> *) -> *) (l_a2rr0 :: [a_a2rmV]) (l_a2rqY :: TyFun [b_a2rmW] (TyFun [c_a2rmX] (TyFun [d_a2rmY] (TyFun [e_a2rmZ] (TyFun [f_a2rn0] [g_a2rn1] -> *) -> *) -> *) -> *))
data ZipWith6Sym3 (l_a2rr3 :: TyFun a_a2rmV (TyFun b_a2rmW (TyFun c_a2rmX (TyFun d_a2rmY (TyFun e_a2rmZ (TyFun f_a2rn0 g_a2rn1 -> *) -> *) -> *) -> *) -> *) -> *) (l_a2rr4 :: [a_a2rmV]) (l_a2rr5 :: [b_a2rmW]) (l_a2rr2 :: TyFun [c_a2rmX] (TyFun [d_a2rmY] (TyFun [e_a2rmZ] (TyFun [f_a2rn0] [g_a2rn1] -> *) -> *) -> *))
data ZipWith6Sym4 (l_a2rr8 :: TyFun a_a2rmV (TyFun b_a2rmW (TyFun c_a2rmX (TyFun d_a2rmY (TyFun e_a2rmZ (TyFun f_a2rn0 g_a2rn1 -> *) -> *) -> *) -> *) -> *) -> *) (l_a2rr9 :: [a_a2rmV]) (l_a2rra :: [b_a2rmW]) (l_a2rrb :: [c_a2rmX]) (l_a2rr7 :: TyFun [d_a2rmY] (TyFun [e_a2rmZ] (TyFun [f_a2rn0] [g_a2rn1] -> *) -> *))
data ZipWith6Sym5 (l_a2rre :: TyFun a_a2rmV (TyFun b_a2rmW (TyFun c_a2rmX (TyFun d_a2rmY (TyFun e_a2rmZ (TyFun f_a2rn0 g_a2rn1 -> *) -> *) -> *) -> *) -> *) -> *) (l_a2rrf :: [a_a2rmV]) (l_a2rrg :: [b_a2rmW]) (l_a2rrh :: [c_a2rmX]) (l_a2rri :: [d_a2rmY]) (l_a2rrd :: TyFun [e_a2rmZ] (TyFun [f_a2rn0] [g_a2rn1] -> *))
data ZipWith6Sym6 (l_a2rrl :: TyFun a_a2rmV (TyFun b_a2rmW (TyFun c_a2rmX (TyFun d_a2rmY (TyFun e_a2rmZ (TyFun f_a2rn0 g_a2rn1 -> *) -> *) -> *) -> *) -> *) -> *) (l_a2rrm :: [a_a2rmV]) (l_a2rrn :: [b_a2rmW]) (l_a2rro :: [c_a2rmX]) (l_a2rrp :: [d_a2rmY]) (l_a2rrq :: [e_a2rmZ]) (l_a2rrk :: TyFun [f_a2rn0] [g_a2rn1])
type ZipWith6Sym7 (t_a2rqM :: TyFun a_a2rmV (TyFun b_a2rmW (TyFun c_a2rmX (TyFun d_a2rmY (TyFun e_a2rmZ (TyFun f_a2rn0 g_a2rn1 -> *) -> *) -> *) -> *) -> *) -> *) (t_a2rqN :: [a_a2rmV]) (t_a2rqO :: [b_a2rmW]) (t_a2rqP :: [c_a2rmX]) (t_a2rqQ :: [d_a2rmY]) (t_a2rqR :: [e_a2rmZ]) (t_a2rqS :: [f_a2rn0]) = ZipWith6 t_a2rqM t_a2rqN t_a2rqO t_a2rqP t_a2rqQ t_a2rqR t_a2rqS
data ZipWith7Sym0 (l_a2rpj :: TyFun (TyFun a_a2rnf (TyFun b_a2rng (TyFun c_a2rnh (TyFun d_a2rni (TyFun e_a2rnj (TyFun f_a2rnk (TyFun g_a2rnl h_a2rnm -> *) -> *) -> *) -> *) -> *) -> *) -> *) (TyFun [a_a2rnf] (TyFun [b_a2rng] (TyFun [c_a2rnh] (TyFun [d_a2rni] (TyFun [e_a2rnj] (TyFun [f_a2rnk] (TyFun [g_a2rnl] [h_a2rnm] -> *) -> *) -> *) -> *) -> *) -> *) -> *))
data ZipWith7Sym1 (l_a2rpm :: TyFun a_a2rnf (TyFun b_a2rng (TyFun c_a2rnh (TyFun d_a2rni (TyFun e_a2rnj (TyFun f_a2rnk (TyFun g_a2rnl h_a2rnm -> *) -> *) -> *) -> *) -> *) -> *) -> *) (l_a2rpl :: TyFun [a_a2rnf] (TyFun [b_a2rng] (TyFun [c_a2rnh] (TyFun [d_a2rni] (TyFun [e_a2rnj] (TyFun [f_a2rnk] (TyFun [g_a2rnl] [h_a2rnm] -> *) -> *) -> *) -> *) -> *) -> *))
data ZipWith7Sym2 (l_a2rpp :: TyFun a_a2rnf (TyFun b_a2rng (TyFun c_a2rnh (TyFun d_a2rni (TyFun e_a2rnj (TyFun f_a2rnk (TyFun g_a2rnl h_a2rnm -> *) -> *) -> *) -> *) -> *) -> *) -> *) (l_a2rpq :: [a_a2rnf]) (l_a2rpo :: TyFun [b_a2rng] (TyFun [c_a2rnh] (TyFun [d_a2rni] (TyFun [e_a2rnj] (TyFun [f_a2rnk] (TyFun [g_a2rnl] [h_a2rnm] -> *) -> *) -> *) -> *) -> *))
data ZipWith7Sym3 (l_a2rpt :: TyFun a_a2rnf (TyFun b_a2rng (TyFun c_a2rnh (TyFun d_a2rni (TyFun e_a2rnj (TyFun f_a2rnk (TyFun g_a2rnl h_a2rnm -> *) -> *) -> *) -> *) -> *) -> *) -> *) (l_a2rpu :: [a_a2rnf]) (l_a2rpv :: [b_a2rng]) (l_a2rps :: TyFun [c_a2rnh] (TyFun [d_a2rni] (TyFun [e_a2rnj] (TyFun [f_a2rnk] (TyFun [g_a2rnl] [h_a2rnm] -> *) -> *) -> *) -> *))
data ZipWith7Sym4 (l_a2rpy :: TyFun a_a2rnf (TyFun b_a2rng (TyFun c_a2rnh (TyFun d_a2rni (TyFun e_a2rnj (TyFun f_a2rnk (TyFun g_a2rnl h_a2rnm -> *) -> *) -> *) -> *) -> *) -> *) -> *) (l_a2rpz :: [a_a2rnf]) (l_a2rpA :: [b_a2rng]) (l_a2rpB :: [c_a2rnh]) (l_a2rpx :: TyFun [d_a2rni] (TyFun [e_a2rnj] (TyFun [f_a2rnk] (TyFun [g_a2rnl] [h_a2rnm] -> *) -> *) -> *))
data ZipWith7Sym5 (l_a2rpE :: TyFun a_a2rnf (TyFun b_a2rng (TyFun c_a2rnh (TyFun d_a2rni (TyFun e_a2rnj (TyFun f_a2rnk (TyFun g_a2rnl h_a2rnm -> *) -> *) -> *) -> *) -> *) -> *) -> *) (l_a2rpF :: [a_a2rnf]) (l_a2rpG :: [b_a2rng]) (l_a2rpH :: [c_a2rnh]) (l_a2rpI :: [d_a2rni]) (l_a2rpD :: TyFun [e_a2rnj] (TyFun [f_a2rnk] (TyFun [g_a2rnl] [h_a2rnm] -> *) -> *))
data ZipWith7Sym6 (l_a2rpL :: TyFun a_a2rnf (TyFun b_a2rng (TyFun c_a2rnh (TyFun d_a2rni (TyFun e_a2rnj (TyFun f_a2rnk (TyFun g_a2rnl h_a2rnm -> *) -> *) -> *) -> *) -> *) -> *) -> *) (l_a2rpM :: [a_a2rnf]) (l_a2rpN :: [b_a2rng]) (l_a2rpO :: [c_a2rnh]) (l_a2rpP :: [d_a2rni]) (l_a2rpQ :: [e_a2rnj]) (l_a2rpK :: TyFun [f_a2rnk] (TyFun [g_a2rnl] [h_a2rnm] -> *))
data ZipWith7Sym7 (l_a2rpT :: TyFun a_a2rnf (TyFun b_a2rng (TyFun c_a2rnh (TyFun d_a2rni (TyFun e_a2rnj (TyFun f_a2rnk (TyFun g_a2rnl h_a2rnm -> *) -> *) -> *) -> *) -> *) -> *) -> *) (l_a2rpU :: [a_a2rnf]) (l_a2rpV :: [b_a2rng]) (l_a2rpW :: [c_a2rnh]) (l_a2rpX :: [d_a2rni]) (l_a2rpY :: [e_a2rnj]) (l_a2rpZ :: [f_a2rnk]) (l_a2rpS :: TyFun [g_a2rnl] [h_a2rnm])
type ZipWith7Sym8 (t_a2rpb :: TyFun a_a2rnf (TyFun b_a2rng (TyFun c_a2rnh (TyFun d_a2rni (TyFun e_a2rnj (TyFun f_a2rnk (TyFun g_a2rnl h_a2rnm -> *) -> *) -> *) -> *) -> *) -> *) -> *) (t_a2rpc :: [a_a2rnf]) (t_a2rpd :: [b_a2rng]) (t_a2rpe :: [c_a2rnh]) (t_a2rpf :: [d_a2rni]) (t_a2rpg :: [e_a2rnj]) (t_a2rph :: [f_a2rnk]) (t_a2rpi :: [g_a2rnl]) = ZipWith7 t_a2rpb t_a2rpc t_a2rpd t_a2rpe t_a2rpf t_a2rpg t_a2rph t_a2rpi
data NubSym0 (l_a1vV6 :: TyFun [a_a1vi5] [a_a1vi5])
type NubSym1 (t_a1vV5 :: [a_a1vi5]) = Nub t_a1vV5
data NubBySym0 (l_a1vtI :: TyFun (TyFun a_a1vr1 (TyFun a_a1vr1 Bool -> *) -> *) (TyFun [a_a1vr1] [a_a1vr1] -> *))
data NubBySym1 (l_a1vtL :: TyFun a_a1vr1 (TyFun a_a1vr1 Bool -> *) -> *) (l_a1vtK :: TyFun [a_a1vr1] [a_a1vr1])
type NubBySym2 (t_a1vtG :: TyFun a_a1vr1 (TyFun a_a1vr1 Bool -> *) -> *) (t_a1vtH :: [a_a1vr1]) = NubBy t_a1vtG t_a1vtH
data UnionSym0 (l_a1vKZ :: TyFun [a_a1vrh] (TyFun [a_a1vrh] [a_a1vrh] -> *))
data UnionSym1 (l_a1vL2 :: [a_a1vrh]) (l_a1vL1 :: TyFun [a_a1vrh] [a_a1vrh])
type UnionSym2 (t_a1vKX :: [a_a1vrh]) (t_a1vKY :: [a_a1vrh]) = Union t_a1vKX t_a1vKY
data UnionBySym0 (l_a1vKE :: TyFun (TyFun a_a1vrd (TyFun a_a1vrd Bool -> *) -> *) (TyFun [a_a1vrd] (TyFun [a_a1vrd] [a_a1vrd] -> *) -> *))
data UnionBySym1 (l_a1vKH :: TyFun a_a1vrd (TyFun a_a1vrd Bool -> *) -> *) (l_a1vKG :: TyFun [a_a1vrd] (TyFun [a_a1vrd] [a_a1vrd] -> *))
data UnionBySym2 (l_a1vKK :: TyFun a_a1vrd (TyFun a_a1vrd Bool -> *) -> *) (l_a1vKL :: [a_a1vrd]) (l_a1vKJ :: TyFun [a_a1vrd] [a_a1vrd])
type UnionBySym3 (t_a1vKB :: TyFun a_a1vrd (TyFun a_a1vrd Bool -> *) -> *) (t_a1vKC :: [a_a1vrd]) (t_a1vKD :: [a_a1vrd]) = UnionBy t_a1vKB t_a1vKC t_a1vKD
data GenericLengthSym0 (l_a1vta :: TyFun [a_a1vri] i_a1vrj)
type GenericLengthSym1 (t_a1vt9 :: [a_a1vri]) = GenericLength t_a1vt9
data GenericTakeSym0 (l_a2rp2 :: TyFun i_a2rnC (TyFun [a_a2rnD] [a_a2rnD] -> *))
data GenericTakeSym1 (l_a2rp5 :: i_a2rnC) (l_a2rp4 :: TyFun [a_a2rnD] [a_a2rnD])
type GenericTakeSym2 (t_a2rp0 :: i_a2rnC) (t_a2rp1 :: [a_a2rnD]) = GenericTake t_a2rp0 t_a2rp1
data GenericDropSym0 (l_a2roN :: TyFun i_a2rnE (TyFun [a_a2rnF] [a_a2rnF] -> *))
data GenericDropSym1 (l_a2roQ :: i_a2rnE) (l_a2roP :: TyFun [a_a2rnF] [a_a2rnF])
type GenericDropSym2 (t_a2roL :: i_a2rnE) (t_a2roM :: [a_a2rnF]) = GenericDrop t_a2roL t_a2roM
data GenericSplitAtSym0 (l_a2roy :: TyFun i_a2rnG (TyFun [a_a2rnH] ([a_a2rnH], [a_a2rnH]) -> *))
data GenericSplitAtSym1 (l_a2roB :: i_a2rnG) (l_a2roA :: TyFun [a_a2rnH] ([a_a2rnH], [a_a2rnH]))
type GenericSplitAtSym2 (t_a2row :: i_a2rnG) (t_a2rox :: [a_a2rnH]) = GenericSplitAt t_a2row t_a2rox
data GenericIndexSym0 (l_a2roj :: TyFun [a_a2rnI] (TyFun i_a2rnJ a_a2rnI -> *))
data GenericIndexSym1 (l_a2rom :: [a_a2rnI]) (l_a2rol :: TyFun i_a2rnJ a_a2rnI)
type GenericIndexSym2 (t_a2roh :: [a_a2rnI]) (t_a2roi :: i_a2rnJ) = GenericIndex t_a2roh t_a2roi
data GenericReplicateSym0 (l_a2ro4 :: TyFun i_a2rnK (TyFun a_a2rnL [a_a2rnL] -> *))
data GenericReplicateSym1 (l_a2ro7 :: i_a2rnK) (l_a2ro6 :: TyFun a_a2rnL [a_a2rnL])
type GenericReplicateSym2 (t_a2ro2 :: i_a2rnK) (t_a2ro3 :: a_a2rnL) = GenericReplicate t_a2ro2 t_a2ro3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.GenericReplicateSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.GenericReplicateSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.GenericIndexSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.GenericIndexSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.GenericSplitAtSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.GenericSplitAtSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.GenericDropSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.GenericDropSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.GenericTakeSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.GenericTakeSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith7Sym7
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith7Sym6
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith7Sym5
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith7Sym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith7Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith7Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith7Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith7Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith6Sym6
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith6Sym5
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith6Sym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith6Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith6Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith6Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith6Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith5Sym5
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith5Sym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith5Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith5Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith5Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith5Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith4Sym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith4Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith4Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith4Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith4Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Zip7Sym6
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Zip7Sym5
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Zip7Sym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Zip7Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Zip7Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Zip7Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Zip7Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Zip6Sym5
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Zip6Sym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Zip6Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Zip6Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Zip6Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Zip6Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Zip5Sym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Zip5Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Zip5Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Zip5Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Zip5Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Zip4Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Zip4Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Zip4Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Zip4Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.StripPrefixSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.StripPrefixSym0
-- | Defines and exports promoted and singleton versions of definitions
-- from GHC.Num.
module Data.Promotion.Prelude.Num
class kproxy_a14wf ~ KProxy => PNum (kproxy_a14wf :: KProxy a_a14wb) where type family (:+) (arg_a14wg :: a_a14wb) (arg_a14wh :: a_a14wb) :: a_a14wb type family (:-) (arg_a14wp :: a_a14wb) (arg_a14wq :: a_a14wb) :: a_a14wb type family (:*) (arg_a14wy :: a_a14wb) (arg_a14wz :: a_a14wb) :: a_a14wb type family Negate (arg_a14wH :: a_a14wb) :: a_a14wb type family Abs (arg_a14wL :: a_a14wb) :: a_a14wb type family Signum (arg_a14wP :: a_a14wb) :: a_a14wb type family FromInteger (arg_a14wT :: Nat) :: a_a14wb (:-) (a_a14x8 :: a_a14wb) (a_a14x9 :: a_a14wb) = Apply (Apply TFHelper_1627645712Sym0 a_a14x8) a_a14x9 Negate (a_a14xo :: a_a14wb) = Apply Negate_1627645727Sym0 a_a14xo
data (:+$) (l_a14wk :: TyFun a_a14wb (TyFun a_a14wb a_a14wb -> *))
data (:+$$) (l_a14wn :: a_a14wb) (l_a14wm :: TyFun a_a14wb a_a14wb)
type (:+$$$) (t_a14wi :: a_a14wb) (t_a14wj :: a_a14wb) = (:+) t_a14wi t_a14wj
data (:-$) (l_a14wt :: TyFun a_a14wb (TyFun a_a14wb a_a14wb -> *))
data (:-$$) (l_a14ww :: a_a14wb) (l_a14wv :: TyFun a_a14wb a_a14wb)
type (:-$$$) (t_a14wr :: a_a14wb) (t_a14ws :: a_a14wb) = (:-) t_a14wr t_a14ws
data (:*$) (l_a14wC :: TyFun a_a14wb (TyFun a_a14wb a_a14wb -> *))
data (:*$$) (l_a14wF :: a_a14wb) (l_a14wE :: TyFun a_a14wb a_a14wb)
type (:*$$$) (t_a14wA :: a_a14wb) (t_a14wB :: a_a14wb) = (:*) t_a14wA t_a14wB
data NegateSym0 (l_a14wJ :: TyFun a_a14wb a_a14wb)
type NegateSym1 (t_a14wI :: a_a14wb) = Negate t_a14wI
data AbsSym0 (l_a14wN :: TyFun a_a14wb a_a14wb)
type AbsSym1 (t_a14wM :: a_a14wb) = Abs t_a14wM
data SignumSym0 (l_a14wR :: TyFun a_a14wb a_a14wb)
type SignumSym1 (t_a14wQ :: a_a14wb) = Signum t_a14wQ
data FromIntegerSym0 (l_a14wV :: TyFun Nat a_a14wb)
type FromIntegerSym1 (t_a14wU :: Nat) = FromInteger t_a14wU
data SubtractSym0 (l_a15cz :: TyFun a_a15ch (TyFun a_a15ch a_a15ch -> *))
data SubtractSym1 (l_a15cC :: a_a15ch) (l_a15cB :: TyFun a_a15ch a_a15ch)
type SubtractSym2 (t_a15cx :: a_a15ch) (t_a15cy :: a_a15ch) = Subtract t_a15cx t_a15cy
-- | Mimics the Haskell Prelude, but with promoted types.
module Data.Promotion.Prelude
-- | Type-level If. If True a b ==> a; If
-- False a b ==> b
maybe_ :: b_a1acO -> (a_a1acP -> b_a1acO) -> Maybe a_a1acP -> b_a1acO
either_ :: (a_a16pC -> c_a16pD) -> (b_a16pE -> c_a16pD) -> Either a_a16pC b_a16pE -> c_a16pD
-- | (Kind) This is the kind of type-level symbols.
data Symbol :: *
-- | The promotion of error. This version is more poly-kinded for
-- easier use.
data ErrorSym0 (l_a13LW :: TyFun k0_a13wC k_a13wB)
any_ :: (a_a1swk -> Bool) -> [a_a1swk] -> Bool
-- | A concrete, poly-kinded proxy type
data Proxy (t :: k) :: k -> *
Proxy :: Proxy
-- | A concrete, promotable proxy type, for use at the kind level There are
-- no instances for this because it is intended at the kind level only
data KProxy t :: * -> *
KProxy :: KProxy t
type FalseSym0 = False
type TrueSym0 = True
data NotSym0 (l_aFWK :: TyFun Bool Bool)
type NotSym1 (t_aFWJ :: Bool) = Not t_aFWJ
data (:&&$) (l_aFX2 :: TyFun Bool (TyFun Bool Bool -> *))
data (:&&$$) (l_aFX5 :: Bool) (l_aFX4 :: TyFun Bool Bool)
type (:&&$$$) (t_aFX0 :: Bool) (t_aFX1 :: Bool) = (:&&) t_aFX0 t_aFX1
data (:||$) (l_aFWP :: TyFun Bool (TyFun Bool Bool -> *))
data (:||$$) (l_aFWS :: Bool) (l_aFWR :: TyFun Bool Bool)
type (:||$$$) (t_aFWN :: Bool) (t_aFWO :: Bool) = (:||) t_aFWN t_aFWO
type OtherwiseSym0 = Otherwise
type NothingSym0 = Nothing
data JustSym0 (l_axRq :: TyFun a_a6j7 (Maybe a_a6j7))
type JustSym1 (t_axRp :: a_a6j7) = Just t_axRp
data Maybe_Sym0 (l_a1acX :: TyFun b_a1acO (TyFun (TyFun a_a1acP b_a1acO -> *) (TyFun (Maybe a_a1acP) b_a1acO -> *) -> *))
data Maybe_Sym1 (l_a1ad0 :: b_a1acO) (l_a1acZ :: TyFun (TyFun a_a1acP b_a1acO -> *) (TyFun (Maybe a_a1acP) b_a1acO -> *))
data Maybe_Sym2 (l_a1ad3 :: b_a1acO) (l_a1ad4 :: TyFun a_a1acP b_a1acO -> *) (l_a1ad2 :: TyFun (Maybe a_a1acP) b_a1acO)
type Maybe_Sym3 (t_a1acU :: b_a1acO) (t_a1acV :: TyFun a_a1acP b_a1acO -> *) (t_a1acW :: Maybe a_a1acP) = Maybe_ t_a1acU t_a1acV t_a1acW
data LeftSym0 (l_axRR :: TyFun a_a7DQ (Either a_a7DQ b_a7DR))
type LeftSym1 (t_axRQ :: a_a7DQ) = Left t_axRQ
data RightSym0 (l_axRU :: TyFun b_a7DR (Either a_a7DQ b_a7DR))
type RightSym1 (t_axRT :: b_a7DR) = Right t_axRT
data Either_Sym0 (l_a16pM :: TyFun (TyFun a_a16pC c_a16pD -> *) (TyFun (TyFun b_a16pE c_a16pD -> *) (TyFun (Either a_a16pC b_a16pE) c_a16pD -> *) -> *))
data Either_Sym1 (l_a16pP :: TyFun a_a16pC c_a16pD -> *) (l_a16pO :: TyFun (TyFun b_a16pE c_a16pD -> *) (TyFun (Either a_a16pC b_a16pE) c_a16pD -> *))
data Either_Sym2 (l_a16pS :: TyFun a_a16pC c_a16pD -> *) (l_a16pT :: TyFun b_a16pE c_a16pD -> *) (l_a16pR :: TyFun (Either a_a16pC b_a16pE) c_a16pD)
type Either_Sym3 (t_a16pJ :: TyFun a_a16pC c_a16pD -> *) (t_a16pK :: TyFun b_a16pE c_a16pD -> *) (t_a16pL :: Either a_a16pC b_a16pE) = Either_ t_a16pJ t_a16pK t_a16pL
type Tuple0Sym0 = '()
data Tuple2Sym0 (l_axS9 :: TyFun a_12 (TyFun b_13 (a_12, b_13) -> *))
data Tuple2Sym1 (l_axSc :: a_12) (l_axSb :: TyFun b_13 (a_12, b_13))
type Tuple2Sym2 (t_axS7 :: a_12) (t_axS8 :: b_13) = '(t_axS7, t_axS8)
data Tuple3Sym0 (l_axSt :: TyFun a_12 (TyFun b_13 (TyFun c_14 (a_12, b_13, c_14) -> *) -> *))
data Tuple3Sym1 (l_axSw :: a_12) (l_axSv :: TyFun b_13 (TyFun c_14 (a_12, b_13, c_14) -> *))
data Tuple3Sym2 (l_axSz :: a_12) (l_axSA :: b_13) (l_axSy :: TyFun c_14 (a_12, b_13, c_14))
type Tuple3Sym3 (t_axSq :: a_12) (t_axSr :: b_13) (t_axSs :: c_14) = '(t_axSq, t_axSr, t_axSs)
data Tuple4Sym0 (l_axSX :: TyFun a_12 (TyFun b_13 (TyFun c_14 (TyFun d_15 (a_12, b_13, c_14, d_15) -> *) -> *) -> *))
data Tuple4Sym1 (l_axT0 :: a_12) (l_axSZ :: TyFun b_13 (TyFun c_14 (TyFun d_15 (a_12, b_13, c_14, d_15) -> *) -> *))
data Tuple4Sym2 (l_axT3 :: a_12) (l_axT4 :: b_13) (l_axT2 :: TyFun c_14 (TyFun d_15 (a_12, b_13, c_14, d_15) -> *))
data Tuple4Sym3 (l_axT7 :: a_12) (l_axT8 :: b_13) (l_axT9 :: c_14) (l_axT6 :: TyFun d_15 (a_12, b_13, c_14, d_15))
type Tuple4Sym4 (t_axST :: a_12) (t_axSU :: b_13) (t_axSV :: c_14) (t_axSW :: d_15) = '(t_axST, t_axSU, t_axSV, t_axSW)
data Tuple5Sym0 (l_axTC :: TyFun a_12 (TyFun b_13 (TyFun c_14 (TyFun d_15 (TyFun e_16 (a_12, b_13, c_14, d_15, e_16) -> *) -> *) -> *) -> *))
data Tuple5Sym1 (l_axTF :: a_12) (l_axTE :: TyFun b_13 (TyFun c_14 (TyFun d_15 (TyFun e_16 (a_12, b_13, c_14, d_15, e_16) -> *) -> *) -> *))
data Tuple5Sym2 (l_axTI :: a_12) (l_axTJ :: b_13) (l_axTH :: TyFun c_14 (TyFun d_15 (TyFun e_16 (a_12, b_13, c_14, d_15, e_16) -> *) -> *))
data Tuple5Sym3 (l_axTM :: a_12) (l_axTN :: b_13) (l_axTO :: c_14) (l_axTL :: TyFun d_15 (TyFun e_16 (a_12, b_13, c_14, d_15, e_16) -> *))
data Tuple5Sym4 (l_axTR :: a_12) (l_axTS :: b_13) (l_axTT :: c_14) (l_axTU :: d_15) (l_axTQ :: TyFun e_16 (a_12, b_13, c_14, d_15, e_16))
type Tuple5Sym5 (t_axTx :: a_12) (t_axTy :: b_13) (t_axTz :: c_14) (t_axTA :: d_15) (t_axTB :: e_16) = '(t_axTx, t_axTy, t_axTz, t_axTA, t_axTB)
data Tuple6Sym0 (l_axUt :: TyFun a_12 (TyFun b_13 (TyFun c_14 (TyFun d_15 (TyFun e_16 (TyFun f_17 (a_12, b_13, c_14, d_15, e_16, f_17) -> *) -> *) -> *) -> *) -> *))
data Tuple6Sym1 (l_axUw :: a_12) (l_axUv :: TyFun b_13 (TyFun c_14 (TyFun d_15 (TyFun e_16 (TyFun f_17 (a_12, b_13, c_14, d_15, e_16, f_17) -> *) -> *) -> *) -> *))
data Tuple6Sym2 (l_axUz :: a_12) (l_axUA :: b_13) (l_axUy :: TyFun c_14 (TyFun d_15 (TyFun e_16 (TyFun f_17 (a_12, b_13, c_14, d_15, e_16, f_17) -> *) -> *) -> *))
data Tuple6Sym3 (l_axUD :: a_12) (l_axUE :: b_13) (l_axUF :: c_14) (l_axUC :: TyFun d_15 (TyFun e_16 (TyFun f_17 (a_12, b_13, c_14, d_15, e_16, f_17) -> *) -> *))
data Tuple6Sym4 (l_axUI :: a_12) (l_axUJ :: b_13) (l_axUK :: c_14) (l_axUL :: d_15) (l_axUH :: TyFun e_16 (TyFun f_17 (a_12, b_13, c_14, d_15, e_16, f_17) -> *))
data Tuple6Sym5 (l_axUO :: a_12) (l_axUP :: b_13) (l_axUQ :: c_14) (l_axUR :: d_15) (l_axUS :: e_16) (l_axUN :: TyFun f_17 (a_12, b_13, c_14, d_15, e_16, f_17))
type Tuple6Sym6 (t_axUn :: a_12) (t_axUo :: b_13) (t_axUp :: c_14) (t_axUq :: d_15) (t_axUr :: e_16) (t_axUs :: f_17) = '(t_axUn, t_axUo, t_axUp, t_axUq, t_axUr, t_axUs)
data Tuple7Sym0 (l_axVx :: TyFun a_12 (TyFun b_13 (TyFun c_14 (TyFun d_15 (TyFun e_16 (TyFun f_17 (TyFun g_18 (a_12, b_13, c_14, d_15, e_16, f_17, g_18) -> *) -> *) -> *) -> *) -> *) -> *))
data Tuple7Sym1 (l_axVA :: a_12) (l_axVz :: TyFun b_13 (TyFun c_14 (TyFun d_15 (TyFun e_16 (TyFun f_17 (TyFun g_18 (a_12, b_13, c_14, d_15, e_16, f_17, g_18) -> *) -> *) -> *) -> *) -> *))
data Tuple7Sym2 (l_axVD :: a_12) (l_axVE :: b_13) (l_axVC :: TyFun c_14 (TyFun d_15 (TyFun e_16 (TyFun f_17 (TyFun g_18 (a_12, b_13, c_14, d_15, e_16, f_17, g_18) -> *) -> *) -> *) -> *))
data Tuple7Sym3 (l_axVH :: a_12) (l_axVI :: b_13) (l_axVJ :: c_14) (l_axVG :: TyFun d_15 (TyFun e_16 (TyFun f_17 (TyFun g_18 (a_12, b_13, c_14, d_15, e_16, f_17, g_18) -> *) -> *) -> *))
data Tuple7Sym4 (l_axVM :: a_12) (l_axVN :: b_13) (l_axVO :: c_14) (l_axVP :: d_15) (l_axVL :: TyFun e_16 (TyFun f_17 (TyFun g_18 (a_12, b_13, c_14, d_15, e_16, f_17, g_18) -> *) -> *))
data Tuple7Sym5 (l_axVS :: a_12) (l_axVT :: b_13) (l_axVU :: c_14) (l_axVV :: d_15) (l_axVW :: e_16) (l_axVR :: TyFun f_17 (TyFun g_18 (a_12, b_13, c_14, d_15, e_16, f_17, g_18) -> *))
data Tuple7Sym6 (l_axVZ :: a_12) (l_axW0 :: b_13) (l_axW1 :: c_14) (l_axW2 :: d_15) (l_axW3 :: e_16) (l_axW4 :: f_17) (l_axVY :: TyFun g_18 (a_12, b_13, c_14, d_15, e_16, f_17, g_18))
type Tuple7Sym7 (t_axVq :: a_12) (t_axVr :: b_13) (t_axVs :: c_14) (t_axVt :: d_15) (t_axVu :: e_16) (t_axVv :: f_17) (t_axVw :: g_18) = '(t_axVq, t_axVr, t_axVs, t_axVt, t_axVu, t_axVv, t_axVw)
data FstSym0 (l_a18Pu :: TyFun (a_a18OB, b_a18OC) a_a18OB)
type FstSym1 (t_a18Pt :: (a_a18OB, b_a18OC)) = Fst t_a18Pt
data SndSym0 (l_a18Pm :: TyFun (a_a18OE, b_a18OF) b_a18OF)
type SndSym1 (t_a18Pl :: (a_a18OE, b_a18OF)) = Snd t_a18Pl
data CurrySym0 (l_a18P6 :: TyFun (TyFun (a_a18OH, b_a18OI) c_a18OJ -> *) (TyFun a_a18OH (TyFun b_a18OI c_a18OJ -> *) -> *))
data CurrySym1 (l_a18P9 :: TyFun (a_a18OH, b_a18OI) c_a18OJ -> *) (l_a18P8 :: TyFun a_a18OH (TyFun b_a18OI c_a18OJ -> *))
data CurrySym2 (l_a18Pc :: TyFun (a_a18OH, b_a18OI) c_a18OJ -> *) (l_a18Pd :: a_a18OH) (l_a18Pb :: TyFun b_a18OI c_a18OJ)
type CurrySym3 (t_a18P3 :: TyFun (a_a18OH, b_a18OI) c_a18OJ -> *) (t_a18P4 :: a_a18OH) (t_a18P5 :: b_a18OI) = Curry t_a18P3 t_a18P4 t_a18P5
data UncurrySym0 (l_a18PD :: TyFun (TyFun a_a18ON (TyFun b_a18OO c_a18OP -> *) -> *) (TyFun (a_a18ON, b_a18OO) c_a18OP -> *))
data UncurrySym1 (l_a18PG :: TyFun a_a18ON (TyFun b_a18OO c_a18OP -> *) -> *) (l_a18PF :: TyFun (a_a18ON, b_a18OO) c_a18OP)
type UncurrySym2 (t_a18PB :: TyFun a_a18ON (TyFun b_a18OO c_a18OP -> *) -> *) (t_a18PC :: (a_a18ON, b_a18OO)) = Uncurry t_a18PB t_a18PC
data (:^$) l_a13OU
data (:^$$) (l_a13OX :: Nat) l_a13OW
data IdSym0 (l_a10SI :: TyFun a_a10QJ a_a10QJ)
type IdSym1 (t_a10SH :: a_a10QJ) = Id t_a10SH
data ConstSym0 (l_a10Sh :: TyFun a_a10QL (TyFun b_a10QM a_a10QL -> *))
data ConstSym1 (l_a10Sk :: a_a10QL) (l_a10Sj :: TyFun b_a10QM a_a10QL)
type ConstSym2 (t_a10Sf :: a_a10QL) (t_a10Sg :: b_a10QM) = Const t_a10Sf t_a10Sg
data (:.$) (l_a10RC :: TyFun (TyFun b_a10QO c_a10QP -> *) (TyFun (TyFun a_a10QQ b_a10QO -> *) (TyFun a_a10QQ c_a10QP -> *) -> *))
data (:.$$) (l_a10RF :: TyFun b_a10QO c_a10QP -> *) (l_a10RE :: TyFun (TyFun a_a10QQ b_a10QO -> *) (TyFun a_a10QQ c_a10QP -> *))
data (:.$$$) (l_a10RI :: TyFun b_a10QO c_a10QP -> *) (l_a10RJ :: TyFun a_a10QQ b_a10QO -> *) (l_a10RH :: TyFun a_a10QQ c_a10QP)
data ($$) :: TyFun (TyFun a b -> *) (TyFun a b -> *) -> *
data ($$$) :: (TyFun a b -> *) -> TyFun a b -> *
type ($$$$) a b = ($) a b
data ($!$) :: TyFun (TyFun a b -> *) (TyFun a b -> *) -> *
data ($!$$) :: (TyFun a b -> *) -> TyFun a b -> *
type ($!$$$) a b = ($!) a b
data FlipSym0 (l_a10Rk :: TyFun (TyFun a_a10QU (TyFun b_a10QV c_a10QW -> *) -> *) (TyFun b_a10QV (TyFun a_a10QU c_a10QW -> *) -> *))
data FlipSym1 (l_a10Rn :: TyFun a_a10QU (TyFun b_a10QV c_a10QW -> *) -> *) (l_a10Rm :: TyFun b_a10QV (TyFun a_a10QU c_a10QW -> *))
data FlipSym2 (l_a10Rq :: TyFun a_a10QU (TyFun b_a10QV c_a10QW -> *) -> *) (l_a10Rr :: b_a10QV) (l_a10Rp :: TyFun a_a10QU c_a10QW)
data AsTypeOfSym0 (l_a10Sy :: TyFun a_a10R0 (TyFun a_a10R0 a_a10R0 -> *))
data AsTypeOfSym1 (l_a10SB :: a_a10R0) (l_a10SA :: TyFun a_a10R0 a_a10R0)
type AsTypeOfSym2 (t_a10Sw :: a_a10R0) (t_a10Sx :: a_a10R0) = AsTypeOf t_a10Sw t_a10Sx
data SeqSym0 (l_a10R6 :: TyFun a_a10R1 (TyFun b_a10R2 b_a10R2 -> *))
data SeqSym1 (l_a10R9 :: a_a10R1) (l_a10R8 :: TyFun b_a10R2 b_a10R2)
type SeqSym2 (t_a10R4 :: a_a10R1) (t_a10R5 :: b_a10R2) = Seq t_a10R4 t_a10R5
data (:$) (l_axRA :: TyFun a_12 (TyFun [a_12] [a_12] -> *))
data (:$$) (l_axRD :: a_12) (l_axRC :: TyFun [a_12] [a_12])
type (:$$$) (t_axRy :: a_12) (t_axRz :: [a_12]) = (:) t_axRy t_axRz
type NilSym0 = '[]
data MapSym0 (l_a10T1 :: TyFun (TyFun a_a10Qz b_a10QA -> *) (TyFun [a_a10Qz] [b_a10QA] -> *))
data MapSym1 (l_a10T4 :: TyFun a_a10Qz b_a10QA -> *) (l_a10T3 :: TyFun [a_a10Qz] [b_a10QA])
type MapSym2 (t_a10SZ :: TyFun a_a10Qz b_a10QA -> *) (t_a10T0 :: [a_a10Qz]) = Map t_a10SZ t_a10T0
data ReverseSym0 (l_a1wja :: TyFun [a_a1vjT] [a_a1vjT])
type ReverseSym1 (t_a1wj9 :: [a_a1vjT]) = Reverse t_a1wj9
data (:++$$) (l_a10SR :: [a_a10QE]) (l_a10SQ :: TyFun [a_a10QE] [a_a10QE])
data (:++$) (l_a10SO :: TyFun [a_a10QE] (TyFun [a_a10QE] [a_a10QE] -> *))
data HeadSym0 (l_a1wlF :: TyFun [a_a1vjC] a_a1vjC)
type HeadSym1 (t_a1wlE :: [a_a1vjC]) = Head t_a1wlE
data LastSym0 (l_a1wlv :: TyFun [a_a1vjE] a_a1vjE)
type LastSym1 (t_a1wlu :: [a_a1vjE]) = Last t_a1wlu
data TailSym0 (l_a1wln :: TyFun [a_a1vjI] [a_a1vjI])
type TailSym1 (t_a1wlm :: [a_a1vjI]) = Tail t_a1wlm
data InitSym0 (l_a1wkQ :: TyFun [a_a1vjK] [a_a1vjK])
type InitSym1 (t_a1wkP :: [a_a1vjK]) = Init t_a1wkP
data NullSym0 (l_a1wjJ :: TyFun [a_a1vjS] Bool)
type NullSym1 (t_a1wjI :: [a_a1vjS]) = Null t_a1wjI
data FoldlSym0 (l_aB2j :: TyFun (TyFun b_aB26 (TyFun a_aB25 b_aB26 -> *) -> *) (TyFun b_aB26 (TyFun [a_aB25] b_aB26 -> *) -> *))
data FoldlSym1 (l_aB2m :: TyFun b_aB26 (TyFun a_aB25 b_aB26 -> *) -> *) (l_aB2l :: TyFun b_aB26 (TyFun [a_aB25] b_aB26 -> *))
data FoldlSym2 (l_aB2p :: TyFun b_aB26 (TyFun a_aB25 b_aB26 -> *) -> *) (l_aB2q :: b_aB26) (l_aB2o :: TyFun [a_aB25] b_aB26)
type FoldlSym3 (t_aB2g :: TyFun b_aB26 (TyFun a_aB25 b_aB26 -> *) -> *) (t_aB2h :: b_aB26) (t_aB2i :: [a_aB25]) = Foldl t_aB2g t_aB2h t_aB2i
data Foldl1Sym0 (l_a1w6S :: TyFun (TyFun a_a1vkL (TyFun a_a1vkL a_a1vkL -> *) -> *) (TyFun [a_a1vkL] a_a1vkL -> *))
data Foldl1Sym1 (l_a1w6V :: TyFun a_a1vkL (TyFun a_a1vkL a_a1vkL -> *) -> *) (l_a1w6U :: TyFun [a_a1vkL] a_a1vkL)
type Foldl1Sym2 (t_a1w6Q :: TyFun a_a1vkL (TyFun a_a1vkL a_a1vkL -> *) -> *) (t_a1w6R :: [a_a1vkL]) = Foldl1 t_a1w6Q t_a1w6R
data FoldrSym0 (l_a10Th :: TyFun (TyFun a_a10Qs (TyFun b_a10Qt b_a10Qt -> *) -> *) (TyFun b_a10Qt (TyFun [a_a10Qs] b_a10Qt -> *) -> *))
data FoldrSym1 (l_a10Tk :: TyFun a_a10Qs (TyFun b_a10Qt b_a10Qt -> *) -> *) (l_a10Tj :: TyFun b_a10Qt (TyFun [a_a10Qs] b_a10Qt -> *))
data FoldrSym2 (l_a10Tn :: TyFun a_a10Qs (TyFun b_a10Qt b_a10Qt -> *) -> *) (l_a10To :: b_a10Qt) (l_a10Tm :: TyFun [a_a10Qs] b_a10Qt)
type FoldrSym3 (t_a10Te :: TyFun a_a10Qs (TyFun b_a10Qt b_a10Qt -> *) -> *) (t_a10Tf :: b_a10Qt) (t_a10Tg :: [a_a10Qs]) = Foldr t_a10Te t_a10Tf t_a10Tg
data Foldr1Sym0 (l_a1w6f :: TyFun (TyFun a_a1vkT (TyFun a_a1vkT a_a1vkT -> *) -> *) (TyFun [a_a1vkT] a_a1vkT -> *))
data Foldr1Sym1 (l_a1w6i :: TyFun a_a1vkT (TyFun a_a1vkT a_a1vkT -> *) -> *) (l_a1w6h :: TyFun [a_a1vkT] a_a1vkT)
type Foldr1Sym2 (t_a1w6d :: TyFun a_a1vkT (TyFun a_a1vkT a_a1vkT -> *) -> *) (t_a1w6e :: [a_a1vkT]) = Foldr1 t_a1w6d t_a1w6e
data ConcatSym0 (l_a1w69 :: TyFun [[a_a1vkY]] [a_a1vkY])
type ConcatSym1 (t_a1w68 :: [[a_a1vkY]]) = Concat t_a1w68
data ConcatMapSym0 (l_a1w5V :: TyFun (TyFun a_a1vkZ [b_a1vl0] -> *) (TyFun [a_a1vkZ] [b_a1vl0] -> *))
data ConcatMapSym1 (l_a1w5Y :: TyFun a_a1vkZ [b_a1vl0] -> *) (l_a1w5X :: TyFun [a_a1vkZ] [b_a1vl0])
type ConcatMapSym2 (t_a1w5T :: TyFun a_a1vkZ [b_a1vl0] -> *) (t_a1w5U :: [a_a1vkZ]) = ConcatMap t_a1w5T t_a1w5U
data MaximumBySym0 (l_a1w77 :: TyFun (TyFun a_a1voK (TyFun a_a1voK Ordering -> *) -> *) (TyFun [a_a1voK] a_a1voK -> *))
data MaximumBySym1 (l_a1w7a :: TyFun a_a1voK (TyFun a_a1voK Ordering -> *) -> *) (l_a1w79 :: TyFun [a_a1voK] a_a1voK)
type MaximumBySym2 (t_a1w75 :: TyFun a_a1voK (TyFun a_a1voK Ordering -> *) -> *) (t_a1w76 :: [a_a1voK]) = MaximumBy t_a1w75 t_a1w76
data MinimumBySym0 (l_a1w8w :: TyFun (TyFun a_a1voQ (TyFun a_a1voQ Ordering -> *) -> *) (TyFun [a_a1voQ] a_a1voQ -> *))
data MinimumBySym1 (l_a1w8z :: TyFun a_a1voQ (TyFun a_a1voQ Ordering -> *) -> *) (l_a1w8y :: TyFun [a_a1voQ] a_a1voQ)
type MinimumBySym2 (t_a1w8u :: TyFun a_a1voQ (TyFun a_a1voQ Ordering -> *) -> *) (t_a1w8v :: [a_a1voQ]) = MinimumBy t_a1w8u t_a1w8v
data AndSym0 (l_a1w5O :: TyFun [Bool] Bool)
type AndSym1 (t_a1w5N :: [Bool]) = And t_a1w5N
data OrSym0 (l_a1w5I :: TyFun [Bool] Bool)
type OrSym1 (t_a1w5H :: [Bool]) = Or t_a1w5H
data Any_Sym0 (l_a1swr :: TyFun (TyFun a_a1swk Bool -> *) (TyFun [a_a1swk] Bool -> *))
data Any_Sym1 (l_a1swu :: TyFun a_a1swk Bool -> *) (l_a1swt :: TyFun [a_a1swk] Bool)
type Any_Sym2 (t_a1swp :: TyFun a_a1swk Bool -> *) (t_a1swq :: [a_a1swk]) = Any_ t_a1swp t_a1swq
data AllSym0 (l_a1w5u :: TyFun (TyFun a_a1vl6 Bool -> *) (TyFun [a_a1vl6] Bool -> *))
data AllSym1 (l_a1w5x :: TyFun a_a1vl6 Bool -> *) (l_a1w5w :: TyFun [a_a1vl6] Bool)
type AllSym2 (t_a1w5s :: TyFun a_a1vl6 Bool -> *) (t_a1w5t :: [a_a1vl6]) = All t_a1w5s t_a1w5t
data ScanlSym0 (l_a1w4G :: TyFun (TyFun b_a1vla (TyFun a_a1vlb b_a1vla -> *) -> *) (TyFun b_a1vla (TyFun [a_a1vlb] [b_a1vla] -> *) -> *))
data ScanlSym1 (l_a1w4J :: TyFun b_a1vla (TyFun a_a1vlb b_a1vla -> *) -> *) (l_a1w4I :: TyFun b_a1vla (TyFun [a_a1vlb] [b_a1vla] -> *))
data ScanlSym2 (l_a1w4M :: TyFun b_a1vla (TyFun a_a1vlb b_a1vla -> *) -> *) (l_a1w4N :: b_a1vla) (l_a1w4L :: TyFun [a_a1vlb] [b_a1vla])
type ScanlSym3 (t_a1w4D :: TyFun b_a1vla (TyFun a_a1vlb b_a1vla -> *) -> *) (t_a1w4E :: b_a1vla) (t_a1w4F :: [a_a1vlb]) = Scanl t_a1w4D t_a1w4E t_a1w4F
data Scanl1Sym0 (l_a1w5f :: TyFun (TyFun a_a1vlh (TyFun a_a1vlh a_a1vlh -> *) -> *) (TyFun [a_a1vlh] [a_a1vlh] -> *))
data Scanl1Sym1 (l_a1w5i :: TyFun a_a1vlh (TyFun a_a1vlh a_a1vlh -> *) -> *) (l_a1w5h :: TyFun [a_a1vlh] [a_a1vlh])
type Scanl1Sym2 (t_a1w5d :: TyFun a_a1vlh (TyFun a_a1vlh a_a1vlh -> *) -> *) (t_a1w5e :: [a_a1vlh]) = Scanl1 t_a1w5d t_a1w5e
data ScanrSym0 (l_a1w3V :: TyFun (TyFun a_a1vll (TyFun b_a1vlm b_a1vlm -> *) -> *) (TyFun b_a1vlm (TyFun [a_a1vll] [b_a1vlm] -> *) -> *))
data ScanrSym1 (l_a1w3Y :: TyFun a_a1vll (TyFun b_a1vlm b_a1vlm -> *) -> *) (l_a1w3X :: TyFun b_a1vlm (TyFun [a_a1vll] [b_a1vlm] -> *))
data ScanrSym2 (l_a1w41 :: TyFun a_a1vll (TyFun b_a1vlm b_a1vlm -> *) -> *) (l_a1w42 :: b_a1vlm) (l_a1w40 :: TyFun [a_a1vll] [b_a1vlm])
type ScanrSym3 (t_a1w3S :: TyFun a_a1vll (TyFun b_a1vlm b_a1vlm -> *) -> *) (t_a1w3T :: b_a1vlm) (t_a1w3U :: [a_a1vll]) = Scanr t_a1w3S t_a1w3T t_a1w3U
data Scanr1Sym0 (l_a1w2T :: TyFun (TyFun a_a1vlu (TyFun a_a1vlu a_a1vlu -> *) -> *) (TyFun [a_a1vlu] [a_a1vlu] -> *))
data Scanr1Sym1 (l_a1w2W :: TyFun a_a1vlu (TyFun a_a1vlu a_a1vlu -> *) -> *) (l_a1w2V :: TyFun [a_a1vlu] [a_a1vlu])
type Scanr1Sym2 (t_a1w2R :: TyFun a_a1vlu (TyFun a_a1vlu a_a1vlu -> *) -> *) (t_a1w2S :: [a_a1vlu]) = Scanr1 t_a1w2R t_a1w2S
data ElemSym0 (l_a1vUS :: TyFun a_a1vmn (TyFun [a_a1vmn] Bool -> *))
data ElemSym1 (l_a1vUV :: a_a1vmn) (l_a1vUU :: TyFun [a_a1vmn] Bool)
type ElemSym2 (t_a1vUQ :: a_a1vmn) (t_a1vUR :: [a_a1vmn]) = Elem t_a1vUQ t_a1vUR
data NotElemSym0 (l_a1vUD :: TyFun a_a1vmr (TyFun [a_a1vmr] Bool -> *))
data NotElemSym1 (l_a1vUG :: a_a1vmr) (l_a1vUF :: TyFun [a_a1vmr] Bool)
type NotElemSym2 (t_a1vUB :: a_a1vmr) (t_a1vUC :: [a_a1vmr]) = NotElem t_a1vUB t_a1vUC
data ZipSym0 (l_a1vSA :: TyFun [a_a1vmv] (TyFun [b_a1vmw] [(a_a1vmv, b_a1vmw)] -> *))
data ZipSym1 (l_a1vSD :: [a_a1vmv]) (l_a1vSC :: TyFun [b_a1vmw] [(a_a1vmv, b_a1vmw)])
type ZipSym2 (t_a1vSy :: [a_a1vmv]) (t_a1vSz :: [b_a1vmw]) = Zip t_a1vSy t_a1vSz
data Zip3Sym0 (l_a1vRo :: TyFun [a_a1vmB] (TyFun [b_a1vmC] (TyFun [c_a1vmD] [(a_a1vmB, b_a1vmC, c_a1vmD)] -> *) -> *))
data Zip3Sym1 (l_a1vRr :: [a_a1vmB]) (l_a1vRq :: TyFun [b_a1vmC] (TyFun [c_a1vmD] [(a_a1vmB, b_a1vmC, c_a1vmD)] -> *))
data Zip3Sym2 (l_a1vRu :: [a_a1vmB]) (l_a1vRv :: [b_a1vmC]) (l_a1vRt :: TyFun [c_a1vmD] [(a_a1vmB, b_a1vmC, c_a1vmD)])
type Zip3Sym3 (t_a1vRl :: [a_a1vmB]) (t_a1vRm :: [b_a1vmC]) (t_a1vRn :: [c_a1vmD]) = Zip3 t_a1vRl t_a1vRm t_a1vRn
data ZipWithSym0 (l_a1vQJ :: TyFun (TyFun a_a1vmK (TyFun b_a1vmL c_a1vmM -> *) -> *) (TyFun [a_a1vmK] (TyFun [b_a1vmL] [c_a1vmM] -> *) -> *))
data ZipWithSym1 (l_a1vQM :: TyFun a_a1vmK (TyFun b_a1vmL c_a1vmM -> *) -> *) (l_a1vQL :: TyFun [a_a1vmK] (TyFun [b_a1vmL] [c_a1vmM] -> *))
data ZipWithSym2 (l_a1vQP :: TyFun a_a1vmK (TyFun b_a1vmL c_a1vmM -> *) -> *) (l_a1vQQ :: [a_a1vmK]) (l_a1vQO :: TyFun [b_a1vmL] [c_a1vmM])
type ZipWithSym3 (t_a1vQG :: TyFun a_a1vmK (TyFun b_a1vmL c_a1vmM -> *) -> *) (t_a1vQH :: [a_a1vmK]) (t_a1vQI :: [b_a1vmL]) = ZipWith t_a1vQG t_a1vQH t_a1vQI
data ZipWith3Sym0 (l_a1vP4 :: TyFun (TyFun a_a1vmS (TyFun b_a1vmT (TyFun c_a1vmU d_a1vmV -> *) -> *) -> *) (TyFun [a_a1vmS] (TyFun [b_a1vmT] (TyFun [c_a1vmU] [d_a1vmV] -> *) -> *) -> *))
data ZipWith3Sym1 (l_a1vP7 :: TyFun a_a1vmS (TyFun b_a1vmT (TyFun c_a1vmU d_a1vmV -> *) -> *) -> *) (l_a1vP6 :: TyFun [a_a1vmS] (TyFun [b_a1vmT] (TyFun [c_a1vmU] [d_a1vmV] -> *) -> *))
data ZipWith3Sym2 (l_a1vPa :: TyFun a_a1vmS (TyFun b_a1vmT (TyFun c_a1vmU d_a1vmV -> *) -> *) -> *) (l_a1vPb :: [a_a1vmS]) (l_a1vP9 :: TyFun [b_a1vmT] (TyFun [c_a1vmU] [d_a1vmV] -> *))
data ZipWith3Sym3 (l_a1vPe :: TyFun a_a1vmS (TyFun b_a1vmT (TyFun c_a1vmU d_a1vmV -> *) -> *) -> *) (l_a1vPf :: [a_a1vmS]) (l_a1vPg :: [b_a1vmT]) (l_a1vPd :: TyFun [c_a1vmU] [d_a1vmV])
data UnzipSym0 (l_a1vOx :: TyFun [(a_a1vn3, b_a1vn4)] ([a_a1vn3], [b_a1vn4]))
type UnzipSym1 (t_a1vOw :: [(a_a1vn3, b_a1vn4)]) = Unzip t_a1vOw
data UntilSym0 (l_a19L5 :: TyFun (TyFun a_a19KV Bool -> *) (TyFun (TyFun a_a19KV a_a19KV -> *) (TyFun a_a19KV a_a19KV -> *) -> *))
data UntilSym1 (l_a19L8 :: TyFun a_a19KV Bool -> *) (l_a19L7 :: TyFun (TyFun a_a19KV a_a19KV -> *) (TyFun a_a19KV a_a19KV -> *))
data UntilSym2 (l_a19Lb :: TyFun a_a19KV Bool -> *) (l_a19Lc :: TyFun a_a19KV a_a19KV -> *) (l_a19La :: TyFun a_a19KV a_a19KV)
type UntilSym3 (t_a19L2 :: TyFun a_a19KV Bool -> *) (t_a19L3 :: TyFun a_a19KV a_a19KV -> *) (t_a19L4 :: a_a19KV) = Until t_a19L2 t_a19L3 t_a19L4
data LengthSym0 (l_a1vvD :: TyFun [a_a1vqI] Nat)
type LengthSym1 (t_a1vvC :: [a_a1vqI]) = Length t_a1vvC
data SumSym0 (l_a1vw9 :: TyFun [a_a1vi7] a_a1vi7)
type SumSym1 (t_a1vw8 :: [a_a1vi7]) = Sum t_a1vw8
data ProductSym0 (l_a1vvL :: TyFun [a_a1vi6] a_a1vi6)
type ProductSym1 (t_a1vvK :: [a_a1vi6]) = Product t_a1vvK
data ReplicateSym0 (l_a1vvi :: TyFun Nat (TyFun a_a1vqK [a_a1vqK] -> *))
data ReplicateSym1 (l_a1vvl :: Nat) (l_a1vvk :: TyFun a_a1vqK [a_a1vqK])
type ReplicateSym2 (t_a1vvg :: Nat) (t_a1vvh :: a_a1vqK) = Replicate t_a1vvg t_a1vvh
data TakeSym0 (l_a1vyt :: TyFun Nat (TyFun [a_a1vpQ] [a_a1vpQ] -> *))
data TakeSym1 (l_a1vyw :: Nat) (l_a1vyv :: TyFun [a_a1vpQ] [a_a1vpQ])
type TakeSym2 (t_a1vyr :: Nat) (t_a1vys :: [a_a1vpQ]) = Take t_a1vyr t_a1vys
data DropSym0 (l_a1vxY :: TyFun Nat (TyFun [a_a1vpU] [a_a1vpU] -> *))
data DropSym1 (l_a1vy1 :: Nat) (l_a1vy0 :: TyFun [a_a1vpU] [a_a1vpU])
type DropSym2 (t_a1vxW :: Nat) (t_a1vxX :: [a_a1vpU]) = Drop t_a1vxW t_a1vxX
data SplitAtSym0 (l_a1vyY :: TyFun Nat (TyFun [a_a1vpY] ([a_a1vpY], [a_a1vpY]) -> *))
data SplitAtSym1 (l_a1vz1 :: Nat) (l_a1vz0 :: TyFun [a_a1vpY] ([a_a1vpY], [a_a1vpY]))
type SplitAtSym2 (t_a1vyW :: Nat) (t_a1vyX :: [a_a1vpY]) = SplitAt t_a1vyW t_a1vyX
data TakeWhileSym0 (l_a1vEu :: TyFun (TyFun a_a1vpn Bool -> *) (TyFun [a_a1vpn] [a_a1vpn] -> *))
data TakeWhileSym1 (l_a1vEx :: TyFun a_a1vpn Bool -> *) (l_a1vEw :: TyFun [a_a1vpn] [a_a1vpn])
type TakeWhileSym2 (t_a1vEs :: TyFun a_a1vpn Bool -> *) (t_a1vEt :: [a_a1vpn]) = TakeWhile t_a1vEs t_a1vEt
data DropWhileSym0 (l_a1vDM :: TyFun (TyFun a_a1vpr Bool -> *) (TyFun [a_a1vpr] [a_a1vpr] -> *))
data DropWhileSym1 (l_a1vDP :: TyFun a_a1vpr Bool -> *) (l_a1vDO :: TyFun [a_a1vpr] [a_a1vpr])
type DropWhileSym2 (t_a1vDK :: TyFun a_a1vpr Bool -> *) (t_a1vDL :: [a_a1vpr]) = DropWhile t_a1vDK t_a1vDL
data SpanSym0 (l_a1vAQ :: TyFun (TyFun a_a1vpA Bool -> *) (TyFun [a_a1vpA] ([a_a1vpA], [a_a1vpA]) -> *))
data SpanSym1 (l_a1vAT :: TyFun a_a1vpA Bool -> *) (l_a1vAS :: TyFun [a_a1vpA] ([a_a1vpA], [a_a1vpA]))
type SpanSym2 (t_a1vAO :: TyFun a_a1vpA Bool -> *) (t_a1vAP :: [a_a1vpA]) = Span t_a1vAO t_a1vAP
data BreakSym0 (l_a1vz9 :: TyFun (TyFun a_a1vpI Bool -> *) (TyFun [a_a1vpI] ([a_a1vpI], [a_a1vpI]) -> *))
data BreakSym1 (l_a1vzc :: TyFun a_a1vpI Bool -> *) (l_a1vzb :: TyFun [a_a1vpI] ([a_a1vpI], [a_a1vpI]))
type BreakSym2 (t_a1vz7 :: TyFun a_a1vpI Bool -> *) (t_a1vz8 :: [a_a1vpI]) = Break t_a1vz7 t_a1vz8
data LookupSym0 (l_a1vxo :: TyFun a_a1vqh (TyFun [(a_a1vqh, b_a1vqi)] (Maybe b_a1vqi) -> *))
data LookupSym1 (l_a1vxr :: a_a1vqh) (l_a1vxq :: TyFun [(a_a1vqh, b_a1vqi)] (Maybe b_a1vqi))
type LookupSym2 (t_a1vxm :: a_a1vqh) (t_a1vxn :: [(a_a1vqh, b_a1vqi)]) = Lookup t_a1vxm t_a1vxn
data FilterSym0 (l_a1vEZ :: TyFun (TyFun a_a1voW Bool -> *) (TyFun [a_a1voW] [a_a1voW] -> *))
data FilterSym1 (l_a1vF2 :: TyFun a_a1voW Bool -> *) (l_a1vF1 :: TyFun [a_a1voW] [a_a1voW])
type FilterSym2 (t_a1vEX :: TyFun a_a1voW Bool -> *) (t_a1vEY :: [a_a1voW]) = Filter t_a1vEX t_a1vEY
data (:!!$) (l_a1vuN :: TyFun [a_a1vqS] (TyFun Nat a_a1vqS -> *))
data (:!!$$) (l_a1vuQ :: [a_a1vqS]) (l_a1vuP :: TyFun Nat a_a1vqS)
type (:!!$$$) (t_a1vuL :: [a_a1vqS]) (t_a1vuM :: Nat) = (:!!) t_a1vuL t_a1vuM
-- | This module contains everything you need to promote your own functions
-- via Template Haskell.
module Data.Promotion.TH
-- | Promote every declaration given to the type level, retaining the
-- originals.
promote :: DsMonad q => q [Dec] -> q [Dec]
-- | Promote each declaration, discarding the originals. Note that a
-- promoted datatype uses the same definition as an original datatype, so
-- this will not work with datatypes. Classes, instances, and functions
-- are all fine.
promoteOnly :: DsMonad q => q [Dec] -> q [Dec]
-- | Generate defunctionalization symbols for existing type family
genDefunSymbols :: DsMonad q => [Name] -> q [Dec]
-- | Generate promoted definitions from a type that is already defined.
-- This is generally only useful with classes.
genPromotions :: DsMonad q => [Name] -> q [Dec]
-- | Produce instances for '(:==)' (type-level equality) from the given
-- types
promoteEqInstances :: DsMonad q => [Name] -> q [Dec]
-- | Produce an instance for '(:==)' (type-level equality) from the given
-- type
promoteEqInstance :: DsMonad q => Name -> q [Dec]
-- | Produce instances for POrd from the given types
promoteOrdInstances :: DsMonad q => [Name] -> q [Dec]
-- | Produce an instance for POrd from the given type
promoteOrdInstance :: DsMonad q => Name -> q [Dec]
-- | Produce instances for PBounded from the given types
promoteBoundedInstances :: DsMonad q => [Name] -> q [Dec]
-- | Produce an instance for PBounded from the given type
promoteBoundedInstance :: DsMonad q => Name -> q [Dec]
-- | Produce instances for PEnum from the given types
promoteEnumInstances :: DsMonad q => [Name] -> q [Dec]
-- | Produce an instance for PEnum from the given type
promoteEnumInstance :: DsMonad q => Name -> q [Dec]
-- | Representation of the kind of a type-level function. The difference
-- between term-level arrows and this type-level arrow is that at the
-- term level applications can be unsaturated, whereas at the type level
-- all applications have to be fully saturated.
data TyFun :: * -> * -> *
-- | Type level function application
-- | An infix synonym for Apply
type (@@) a b = Apply a b
-- | The promoted analogue of Eq. If you supply no definition for
-- '(:==)', then it defaults to a use of '(==)', from
-- Data.Type.Equality.
class kproxy ~ KProxy => PEq (kproxy :: KProxy a) where type family (:==) (x :: a) (y :: a) :: Bool type family (:/=) (x :: a) (y :: a) :: Bool (:==) (x :: a) (y :: a) = x == y (:/=) (x :: a) (y :: a) = Not (x :== y)
-- | Type-level If. If True a b ==> a; If
-- False a b ==> b
class (PEq (KProxy :: KProxy a_aJJr), kproxy_aJVz ~ KProxy) => POrd (kproxy_aJVz :: KProxy a_aJJr) where type family Compare (arg_aJVA :: a_aJJr) (arg_aJVB :: a_aJJr) :: Ordering type family (:<) (arg_aJVJ :: a_aJJr) (arg_aJVK :: a_aJJr) :: Bool type family (:<=) (arg_aJVS :: a_aJJr) (arg_aJVT :: a_aJJr) :: Bool type family (:>) (arg_aJW1 :: a_aJJr) (arg_aJW2 :: a_aJJr) :: Bool type family (:>=) (arg_aJWa :: a_aJJr) (arg_aJWb :: a_aJJr) :: Bool type family Max (arg_aJWj :: a_aJJr) (arg_aJWk :: a_aJJr) :: a_aJJr type family Min (arg_aJWs :: a_aJJr) (arg_aJWt :: a_aJJr) :: a_aJJr Compare (a_aJX8 :: a_aJJr) (a_aJX9 :: a_aJJr) = Apply (Apply Compare_1627566600Sym0 a_aJX8) a_aJX9 (:<) (a_aJXF :: a_aJJr) (a_aJXG :: a_aJJr) = Apply (Apply TFHelper_1627566633Sym0 a_aJXF) a_aJXG (:<=) (a_aJYc :: a_aJJr) (a_aJYd :: a_aJJr) = Apply (Apply TFHelper_1627566666Sym0 a_aJYc) a_aJYd (:>) (a_aJYJ :: a_aJJr) (a_aJYK :: a_aJJr) = Apply (Apply TFHelper_1627566699Sym0 a_aJYJ) a_aJYK (:>=) (a_aJZg :: a_aJJr) (a_aJZh :: a_aJJr) = Apply (Apply TFHelper_1627566732Sym0 a_aJZg) a_aJZh Max (a_aJZN :: a_aJJr) (a_aJZO :: a_aJJr) = Apply (Apply Max_1627566765Sym0 a_aJZN) a_aJZO Min (a_aK0k :: a_aJJr) (a_aK0l :: a_aJJr) = Apply (Apply Min_1627566798Sym0 a_aK0k) a_aK0l
-- | The type constructor Any is type to which you can unsafely
-- coerce any lifted type, and back.
--
-- -- length :: forall a. [a] -> Int ---- -- and the list datacon for the empty list has type -- --
-- [] :: forall a. [a] ---- -- In order to compose these two terms as length [] a type -- application is required, but there is no constraint on the choice. In -- this situation GHC uses Any: -- --
-- length (Any *) ([] (Any *)) ---- -- Above, we print kinds explicitly, as if with -- -fprint-explicit-kinds. -- -- Note that Any is kind polymorphic; its kind is thus -- forall k. k. -- | A concrete, poly-kinded proxy type data Proxy (t :: k) :: k -> * Proxy :: Proxy -- | A concrete, promotable proxy type, for use at the kind level There are -- no instances for this because it is intended at the kind level only data KProxy t :: * -> * KProxy :: KProxy t -- | The promotion of error. This version is more poly-kinded for -- easier use. data ErrorSym0 (l_a13LW :: TyFun k0_a13wC k_a13wB) type TrueSym0 = True type FalseSym0 = False type LTSym0 = LT type EQSym0 = EQ type GTSym0 = GT type Tuple0Sym0 = '() data Tuple2Sym0 (l_axS9 :: TyFun a_12 (TyFun b_13 (a_12, b_13) -> *)) data Tuple2Sym1 (l_axSc :: a_12) (l_axSb :: TyFun b_13 (a_12, b_13)) type Tuple2Sym2 (t_axS7 :: a_12) (t_axS8 :: b_13) = '(t_axS7, t_axS8) data Tuple3Sym0 (l_axSt :: TyFun a_12 (TyFun b_13 (TyFun c_14 (a_12, b_13, c_14) -> *) -> *)) data Tuple3Sym1 (l_axSw :: a_12) (l_axSv :: TyFun b_13 (TyFun c_14 (a_12, b_13, c_14) -> *)) data Tuple3Sym2 (l_axSz :: a_12) (l_axSA :: b_13) (l_axSy :: TyFun c_14 (a_12, b_13, c_14)) type Tuple3Sym3 (t_axSq :: a_12) (t_axSr :: b_13) (t_axSs :: c_14) = '(t_axSq, t_axSr, t_axSs) data Tuple4Sym0 (l_axSX :: TyFun a_12 (TyFun b_13 (TyFun c_14 (TyFun d_15 (a_12, b_13, c_14, d_15) -> *) -> *) -> *)) data Tuple4Sym1 (l_axT0 :: a_12) (l_axSZ :: TyFun b_13 (TyFun c_14 (TyFun d_15 (a_12, b_13, c_14, d_15) -> *) -> *)) data Tuple4Sym2 (l_axT3 :: a_12) (l_axT4 :: b_13) (l_axT2 :: TyFun c_14 (TyFun d_15 (a_12, b_13, c_14, d_15) -> *)) data Tuple4Sym3 (l_axT7 :: a_12) (l_axT8 :: b_13) (l_axT9 :: c_14) (l_axT6 :: TyFun d_15 (a_12, b_13, c_14, d_15)) type Tuple4Sym4 (t_axST :: a_12) (t_axSU :: b_13) (t_axSV :: c_14) (t_axSW :: d_15) = '(t_axST, t_axSU, t_axSV, t_axSW) data Tuple5Sym0 (l_axTC :: TyFun a_12 (TyFun b_13 (TyFun c_14 (TyFun d_15 (TyFun e_16 (a_12, b_13, c_14, d_15, e_16) -> *) -> *) -> *) -> *)) data Tuple5Sym1 (l_axTF :: a_12) (l_axTE :: TyFun b_13 (TyFun c_14 (TyFun d_15 (TyFun e_16 (a_12, b_13, c_14, d_15, e_16) -> *) -> *) -> *)) data Tuple5Sym2 (l_axTI :: a_12) (l_axTJ :: b_13) (l_axTH :: TyFun c_14 (TyFun d_15 (TyFun e_16 (a_12, b_13, c_14, d_15, e_16) -> *) -> *)) data Tuple5Sym3 (l_axTM :: a_12) (l_axTN :: b_13) (l_axTO :: c_14) (l_axTL :: TyFun d_15 (TyFun e_16 (a_12, b_13, c_14, d_15, e_16) -> *)) data Tuple5Sym4 (l_axTR :: a_12) (l_axTS :: b_13) (l_axTT :: c_14) (l_axTU :: d_15) (l_axTQ :: TyFun e_16 (a_12, b_13, c_14, d_15, e_16)) type Tuple5Sym5 (t_axTx :: a_12) (t_axTy :: b_13) (t_axTz :: c_14) (t_axTA :: d_15) (t_axTB :: e_16) = '(t_axTx, t_axTy, t_axTz, t_axTA, t_axTB) data Tuple6Sym0 (l_axUt :: TyFun a_12 (TyFun b_13 (TyFun c_14 (TyFun d_15 (TyFun e_16 (TyFun f_17 (a_12, b_13, c_14, d_15, e_16, f_17) -> *) -> *) -> *) -> *) -> *)) data Tuple6Sym1 (l_axUw :: a_12) (l_axUv :: TyFun b_13 (TyFun c_14 (TyFun d_15 (TyFun e_16 (TyFun f_17 (a_12, b_13, c_14, d_15, e_16, f_17) -> *) -> *) -> *) -> *)) data Tuple6Sym2 (l_axUz :: a_12) (l_axUA :: b_13) (l_axUy :: TyFun c_14 (TyFun d_15 (TyFun e_16 (TyFun f_17 (a_12, b_13, c_14, d_15, e_16, f_17) -> *) -> *) -> *)) data Tuple6Sym3 (l_axUD :: a_12) (l_axUE :: b_13) (l_axUF :: c_14) (l_axUC :: TyFun d_15 (TyFun e_16 (TyFun f_17 (a_12, b_13, c_14, d_15, e_16, f_17) -> *) -> *)) data Tuple6Sym4 (l_axUI :: a_12) (l_axUJ :: b_13) (l_axUK :: c_14) (l_axUL :: d_15) (l_axUH :: TyFun e_16 (TyFun f_17 (a_12, b_13, c_14, d_15, e_16, f_17) -> *)) data Tuple6Sym5 (l_axUO :: a_12) (l_axUP :: b_13) (l_axUQ :: c_14) (l_axUR :: d_15) (l_axUS :: e_16) (l_axUN :: TyFun f_17 (a_12, b_13, c_14, d_15, e_16, f_17)) type Tuple6Sym6 (t_axUn :: a_12) (t_axUo :: b_13) (t_axUp :: c_14) (t_axUq :: d_15) (t_axUr :: e_16) (t_axUs :: f_17) = '(t_axUn, t_axUo, t_axUp, t_axUq, t_axUr, t_axUs) data Tuple7Sym0 (l_axVx :: TyFun a_12 (TyFun b_13 (TyFun c_14 (TyFun d_15 (TyFun e_16 (TyFun f_17 (TyFun g_18 (a_12, b_13, c_14, d_15, e_16, f_17, g_18) -> *) -> *) -> *) -> *) -> *) -> *)) data Tuple7Sym1 (l_axVA :: a_12) (l_axVz :: TyFun b_13 (TyFun c_14 (TyFun d_15 (TyFun e_16 (TyFun f_17 (TyFun g_18 (a_12, b_13, c_14, d_15, e_16, f_17, g_18) -> *) -> *) -> *) -> *) -> *)) data Tuple7Sym2 (l_axVD :: a_12) (l_axVE :: b_13) (l_axVC :: TyFun c_14 (TyFun d_15 (TyFun e_16 (TyFun f_17 (TyFun g_18 (a_12, b_13, c_14, d_15, e_16, f_17, g_18) -> *) -> *) -> *) -> *)) data Tuple7Sym3 (l_axVH :: a_12) (l_axVI :: b_13) (l_axVJ :: c_14) (l_axVG :: TyFun d_15 (TyFun e_16 (TyFun f_17 (TyFun g_18 (a_12, b_13, c_14, d_15, e_16, f_17, g_18) -> *) -> *) -> *)) data Tuple7Sym4 (l_axVM :: a_12) (l_axVN :: b_13) (l_axVO :: c_14) (l_axVP :: d_15) (l_axVL :: TyFun e_16 (TyFun f_17 (TyFun g_18 (a_12, b_13, c_14, d_15, e_16, f_17, g_18) -> *) -> *)) data Tuple7Sym5 (l_axVS :: a_12) (l_axVT :: b_13) (l_axVU :: c_14) (l_axVV :: d_15) (l_axVW :: e_16) (l_axVR :: TyFun f_17 (TyFun g_18 (a_12, b_13, c_14, d_15, e_16, f_17, g_18) -> *)) data Tuple7Sym6 (l_axVZ :: a_12) (l_axW0 :: b_13) (l_axW1 :: c_14) (l_axW2 :: d_15) (l_axW3 :: e_16) (l_axW4 :: f_17) (l_axVY :: TyFun g_18 (a_12, b_13, c_14, d_15, e_16, f_17, g_18)) type Tuple7Sym7 (t_axVq :: a_12) (t_axVr :: b_13) (t_axVs :: c_14) (t_axVt :: d_15) (t_axVu :: e_16) (t_axVv :: f_17) (t_axVw :: g_18) = '(t_axVq, t_axVr, t_axVs, t_axVt, t_axVu, t_axVv, t_axVw) data ThenCmpSym0 (l_aM77 :: TyFun Ordering (TyFun Ordering Ordering -> *)) data FoldlSym0 (l_aB2j :: TyFun (TyFun b_aB26 (TyFun a_aB25 b_aB26 -> *) -> *) (TyFun b_aB26 (TyFun [a_aB25] b_aB26 -> *) -> *)) -- | This class (which users should never see) is to be instantiated in -- order to use an otherwise-unused data constructor, such as the -- "kind-inference" data constructor for defunctionalization symbols. class SuppressUnusedWarnings (t :: k) suppressUnusedWarnings :: SuppressUnusedWarnings t => Proxy t -> ()