-- 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.0.2 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 '[]',
-- 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_a1cLX -> Sing (Apply HeadSym0 t_a1cLX :: a_a1c4V)
sLast :: Sing t_a1cLW -> Sing (Apply LastSym0 t_a1cLW :: a_a1c4X)
sTail :: Sing t_a1cLV -> Sing (Apply TailSym0 t_a1cLV :: [a_a1c51])
sInit :: Sing t_a1cLU -> Sing (Apply InitSym0 t_a1cLU :: [a_a1c53])
sNull :: Sing t_a1cLT -> Sing (Apply NullSym0 t_a1cLT :: Bool)
sMap :: Sing t_a10U9 -> Sing t_a10Ua -> Sing (Apply (Apply MapSym0 t_a10U9) t_a10Ua :: [b_a10QA])
sReverse :: Sing t_a1cLQ -> Sing (Apply ReverseSym0 t_a1cLQ :: [a_a1c5c])
sIntersperse :: Sing t_a1cLM -> Sing t_a1cLN -> Sing (Apply (Apply IntersperseSym0 t_a1cLM) t_a1cLN :: [a_a1c5k])
sIntercalate :: Sing t_a1cLO -> Sing t_a1cLP -> Sing (Apply (Apply IntercalateSym0 t_a1cLO) t_a1cLP :: [a_a1c5o])
sSubsequences :: Sing t_a1cLL -> Sing (Apply SubsequencesSym0 t_a1cLL :: [[a_a1c5r]])
sPermutations :: Sing t_a1cLH -> Sing (Apply PermutationsSym0 t_a1cLH :: [[a_a1c5D]])
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_a1cLC -> Sing t_a1cLD -> Sing t_a1cLE -> Sing (Apply (Apply (Apply Foldl'Sym0 t_a1cLC) t_a1cLD) t_a1cLE :: b_a1c43)
sFoldl1 :: Sing t_a1cLw -> Sing t_a1cLx -> Sing (Apply (Apply Foldl1Sym0 t_a1cLw) t_a1cLx :: a_a1c64)
sFoldl1' :: Sing t_a1cLF -> Sing t_a1cLG -> Sing (Apply (Apply Foldl1'Sym0 t_a1cLF) t_a1cLG :: a_a1c68)
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_a1cLu -> Sing t_a1cLv -> Sing (Apply (Apply Foldr1Sym0 t_a1cLu) t_a1cLv :: a_a1c6c)
sConcat :: Sing t_a1cLt -> Sing (Apply ConcatSym0 t_a1cLt :: [a_a1c6h])
sConcatMap :: Sing t_a1cLr -> Sing t_a1cLs -> Sing (Apply (Apply ConcatMapSym0 t_a1cLr) t_a1cLs :: [b_a1c6j])
sAnd :: Sing t_a1cLq -> Sing (Apply AndSym0 t_a1cLq :: Bool)
sOr :: Sing t_a1cLp -> Sing (Apply OrSym0 t_a1cLp :: Bool)
sAny_ :: Sing t_a1add -> Sing t_a1ade -> Sing (Apply (Apply Any_Sym0 t_a1add) t_a1ade :: Bool)
sAll :: Sing t_a1cLn -> Sing t_a1cLo -> Sing (Apply (Apply AllSym0 t_a1cLn) t_a1cLo :: Bool)
any_ :: (a_a1acT -> Bool) -> [a_a1acT] -> Bool
sScanl :: Sing t_a1cLi -> Sing t_a1cLj -> Sing t_a1cLk -> Sing (Apply (Apply (Apply ScanlSym0 t_a1cLi) t_a1cLj) t_a1cLk :: [b_a1c6t])
sScanl1 :: Sing t_a1cLl -> Sing t_a1cLm -> Sing (Apply (Apply Scanl1Sym0 t_a1cLl) t_a1cLm :: [a_a1c6A])
sScanr :: Sing t_a1cLf -> Sing t_a1cLg -> Sing t_a1cLh -> Sing (Apply (Apply (Apply ScanrSym0 t_a1cLf) t_a1cLg) t_a1cLh :: [b_a1c6F])
sScanr1 :: Sing t_a1cLd -> Sing t_a1cLe -> Sing (Apply (Apply Scanr1Sym0 t_a1cLd) t_a1cLe :: [a_a1c6N])
sMapAccumL :: Sing t_a1cLa -> Sing t_a1cLb -> Sing t_a1cLc -> Sing (Apply (Apply (Apply MapAccumLSym0 t_a1cLa) t_a1cLb) t_a1cLc :: (acc_a1c6U, [y_a1c6W]))
sMapAccumR :: Sing t_a1cL7 -> Sing t_a1cL8 -> Sing t_a1cL9 -> Sing (Apply (Apply (Apply MapAccumRSym0 t_a1cL7) t_a1cL8) t_a1cL9 :: (acc_a1c76, [y_a1c78]))
sUnfoldr :: Sing t_a1cL5 -> Sing t_a1cL6 -> Sing (Apply (Apply UnfoldrSym0 t_a1cL5) t_a1cL6 :: [a_a1c7j])
sInits :: Sing t_a1cL4 -> Sing (Apply InitsSym0 t_a1cL4 :: [[a_a1c7o]])
sTails :: Sing t_a1cL1 -> Sing (Apply TailsSym0 t_a1cL1 :: [[a_a1c7s]])
sIsPrefixOf :: SEq (KProxy :: KProxy a_a1c7v) => Sing t_a1cKZ -> Sing t_a1cL0 -> Sing (Apply (Apply IsPrefixOfSym0 t_a1cKZ) t_a1cL0 :: Bool)
sIsSuffixOf :: SEq (KProxy :: KProxy a_a1c7A) => Sing t_a1cLR -> Sing t_a1cLS -> Sing (Apply (Apply IsSuffixOfSym0 t_a1cLR) t_a1cLS :: Bool)
sIsInfixOf :: SEq (KProxy :: KProxy a_a1c7D) => Sing t_a1cL2 -> Sing t_a1cL3 -> Sing (Apply (Apply IsInfixOfSym0 t_a1cL2) t_a1cL3 :: Bool)
sElem :: SEq (KProxy :: KProxy a_a1c7G) => Sing t_a1cKX -> Sing t_a1cKY -> Sing (Apply (Apply ElemSym0 t_a1cKX) t_a1cKY :: Bool)
sNotElem :: SEq (KProxy :: KProxy a_a1c7K) => Sing t_a1cKV -> Sing t_a1cKW -> Sing (Apply (Apply NotElemSym0 t_a1cKV) t_a1cKW :: Bool)
sZip :: Sing t_a1cKT -> Sing t_a1cKU -> Sing (Apply (Apply ZipSym0 t_a1cKT) t_a1cKU :: [(a_a1c7O, b_a1c7P)])
sZip3 :: Sing t_a1cKQ -> Sing t_a1cKR -> Sing t_a1cKS -> Sing (Apply (Apply (Apply Zip3Sym0 t_a1cKQ) t_a1cKR) t_a1cKS :: [(a_a1c7U, b_a1c7V, c_a1c7W)])
sZipWith :: Sing t_a1cKN -> Sing t_a1cKO -> Sing t_a1cKP -> Sing (Apply (Apply (Apply ZipWithSym0 t_a1cKN) t_a1cKO) t_a1cKP :: [c_a1c85])
sZipWith3 :: Sing t_a1cKJ -> Sing t_a1cKK -> Sing t_a1cKL -> Sing t_a1cKM -> Sing (Apply (Apply (Apply (Apply ZipWith3Sym0 t_a1cKJ) t_a1cKK) t_a1cKL) t_a1cKM :: [d_a1c8e])
sUnzip :: Sing t_a1cKI -> Sing (Apply UnzipSym0 t_a1cKI :: ([a_a1c8m], [b_a1c8n]))
sUnzip3 :: Sing t_a1cKH -> Sing (Apply Unzip3Sym0 t_a1cKH :: ([a_a1c8t], [b_a1c8u], [c_a1c8v]))
sUnzip4 :: Sing t_a1cKG -> Sing (Apply Unzip4Sym0 t_a1cKG :: ([a_a1c8D], [b_a1c8E], [c_a1c8F], [d_a1c8G]))
sUnzip5 :: Sing t_a1cKF -> Sing (Apply Unzip5Sym0 t_a1cKF :: ([a_a1c8Q], [b_a1c8R], [c_a1c8S], [d_a1c8T], [e_a1c8U]))
sUnzip6 :: Sing t_a1cKE -> Sing (Apply Unzip6Sym0 t_a1cKE :: ([a_a1c96], [b_a1c97], [c_a1c98], [d_a1c99], [e_a1c9a], [f_a1c9b]))
sUnzip7 :: Sing t_a1cKD -> Sing (Apply Unzip7Sym0 t_a1cKD :: ([a_a1c9p], [b_a1c9q], [c_a1c9r], [d_a1c9s], [e_a1c9t], [f_a1c9u], [g_a1c9v]))
sDelete :: SEq (KProxy :: KProxy a_a1c9L) => Sing t_a1cKz -> Sing t_a1cKA -> Sing (Apply (Apply DeleteSym0 t_a1cKz) t_a1cKA :: [a_a1c9L])
(%:\\) :: SEq (KProxy :: KProxy a_a1c9M) => Sing t_a1cKB -> Sing t_a1cKC -> Sing (Apply (Apply (:\\$) t_a1cKB) t_a1cKC :: [a_a1c9M])
sDeleteBy :: Sing t_a1cKt -> Sing t_a1cKu -> Sing t_a1cKv -> Sing (Apply (Apply (Apply DeleteBySym0 t_a1cKt) t_a1cKu) t_a1cKv :: [a_a1c9N])
sDeleteFirstsBy :: Sing t_a1cKw -> Sing t_a1cKx -> Sing t_a1cKy -> Sing (Apply (Apply (Apply DeleteFirstsBySym0 t_a1cKw) t_a1cKx) t_a1cKy :: [a_a1c9S])
sSortBy :: Sing t_a1cKr -> Sing t_a1cKs -> Sing (Apply (Apply SortBySym0 t_a1cKr) t_a1cKs :: [a_a1c9U])
sInsertBy :: Sing t_a1cKo -> Sing t_a1cKp -> Sing t_a1cKq -> Sing (Apply (Apply (Apply InsertBySym0 t_a1cKo) t_a1cKp) t_a1cKq :: [a_a1c9W])
sMaximumBy :: Sing t_a1cLy -> Sing t_a1cLz -> Sing (Apply (Apply MaximumBySym0 t_a1cLy) t_a1cLz :: a_a1ca3)
sMinimumBy :: Sing t_a1cLA -> Sing t_a1cLB -> Sing (Apply (Apply MinimumBySym0 t_a1cLA) t_a1cLB :: a_a1ca9)
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_a1cKh :: TyFun [a_a1c4V] a_a1c4V)
type HeadSym1 (t_a1cKg :: [a_a1c4V]) = Head t_a1cKg
data LastSym0 (l_a1cK7 :: TyFun [a_a1c4X] a_a1c4X)
type LastSym1 (t_a1cK6 :: [a_a1c4X]) = Last t_a1cK6
data TailSym0 (l_a1cJZ :: TyFun [a_a1c51] [a_a1c51])
type TailSym1 (t_a1cJY :: [a_a1c51]) = Tail t_a1cJY
data InitSym0 (l_a1cJs :: TyFun [a_a1c53] [a_a1c53])
type InitSym1 (t_a1cJr :: [a_a1c53]) = Init t_a1cJr
data NullSym0 (l_a1cJi :: TyFun [a_a1c5b] Bool)
type NullSym1 (t_a1cJh :: [a_a1c5b]) = Null t_a1cJh
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_a1cIJ :: TyFun [a_a1c5c] [a_a1c5c])
type ReverseSym1 (t_a1cII :: [a_a1c5c]) = Reverse t_a1cII
data IntersperseSym0 (l_a1cIk :: TyFun a_a1c5k (TyFun [a_a1c5k] [a_a1c5k] -> *))
data IntersperseSym1 (l_a1cIn :: a_a1c5k) (l_a1cIm :: TyFun [a_a1c5k] [a_a1c5k])
type IntersperseSym2 (t_a1cIi :: a_a1c5k) (t_a1cIj :: [a_a1c5k]) = Intersperse t_a1cIi t_a1cIj
data IntercalateSym0 (l_a1cIz :: TyFun [a_a1c5o] (TyFun [[a_a1c5o]] [a_a1c5o] -> *))
data IntercalateSym1 (l_a1cIC :: [a_a1c5o]) (l_a1cIB :: TyFun [[a_a1c5o]] [a_a1c5o])
type IntercalateSym2 (t_a1cIx :: [a_a1c5o]) (t_a1cIy :: [[a_a1c5o]]) = Intercalate t_a1cIx t_a1cIy
data SubsequencesSym0 (l_a1cIe :: TyFun [a_a1c5r] [[a_a1c5r]])
type SubsequencesSym1 (t_a1cId :: [a_a1c5r]) = Subsequences t_a1cId
data PermutationsSym0 (l_a1cBw :: TyFun [a_a1c5D] [[a_a1c5D]])
type PermutationsSym1 (t_a1cBv :: [a_a1c5D]) = Permutations t_a1cBv
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_a1czX :: TyFun (TyFun b_a1c43 (TyFun a_a1c42 b_a1c43 -> *) -> *) (TyFun b_a1c43 (TyFun [a_a1c42] b_a1c43 -> *) -> *))
data Foldl'Sym1 (l_a1cA0 :: TyFun b_a1c43 (TyFun a_a1c42 b_a1c43 -> *) -> *) (l_a1czZ :: TyFun b_a1c43 (TyFun [a_a1c42] b_a1c43 -> *))
data Foldl'Sym2 (l_a1cA3 :: TyFun b_a1c43 (TyFun a_a1c42 b_a1c43 -> *) -> *) (l_a1cA4 :: b_a1c43) (l_a1cA2 :: TyFun [a_a1c42] b_a1c43)
type Foldl'Sym3 (t_a1czU :: TyFun b_a1c43 (TyFun a_a1c42 b_a1c43 -> *) -> *) (t_a1czV :: b_a1c43) (t_a1czW :: [a_a1c42]) = Foldl' t_a1czU t_a1czV t_a1czW
data Foldl1Sym0 (l_a1cwT :: TyFun (TyFun a_a1c64 (TyFun a_a1c64 a_a1c64 -> *) -> *) (TyFun [a_a1c64] a_a1c64 -> *))
data Foldl1Sym1 (l_a1cwW :: TyFun a_a1c64 (TyFun a_a1c64 a_a1c64 -> *) -> *) (l_a1cwV :: TyFun [a_a1c64] a_a1c64)
type Foldl1Sym2 (t_a1cwR :: TyFun a_a1c64 (TyFun a_a1c64 a_a1c64 -> *) -> *) (t_a1cwS :: [a_a1c64]) = Foldl1 t_a1cwR t_a1cwS
data Foldl1'Sym0 (l_a1cBi :: TyFun (TyFun a_a1c68 (TyFun a_a1c68 a_a1c68 -> *) -> *) (TyFun [a_a1c68] a_a1c68 -> *))
data Foldl1'Sym1 (l_a1cBl :: TyFun a_a1c68 (TyFun a_a1c68 a_a1c68 -> *) -> *) (l_a1cBk :: TyFun [a_a1c68] a_a1c68)
type Foldl1'Sym2 (t_a1cBg :: TyFun a_a1c68 (TyFun a_a1c68 a_a1c68 -> *) -> *) (t_a1cBh :: [a_a1c68]) = Foldl1' t_a1cBg t_a1cBh
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_a1cwg :: TyFun (TyFun a_a1c6c (TyFun a_a1c6c a_a1c6c -> *) -> *) (TyFun [a_a1c6c] a_a1c6c -> *))
data Foldr1Sym1 (l_a1cwj :: TyFun a_a1c6c (TyFun a_a1c6c a_a1c6c -> *) -> *) (l_a1cwi :: TyFun [a_a1c6c] a_a1c6c)
type Foldr1Sym2 (t_a1cwe :: TyFun a_a1c6c (TyFun a_a1c6c a_a1c6c -> *) -> *) (t_a1cwf :: [a_a1c6c]) = Foldr1 t_a1cwe t_a1cwf
data ConcatSym0 (l_a1cwa :: TyFun [[a_a1c6h]] [a_a1c6h])
type ConcatSym1 (t_a1cw9 :: [[a_a1c6h]]) = Concat t_a1cw9
data ConcatMapSym0 (l_a1cvW :: TyFun (TyFun a_a1c6i [b_a1c6j] -> *) (TyFun [a_a1c6i] [b_a1c6j] -> *))
data ConcatMapSym1 (l_a1cvZ :: TyFun a_a1c6i [b_a1c6j] -> *) (l_a1cvY :: TyFun [a_a1c6i] [b_a1c6j])
type ConcatMapSym2 (t_a1cvU :: TyFun a_a1c6i [b_a1c6j] -> *) (t_a1cvV :: [a_a1c6i]) = ConcatMap t_a1cvU t_a1cvV
data AndSym0 (l_a1cvP :: TyFun [Bool] Bool)
type AndSym1 (t_a1cvO :: [Bool]) = And t_a1cvO
data OrSym0 (l_a1cvJ :: TyFun [Bool] Bool)
type OrSym1 (t_a1cvI :: [Bool]) = Or t_a1cvI
data Any_Sym0 (l_a1ad0 :: TyFun (TyFun a_a1acT Bool -> *) (TyFun [a_a1acT] Bool -> *))
data Any_Sym1 (l_a1ad3 :: TyFun a_a1acT Bool -> *) (l_a1ad2 :: TyFun [a_a1acT] Bool)
type Any_Sym2 (t_a1acY :: TyFun a_a1acT Bool -> *) (t_a1acZ :: [a_a1acT]) = Any_ t_a1acY t_a1acZ
data AllSym0 (l_a1cvv :: TyFun (TyFun a_a1c6p Bool -> *) (TyFun [a_a1c6p] Bool -> *))
data AllSym1 (l_a1cvy :: TyFun a_a1c6p Bool -> *) (l_a1cvx :: TyFun [a_a1c6p] Bool)
type AllSym2 (t_a1cvt :: TyFun a_a1c6p Bool -> *) (t_a1cvu :: [a_a1c6p]) = All t_a1cvt t_a1cvu
data ScanlSym0 (l_a1cuH :: TyFun (TyFun b_a1c6t (TyFun a_a1c6u b_a1c6t -> *) -> *) (TyFun b_a1c6t (TyFun [a_a1c6u] [b_a1c6t] -> *) -> *))
data ScanlSym1 (l_a1cuK :: TyFun b_a1c6t (TyFun a_a1c6u b_a1c6t -> *) -> *) (l_a1cuJ :: TyFun b_a1c6t (TyFun [a_a1c6u] [b_a1c6t] -> *))
data ScanlSym2 (l_a1cuN :: TyFun b_a1c6t (TyFun a_a1c6u b_a1c6t -> *) -> *) (l_a1cuO :: b_a1c6t) (l_a1cuM :: TyFun [a_a1c6u] [b_a1c6t])
type ScanlSym3 (t_a1cuE :: TyFun b_a1c6t (TyFun a_a1c6u b_a1c6t -> *) -> *) (t_a1cuF :: b_a1c6t) (t_a1cuG :: [a_a1c6u]) = Scanl t_a1cuE t_a1cuF t_a1cuG
data Scanl1Sym0 (l_a1cvg :: TyFun (TyFun a_a1c6A (TyFun a_a1c6A a_a1c6A -> *) -> *) (TyFun [a_a1c6A] [a_a1c6A] -> *))
data Scanl1Sym1 (l_a1cvj :: TyFun a_a1c6A (TyFun a_a1c6A a_a1c6A -> *) -> *) (l_a1cvi :: TyFun [a_a1c6A] [a_a1c6A])
type Scanl1Sym2 (t_a1cve :: TyFun a_a1c6A (TyFun a_a1c6A a_a1c6A -> *) -> *) (t_a1cvf :: [a_a1c6A]) = Scanl1 t_a1cve t_a1cvf
data ScanrSym0 (l_a1ctW :: TyFun (TyFun a_a1c6E (TyFun b_a1c6F b_a1c6F -> *) -> *) (TyFun b_a1c6F (TyFun [a_a1c6E] [b_a1c6F] -> *) -> *))
data ScanrSym1 (l_a1ctZ :: TyFun a_a1c6E (TyFun b_a1c6F b_a1c6F -> *) -> *) (l_a1ctY :: TyFun b_a1c6F (TyFun [a_a1c6E] [b_a1c6F] -> *))
data ScanrSym2 (l_a1cu2 :: TyFun a_a1c6E (TyFun b_a1c6F b_a1c6F -> *) -> *) (l_a1cu3 :: b_a1c6F) (l_a1cu1 :: TyFun [a_a1c6E] [b_a1c6F])
type ScanrSym3 (t_a1ctT :: TyFun a_a1c6E (TyFun b_a1c6F b_a1c6F -> *) -> *) (t_a1ctU :: b_a1c6F) (t_a1ctV :: [a_a1c6E]) = Scanr t_a1ctT t_a1ctU t_a1ctV
data Scanr1Sym0 (l_a1csU :: TyFun (TyFun a_a1c6N (TyFun a_a1c6N a_a1c6N -> *) -> *) (TyFun [a_a1c6N] [a_a1c6N] -> *))
data Scanr1Sym1 (l_a1csX :: TyFun a_a1c6N (TyFun a_a1c6N a_a1c6N -> *) -> *) (l_a1csW :: TyFun [a_a1c6N] [a_a1c6N])
type Scanr1Sym2 (t_a1csS :: TyFun a_a1c6N (TyFun a_a1c6N a_a1c6N -> *) -> *) (t_a1csT :: [a_a1c6N]) = Scanr1 t_a1csS t_a1csT
data MapAccumLSym0 (l_a1cq9 :: TyFun (TyFun acc_a1c6U (TyFun x_a1c6V (acc_a1c6U, y_a1c6W) -> *) -> *) (TyFun acc_a1c6U (TyFun [x_a1c6V] (acc_a1c6U, [y_a1c6W]) -> *) -> *))
data MapAccumLSym1 (l_a1cqc :: TyFun acc_a1c6U (TyFun x_a1c6V (acc_a1c6U, y_a1c6W) -> *) -> *) (l_a1cqb :: TyFun acc_a1c6U (TyFun [x_a1c6V] (acc_a1c6U, [y_a1c6W]) -> *))
data MapAccumLSym2 (l_a1cqf :: TyFun acc_a1c6U (TyFun x_a1c6V (acc_a1c6U, y_a1c6W) -> *) -> *) (l_a1cqg :: acc_a1c6U) (l_a1cqe :: TyFun [x_a1c6V] (acc_a1c6U, [y_a1c6W]))
type MapAccumLSym3 (t_a1cq6 :: TyFun acc_a1c6U (TyFun x_a1c6V (acc_a1c6U, y_a1c6W) -> *) -> *) (t_a1cq7 :: acc_a1c6U) (t_a1cq8 :: [x_a1c6V]) = MapAccumL t_a1cq6 t_a1cq7 t_a1cq8
data MapAccumRSym0 (l_a1cnn :: TyFun (TyFun acc_a1c76 (TyFun x_a1c77 (acc_a1c76, y_a1c78) -> *) -> *) (TyFun acc_a1c76 (TyFun [x_a1c77] (acc_a1c76, [y_a1c78]) -> *) -> *))
data MapAccumRSym1 (l_a1cnq :: TyFun acc_a1c76 (TyFun x_a1c77 (acc_a1c76, y_a1c78) -> *) -> *) (l_a1cnp :: TyFun acc_a1c76 (TyFun [x_a1c77] (acc_a1c76, [y_a1c78]) -> *))
data MapAccumRSym2 (l_a1cnt :: TyFun acc_a1c76 (TyFun x_a1c77 (acc_a1c76, y_a1c78) -> *) -> *) (l_a1cnu :: acc_a1c76) (l_a1cns :: TyFun [x_a1c77] (acc_a1c76, [y_a1c78]))
type MapAccumRSym3 (t_a1cnk :: TyFun acc_a1c76 (TyFun x_a1c77 (acc_a1c76, y_a1c78) -> *) -> *) (t_a1cnl :: acc_a1c76) (t_a1cnm :: [x_a1c77]) = MapAccumR t_a1cnk t_a1cnl t_a1cnm
data UnfoldrSym0 (l_a1cmY :: TyFun (TyFun b_a1c7i (Maybe (a_a1c7j, b_a1c7i)) -> *) (TyFun b_a1c7i [a_a1c7j] -> *))
data UnfoldrSym1 (l_a1cn1 :: TyFun b_a1c7i (Maybe (a_a1c7j, b_a1c7i)) -> *) (l_a1cn0 :: TyFun b_a1c7i [a_a1c7j])
type UnfoldrSym2 (t_a1cmW :: TyFun b_a1c7i (Maybe (a_a1c7j, b_a1c7i)) -> *) (t_a1cmX :: b_a1c7i) = Unfoldr t_a1cmW t_a1cmX
data InitsSym0 (l_a1cmJ :: TyFun [a_a1c7o] [[a_a1c7o]])
type InitsSym1 (t_a1cmI :: [a_a1c7o]) = Inits t_a1cmI
data TailsSym0 (l_a1cmi :: TyFun [a_a1c7s] [[a_a1c7s]])
type TailsSym1 (t_a1cmh :: [a_a1c7s]) = Tails t_a1cmh
data IsPrefixOfSym0 (l_a1clU :: TyFun [a_a1c7v] (TyFun [a_a1c7v] Bool -> *))
data IsPrefixOfSym1 (l_a1clX :: [a_a1c7v]) (l_a1clW :: TyFun [a_a1c7v] Bool)
type IsPrefixOfSym2 (t_a1clS :: [a_a1c7v]) (t_a1clT :: [a_a1c7v]) = IsPrefixOf t_a1clS t_a1clT
data IsSuffixOfSym0 (l_a1cJ8 :: TyFun [a_a1c7A] (TyFun [a_a1c7A] Bool -> *))
data IsSuffixOfSym1 (l_a1cJb :: [a_a1c7A]) (l_a1cJa :: TyFun [a_a1c7A] Bool)
type IsSuffixOfSym2 (t_a1cJ6 :: [a_a1c7A]) (t_a1cJ7 :: [a_a1c7A]) = IsSuffixOf t_a1cJ6 t_a1cJ7
data IsInfixOfSym0 (l_a1cmz :: TyFun [a_a1c7D] (TyFun [a_a1c7D] Bool -> *))
data IsInfixOfSym1 (l_a1cmC :: [a_a1c7D]) (l_a1cmB :: TyFun [a_a1c7D] Bool)
type IsInfixOfSym2 (t_a1cmx :: [a_a1c7D]) (t_a1cmy :: [a_a1c7D]) = IsInfixOf t_a1cmx t_a1cmy
data ElemSym0 (l_a1clF :: TyFun a_a1c7G (TyFun [a_a1c7G] Bool -> *))
data ElemSym1 (l_a1clI :: a_a1c7G) (l_a1clH :: TyFun [a_a1c7G] Bool)
type ElemSym2 (t_a1clD :: a_a1c7G) (t_a1clE :: [a_a1c7G]) = Elem t_a1clD t_a1clE
data NotElemSym0 (l_a1clq :: TyFun a_a1c7K (TyFun [a_a1c7K] Bool -> *))
data NotElemSym1 (l_a1clt :: a_a1c7K) (l_a1cls :: TyFun [a_a1c7K] Bool)
type NotElemSym2 (t_a1clo :: a_a1c7K) (t_a1clp :: [a_a1c7K]) = NotElem t_a1clo t_a1clp
data ZipSym0 (l_a1cl1 :: TyFun [a_a1c7O] (TyFun [b_a1c7P] [(a_a1c7O, b_a1c7P)] -> *))
data ZipSym1 (l_a1cl4 :: [a_a1c7O]) (l_a1cl3 :: TyFun [b_a1c7P] [(a_a1c7O, b_a1c7P)])
type ZipSym2 (t_a1ckZ :: [a_a1c7O]) (t_a1cl0 :: [b_a1c7P]) = Zip t_a1ckZ t_a1cl0
data Zip3Sym0 (l_a1cjP :: TyFun [a_a1c7U] (TyFun [b_a1c7V] (TyFun [c_a1c7W] [(a_a1c7U, b_a1c7V, c_a1c7W)] -> *) -> *))
data Zip3Sym1 (l_a1cjS :: [a_a1c7U]) (l_a1cjR :: TyFun [b_a1c7V] (TyFun [c_a1c7W] [(a_a1c7U, b_a1c7V, c_a1c7W)] -> *))
data Zip3Sym2 (l_a1cjV :: [a_a1c7U]) (l_a1cjW :: [b_a1c7V]) (l_a1cjU :: TyFun [c_a1c7W] [(a_a1c7U, b_a1c7V, c_a1c7W)])
type Zip3Sym3 (t_a1cjM :: [a_a1c7U]) (t_a1cjN :: [b_a1c7V]) (t_a1cjO :: [c_a1c7W]) = Zip3 t_a1cjM t_a1cjN t_a1cjO
data ZipWithSym0 (l_a1cja :: TyFun (TyFun a_a1c83 (TyFun b_a1c84 c_a1c85 -> *) -> *) (TyFun [a_a1c83] (TyFun [b_a1c84] [c_a1c85] -> *) -> *))
data ZipWithSym1 (l_a1cjd :: TyFun a_a1c83 (TyFun b_a1c84 c_a1c85 -> *) -> *) (l_a1cjc :: TyFun [a_a1c83] (TyFun [b_a1c84] [c_a1c85] -> *))
data ZipWithSym2 (l_a1cjg :: TyFun a_a1c83 (TyFun b_a1c84 c_a1c85 -> *) -> *) (l_a1cjh :: [a_a1c83]) (l_a1cjf :: TyFun [b_a1c84] [c_a1c85])
type ZipWithSym3 (t_a1cj7 :: TyFun a_a1c83 (TyFun b_a1c84 c_a1c85 -> *) -> *) (t_a1cj8 :: [a_a1c83]) (t_a1cj9 :: [b_a1c84]) = ZipWith t_a1cj7 t_a1cj8 t_a1cj9
data ZipWith3Sym0 (l_a1chv :: TyFun (TyFun a_a1c8b (TyFun b_a1c8c (TyFun c_a1c8d d_a1c8e -> *) -> *) -> *) (TyFun [a_a1c8b] (TyFun [b_a1c8c] (TyFun [c_a1c8d] [d_a1c8e] -> *) -> *) -> *))
data ZipWith3Sym1 (l_a1chy :: TyFun a_a1c8b (TyFun b_a1c8c (TyFun c_a1c8d d_a1c8e -> *) -> *) -> *) (l_a1chx :: TyFun [a_a1c8b] (TyFun [b_a1c8c] (TyFun [c_a1c8d] [d_a1c8e] -> *) -> *))
data ZipWith3Sym2 (l_a1chB :: TyFun a_a1c8b (TyFun b_a1c8c (TyFun c_a1c8d d_a1c8e -> *) -> *) -> *) (l_a1chC :: [a_a1c8b]) (l_a1chA :: TyFun [b_a1c8c] (TyFun [c_a1c8d] [d_a1c8e] -> *))
data ZipWith3Sym3 (l_a1chF :: TyFun a_a1c8b (TyFun b_a1c8c (TyFun c_a1c8d d_a1c8e -> *) -> *) -> *) (l_a1chG :: [a_a1c8b]) (l_a1chH :: [b_a1c8c]) (l_a1chE :: TyFun [c_a1c8d] [d_a1c8e])
type ZipWith3Sym4 (t_a1chr :: TyFun a_a1c8b (TyFun b_a1c8c (TyFun c_a1c8d d_a1c8e -> *) -> *) -> *) (t_a1chs :: [a_a1c8b]) (t_a1cht :: [b_a1c8c]) (t_a1chu :: [c_a1c8d]) = ZipWith3 t_a1chr t_a1chs t_a1cht t_a1chu
data UnzipSym0 (l_a1cgY :: TyFun [(a_a1c8m, b_a1c8n)] ([a_a1c8m], [b_a1c8n]))
type UnzipSym1 (t_a1cgX :: [(a_a1c8m, b_a1c8n)]) = Unzip t_a1cgX
data Unzip3Sym0 (l_a1cgs :: TyFun [(a_a1c8t, b_a1c8u, c_a1c8v)] ([a_a1c8t], [b_a1c8u], [c_a1c8v]))
type Unzip3Sym1 (t_a1cgr :: [(a_a1c8t, b_a1c8u, c_a1c8v)]) = Unzip3 t_a1cgr
data Unzip4Sym0 (l_a1cfU :: TyFun [(a_a1c8D, b_a1c8E, c_a1c8F, d_a1c8G)] ([a_a1c8D], [b_a1c8E], [c_a1c8F], [d_a1c8G]))
type Unzip4Sym1 (t_a1cfT :: [(a_a1c8D, b_a1c8E, c_a1c8F, d_a1c8G)]) = Unzip4 t_a1cfT
data Unzip5Sym0 (l_a1cfk :: TyFun [(a_a1c8Q, b_a1c8R, c_a1c8S, d_a1c8T, e_a1c8U)] ([a_a1c8Q], [b_a1c8R], [c_a1c8S], [d_a1c8T], [e_a1c8U]))
type Unzip5Sym1 (t_a1cfj :: [(a_a1c8Q, b_a1c8R, c_a1c8S, d_a1c8T, e_a1c8U)]) = Unzip5 t_a1cfj
data Unzip6Sym0 (l_a1ceI :: TyFun [(a_a1c96, b_a1c97, c_a1c98, d_a1c99, e_a1c9a, f_a1c9b)] ([a_a1c96], [b_a1c97], [c_a1c98], [d_a1c99], [e_a1c9a], [f_a1c9b]))
type Unzip6Sym1 (t_a1ceH :: [(a_a1c96, b_a1c97, c_a1c98, d_a1c99, e_a1c9a, f_a1c9b)]) = Unzip6 t_a1ceH
data Unzip7Sym0 (l_a1ce4 :: TyFun [(a_a1c9p, b_a1c9q, c_a1c9r, d_a1c9s, e_a1c9t, f_a1c9u, g_a1c9v)] ([a_a1c9p], [b_a1c9q], [c_a1c9r], [d_a1c9s], [e_a1c9t], [f_a1c9u], [g_a1c9v]))
type Unzip7Sym1 (t_a1ce3 :: [(a_a1c9p, b_a1c9q, c_a1c9r, d_a1c9s, e_a1c9t, f_a1c9u, g_a1c9v)]) = Unzip7 t_a1ce3
data DeleteSym0 (l_a1cdF :: TyFun a_a1c9L (TyFun [a_a1c9L] [a_a1c9L] -> *))
data DeleteSym1 (l_a1cdI :: a_a1c9L) (l_a1cdH :: TyFun [a_a1c9L] [a_a1c9L])
type DeleteSym2 (t_a1cdD :: a_a1c9L) (t_a1cdE :: [a_a1c9L]) = Delete t_a1cdD t_a1cdE
data (:\\$) (l_a1cdU :: TyFun [a_a1c9M] (TyFun [a_a1c9M] [a_a1c9M] -> *))
data (:\\$$) (l_a1cdX :: [a_a1c9M]) (l_a1cdW :: TyFun [a_a1c9M] [a_a1c9M])
type (:\\$$$) (t_a1cdS :: [a_a1c9M]) (t_a1cdT :: [a_a1c9M]) = (:\\) t_a1cdS t_a1cdT
data DeleteBySym0 (l_a1ccv :: TyFun (TyFun a_a1c9N (TyFun a_a1c9N Bool -> *) -> *) (TyFun a_a1c9N (TyFun [a_a1c9N] [a_a1c9N] -> *) -> *))
data DeleteBySym1 (l_a1ccy :: TyFun a_a1c9N (TyFun a_a1c9N Bool -> *) -> *) (l_a1ccx :: TyFun a_a1c9N (TyFun [a_a1c9N] [a_a1c9N] -> *))
data DeleteBySym2 (l_a1ccB :: TyFun a_a1c9N (TyFun a_a1c9N Bool -> *) -> *) (l_a1ccC :: a_a1c9N) (l_a1ccA :: TyFun [a_a1c9N] [a_a1c9N])
type DeleteBySym3 (t_a1ccs :: TyFun a_a1c9N (TyFun a_a1c9N Bool -> *) -> *) (t_a1cct :: a_a1c9N) (t_a1ccu :: [a_a1c9N]) = DeleteBy t_a1ccs t_a1cct t_a1ccu
data DeleteFirstsBySym0 (l_a1cdg :: TyFun (TyFun a_a1c9S (TyFun a_a1c9S Bool -> *) -> *) (TyFun [a_a1c9S] (TyFun [a_a1c9S] [a_a1c9S] -> *) -> *))
data DeleteFirstsBySym1 (l_a1cdj :: TyFun a_a1c9S (TyFun a_a1c9S Bool -> *) -> *) (l_a1cdi :: TyFun [a_a1c9S] (TyFun [a_a1c9S] [a_a1c9S] -> *))
data DeleteFirstsBySym2 (l_a1cdm :: TyFun a_a1c9S (TyFun a_a1c9S Bool -> *) -> *) (l_a1cdn :: [a_a1c9S]) (l_a1cdl :: TyFun [a_a1c9S] [a_a1c9S])
type DeleteFirstsBySym3 (t_a1cdd :: TyFun a_a1c9S (TyFun a_a1c9S Bool -> *) -> *) (t_a1cde :: [a_a1c9S]) (t_a1cdf :: [a_a1c9S]) = DeleteFirstsBy t_a1cdd t_a1cde t_a1cdf
data SortBySym0 (l_a1cch :: TyFun (TyFun a_a1c9U (TyFun a_a1c9U Ordering -> *) -> *) (TyFun [a_a1c9U] [a_a1c9U] -> *))
data SortBySym1 (l_a1cck :: TyFun a_a1c9U (TyFun a_a1c9U Ordering -> *) -> *) (l_a1ccj :: TyFun [a_a1c9U] [a_a1c9U])
type SortBySym2 (t_a1ccf :: TyFun a_a1c9U (TyFun a_a1c9U Ordering -> *) -> *) (t_a1ccg :: [a_a1c9U]) = SortBy t_a1ccf t_a1ccg
data InsertBySym0 (l_a1cbg :: TyFun (TyFun a_a1c9W (TyFun a_a1c9W Ordering -> *) -> *) (TyFun a_a1c9W (TyFun [a_a1c9W] [a_a1c9W] -> *) -> *))
data InsertBySym1 (l_a1cbj :: TyFun a_a1c9W (TyFun a_a1c9W Ordering -> *) -> *) (l_a1cbi :: TyFun a_a1c9W (TyFun [a_a1c9W] [a_a1c9W] -> *))
data InsertBySym2 (l_a1cbm :: TyFun a_a1c9W (TyFun a_a1c9W Ordering -> *) -> *) (l_a1cbn :: a_a1c9W) (l_a1cbl :: TyFun [a_a1c9W] [a_a1c9W])
type InsertBySym3 (t_a1cbd :: TyFun a_a1c9W (TyFun a_a1c9W Ordering -> *) -> *) (t_a1cbe :: a_a1c9W) (t_a1cbf :: [a_a1c9W]) = InsertBy t_a1cbd t_a1cbe t_a1cbf
data MaximumBySym0 (l_a1cx8 :: TyFun (TyFun a_a1ca3 (TyFun a_a1ca3 Ordering -> *) -> *) (TyFun [a_a1ca3] a_a1ca3 -> *))
data MaximumBySym1 (l_a1cxb :: TyFun a_a1ca3 (TyFun a_a1ca3 Ordering -> *) -> *) (l_a1cxa :: TyFun [a_a1ca3] a_a1ca3)
type MaximumBySym2 (t_a1cx6 :: TyFun a_a1ca3 (TyFun a_a1ca3 Ordering -> *) -> *) (t_a1cx7 :: [a_a1ca3]) = MaximumBy t_a1cx6 t_a1cx7
data MinimumBySym0 (l_a1cyx :: TyFun (TyFun a_a1ca9 (TyFun a_a1ca9 Ordering -> *) -> *) (TyFun [a_a1ca9] a_a1ca9 -> *))
data MinimumBySym1 (l_a1cyA :: TyFun a_a1ca9 (TyFun a_a1ca9 Ordering -> *) -> *) (l_a1cyz :: TyFun [a_a1ca9] a_a1ca9)
type MinimumBySym2 (t_a1cyv :: TyFun a_a1ca9 (TyFun a_a1ca9 Ordering -> *) -> *) (t_a1cyw :: [a_a1ca9]) = MinimumBy t_a1cyv t_a1cyw
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627675126YsSym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627675126YsSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627675126YsSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627675126YsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627675145Scrutinee_1627675089Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627675145Scrutinee_1627675089Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627675145Scrutinee_1627675089Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627675145Scrutinee_1627675089Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627675205Scrutinee_1627675087Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627675205Scrutinee_1627675087Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627675205Scrutinee_1627675087Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627675205Scrutinee_1627675087Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627675284Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627675284Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627675284Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627675324Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627675324Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627675324Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627675362Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627675362Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627675362Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627675398Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627675398Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627675398Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627675432Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627675432Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627675432Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627675464Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627675464Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627675464Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627675794Scrutinee_1627675061Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627675821Scrutinee_1627675059Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627675841Scrutinee_1627675057Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627675841Scrutinee_1627675057Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627675877S'Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627675877S'Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627675877S'Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627675877S'Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627675877YsSym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627675877YsSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627675877YsSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627675877YsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627675877S''Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627675877S''Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627675877S''Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627675877S''Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627675877YSym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627675877YSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627675877YSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627675877YSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627675877X_1627675878Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627675877X_1627675878Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627675877X_1627675878Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627675877X_1627675878Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627675877X_1627675884Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627675877X_1627675884Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627675877X_1627675884Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627675877X_1627675884Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676049S'Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676049S'Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676049S'Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676049S'Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676049YSym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676049YSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676049YSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676049YSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676049S''Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676049S''Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676049S''Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676049S''Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676049YsSym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676049YsSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676049YsSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676049YsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676049X_1627676050Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676049X_1627676050Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676049X_1627676050Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676049X_1627676050Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676049X_1627676056Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676049X_1627676056Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676049X_1627676056Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676049X_1627676056Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676218XsSym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676218XsSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676218XsSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676218XsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676237Scrutinee_1627675051Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676237Scrutinee_1627675051Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676237Scrutinee_1627675051Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676237Scrutinee_1627675051Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676284Scrutinee_1627675049Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676284Scrutinee_1627675049Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676284Scrutinee_1627675049Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676284Scrutinee_1627675049Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676326Scrutinee_1627675047Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676326Scrutinee_1627675047Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676326Scrutinee_1627675047Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676423XsSym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676423XsSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676423XsSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676423XsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676475XsSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676475XsSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676475XsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676518Scrutinee_1627675091Sym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676518Scrutinee_1627675091Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676518Scrutinee_1627675091Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676518Scrutinee_1627675091Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676518Scrutinee_1627675091Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676488MaxBySym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676488MaxBySym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676488MaxBySym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676488MaxBySym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676488MaxBySym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676562XsSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676562XsSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676562XsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676605Scrutinee_1627675097Sym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676605Scrutinee_1627675097Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676605Scrutinee_1627675097Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676605Scrutinee_1627675097Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676605Scrutinee_1627675097Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676575MinBySym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676575MinBySym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676575MinBySym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676575MinBySym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676575MinBySym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676684Z'Sym5
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676684Z'Sym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676684Z'Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676684Z'Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676684Z'Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676684Z'Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676652LgoSym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676652LgoSym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676652LgoSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676652LgoSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676652LgoSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676813UsSym7
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676813UsSym6
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676813UsSym5
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676813UsSym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676813UsSym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676813UsSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676813UsSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676813UsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676813ZsSym7
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676813ZsSym6
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676813ZsSym5
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676813ZsSym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676813ZsSym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676813ZsSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676813ZsSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676813ZsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676813X_1627676814Sym7
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676813X_1627676814Sym6
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676813X_1627676814Sym5
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676813X_1627676814Sym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676813X_1627676814Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676813X_1627676814Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676813X_1627676814Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676813X_1627676814Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627677027ZsSym5
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627677027ZsSym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627677027ZsSym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627677027ZsSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627677027ZsSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627677027ZsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627677027X_1627677028Sym5
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627677027X_1627677028Sym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627677027X_1627677028Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627677027X_1627677028Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627677027X_1627677028Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627677027X_1627677028Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676759Interleave'Sym6
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676759Interleave'Sym5
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676759Interleave'Sym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676759Interleave'Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676759Interleave'Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676759Interleave'Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676759Interleave'Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676759InterleaveSym5
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676759InterleaveSym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676759InterleaveSym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676759InterleaveSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676759InterleaveSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676759InterleaveSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676738PermsSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676738PermsSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627676738PermsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627677126FSym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627677126FSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627677126FSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627677126FSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627677185RevSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627677185RevSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627677185RevSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627677231Init'Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627677231Init'Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627677231Init'Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627677231Init'Sym0
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.SortBySym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.SortBySym0
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.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.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.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.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.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.Any_Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Any_Sym0
-- | 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_a1Mv4 -> (a_a1Mv5 -> b_a1Mv4) -> Maybe a_a1Mv5 -> b_a1Mv4
sMaybe_ :: Sing t_a1Mvy -> Sing t_a1Mvz -> Sing t_a1MvA -> Sing (Apply (Apply (Apply Maybe_Sym0 t_a1Mvy) t_a1Mvz) t_a1MvA :: b_a1Mv4)
sIsJust :: Sing t_a1MSO -> Sing (Apply IsJustSym0 t_a1MSO :: Bool)
sIsNothing :: Sing t_a1MSN -> Sing (Apply IsNothingSym0 t_a1MSN :: Bool)
sFromJust :: Sing t_a1MSM -> Sing (Apply FromJustSym0 t_a1MSM :: a_a1MQx)
sFromMaybe :: Sing t_a1MSK -> Sing t_a1MSL -> Sing (Apply (Apply FromMaybeSym0 t_a1MSK) t_a1MSL :: a_a1MQz)
sListToMaybe :: Sing t_a1MSI -> Sing (Apply ListToMaybeSym0 t_a1MSI :: Maybe a_a1MQF)
sMaybeToList :: Sing t_a1MSJ -> Sing (Apply MaybeToListSym0 t_a1MSJ :: [a_a1MQD])
sCatMaybes :: Sing t_a1MSH -> Sing (Apply CatMaybesSym0 t_a1MSH :: [a_a1MQH])
sMapMaybe :: Sing t_a1MSF -> Sing t_a1MSG -> Sing (Apply (Apply MapMaybeSym0 t_a1MSF) t_a1MSG :: [b_a1MQM])
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_a1Mvd :: TyFun b_a1Mv4 (TyFun (TyFun a_a1Mv5 b_a1Mv4 -> *) (TyFun (Maybe a_a1Mv5) b_a1Mv4 -> *) -> *))
data Maybe_Sym1 (l_a1Mvg :: b_a1Mv4) (l_a1Mvf :: TyFun (TyFun a_a1Mv5 b_a1Mv4 -> *) (TyFun (Maybe a_a1Mv5) b_a1Mv4 -> *))
data Maybe_Sym2 (l_a1Mvj :: b_a1Mv4) (l_a1Mvk :: TyFun a_a1Mv5 b_a1Mv4 -> *) (l_a1Mvi :: TyFun (Maybe a_a1Mv5) b_a1Mv4)
type Maybe_Sym3 (t_a1Mva :: b_a1Mv4) (t_a1Mvb :: TyFun a_a1Mv5 b_a1Mv4 -> *) (t_a1Mvc :: Maybe a_a1Mv5) = Maybe_ t_a1Mva t_a1Mvb t_a1Mvc
data IsJustSym0 (l_a1MSz :: TyFun (Maybe a_a1MQv) Bool)
type IsJustSym1 (t_a1MSy :: Maybe a_a1MQv) = IsJust t_a1MSy
data IsNothingSym0 (l_a1MSs :: TyFun (Maybe a_a1MQw) Bool)
type IsNothingSym1 (t_a1MSr :: Maybe a_a1MQw) = IsNothing t_a1MSr
data FromJustSym0 (l_a1MSn :: TyFun (Maybe a_a1MQx) a_a1MQx)
type FromJustSym1 (t_a1MSm :: Maybe a_a1MQx) = FromJust t_a1MSm
data FromMaybeSym0 (l_a1MS1 :: TyFun a_a1MQz (TyFun (Maybe a_a1MQz) a_a1MQz -> *))
data FromMaybeSym1 (l_a1MS4 :: a_a1MQz) (l_a1MS3 :: TyFun (Maybe a_a1MQz) a_a1MQz)
type FromMaybeSym2 (t_a1MRZ :: a_a1MQz) (t_a1MS0 :: Maybe a_a1MQz) = FromMaybe t_a1MRZ t_a1MS0
data ListToMaybeSym0 (l_a1MRN :: TyFun [a_a1MQF] (Maybe a_a1MQF))
type ListToMaybeSym1 (t_a1MRM :: [a_a1MQF]) = ListToMaybe t_a1MRM
data MaybeToListSym0 (l_a1MRV :: TyFun (Maybe a_a1MQD) [a_a1MQD])
type MaybeToListSym1 (t_a1MRU :: Maybe a_a1MQD) = MaybeToList t_a1MRU
data CatMaybesSym0 (l_a1MRG :: TyFun [Maybe a_a1MQH] [a_a1MQH])
type CatMaybesSym1 (t_a1MRF :: [Maybe a_a1MQH]) = CatMaybes t_a1MRF
data MapMaybeSym0 (l_a1MQY :: TyFun (TyFun a_a1MQL (Maybe b_a1MQM) -> *) (TyFun [a_a1MQL] [b_a1MQM] -> *))
data MapMaybeSym1 (l_a1MR1 :: TyFun a_a1MQL (Maybe b_a1MQM) -> *) (l_a1MR0 :: TyFun [a_a1MQL] [b_a1MQM])
type MapMaybeSym2 (t_a1MQW :: TyFun a_a1MQL (Maybe b_a1MQM) -> *) (t_a1MQX :: [a_a1MQL]) = MapMaybe t_a1MQW t_a1MQX
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Maybe.Let1627816089RsSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Maybe.Let1627816089RsSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Maybe.Let1627816089RsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Maybe.Let1627816102Scrutinee_1627816072Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Maybe.Let1627816102Scrutinee_1627816072Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Maybe.Let1627816102Scrutinee_1627816072Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Maybe.Let1627816150Scrutinee_1627816070Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Maybe.Let1627816150Scrutinee_1627816070Sym0
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_a1Mv4 -> (a_a1Mv5 -> b_a1Mv4) -> Maybe a_a1Mv5 -> b_a1Mv4
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_a1Mvd :: TyFun b_a1Mv4 (TyFun (TyFun a_a1Mv5 b_a1Mv4 -> *) (TyFun (Maybe a_a1Mv5) b_a1Mv4 -> *) -> *))
data Maybe_Sym1 (l_a1Mvg :: b_a1Mv4) (l_a1Mvf :: TyFun (TyFun a_a1Mv5 b_a1Mv4 -> *) (TyFun (Maybe a_a1Mv5) b_a1Mv4 -> *))
data Maybe_Sym2 (l_a1Mvj :: b_a1Mv4) (l_a1Mvk :: TyFun a_a1Mv5 b_a1Mv4 -> *) (l_a1Mvi :: TyFun (Maybe a_a1Mv5) b_a1Mv4)
type Maybe_Sym3 (t_a1Mva :: b_a1Mv4) (t_a1Mvb :: TyFun a_a1Mv5 b_a1Mv4 -> *) (t_a1Mvc :: Maybe a_a1Mv5) = Maybe_ t_a1Mva t_a1Mvb t_a1Mvc
data IsJustSym0 (l_a1MSz :: TyFun (Maybe a_a1MQv) Bool)
type IsJustSym1 (t_a1MSy :: Maybe a_a1MQv) = IsJust t_a1MSy
data IsNothingSym0 (l_a1MSs :: TyFun (Maybe a_a1MQw) Bool)
type IsNothingSym1 (t_a1MSr :: Maybe a_a1MQw) = IsNothing t_a1MSr
data FromJustSym0 (l_a1MSn :: TyFun (Maybe a_a1MQx) a_a1MQx)
type FromJustSym1 (t_a1MSm :: Maybe a_a1MQx) = FromJust t_a1MSm
data FromMaybeSym0 (l_a1MS1 :: TyFun a_a1MQz (TyFun (Maybe a_a1MQz) a_a1MQz -> *))
data FromMaybeSym1 (l_a1MS4 :: a_a1MQz) (l_a1MS3 :: TyFun (Maybe a_a1MQz) a_a1MQz)
type FromMaybeSym2 (t_a1MRZ :: a_a1MQz) (t_a1MS0 :: Maybe a_a1MQz) = FromMaybe t_a1MRZ t_a1MS0
data MaybeToListSym0 (l_a1MRV :: TyFun (Maybe a_a1MQD) [a_a1MQD])
type MaybeToListSym1 (t_a1MRU :: Maybe a_a1MQD) = MaybeToList t_a1MRU
data ListToMaybeSym0 (l_a1MRN :: TyFun [a_a1MQF] (Maybe a_a1MQF))
type ListToMaybeSym1 (t_a1MRM :: [a_a1MQF]) = ListToMaybe t_a1MRM
data CatMaybesSym0 (l_a1MRG :: TyFun [Maybe a_a1MQH] [a_a1MQH])
type CatMaybesSym1 (t_a1MRF :: [Maybe a_a1MQH]) = CatMaybes t_a1MRF
data MapMaybeSym0 (l_a1MQY :: TyFun (TyFun a_a1MQL (Maybe b_a1MQM) -> *) (TyFun [a_a1MQL] [b_a1MQM] -> *))
data MapMaybeSym1 (l_a1MR1 :: TyFun a_a1MQL (Maybe b_a1MQM) -> *) (l_a1MR0 :: TyFun [a_a1MQL] [b_a1MQM])
type MapMaybeSym2 (t_a1MQW :: TyFun a_a1MQL (Maybe b_a1MQM) -> *) (t_a1MQX :: [a_a1MQL]) = MapMaybe t_a1MQW t_a1MQX
-- | Defines the promoted and singleton version of Bounded, PBounded
-- and SBounded
module Data.Singletons.Prelude.Enum
class kproxy_a1OZV ~ KProxy => PBounded (kproxy_a1OZV :: KProxy a_a1OZU) where type family MinBound :: a_a1OZU type family MaxBound :: a_a1OZU
class kproxy_a1OZW ~ KProxy => SBounded (kproxy_a1OZW :: KProxy a_a1OZU)
sMinBound :: SBounded kproxy_a1OZW => Sing (MinBoundSym0 :: a_a1OZU)
sMaxBound :: SBounded kproxy_a1OZW => Sing (MaxBoundSym0 :: a_a1OZU)
class kproxy_a1Qps ~ KProxy => PEnum (kproxy_a1Qps :: KProxy a_a1QgU) where type family Succ (arg_a1Qpt :: a_a1QgU) :: a_a1QgU type family Pred (arg_a1Qpx :: a_a1QgU) :: a_a1QgU type family ToEnum (arg_a1QpB :: Nat) :: a_a1QgU type family FromEnum (arg_a1QpF :: a_a1QgU) :: Nat type family EnumFromTo (arg_a1QpJ :: a_a1QgU) (arg_a1QpK :: a_a1QgU) :: [a_a1QgU] type family EnumFromThenTo (arg_a1QpS :: a_a1QgU) (arg_a1QpT :: a_a1QgU) (arg_a1QpU :: a_a1QgU) :: [a_a1QgU] Succ (a_a1Qqe :: a_a1QgU) = Apply Succ_1627829795Sym0 a_a1Qqe Pred (a_a1Qqr :: a_a1QgU) = Apply Pred_1627829808Sym0 a_a1Qqr EnumFromTo (a_a1QqI :: a_a1QgU) (a_a1QqJ :: a_a1QgU) = Apply (Apply EnumFromTo_1627829826Sym0 a_a1QqI) a_a1QqJ EnumFromThenTo (a_a1Qrb :: a_a1QgU) (a_a1Qrc :: a_a1QgU) (a_a1Qrd :: a_a1QgU) = Apply (Apply (Apply EnumFromThenTo_1627829856Sym0 a_a1Qrb) a_a1Qrc) a_a1Qrd
class kproxy_a1QuM ~ KProxy => SEnum (kproxy_a1QuM :: KProxy a_a1QgU) where sSucc sA_1627829787 = let lambda_a1Quy :: forall a_1627829787_a1Qqd. t_a1Qup ~ a_1627829787_a1Qqd => Sing a_1627829787_a1Qqd -> Sing (Apply SuccSym0 a_1627829787_a1Qqd :: a_a1QgU) lambda_a1Quy a_1627829787_a1Quz = 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_1627829787_a1Quz in lambda_a1Quy sA_1627829787 sPred sA_1627829800 = let lambda_a1QuA :: forall a_1627829800_a1Qqq. t_a1Quq ~ a_1627829800_a1Qqq => Sing a_1627829800_a1Qqq -> Sing (Apply PredSym0 a_1627829800_a1Qqq :: a_a1QgU) lambda_a1QuA a_1627829800_a1QuB = 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_1627829800_a1QuB in lambda_a1QuA sA_1627829800 sEnumFromTo sX sY = let lambda_a1QuD :: forall x_a1QqG y_a1QqH. (t_a1Qut ~ x_a1QqG, t_a1Quu ~ y_a1QqH) => Sing x_a1QqG -> Sing y_a1QqH -> Sing (Apply (Apply EnumFromToSym0 x_a1QqG) y_a1QqH :: [a_a1QgU]) lambda_a1QuD x_a1QuE y_a1QuF = 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_a1QuE)) (applySing (singFun1 (Proxy :: Proxy FromEnumSym0) sFromEnum) y_a1QuF)) in lambda_a1QuD sX sY sEnumFromThenTo sX1 sX2 sY = let lambda_a1QuH :: forall x1_a1Qr8 x2_a1Qr9 y_a1Qra. (t_a1Quv ~ x1_a1Qr8, t_a1Quw ~ x2_a1Qr9, t_a1Qux ~ y_a1Qra) => Sing x1_a1Qr8 -> Sing x2_a1Qr9 -> Sing y_a1Qra -> Sing (Apply (Apply (Apply EnumFromThenToSym0 x1_a1Qr8) x2_a1Qr9) y_a1Qra :: [a_a1QgU]) lambda_a1QuH x1_a1QuI x2_a1QuJ y_a1QuK = 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_a1QuI)) (applySing (singFun1 (Proxy :: Proxy FromEnumSym0) sFromEnum) x2_a1QuJ)) (applySing (singFun1 (Proxy :: Proxy FromEnumSym0) sFromEnum) y_a1QuK)) in lambda_a1QuH sX1 sX2 sY
sSucc :: SEnum kproxy_a1QuM => Sing t_a1Qup -> Sing (Apply SuccSym0 t_a1Qup :: a_a1QgU)
sPred :: SEnum kproxy_a1QuM => Sing t_a1Quq -> Sing (Apply PredSym0 t_a1Quq :: a_a1QgU)
sToEnum :: SEnum kproxy_a1QuM => Sing t_a1Qur -> Sing (Apply ToEnumSym0 t_a1Qur :: a_a1QgU)
sFromEnum :: SEnum kproxy_a1QuM => Sing t_a1Qus -> Sing (Apply FromEnumSym0 t_a1Qus :: Nat)
sEnumFromTo :: SEnum kproxy_a1QuM => Sing t_a1Qut -> Sing t_a1Quu -> Sing (Apply (Apply EnumFromToSym0 t_a1Qut) t_a1Quu :: [a_a1QgU])
sEnumFromThenTo :: SEnum kproxy_a1QuM => Sing t_a1Quv -> Sing t_a1Quw -> Sing t_a1Qux -> Sing (Apply (Apply (Apply EnumFromThenToSym0 t_a1Quv) t_a1Quw) t_a1Qux :: [a_a1QgU])
type MinBoundSym0 = MinBound
type MaxBoundSym0 = MaxBound
data SuccSym0 (l_a1Qpv :: TyFun a_a1QgU a_a1QgU)
type SuccSym1 (t_a1Qpu :: a_a1QgU) = Succ t_a1Qpu
data PredSym0 (l_a1Qpz :: TyFun a_a1QgU a_a1QgU)
type PredSym1 (t_a1Qpy :: a_a1QgU) = Pred t_a1Qpy
data ToEnumSym0 (l_a1QpD :: TyFun Nat a_a1QgU)
type ToEnumSym1 (t_a1QpC :: Nat) = ToEnum t_a1QpC
data FromEnumSym0 (l_a1QpH :: TyFun a_a1QgU Nat)
type FromEnumSym1 (t_a1QpG :: a_a1QgU) = FromEnum t_a1QpG
data EnumFromToSym0 (l_a1QpN :: TyFun a_a1QgU (TyFun a_a1QgU [a_a1QgU] -> *))
data EnumFromToSym1 (l_a1QpQ :: a_a1QgU) (l_a1QpP :: TyFun a_a1QgU [a_a1QgU])
type EnumFromToSym2 (t_a1QpL :: a_a1QgU) (t_a1QpM :: a_a1QgU) = EnumFromTo t_a1QpL t_a1QpM
data EnumFromThenToSym0 (l_a1QpY :: TyFun a_a1QgU (TyFun a_a1QgU (TyFun a_a1QgU [a_a1QgU] -> *) -> *))
data EnumFromThenToSym1 (l_a1Qq1 :: a_a1QgU) (l_a1Qq0 :: TyFun a_a1QgU (TyFun a_a1QgU [a_a1QgU] -> *))
data EnumFromThenToSym2 (l_a1Qq4 :: a_a1QgU) (l_a1Qq5 :: a_a1QgU) (l_a1Qq3 :: TyFun a_a1QgU [a_a1QgU])
type EnumFromThenToSym3 (t_a1QpV :: a_a1QgU) (t_a1QpW :: a_a1QgU) (t_a1QpX :: a_a1QgU) = EnumFromThenTo t_a1QpV t_a1QpW t_a1QpX
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.ToEnum_1627853900Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.FromEnum_1627853910Sym0
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_1627853939Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.FromEnum_1627853949Sym0
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_1627853975Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.FromEnum_1627853985Sym0
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.Let1627829304Scrutinee_1627829275Sym5
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829304Scrutinee_1627829275Sym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829304Scrutinee_1627829275Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829304Scrutinee_1627829275Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829304Scrutinee_1627829275Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829304Scrutinee_1627829275Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829341DeltaSym5
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829341DeltaSym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829341DeltaSym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829341DeltaSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829341DeltaSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829341DeltaSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829341Y'Sym5
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829341Y'Sym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829341Y'Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829341Y'Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829341Y'Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829341Y'Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829341Go_dnSym6
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829341Go_dnSym5
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829341Go_dnSym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829341Go_dnSym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829341Go_dnSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829341Go_dnSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829341Go_dnSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829486Scrutinee_1627829265Sym5
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829486Scrutinee_1627829265Sym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829486Scrutinee_1627829265Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829486Scrutinee_1627829265Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829486Scrutinee_1627829265Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829486Scrutinee_1627829265Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829523DeltaSym5
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829523DeltaSym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829523DeltaSym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829523DeltaSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829523DeltaSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829523DeltaSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829523Y'Sym5
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829523Y'Sym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829523Y'Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829523Y'Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829523Y'Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829523Y'Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829523Go_upSym6
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829523Go_upSym5
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829523Go_upSym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829523Go_upSym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829523Go_upSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829523Go_upSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829523Go_upSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829713Scrutinee_1627829251Sym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829713Scrutinee_1627829251Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829713Scrutinee_1627829251Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829713Scrutinee_1627829251Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829713Scrutinee_1627829251Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829685GoSym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829685GoSym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829685GoSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829685GoSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627829685GoSym0
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_1627829795Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Pred_1627829808Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.EnumFromTo_1627829826Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.EnumFromTo_1627829826Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.EnumFromThenTo_1627829856Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.EnumFromThenTo_1627829856Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.EnumFromThenTo_1627829856Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Succ_1627829876Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Pred_1627829887Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.ToEnum_1627829898Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.FromEnum_1627829909Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.EnumFromTo_1627829931Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.EnumFromTo_1627829931Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.EnumFromThenTo_1627829967Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.EnumFromThenTo_1627829967Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.EnumFromThenTo_1627829967Sym0
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
-- | 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_a1cLX -> Sing (Apply HeadSym0 t_a1cLX :: a_a1c4V)
sLast :: Sing t_a1cLW -> Sing (Apply LastSym0 t_a1cLW :: a_a1c4X)
sTail :: Sing t_a1cLV -> Sing (Apply TailSym0 t_a1cLV :: [a_a1c51])
sInit :: Sing t_a1cLU -> Sing (Apply InitSym0 t_a1cLU :: [a_a1c53])
sNull :: Sing t_a1cLT -> Sing (Apply NullSym0 t_a1cLT :: Bool)
sReverse :: Sing t_a1cLQ -> Sing (Apply ReverseSym0 t_a1cLQ :: [a_a1c5c])
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_a1cLw -> Sing t_a1cLx -> Sing (Apply (Apply Foldl1Sym0 t_a1cLw) t_a1cLx :: a_a1c64)
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_a1cLu -> Sing t_a1cLv -> Sing (Apply (Apply Foldr1Sym0 t_a1cLu) t_a1cLv :: a_a1c6c)
sAnd :: Sing t_a1cLq -> Sing (Apply AndSym0 t_a1cLq :: Bool)
sOr :: Sing t_a1cLp -> Sing (Apply OrSym0 t_a1cLp :: Bool)
sAny_ :: Sing t_a1add -> Sing t_a1ade -> Sing (Apply (Apply Any_Sym0 t_a1add) t_a1ade :: Bool)
sAll :: Sing t_a1cLn -> Sing t_a1cLo -> Sing (Apply (Apply AllSym0 t_a1cLn) t_a1cLo :: Bool)
sConcat :: Sing t_a1cLt -> Sing (Apply ConcatSym0 t_a1cLt :: [a_a1c6h])
sConcatMap :: Sing t_a1cLr -> Sing t_a1cLs -> Sing (Apply (Apply ConcatMapSym0 t_a1cLr) t_a1cLs :: [b_a1c6j])
sScanl :: Sing t_a1cLi -> Sing t_a1cLj -> Sing t_a1cLk -> Sing (Apply (Apply (Apply ScanlSym0 t_a1cLi) t_a1cLj) t_a1cLk :: [b_a1c6t])
sScanl1 :: Sing t_a1cLl -> Sing t_a1cLm -> Sing (Apply (Apply Scanl1Sym0 t_a1cLl) t_a1cLm :: [a_a1c6A])
sScanr :: Sing t_a1cLf -> Sing t_a1cLg -> Sing t_a1cLh -> Sing (Apply (Apply (Apply ScanrSym0 t_a1cLf) t_a1cLg) t_a1cLh :: [b_a1c6F])
sScanr1 :: Sing t_a1cLd -> Sing t_a1cLe -> Sing (Apply (Apply Scanr1Sym0 t_a1cLd) t_a1cLe :: [a_a1c6N])
sElem :: SEq (KProxy :: KProxy a_a1c7G) => Sing t_a1cKX -> Sing t_a1cKY -> Sing (Apply (Apply ElemSym0 t_a1cKX) t_a1cKY :: Bool)
sNotElem :: SEq (KProxy :: KProxy a_a1c7K) => Sing t_a1cKV -> Sing t_a1cKW -> Sing (Apply (Apply NotElemSym0 t_a1cKV) t_a1cKW :: Bool)
sZip :: Sing t_a1cKT -> Sing t_a1cKU -> Sing (Apply (Apply ZipSym0 t_a1cKT) t_a1cKU :: [(a_a1c7O, b_a1c7P)])
sZip3 :: Sing t_a1cKQ -> Sing t_a1cKR -> Sing t_a1cKS -> Sing (Apply (Apply (Apply Zip3Sym0 t_a1cKQ) t_a1cKR) t_a1cKS :: [(a_a1c7U, b_a1c7V, c_a1c7W)])
sZipWith :: Sing t_a1cKN -> Sing t_a1cKO -> Sing t_a1cKP -> Sing (Apply (Apply (Apply ZipWithSym0 t_a1cKN) t_a1cKO) t_a1cKP :: [c_a1c85])
sZipWith3 :: Sing t_a1cKJ -> Sing t_a1cKK -> Sing t_a1cKL -> Sing t_a1cKM -> Sing (Apply (Apply (Apply (Apply ZipWith3Sym0 t_a1cKJ) t_a1cKK) t_a1cKL) t_a1cKM :: [d_a1c8e])
sUnzip :: Sing t_a1cKI -> Sing (Apply UnzipSym0 t_a1cKI :: ([a_a1c8m], [b_a1c8n]))
sUnzip3 :: Sing t_a1cKH -> Sing (Apply Unzip3Sym0 t_a1cKH :: ([a_a1c8t], [b_a1c8u], [c_a1c8v]))
sMaybe_ :: Sing t_a1Mvy -> Sing t_a1Mvz -> Sing t_a1MvA -> Sing (Apply (Apply (Apply Maybe_Sym0 t_a1Mvy) t_a1Mvz) t_a1MvA :: b_a1Mv4)
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_a1Mv4 -> (a_a1Mv5 -> b_a1Mv4) -> Maybe a_a1Mv5 -> b_a1Mv4
bool_ :: a_aFKx -> a_aFKx -> Bool -> a_aFKx
any_ :: (a_a1acT -> Bool) -> [a_a1acT] -> 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_a1Mvd :: TyFun b_a1Mv4 (TyFun (TyFun a_a1Mv5 b_a1Mv4 -> *) (TyFun (Maybe a_a1Mv5) b_a1Mv4 -> *) -> *))
data Maybe_Sym1 (l_a1Mvg :: b_a1Mv4) (l_a1Mvf :: TyFun (TyFun a_a1Mv5 b_a1Mv4 -> *) (TyFun (Maybe a_a1Mv5) b_a1Mv4 -> *))
data Maybe_Sym2 (l_a1Mvj :: b_a1Mv4) (l_a1Mvk :: TyFun a_a1Mv5 b_a1Mv4 -> *) (l_a1Mvi :: TyFun (Maybe a_a1Mv5) b_a1Mv4)
type Maybe_Sym3 (t_a1Mva :: b_a1Mv4) (t_a1Mvb :: TyFun a_a1Mv5 b_a1Mv4 -> *) (t_a1Mvc :: Maybe a_a1Mv5) = Maybe_ t_a1Mva t_a1Mvb t_a1Mvc
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_a1cIJ :: TyFun [a_a1c5c] [a_a1c5c])
type ReverseSym1 (t_a1cII :: [a_a1c5c]) = Reverse t_a1cII
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_a1cKh :: TyFun [a_a1c4V] a_a1c4V)
type HeadSym1 (t_a1cKg :: [a_a1c4V]) = Head t_a1cKg
data LastSym0 (l_a1cK7 :: TyFun [a_a1c4X] a_a1c4X)
type LastSym1 (t_a1cK6 :: [a_a1c4X]) = Last t_a1cK6
data TailSym0 (l_a1cJZ :: TyFun [a_a1c51] [a_a1c51])
type TailSym1 (t_a1cJY :: [a_a1c51]) = Tail t_a1cJY
data InitSym0 (l_a1cJs :: TyFun [a_a1c53] [a_a1c53])
type InitSym1 (t_a1cJr :: [a_a1c53]) = Init t_a1cJr
data NullSym0 (l_a1cJi :: TyFun [a_a1c5b] Bool)
type NullSym1 (t_a1cJh :: [a_a1c5b]) = Null t_a1cJh
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_a1cwT :: TyFun (TyFun a_a1c64 (TyFun a_a1c64 a_a1c64 -> *) -> *) (TyFun [a_a1c64] a_a1c64 -> *))
data Foldl1Sym1 (l_a1cwW :: TyFun a_a1c64 (TyFun a_a1c64 a_a1c64 -> *) -> *) (l_a1cwV :: TyFun [a_a1c64] a_a1c64)
type Foldl1Sym2 (t_a1cwR :: TyFun a_a1c64 (TyFun a_a1c64 a_a1c64 -> *) -> *) (t_a1cwS :: [a_a1c64]) = Foldl1 t_a1cwR t_a1cwS
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_a1cwg :: TyFun (TyFun a_a1c6c (TyFun a_a1c6c a_a1c6c -> *) -> *) (TyFun [a_a1c6c] a_a1c6c -> *))
data Foldr1Sym1 (l_a1cwj :: TyFun a_a1c6c (TyFun a_a1c6c a_a1c6c -> *) -> *) (l_a1cwi :: TyFun [a_a1c6c] a_a1c6c)
type Foldr1Sym2 (t_a1cwe :: TyFun a_a1c6c (TyFun a_a1c6c a_a1c6c -> *) -> *) (t_a1cwf :: [a_a1c6c]) = Foldr1 t_a1cwe t_a1cwf
data ConcatSym0 (l_a1cwa :: TyFun [[a_a1c6h]] [a_a1c6h])
type ConcatSym1 (t_a1cw9 :: [[a_a1c6h]]) = Concat t_a1cw9
data ConcatMapSym0 (l_a1cvW :: TyFun (TyFun a_a1c6i [b_a1c6j] -> *) (TyFun [a_a1c6i] [b_a1c6j] -> *))
data ConcatMapSym1 (l_a1cvZ :: TyFun a_a1c6i [b_a1c6j] -> *) (l_a1cvY :: TyFun [a_a1c6i] [b_a1c6j])
type ConcatMapSym2 (t_a1cvU :: TyFun a_a1c6i [b_a1c6j] -> *) (t_a1cvV :: [a_a1c6i]) = ConcatMap t_a1cvU t_a1cvV
data AndSym0 (l_a1cvP :: TyFun [Bool] Bool)
type AndSym1 (t_a1cvO :: [Bool]) = And t_a1cvO
data OrSym0 (l_a1cvJ :: TyFun [Bool] Bool)
type OrSym1 (t_a1cvI :: [Bool]) = Or t_a1cvI
data Any_Sym0 (l_a1ad0 :: TyFun (TyFun a_a1acT Bool -> *) (TyFun [a_a1acT] Bool -> *))
data Any_Sym1 (l_a1ad3 :: TyFun a_a1acT Bool -> *) (l_a1ad2 :: TyFun [a_a1acT] Bool)
type Any_Sym2 (t_a1acY :: TyFun a_a1acT Bool -> *) (t_a1acZ :: [a_a1acT]) = Any_ t_a1acY t_a1acZ
data AllSym0 (l_a1cvv :: TyFun (TyFun a_a1c6p Bool -> *) (TyFun [a_a1c6p] Bool -> *))
data AllSym1 (l_a1cvy :: TyFun a_a1c6p Bool -> *) (l_a1cvx :: TyFun [a_a1c6p] Bool)
type AllSym2 (t_a1cvt :: TyFun a_a1c6p Bool -> *) (t_a1cvu :: [a_a1c6p]) = All t_a1cvt t_a1cvu
data ScanlSym0 (l_a1cuH :: TyFun (TyFun b_a1c6t (TyFun a_a1c6u b_a1c6t -> *) -> *) (TyFun b_a1c6t (TyFun [a_a1c6u] [b_a1c6t] -> *) -> *))
data ScanlSym1 (l_a1cuK :: TyFun b_a1c6t (TyFun a_a1c6u b_a1c6t -> *) -> *) (l_a1cuJ :: TyFun b_a1c6t (TyFun [a_a1c6u] [b_a1c6t] -> *))
data ScanlSym2 (l_a1cuN :: TyFun b_a1c6t (TyFun a_a1c6u b_a1c6t -> *) -> *) (l_a1cuO :: b_a1c6t) (l_a1cuM :: TyFun [a_a1c6u] [b_a1c6t])
type ScanlSym3 (t_a1cuE :: TyFun b_a1c6t (TyFun a_a1c6u b_a1c6t -> *) -> *) (t_a1cuF :: b_a1c6t) (t_a1cuG :: [a_a1c6u]) = Scanl t_a1cuE t_a1cuF t_a1cuG
data Scanl1Sym0 (l_a1cvg :: TyFun (TyFun a_a1c6A (TyFun a_a1c6A a_a1c6A -> *) -> *) (TyFun [a_a1c6A] [a_a1c6A] -> *))
data Scanl1Sym1 (l_a1cvj :: TyFun a_a1c6A (TyFun a_a1c6A a_a1c6A -> *) -> *) (l_a1cvi :: TyFun [a_a1c6A] [a_a1c6A])
type Scanl1Sym2 (t_a1cve :: TyFun a_a1c6A (TyFun a_a1c6A a_a1c6A -> *) -> *) (t_a1cvf :: [a_a1c6A]) = Scanl1 t_a1cve t_a1cvf
data ScanrSym0 (l_a1ctW :: TyFun (TyFun a_a1c6E (TyFun b_a1c6F b_a1c6F -> *) -> *) (TyFun b_a1c6F (TyFun [a_a1c6E] [b_a1c6F] -> *) -> *))
data ScanrSym1 (l_a1ctZ :: TyFun a_a1c6E (TyFun b_a1c6F b_a1c6F -> *) -> *) (l_a1ctY :: TyFun b_a1c6F (TyFun [a_a1c6E] [b_a1c6F] -> *))
data ScanrSym2 (l_a1cu2 :: TyFun a_a1c6E (TyFun b_a1c6F b_a1c6F -> *) -> *) (l_a1cu3 :: b_a1c6F) (l_a1cu1 :: TyFun [a_a1c6E] [b_a1c6F])
type ScanrSym3 (t_a1ctT :: TyFun a_a1c6E (TyFun b_a1c6F b_a1c6F -> *) -> *) (t_a1ctU :: b_a1c6F) (t_a1ctV :: [a_a1c6E]) = Scanr t_a1ctT t_a1ctU t_a1ctV
data Scanr1Sym0 (l_a1csU :: TyFun (TyFun a_a1c6N (TyFun a_a1c6N a_a1c6N -> *) -> *) (TyFun [a_a1c6N] [a_a1c6N] -> *))
data Scanr1Sym1 (l_a1csX :: TyFun a_a1c6N (TyFun a_a1c6N a_a1c6N -> *) -> *) (l_a1csW :: TyFun [a_a1c6N] [a_a1c6N])
type Scanr1Sym2 (t_a1csS :: TyFun a_a1c6N (TyFun a_a1c6N a_a1c6N -> *) -> *) (t_a1csT :: [a_a1c6N]) = Scanr1 t_a1csS t_a1csT
data ElemSym0 (l_a1clF :: TyFun a_a1c7G (TyFun [a_a1c7G] Bool -> *))
data ElemSym1 (l_a1clI :: a_a1c7G) (l_a1clH :: TyFun [a_a1c7G] Bool)
type ElemSym2 (t_a1clD :: a_a1c7G) (t_a1clE :: [a_a1c7G]) = Elem t_a1clD t_a1clE
data NotElemSym0 (l_a1clq :: TyFun a_a1c7K (TyFun [a_a1c7K] Bool -> *))
data NotElemSym1 (l_a1clt :: a_a1c7K) (l_a1cls :: TyFun [a_a1c7K] Bool)
type NotElemSym2 (t_a1clo :: a_a1c7K) (t_a1clp :: [a_a1c7K]) = NotElem t_a1clo t_a1clp
data ZipSym0 (l_a1cl1 :: TyFun [a_a1c7O] (TyFun [b_a1c7P] [(a_a1c7O, b_a1c7P)] -> *))
data ZipSym1 (l_a1cl4 :: [a_a1c7O]) (l_a1cl3 :: TyFun [b_a1c7P] [(a_a1c7O, b_a1c7P)])
type ZipSym2 (t_a1ckZ :: [a_a1c7O]) (t_a1cl0 :: [b_a1c7P]) = Zip t_a1ckZ t_a1cl0
data Zip3Sym0 (l_a1cjP :: TyFun [a_a1c7U] (TyFun [b_a1c7V] (TyFun [c_a1c7W] [(a_a1c7U, b_a1c7V, c_a1c7W)] -> *) -> *))
data Zip3Sym1 (l_a1cjS :: [a_a1c7U]) (l_a1cjR :: TyFun [b_a1c7V] (TyFun [c_a1c7W] [(a_a1c7U, b_a1c7V, c_a1c7W)] -> *))
data Zip3Sym2 (l_a1cjV :: [a_a1c7U]) (l_a1cjW :: [b_a1c7V]) (l_a1cjU :: TyFun [c_a1c7W] [(a_a1c7U, b_a1c7V, c_a1c7W)])
type Zip3Sym3 (t_a1cjM :: [a_a1c7U]) (t_a1cjN :: [b_a1c7V]) (t_a1cjO :: [c_a1c7W]) = Zip3 t_a1cjM t_a1cjN t_a1cjO
data ZipWithSym0 (l_a1cja :: TyFun (TyFun a_a1c83 (TyFun b_a1c84 c_a1c85 -> *) -> *) (TyFun [a_a1c83] (TyFun [b_a1c84] [c_a1c85] -> *) -> *))
data ZipWithSym1 (l_a1cjd :: TyFun a_a1c83 (TyFun b_a1c84 c_a1c85 -> *) -> *) (l_a1cjc :: TyFun [a_a1c83] (TyFun [b_a1c84] [c_a1c85] -> *))
data ZipWithSym2 (l_a1cjg :: TyFun a_a1c83 (TyFun b_a1c84 c_a1c85 -> *) -> *) (l_a1cjh :: [a_a1c83]) (l_a1cjf :: TyFun [b_a1c84] [c_a1c85])
type ZipWithSym3 (t_a1cj7 :: TyFun a_a1c83 (TyFun b_a1c84 c_a1c85 -> *) -> *) (t_a1cj8 :: [a_a1c83]) (t_a1cj9 :: [b_a1c84]) = ZipWith t_a1cj7 t_a1cj8 t_a1cj9
data ZipWith3Sym0 (l_a1chv :: TyFun (TyFun a_a1c8b (TyFun b_a1c8c (TyFun c_a1c8d d_a1c8e -> *) -> *) -> *) (TyFun [a_a1c8b] (TyFun [b_a1c8c] (TyFun [c_a1c8d] [d_a1c8e] -> *) -> *) -> *))
data ZipWith3Sym1 (l_a1chy :: TyFun a_a1c8b (TyFun b_a1c8c (TyFun c_a1c8d d_a1c8e -> *) -> *) -> *) (l_a1chx :: TyFun [a_a1c8b] (TyFun [b_a1c8c] (TyFun [c_a1c8d] [d_a1c8e] -> *) -> *))
data ZipWith3Sym2 (l_a1chB :: TyFun a_a1c8b (TyFun b_a1c8c (TyFun c_a1c8d d_a1c8e -> *) -> *) -> *) (l_a1chC :: [a_a1c8b]) (l_a1chA :: TyFun [b_a1c8c] (TyFun [c_a1c8d] [d_a1c8e] -> *))
data ZipWith3Sym3 (l_a1chF :: TyFun a_a1c8b (TyFun b_a1c8c (TyFun c_a1c8d d_a1c8e -> *) -> *) -> *) (l_a1chG :: [a_a1c8b]) (l_a1chH :: [b_a1c8c]) (l_a1chE :: TyFun [c_a1c8d] [d_a1c8e])
data UnzipSym0 (l_a1cgY :: TyFun [(a_a1c8m, b_a1c8n)] ([a_a1c8m], [b_a1c8n]))
type UnzipSym1 (t_a1cgX :: [(a_a1c8m, b_a1c8n)]) = Unzip t_a1cgX
-- | Exports promoted versions of Enum and Bounded
module Data.Promotion.Prelude.Enum
class kproxy_a1OZV ~ KProxy => PBounded (kproxy_a1OZV :: KProxy a_a1OZU) where type family MinBound :: a_a1OZU type family MaxBound :: a_a1OZU
class kproxy_a1Qps ~ KProxy => PEnum (kproxy_a1Qps :: KProxy a_a1QgU) where type family Succ (arg_a1Qpt :: a_a1QgU) :: a_a1QgU type family Pred (arg_a1Qpx :: a_a1QgU) :: a_a1QgU type family ToEnum (arg_a1QpB :: Nat) :: a_a1QgU type family FromEnum (arg_a1QpF :: a_a1QgU) :: Nat type family EnumFromTo (arg_a1QpJ :: a_a1QgU) (arg_a1QpK :: a_a1QgU) :: [a_a1QgU] type family EnumFromThenTo (arg_a1QpS :: a_a1QgU) (arg_a1QpT :: a_a1QgU) (arg_a1QpU :: a_a1QgU) :: [a_a1QgU] Succ (a_a1Qqe :: a_a1QgU) = Apply Succ_1627829795Sym0 a_a1Qqe Pred (a_a1Qqr :: a_a1QgU) = Apply Pred_1627829808Sym0 a_a1Qqr EnumFromTo (a_a1QqI :: a_a1QgU) (a_a1QqJ :: a_a1QgU) = Apply (Apply EnumFromTo_1627829826Sym0 a_a1QqI) a_a1QqJ EnumFromThenTo (a_a1Qrb :: a_a1QgU) (a_a1Qrc :: a_a1QgU) (a_a1Qrd :: a_a1QgU) = Apply (Apply (Apply EnumFromThenTo_1627829856Sym0 a_a1Qrb) a_a1Qrc) a_a1Qrd
type MinBoundSym0 = MinBound
type MaxBoundSym0 = MaxBound
data SuccSym0 (l_a1Qpv :: TyFun a_a1QgU a_a1QgU)
type SuccSym1 (t_a1Qpu :: a_a1QgU) = Succ t_a1Qpu
data PredSym0 (l_a1Qpz :: TyFun a_a1QgU a_a1QgU)
type PredSym1 (t_a1Qpy :: a_a1QgU) = Pred t_a1Qpy
data ToEnumSym0 (l_a1QpD :: TyFun Nat a_a1QgU)
type ToEnumSym1 (t_a1QpC :: Nat) = ToEnum t_a1QpC
data FromEnumSym0 (l_a1QpH :: TyFun a_a1QgU Nat)
type FromEnumSym1 (t_a1QpG :: a_a1QgU) = FromEnum t_a1QpG
data EnumFromToSym0 (l_a1QpN :: TyFun a_a1QgU (TyFun a_a1QgU [a_a1QgU] -> *))
data EnumFromToSym1 (l_a1QpQ :: a_a1QgU) (l_a1QpP :: TyFun a_a1QgU [a_a1QgU])
type EnumFromToSym2 (t_a1QpL :: a_a1QgU) (t_a1QpM :: a_a1QgU) = EnumFromTo t_a1QpL t_a1QpM
data EnumFromThenToSym0 (l_a1QpY :: TyFun a_a1QgU (TyFun a_a1QgU (TyFun a_a1QgU [a_a1QgU] -> *) -> *))
data EnumFromThenToSym1 (l_a1Qq1 :: a_a1QgU) (l_a1Qq0 :: TyFun a_a1QgU (TyFun a_a1QgU [a_a1QgU] -> *))
data EnumFromThenToSym2 (l_a1Qq4 :: a_a1QgU) (l_a1Qq5 :: a_a1QgU) (l_a1Qq3 :: TyFun a_a1QgU [a_a1QgU])
type EnumFromThenToSym3 (t_a1QpV :: a_a1QgU) (t_a1QpW :: a_a1QgU) (t_a1QpX :: a_a1QgU) = EnumFromThenTo t_a1QpV t_a1QpW t_a1QpX
-- | 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
-- | 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_a1acT -> Bool) -> [a_a1acT] -> 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_a1cKh :: TyFun [a_a1c4V] a_a1c4V)
type HeadSym1 (t_a1cKg :: [a_a1c4V]) = Head t_a1cKg
data LastSym0 (l_a1cK7 :: TyFun [a_a1c4X] a_a1c4X)
type LastSym1 (t_a1cK6 :: [a_a1c4X]) = Last t_a1cK6
data TailSym0 (l_a1cJZ :: TyFun [a_a1c51] [a_a1c51])
type TailSym1 (t_a1cJY :: [a_a1c51]) = Tail t_a1cJY
data InitSym0 (l_a1cJs :: TyFun [a_a1c53] [a_a1c53])
type InitSym1 (t_a1cJr :: [a_a1c53]) = Init t_a1cJr
data NullSym0 (l_a1cJi :: TyFun [a_a1c5b] Bool)
type NullSym1 (t_a1cJh :: [a_a1c5b]) = Null t_a1cJh
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_a1cIJ :: TyFun [a_a1c5c] [a_a1c5c])
type ReverseSym1 (t_a1cII :: [a_a1c5c]) = Reverse t_a1cII
data IntersperseSym0 (l_a1cIk :: TyFun a_a1c5k (TyFun [a_a1c5k] [a_a1c5k] -> *))
data IntersperseSym1 (l_a1cIn :: a_a1c5k) (l_a1cIm :: TyFun [a_a1c5k] [a_a1c5k])
type IntersperseSym2 (t_a1cIi :: a_a1c5k) (t_a1cIj :: [a_a1c5k]) = Intersperse t_a1cIi t_a1cIj
data IntercalateSym0 (l_a1cIz :: TyFun [a_a1c5o] (TyFun [[a_a1c5o]] [a_a1c5o] -> *))
data IntercalateSym1 (l_a1cIC :: [a_a1c5o]) (l_a1cIB :: TyFun [[a_a1c5o]] [a_a1c5o])
type IntercalateSym2 (t_a1cIx :: [a_a1c5o]) (t_a1cIy :: [[a_a1c5o]]) = Intercalate t_a1cIx t_a1cIy
data SubsequencesSym0 (l_a1cIe :: TyFun [a_a1c5r] [[a_a1c5r]])
type SubsequencesSym1 (t_a1cId :: [a_a1c5r]) = Subsequences t_a1cId
data PermutationsSym0 (l_a1cBw :: TyFun [a_a1c5D] [[a_a1c5D]])
type PermutationsSym1 (t_a1cBv :: [a_a1c5D]) = Permutations t_a1cBv
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_a1czX :: TyFun (TyFun b_a1c43 (TyFun a_a1c42 b_a1c43 -> *) -> *) (TyFun b_a1c43 (TyFun [a_a1c42] b_a1c43 -> *) -> *))
data Foldl'Sym1 (l_a1cA0 :: TyFun b_a1c43 (TyFun a_a1c42 b_a1c43 -> *) -> *) (l_a1czZ :: TyFun b_a1c43 (TyFun [a_a1c42] b_a1c43 -> *))
data Foldl'Sym2 (l_a1cA3 :: TyFun b_a1c43 (TyFun a_a1c42 b_a1c43 -> *) -> *) (l_a1cA4 :: b_a1c43) (l_a1cA2 :: TyFun [a_a1c42] b_a1c43)
type Foldl'Sym3 (t_a1czU :: TyFun b_a1c43 (TyFun a_a1c42 b_a1c43 -> *) -> *) (t_a1czV :: b_a1c43) (t_a1czW :: [a_a1c42]) = Foldl' t_a1czU t_a1czV t_a1czW
data Foldl1Sym0 (l_a1cwT :: TyFun (TyFun a_a1c64 (TyFun a_a1c64 a_a1c64 -> *) -> *) (TyFun [a_a1c64] a_a1c64 -> *))
data Foldl1Sym1 (l_a1cwW :: TyFun a_a1c64 (TyFun a_a1c64 a_a1c64 -> *) -> *) (l_a1cwV :: TyFun [a_a1c64] a_a1c64)
type Foldl1Sym2 (t_a1cwR :: TyFun a_a1c64 (TyFun a_a1c64 a_a1c64 -> *) -> *) (t_a1cwS :: [a_a1c64]) = Foldl1 t_a1cwR t_a1cwS
data Foldl1'Sym0 (l_a1cBi :: TyFun (TyFun a_a1c68 (TyFun a_a1c68 a_a1c68 -> *) -> *) (TyFun [a_a1c68] a_a1c68 -> *))
data Foldl1'Sym1 (l_a1cBl :: TyFun a_a1c68 (TyFun a_a1c68 a_a1c68 -> *) -> *) (l_a1cBk :: TyFun [a_a1c68] a_a1c68)
type Foldl1'Sym2 (t_a1cBg :: TyFun a_a1c68 (TyFun a_a1c68 a_a1c68 -> *) -> *) (t_a1cBh :: [a_a1c68]) = Foldl1' t_a1cBg t_a1cBh
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_a1cwg :: TyFun (TyFun a_a1c6c (TyFun a_a1c6c a_a1c6c -> *) -> *) (TyFun [a_a1c6c] a_a1c6c -> *))
data Foldr1Sym1 (l_a1cwj :: TyFun a_a1c6c (TyFun a_a1c6c a_a1c6c -> *) -> *) (l_a1cwi :: TyFun [a_a1c6c] a_a1c6c)
type Foldr1Sym2 (t_a1cwe :: TyFun a_a1c6c (TyFun a_a1c6c a_a1c6c -> *) -> *) (t_a1cwf :: [a_a1c6c]) = Foldr1 t_a1cwe t_a1cwf
data ConcatSym0 (l_a1cwa :: TyFun [[a_a1c6h]] [a_a1c6h])
type ConcatSym1 (t_a1cw9 :: [[a_a1c6h]]) = Concat t_a1cw9
data ConcatMapSym0 (l_a1cvW :: TyFun (TyFun a_a1c6i [b_a1c6j] -> *) (TyFun [a_a1c6i] [b_a1c6j] -> *))
data ConcatMapSym1 (l_a1cvZ :: TyFun a_a1c6i [b_a1c6j] -> *) (l_a1cvY :: TyFun [a_a1c6i] [b_a1c6j])
type ConcatMapSym2 (t_a1cvU :: TyFun a_a1c6i [b_a1c6j] -> *) (t_a1cvV :: [a_a1c6i]) = ConcatMap t_a1cvU t_a1cvV
data AndSym0 (l_a1cvP :: TyFun [Bool] Bool)
type AndSym1 (t_a1cvO :: [Bool]) = And t_a1cvO
data OrSym0 (l_a1cvJ :: TyFun [Bool] Bool)
type OrSym1 (t_a1cvI :: [Bool]) = Or t_a1cvI
data Any_Sym0 (l_a1ad0 :: TyFun (TyFun a_a1acT Bool -> *) (TyFun [a_a1acT] Bool -> *))
data Any_Sym1 (l_a1ad3 :: TyFun a_a1acT Bool -> *) (l_a1ad2 :: TyFun [a_a1acT] Bool)
type Any_Sym2 (t_a1acY :: TyFun a_a1acT Bool -> *) (t_a1acZ :: [a_a1acT]) = Any_ t_a1acY t_a1acZ
data AllSym0 (l_a1cvv :: TyFun (TyFun a_a1c6p Bool -> *) (TyFun [a_a1c6p] Bool -> *))
data AllSym1 (l_a1cvy :: TyFun a_a1c6p Bool -> *) (l_a1cvx :: TyFun [a_a1c6p] Bool)
type AllSym2 (t_a1cvt :: TyFun a_a1c6p Bool -> *) (t_a1cvu :: [a_a1c6p]) = All t_a1cvt t_a1cvu
data ScanlSym0 (l_a1cuH :: TyFun (TyFun b_a1c6t (TyFun a_a1c6u b_a1c6t -> *) -> *) (TyFun b_a1c6t (TyFun [a_a1c6u] [b_a1c6t] -> *) -> *))
data ScanlSym1 (l_a1cuK :: TyFun b_a1c6t (TyFun a_a1c6u b_a1c6t -> *) -> *) (l_a1cuJ :: TyFun b_a1c6t (TyFun [a_a1c6u] [b_a1c6t] -> *))
data ScanlSym2 (l_a1cuN :: TyFun b_a1c6t (TyFun a_a1c6u b_a1c6t -> *) -> *) (l_a1cuO :: b_a1c6t) (l_a1cuM :: TyFun [a_a1c6u] [b_a1c6t])
type ScanlSym3 (t_a1cuE :: TyFun b_a1c6t (TyFun a_a1c6u b_a1c6t -> *) -> *) (t_a1cuF :: b_a1c6t) (t_a1cuG :: [a_a1c6u]) = Scanl t_a1cuE t_a1cuF t_a1cuG
data Scanl1Sym0 (l_a1cvg :: TyFun (TyFun a_a1c6A (TyFun a_a1c6A a_a1c6A -> *) -> *) (TyFun [a_a1c6A] [a_a1c6A] -> *))
data Scanl1Sym1 (l_a1cvj :: TyFun a_a1c6A (TyFun a_a1c6A a_a1c6A -> *) -> *) (l_a1cvi :: TyFun [a_a1c6A] [a_a1c6A])
type Scanl1Sym2 (t_a1cve :: TyFun a_a1c6A (TyFun a_a1c6A a_a1c6A -> *) -> *) (t_a1cvf :: [a_a1c6A]) = Scanl1 t_a1cve t_a1cvf
data ScanrSym0 (l_a1ctW :: TyFun (TyFun a_a1c6E (TyFun b_a1c6F b_a1c6F -> *) -> *) (TyFun b_a1c6F (TyFun [a_a1c6E] [b_a1c6F] -> *) -> *))
data ScanrSym1 (l_a1ctZ :: TyFun a_a1c6E (TyFun b_a1c6F b_a1c6F -> *) -> *) (l_a1ctY :: TyFun b_a1c6F (TyFun [a_a1c6E] [b_a1c6F] -> *))
data ScanrSym2 (l_a1cu2 :: TyFun a_a1c6E (TyFun b_a1c6F b_a1c6F -> *) -> *) (l_a1cu3 :: b_a1c6F) (l_a1cu1 :: TyFun [a_a1c6E] [b_a1c6F])
type ScanrSym3 (t_a1ctT :: TyFun a_a1c6E (TyFun b_a1c6F b_a1c6F -> *) -> *) (t_a1ctU :: b_a1c6F) (t_a1ctV :: [a_a1c6E]) = Scanr t_a1ctT t_a1ctU t_a1ctV
data Scanr1Sym0 (l_a1csU :: TyFun (TyFun a_a1c6N (TyFun a_a1c6N a_a1c6N -> *) -> *) (TyFun [a_a1c6N] [a_a1c6N] -> *))
data Scanr1Sym1 (l_a1csX :: TyFun a_a1c6N (TyFun a_a1c6N a_a1c6N -> *) -> *) (l_a1csW :: TyFun [a_a1c6N] [a_a1c6N])
type Scanr1Sym2 (t_a1csS :: TyFun a_a1c6N (TyFun a_a1c6N a_a1c6N -> *) -> *) (t_a1csT :: [a_a1c6N]) = Scanr1 t_a1csS t_a1csT
data MapAccumLSym0 (l_a1cq9 :: TyFun (TyFun acc_a1c6U (TyFun x_a1c6V (acc_a1c6U, y_a1c6W) -> *) -> *) (TyFun acc_a1c6U (TyFun [x_a1c6V] (acc_a1c6U, [y_a1c6W]) -> *) -> *))
data MapAccumLSym1 (l_a1cqc :: TyFun acc_a1c6U (TyFun x_a1c6V (acc_a1c6U, y_a1c6W) -> *) -> *) (l_a1cqb :: TyFun acc_a1c6U (TyFun [x_a1c6V] (acc_a1c6U, [y_a1c6W]) -> *))
data MapAccumLSym2 (l_a1cqf :: TyFun acc_a1c6U (TyFun x_a1c6V (acc_a1c6U, y_a1c6W) -> *) -> *) (l_a1cqg :: acc_a1c6U) (l_a1cqe :: TyFun [x_a1c6V] (acc_a1c6U, [y_a1c6W]))
type MapAccumLSym3 (t_a1cq6 :: TyFun acc_a1c6U (TyFun x_a1c6V (acc_a1c6U, y_a1c6W) -> *) -> *) (t_a1cq7 :: acc_a1c6U) (t_a1cq8 :: [x_a1c6V]) = MapAccumL t_a1cq6 t_a1cq7 t_a1cq8
data MapAccumRSym0 (l_a1cnn :: TyFun (TyFun acc_a1c76 (TyFun x_a1c77 (acc_a1c76, y_a1c78) -> *) -> *) (TyFun acc_a1c76 (TyFun [x_a1c77] (acc_a1c76, [y_a1c78]) -> *) -> *))
data MapAccumRSym1 (l_a1cnq :: TyFun acc_a1c76 (TyFun x_a1c77 (acc_a1c76, y_a1c78) -> *) -> *) (l_a1cnp :: TyFun acc_a1c76 (TyFun [x_a1c77] (acc_a1c76, [y_a1c78]) -> *))
data MapAccumRSym2 (l_a1cnt :: TyFun acc_a1c76 (TyFun x_a1c77 (acc_a1c76, y_a1c78) -> *) -> *) (l_a1cnu :: acc_a1c76) (l_a1cns :: TyFun [x_a1c77] (acc_a1c76, [y_a1c78]))
type MapAccumRSym3 (t_a1cnk :: TyFun acc_a1c76 (TyFun x_a1c77 (acc_a1c76, y_a1c78) -> *) -> *) (t_a1cnl :: acc_a1c76) (t_a1cnm :: [x_a1c77]) = MapAccumR t_a1cnk t_a1cnl t_a1cnm
data UnfoldrSym0 (l_a1cmY :: TyFun (TyFun b_a1c7i (Maybe (a_a1c7j, b_a1c7i)) -> *) (TyFun b_a1c7i [a_a1c7j] -> *))
data UnfoldrSym1 (l_a1cn1 :: TyFun b_a1c7i (Maybe (a_a1c7j, b_a1c7i)) -> *) (l_a1cn0 :: TyFun b_a1c7i [a_a1c7j])
type UnfoldrSym2 (t_a1cmW :: TyFun b_a1c7i (Maybe (a_a1c7j, b_a1c7i)) -> *) (t_a1cmX :: b_a1c7i) = Unfoldr t_a1cmW t_a1cmX
data InitsSym0 (l_a1cmJ :: TyFun [a_a1c7o] [[a_a1c7o]])
type InitsSym1 (t_a1cmI :: [a_a1c7o]) = Inits t_a1cmI
data TailsSym0 (l_a1cmi :: TyFun [a_a1c7s] [[a_a1c7s]])
type TailsSym1 (t_a1cmh :: [a_a1c7s]) = Tails t_a1cmh
data IsPrefixOfSym0 (l_a1clU :: TyFun [a_a1c7v] (TyFun [a_a1c7v] Bool -> *))
data IsPrefixOfSym1 (l_a1clX :: [a_a1c7v]) (l_a1clW :: TyFun [a_a1c7v] Bool)
type IsPrefixOfSym2 (t_a1clS :: [a_a1c7v]) (t_a1clT :: [a_a1c7v]) = IsPrefixOf t_a1clS t_a1clT
data IsSuffixOfSym0 (l_a1cJ8 :: TyFun [a_a1c7A] (TyFun [a_a1c7A] Bool -> *))
data IsSuffixOfSym1 (l_a1cJb :: [a_a1c7A]) (l_a1cJa :: TyFun [a_a1c7A] Bool)
type IsSuffixOfSym2 (t_a1cJ6 :: [a_a1c7A]) (t_a1cJ7 :: [a_a1c7A]) = IsSuffixOf t_a1cJ6 t_a1cJ7
data IsInfixOfSym0 (l_a1cmz :: TyFun [a_a1c7D] (TyFun [a_a1c7D] Bool -> *))
data IsInfixOfSym1 (l_a1cmC :: [a_a1c7D]) (l_a1cmB :: TyFun [a_a1c7D] Bool)
type IsInfixOfSym2 (t_a1cmx :: [a_a1c7D]) (t_a1cmy :: [a_a1c7D]) = IsInfixOf t_a1cmx t_a1cmy
data ElemSym0 (l_a1clF :: TyFun a_a1c7G (TyFun [a_a1c7G] Bool -> *))
data ElemSym1 (l_a1clI :: a_a1c7G) (l_a1clH :: TyFun [a_a1c7G] Bool)
type ElemSym2 (t_a1clD :: a_a1c7G) (t_a1clE :: [a_a1c7G]) = Elem t_a1clD t_a1clE
data NotElemSym0 (l_a1clq :: TyFun a_a1c7K (TyFun [a_a1c7K] Bool -> *))
data NotElemSym1 (l_a1clt :: a_a1c7K) (l_a1cls :: TyFun [a_a1c7K] Bool)
type NotElemSym2 (t_a1clo :: a_a1c7K) (t_a1clp :: [a_a1c7K]) = NotElem t_a1clo t_a1clp
data ZipSym0 (l_a1cl1 :: TyFun [a_a1c7O] (TyFun [b_a1c7P] [(a_a1c7O, b_a1c7P)] -> *))
data ZipSym1 (l_a1cl4 :: [a_a1c7O]) (l_a1cl3 :: TyFun [b_a1c7P] [(a_a1c7O, b_a1c7P)])
type ZipSym2 (t_a1ckZ :: [a_a1c7O]) (t_a1cl0 :: [b_a1c7P]) = Zip t_a1ckZ t_a1cl0
data Zip3Sym0 (l_a1cjP :: TyFun [a_a1c7U] (TyFun [b_a1c7V] (TyFun [c_a1c7W] [(a_a1c7U, b_a1c7V, c_a1c7W)] -> *) -> *))
data Zip3Sym1 (l_a1cjS :: [a_a1c7U]) (l_a1cjR :: TyFun [b_a1c7V] (TyFun [c_a1c7W] [(a_a1c7U, b_a1c7V, c_a1c7W)] -> *))
data Zip3Sym2 (l_a1cjV :: [a_a1c7U]) (l_a1cjW :: [b_a1c7V]) (l_a1cjU :: TyFun [c_a1c7W] [(a_a1c7U, b_a1c7V, c_a1c7W)])
type Zip3Sym3 (t_a1cjM :: [a_a1c7U]) (t_a1cjN :: [b_a1c7V]) (t_a1cjO :: [c_a1c7W]) = Zip3 t_a1cjM t_a1cjN t_a1cjO
data ZipWithSym0 (l_a1cja :: TyFun (TyFun a_a1c83 (TyFun b_a1c84 c_a1c85 -> *) -> *) (TyFun [a_a1c83] (TyFun [b_a1c84] [c_a1c85] -> *) -> *))
data ZipWithSym1 (l_a1cjd :: TyFun a_a1c83 (TyFun b_a1c84 c_a1c85 -> *) -> *) (l_a1cjc :: TyFun [a_a1c83] (TyFun [b_a1c84] [c_a1c85] -> *))
data ZipWithSym2 (l_a1cjg :: TyFun a_a1c83 (TyFun b_a1c84 c_a1c85 -> *) -> *) (l_a1cjh :: [a_a1c83]) (l_a1cjf :: TyFun [b_a1c84] [c_a1c85])
type ZipWithSym3 (t_a1cj7 :: TyFun a_a1c83 (TyFun b_a1c84 c_a1c85 -> *) -> *) (t_a1cj8 :: [a_a1c83]) (t_a1cj9 :: [b_a1c84]) = ZipWith t_a1cj7 t_a1cj8 t_a1cj9
data ZipWith3Sym0 (l_a1chv :: TyFun (TyFun a_a1c8b (TyFun b_a1c8c (TyFun c_a1c8d d_a1c8e -> *) -> *) -> *) (TyFun [a_a1c8b] (TyFun [b_a1c8c] (TyFun [c_a1c8d] [d_a1c8e] -> *) -> *) -> *))
data ZipWith3Sym1 (l_a1chy :: TyFun a_a1c8b (TyFun b_a1c8c (TyFun c_a1c8d d_a1c8e -> *) -> *) -> *) (l_a1chx :: TyFun [a_a1c8b] (TyFun [b_a1c8c] (TyFun [c_a1c8d] [d_a1c8e] -> *) -> *))
data ZipWith3Sym2 (l_a1chB :: TyFun a_a1c8b (TyFun b_a1c8c (TyFun c_a1c8d d_a1c8e -> *) -> *) -> *) (l_a1chC :: [a_a1c8b]) (l_a1chA :: TyFun [b_a1c8c] (TyFun [c_a1c8d] [d_a1c8e] -> *))
data ZipWith3Sym3 (l_a1chF :: TyFun a_a1c8b (TyFun b_a1c8c (TyFun c_a1c8d d_a1c8e -> *) -> *) -> *) (l_a1chG :: [a_a1c8b]) (l_a1chH :: [b_a1c8c]) (l_a1chE :: TyFun [c_a1c8d] [d_a1c8e])
type ZipWith3Sym4 (t_a1chr :: TyFun a_a1c8b (TyFun b_a1c8c (TyFun c_a1c8d d_a1c8e -> *) -> *) -> *) (t_a1chs :: [a_a1c8b]) (t_a1cht :: [b_a1c8c]) (t_a1chu :: [c_a1c8d]) = ZipWith3 t_a1chr t_a1chs t_a1cht t_a1chu
data UnzipSym0 (l_a1cgY :: TyFun [(a_a1c8m, b_a1c8n)] ([a_a1c8m], [b_a1c8n]))
type UnzipSym1 (t_a1cgX :: [(a_a1c8m, b_a1c8n)]) = Unzip t_a1cgX
data Unzip3Sym0 (l_a1cgs :: TyFun [(a_a1c8t, b_a1c8u, c_a1c8v)] ([a_a1c8t], [b_a1c8u], [c_a1c8v]))
type Unzip3Sym1 (t_a1cgr :: [(a_a1c8t, b_a1c8u, c_a1c8v)]) = Unzip3 t_a1cgr
data Unzip4Sym0 (l_a1cfU :: TyFun [(a_a1c8D, b_a1c8E, c_a1c8F, d_a1c8G)] ([a_a1c8D], [b_a1c8E], [c_a1c8F], [d_a1c8G]))
type Unzip4Sym1 (t_a1cfT :: [(a_a1c8D, b_a1c8E, c_a1c8F, d_a1c8G)]) = Unzip4 t_a1cfT
data Unzip5Sym0 (l_a1cfk :: TyFun [(a_a1c8Q, b_a1c8R, c_a1c8S, d_a1c8T, e_a1c8U)] ([a_a1c8Q], [b_a1c8R], [c_a1c8S], [d_a1c8T], [e_a1c8U]))
type Unzip5Sym1 (t_a1cfj :: [(a_a1c8Q, b_a1c8R, c_a1c8S, d_a1c8T, e_a1c8U)]) = Unzip5 t_a1cfj
data Unzip6Sym0 (l_a1ceI :: TyFun [(a_a1c96, b_a1c97, c_a1c98, d_a1c99, e_a1c9a, f_a1c9b)] ([a_a1c96], [b_a1c97], [c_a1c98], [d_a1c99], [e_a1c9a], [f_a1c9b]))
type Unzip6Sym1 (t_a1ceH :: [(a_a1c96, b_a1c97, c_a1c98, d_a1c99, e_a1c9a, f_a1c9b)]) = Unzip6 t_a1ceH
data Unzip7Sym0 (l_a1ce4 :: TyFun [(a_a1c9p, b_a1c9q, c_a1c9r, d_a1c9s, e_a1c9t, f_a1c9u, g_a1c9v)] ([a_a1c9p], [b_a1c9q], [c_a1c9r], [d_a1c9s], [e_a1c9t], [f_a1c9u], [g_a1c9v]))
type Unzip7Sym1 (t_a1ce3 :: [(a_a1c9p, b_a1c9q, c_a1c9r, d_a1c9s, e_a1c9t, f_a1c9u, g_a1c9v)]) = Unzip7 t_a1ce3
data DeleteSym0 (l_a1cdF :: TyFun a_a1c9L (TyFun [a_a1c9L] [a_a1c9L] -> *))
data DeleteSym1 (l_a1cdI :: a_a1c9L) (l_a1cdH :: TyFun [a_a1c9L] [a_a1c9L])
type DeleteSym2 (t_a1cdD :: a_a1c9L) (t_a1cdE :: [a_a1c9L]) = Delete t_a1cdD t_a1cdE
data (:\\$) (l_a1cdU :: TyFun [a_a1c9M] (TyFun [a_a1c9M] [a_a1c9M] -> *))
data (:\\$$) (l_a1cdX :: [a_a1c9M]) (l_a1cdW :: TyFun [a_a1c9M] [a_a1c9M])
type (:\\$$$) (t_a1cdS :: [a_a1c9M]) (t_a1cdT :: [a_a1c9M]) = (:\\) t_a1cdS t_a1cdT
data IntersectSym0 (l_a26uJ :: TyFun [a_a26fY] (TyFun [a_a26fY] [a_a26fY] -> *))
data IntersectSym1 (l_a26uM :: [a_a26fY]) (l_a26uL :: TyFun [a_a26fY] [a_a26fY])
type IntersectSym2 (t_a26uH :: [a_a26fY]) (t_a26uI :: [a_a26fY]) = Intersect t_a26uH t_a26uI
data InsertSym0 (l_a26vA :: TyFun a_a26dd (TyFun [a_a26dd] [a_a26dd] -> *))
data InsertSym1 (l_a26vD :: a_a26dd) (l_a26vC :: TyFun [a_a26dd] [a_a26dd])
type InsertSym2 (t_a26vy :: a_a26dd) (t_a26vz :: [a_a26dd]) = Insert t_a26vy t_a26vz
data SortSym0 (l_a26vu :: TyFun [a_a26dg] [a_a26dg])
type SortSym1 (t_a26vt :: [a_a26dg]) = Sort t_a26vt
data DeleteBySym0 (l_a1ccv :: TyFun (TyFun a_a1c9N (TyFun a_a1c9N Bool -> *) -> *) (TyFun a_a1c9N (TyFun [a_a1c9N] [a_a1c9N] -> *) -> *))
data DeleteBySym1 (l_a1ccy :: TyFun a_a1c9N (TyFun a_a1c9N Bool -> *) -> *) (l_a1ccx :: TyFun a_a1c9N (TyFun [a_a1c9N] [a_a1c9N] -> *))
data DeleteBySym2 (l_a1ccB :: TyFun a_a1c9N (TyFun a_a1c9N Bool -> *) -> *) (l_a1ccC :: a_a1c9N) (l_a1ccA :: TyFun [a_a1c9N] [a_a1c9N])
type DeleteBySym3 (t_a1ccs :: TyFun a_a1c9N (TyFun a_a1c9N Bool -> *) -> *) (t_a1cct :: a_a1c9N) (t_a1ccu :: [a_a1c9N]) = DeleteBy t_a1ccs t_a1cct t_a1ccu
data DeleteFirstsBySym0 (l_a1cdg :: TyFun (TyFun a_a1c9S (TyFun a_a1c9S Bool -> *) -> *) (TyFun [a_a1c9S] (TyFun [a_a1c9S] [a_a1c9S] -> *) -> *))
data DeleteFirstsBySym1 (l_a1cdj :: TyFun a_a1c9S (TyFun a_a1c9S Bool -> *) -> *) (l_a1cdi :: TyFun [a_a1c9S] (TyFun [a_a1c9S] [a_a1c9S] -> *))
data DeleteFirstsBySym2 (l_a1cdm :: TyFun a_a1c9S (TyFun a_a1c9S Bool -> *) -> *) (l_a1cdn :: [a_a1c9S]) (l_a1cdl :: TyFun [a_a1c9S] [a_a1c9S])
type DeleteFirstsBySym3 (t_a1cdd :: TyFun a_a1c9S (TyFun a_a1c9S Bool -> *) -> *) (t_a1cde :: [a_a1c9S]) (t_a1cdf :: [a_a1c9S]) = DeleteFirstsBy t_a1cdd t_a1cde t_a1cdf
data IntersectBySym0 (l_a26tH :: TyFun (TyFun a_a26fZ (TyFun a_a26fZ Bool -> *) -> *) (TyFun [a_a26fZ] (TyFun [a_a26fZ] [a_a26fZ] -> *) -> *))
data IntersectBySym1 (l_a26tK :: TyFun a_a26fZ (TyFun a_a26fZ Bool -> *) -> *) (l_a26tJ :: TyFun [a_a26fZ] (TyFun [a_a26fZ] [a_a26fZ] -> *))
data IntersectBySym2 (l_a26tN :: TyFun a_a26fZ (TyFun a_a26fZ Bool -> *) -> *) (l_a26tO :: [a_a26fZ]) (l_a26tM :: TyFun [a_a26fZ] [a_a26fZ])
data SortBySym0 (l_a1cch :: TyFun (TyFun a_a1c9U (TyFun a_a1c9U Ordering -> *) -> *) (TyFun [a_a1c9U] [a_a1c9U] -> *))
data SortBySym1 (l_a1cck :: TyFun a_a1c9U (TyFun a_a1c9U Ordering -> *) -> *) (l_a1ccj :: TyFun [a_a1c9U] [a_a1c9U])
type SortBySym2 (t_a1ccf :: TyFun a_a1c9U (TyFun a_a1c9U Ordering -> *) -> *) (t_a1ccg :: [a_a1c9U]) = SortBy t_a1ccf t_a1ccg
data InsertBySym0 (l_a1cbg :: TyFun (TyFun a_a1c9W (TyFun a_a1c9W Ordering -> *) -> *) (TyFun a_a1c9W (TyFun [a_a1c9W] [a_a1c9W] -> *) -> *))
data InsertBySym1 (l_a1cbj :: TyFun a_a1c9W (TyFun a_a1c9W Ordering -> *) -> *) (l_a1cbi :: TyFun a_a1c9W (TyFun [a_a1c9W] [a_a1c9W] -> *))
data InsertBySym2 (l_a1cbm :: TyFun a_a1c9W (TyFun a_a1c9W Ordering -> *) -> *) (l_a1cbn :: a_a1c9W) (l_a1cbl :: TyFun [a_a1c9W] [a_a1c9W])
type InsertBySym3 (t_a1cbd :: TyFun a_a1c9W (TyFun a_a1c9W Ordering -> *) -> *) (t_a1cbe :: a_a1c9W) (t_a1cbf :: [a_a1c9W]) = InsertBy t_a1cbd t_a1cbe t_a1cbf
data MaximumBySym0 (l_a1cx8 :: TyFun (TyFun a_a1ca3 (TyFun a_a1ca3 Ordering -> *) -> *) (TyFun [a_a1ca3] a_a1ca3 -> *))
data MaximumBySym1 (l_a1cxb :: TyFun a_a1ca3 (TyFun a_a1ca3 Ordering -> *) -> *) (l_a1cxa :: TyFun [a_a1ca3] a_a1ca3)
type MaximumBySym2 (t_a1cx6 :: TyFun a_a1ca3 (TyFun a_a1ca3 Ordering -> *) -> *) (t_a1cx7 :: [a_a1ca3]) = MaximumBy t_a1cx6 t_a1cx7
data MinimumBySym0 (l_a1cyx :: TyFun (TyFun a_a1ca9 (TyFun a_a1ca9 Ordering -> *) -> *) (TyFun [a_a1ca9] a_a1ca9 -> *))
data MinimumBySym1 (l_a1cyA :: TyFun a_a1ca9 (TyFun a_a1ca9 Ordering -> *) -> *) (l_a1cyz :: TyFun [a_a1ca9] a_a1ca9)
type MinimumBySym2 (t_a1cyv :: TyFun a_a1ca9 (TyFun a_a1ca9 Ordering -> *) -> *) (t_a1cyw :: [a_a1ca9]) = MinimumBy t_a1cyv t_a1cyw
data LengthSym0 (l_a26HU :: TyFun [a_a26bZ] Nat)
type LengthSym1 (t_a26HT :: [a_a26bZ]) = Length t_a26HT
data SumSym0 (l_a26Hw :: TyFun [Nat] Nat)
type SumSym1 (t_a26Hv :: [Nat]) = Sum t_a26Hv
data ProductSym0 (l_a26H8 :: TyFun [Nat] Nat)
type ProductSym1 (t_a26H7 :: [Nat]) = Product t_a26H7
data ReplicateSym0 (l_a26GG :: TyFun Nat (TyFun a_a26cd [a_a26cd] -> *))
data ReplicateSym1 (l_a26GJ :: Nat) (l_a26GI :: TyFun a_a26cd [a_a26cd])
type ReplicateSym2 (t_a26GE :: Nat) (t_a26GF :: a_a26cd) = Replicate t_a26GE t_a26GF
data TransposeSym0 (l_a26Gx :: TyFun [[a_a26cg]] [[a_a26cg]])
type TransposeSym1 (t_a26Gw :: [[a_a26cg]]) = Transpose t_a26Gw
data TakeSym0 (l_a26Fp :: TyFun Nat (TyFun [a_a26cl] [a_a26cl] -> *))
data TakeSym1 (l_a26Fs :: Nat) (l_a26Fr :: TyFun [a_a26cl] [a_a26cl])
type TakeSym2 (t_a26Fn :: Nat) (t_a26Fo :: [a_a26cl]) = Take t_a26Fn t_a26Fo
data DropSym0 (l_a26EG :: TyFun Nat (TyFun [a_a26cq] [a_a26cq] -> *))
data DropSym1 (l_a26EJ :: Nat) (l_a26EI :: TyFun [a_a26cq] [a_a26cq])
type DropSym2 (t_a26EE :: Nat) (t_a26EF :: [a_a26cq]) = Drop t_a26EE t_a26EF
data SplitAtSym0 (l_a26FT :: TyFun Nat (TyFun [a_a26cv] ([a_a26cv], [a_a26cv]) -> *))
data SplitAtSym1 (l_a26FW :: Nat) (l_a26FV :: TyFun [a_a26cv] ([a_a26cv], [a_a26cv]))
type SplitAtSym2 (t_a26FR :: Nat) (t_a26FS :: [a_a26cv]) = SplitAt t_a26FR t_a26FS
data TakeWhileSym0 (l_a26Ej :: TyFun (TyFun a_a26cy Bool -> *) (TyFun [a_a26cy] [a_a26cy] -> *))
data TakeWhileSym1 (l_a26Em :: TyFun a_a26cy Bool -> *) (l_a26El :: TyFun [a_a26cy] [a_a26cy])
type TakeWhileSym2 (t_a26Eh :: TyFun a_a26cy Bool -> *) (t_a26Ei :: [a_a26cy]) = TakeWhile t_a26Eh t_a26Ei
data DropWhileSym0 (l_a26Dw :: TyFun (TyFun a_a26cC Bool -> *) (TyFun [a_a26cC] [a_a26cC] -> *))
data DropWhileSym1 (l_a26Dz :: TyFun a_a26cC Bool -> *) (l_a26Dy :: TyFun [a_a26cC] [a_a26cC])
type DropWhileSym2 (t_a26Du :: TyFun a_a26cC Bool -> *) (t_a26Dv :: [a_a26cC]) = DropWhile t_a26Du t_a26Dv
data DropWhileEndSym0 (l_a26Cz :: TyFun (TyFun a_a26cH Bool -> *) (TyFun [a_a26cH] [a_a26cH] -> *))
data DropWhileEndSym1 (l_a26CC :: TyFun a_a26cH Bool -> *) (l_a26CB :: TyFun [a_a26cH] [a_a26cH])
type DropWhileEndSym2 (t_a26Cx :: TyFun a_a26cH Bool -> *) (t_a26Cy :: [a_a26cH]) = DropWhileEnd t_a26Cx t_a26Cy
data SpanSym0 (l_a26yV :: TyFun (TyFun a_a26cL Bool -> *) (TyFun [a_a26cL] ([a_a26cL], [a_a26cL]) -> *))
data SpanSym1 (l_a26yY :: TyFun a_a26cL Bool -> *) (l_a26yX :: TyFun [a_a26cL] ([a_a26cL], [a_a26cL]))
type SpanSym2 (t_a26yT :: TyFun a_a26cL Bool -> *) (t_a26yU :: [a_a26cL]) = Span t_a26yT t_a26yU
data BreakSym0 (l_a26ww :: TyFun (TyFun a_a26cT Bool -> *) (TyFun [a_a26cT] ([a_a26cT], [a_a26cT]) -> *))
data BreakSym1 (l_a26wz :: TyFun a_a26cT Bool -> *) (l_a26wy :: TyFun [a_a26cT] ([a_a26cT], [a_a26cT]))
type BreakSym2 (t_a26wu :: TyFun a_a26cT Bool -> *) (t_a26wv :: [a_a26cT]) = Break t_a26wu t_a26wv
data StripPrefixSym0 (l_a26vV :: TyFun [a_a26d1] (TyFun [a_a26d1] (Maybe [a_a26d1]) -> *))
data StripPrefixSym1 (l_a26vY :: [a_a26d1]) (l_a26vX :: TyFun [a_a26d1] (Maybe [a_a26d1]))
type StripPrefixSym2 (t_a26vT :: [a_a26d1]) (t_a26vU :: [a_a26d1]) = StripPrefix t_a26vT t_a26vU
data MaximumSym0 (l_a26vP :: TyFun [a_a26d9] a_a26d9)
type MaximumSym1 (t_a26vO :: [a_a26d9]) = Maximum t_a26vO
data MinimumSym0 (l_a26vK :: TyFun [a_a26db] a_a26db)
type MinimumSym1 (t_a26vJ :: [a_a26db]) = Minimum t_a26vJ
data GroupSym0 (l_a26Ct :: TyFun [a_a26d7] [[a_a26d7]])
type GroupSym1 (t_a26Cs :: [a_a26d7]) = Group t_a26Cs
data GroupBySym0 (l_a26Bk :: TyFun (TyFun a_a26dh (TyFun a_a26dh Bool -> *) -> *) (TyFun [a_a26dh] [[a_a26dh]] -> *))
data GroupBySym1 (l_a26Bn :: TyFun a_a26dh (TyFun a_a26dh Bool -> *) -> *) (l_a26Bm :: TyFun [a_a26dh] [[a_a26dh]])
type GroupBySym2 (t_a26Bi :: TyFun a_a26dh (TyFun a_a26dh Bool -> *) -> *) (t_a26Bj :: [a_a26dh]) = GroupBy t_a26Bi t_a26Bj
data LookupSym0 (l_a26v7 :: TyFun a_a26dn (TyFun [(a_a26dn, b_a26do)] (Maybe b_a26do) -> *))
data LookupSym1 (l_a26va :: a_a26dn) (l_a26v9 :: TyFun [(a_a26dn, b_a26do)] (Maybe b_a26do))
type LookupSym2 (t_a26v5 :: a_a26dn) (t_a26v6 :: [(a_a26dn, b_a26do)]) = Lookup t_a26v5 t_a26v6
data FindSym0 (l_a26uU :: TyFun (TyFun a_a26du Bool -> *) (TyFun [a_a26du] (Maybe a_a26du) -> *))
data FindSym1 (l_a26uX :: TyFun a_a26du Bool -> *) (l_a26uW :: TyFun [a_a26du] (Maybe a_a26du))
type FindSym2 (t_a26uS :: TyFun a_a26du Bool -> *) (t_a26uT :: [a_a26du]) = Find t_a26uS t_a26uT
data FilterSym0 (l_a26tl :: TyFun (TyFun a_a26dw Bool -> *) (TyFun [a_a26dw] [a_a26dw] -> *))
data FilterSym1 (l_a26to :: TyFun a_a26dw Bool -> *) (l_a26tn :: TyFun [a_a26dw] [a_a26dw])
type FilterSym2 (t_a26tj :: TyFun a_a26dw Bool -> *) (t_a26tk :: [a_a26dw]) = Filter t_a26tj t_a26tk
data PartitionSym0 (l_a26ta :: TyFun (TyFun a_a26dB Bool -> *) (TyFun [a_a26dB] ([a_a26dB], [a_a26dB]) -> *))
data PartitionSym1 (l_a26td :: TyFun a_a26dB Bool -> *) (l_a26tc :: TyFun [a_a26dB] ([a_a26dB], [a_a26dB]))
type PartitionSym2 (t_a26t8 :: TyFun a_a26dB Bool -> *) (t_a26t9 :: [a_a26dB]) = Partition t_a26t8 t_a26t9
data (:!!$) (l_a26rT :: TyFun [a_a26dJ] (TyFun Nat a_a26dJ -> *))
data (:!!$$) (l_a26rW :: [a_a26dJ]) (l_a26rV :: TyFun Nat a_a26dJ)
type (:!!$$$) (t_a26rR :: [a_a26dJ]) (t_a26rS :: Nat) = (:!!) t_a26rR t_a26rS
data ElemIndexSym0 (l_a26Jr :: TyFun a_a26dO (TyFun [a_a26dO] (Maybe Nat) -> *))
data ElemIndexSym1 (l_a26Ju :: a_a26dO) (l_a26Jt :: TyFun [a_a26dO] (Maybe Nat))
type ElemIndexSym2 (t_a26Jp :: a_a26dO) (t_a26Jq :: [a_a26dO]) = ElemIndex t_a26Jp t_a26Jq
data ElemIndicesSym0 (l_a26J1 :: TyFun a_a26dQ (TyFun [a_a26dQ] [Nat] -> *))
data ElemIndicesSym1 (l_a26J4 :: a_a26dQ) (l_a26J3 :: TyFun [a_a26dQ] [Nat])
type ElemIndicesSym2 (t_a26IZ :: a_a26dQ) (t_a26J0 :: [a_a26dQ]) = ElemIndices t_a26IZ t_a26J0
data FindIndexSym0 (l_a26Je :: TyFun (TyFun a_a26dS Bool -> *) (TyFun [a_a26dS] (Maybe Nat) -> *))
data FindIndexSym1 (l_a26Jh :: TyFun a_a26dS Bool -> *) (l_a26Jg :: TyFun [a_a26dS] (Maybe Nat))
type FindIndexSym2 (t_a26Jc :: TyFun a_a26dS Bool -> *) (t_a26Jd :: [a_a26dS]) = FindIndex t_a26Jc t_a26Jd
data FindIndicesSym0 (l_a26I3 :: TyFun (TyFun a_a26dU Bool -> *) (TyFun [a_a26dU] [Nat] -> *))
data FindIndicesSym1 (l_a26I6 :: TyFun a_a26dU Bool -> *) (l_a26I5 :: TyFun [a_a26dU] [Nat])
type FindIndicesSym2 (t_a26I1 :: TyFun a_a26dU Bool -> *) (t_a26I2 :: [a_a26dU]) = FindIndices t_a26I1 t_a26I2
data Zip4Sym0 (l_a26rv :: TyFun [a_a26e1] (TyFun [b_a26e2] (TyFun [c_a26e3] (TyFun [d_a26e4] [(a_a26e1, b_a26e2, c_a26e3, d_a26e4)] -> *) -> *) -> *))
data Zip4Sym1 (l_a26ry :: [a_a26e1]) (l_a26rx :: TyFun [b_a26e2] (TyFun [c_a26e3] (TyFun [d_a26e4] [(a_a26e1, b_a26e2, c_a26e3, d_a26e4)] -> *) -> *))
data Zip4Sym2 (l_a26rB :: [a_a26e1]) (l_a26rC :: [b_a26e2]) (l_a26rA :: TyFun [c_a26e3] (TyFun [d_a26e4] [(a_a26e1, b_a26e2, c_a26e3, d_a26e4)] -> *))
data Zip4Sym3 (l_a26rF :: [a_a26e1]) (l_a26rG :: [b_a26e2]) (l_a26rH :: [c_a26e3]) (l_a26rE :: TyFun [d_a26e4] [(a_a26e1, b_a26e2, c_a26e3, d_a26e4)])
type Zip4Sym4 (t_a26rr :: [a_a26e1]) (t_a26rs :: [b_a26e2]) (t_a26rt :: [c_a26e3]) (t_a26ru :: [d_a26e4]) = Zip4 t_a26rr t_a26rs t_a26rt t_a26ru
data Zip5Sym0 (l_a26qP :: TyFun [a_a26e5] (TyFun [b_a26e6] (TyFun [c_a26e7] (TyFun [d_a26e8] (TyFun [e_a26e9] [(a_a26e5, b_a26e6, c_a26e7, d_a26e8, e_a26e9)] -> *) -> *) -> *) -> *))
data Zip5Sym1 (l_a26qS :: [a_a26e5]) (l_a26qR :: TyFun [b_a26e6] (TyFun [c_a26e7] (TyFun [d_a26e8] (TyFun [e_a26e9] [(a_a26e5, b_a26e6, c_a26e7, d_a26e8, e_a26e9)] -> *) -> *) -> *))
data Zip5Sym2 (l_a26qV :: [a_a26e5]) (l_a26qW :: [b_a26e6]) (l_a26qU :: TyFun [c_a26e7] (TyFun [d_a26e8] (TyFun [e_a26e9] [(a_a26e5, b_a26e6, c_a26e7, d_a26e8, e_a26e9)] -> *) -> *))
data Zip5Sym3 (l_a26qZ :: [a_a26e5]) (l_a26r0 :: [b_a26e6]) (l_a26r1 :: [c_a26e7]) (l_a26qY :: TyFun [d_a26e8] (TyFun [e_a26e9] [(a_a26e5, b_a26e6, c_a26e7, d_a26e8, e_a26e9)] -> *))
data Zip5Sym4 (l_a26r4 :: [a_a26e5]) (l_a26r5 :: [b_a26e6]) (l_a26r6 :: [c_a26e7]) (l_a26r7 :: [d_a26e8]) (l_a26r3 :: TyFun [e_a26e9] [(a_a26e5, b_a26e6, c_a26e7, d_a26e8, e_a26e9)])
type Zip5Sym5 (t_a26qK :: [a_a26e5]) (t_a26qL :: [b_a26e6]) (t_a26qM :: [c_a26e7]) (t_a26qN :: [d_a26e8]) (t_a26qO :: [e_a26e9]) = Zip5 t_a26qK t_a26qL t_a26qM t_a26qN t_a26qO
data Zip6Sym0 (l_a26pX :: TyFun [a_a26ea] (TyFun [b_a26eb] (TyFun [c_a26ec] (TyFun [d_a26ed] (TyFun [e_a26ee] (TyFun [f_a26ef] [(a_a26ea, b_a26eb, c_a26ec, d_a26ed, e_a26ee, f_a26ef)] -> *) -> *) -> *) -> *) -> *))
data Zip6Sym1 (l_a26q0 :: [a_a26ea]) (l_a26pZ :: TyFun [b_a26eb] (TyFun [c_a26ec] (TyFun [d_a26ed] (TyFun [e_a26ee] (TyFun [f_a26ef] [(a_a26ea, b_a26eb, c_a26ec, d_a26ed, e_a26ee, f_a26ef)] -> *) -> *) -> *) -> *))
data Zip6Sym2 (l_a26q3 :: [a_a26ea]) (l_a26q4 :: [b_a26eb]) (l_a26q2 :: TyFun [c_a26ec] (TyFun [d_a26ed] (TyFun [e_a26ee] (TyFun [f_a26ef] [(a_a26ea, b_a26eb, c_a26ec, d_a26ed, e_a26ee, f_a26ef)] -> *) -> *) -> *))
data Zip6Sym3 (l_a26q7 :: [a_a26ea]) (l_a26q8 :: [b_a26eb]) (l_a26q9 :: [c_a26ec]) (l_a26q6 :: TyFun [d_a26ed] (TyFun [e_a26ee] (TyFun [f_a26ef] [(a_a26ea, b_a26eb, c_a26ec, d_a26ed, e_a26ee, f_a26ef)] -> *) -> *))
data Zip6Sym4 (l_a26qc :: [a_a26ea]) (l_a26qd :: [b_a26eb]) (l_a26qe :: [c_a26ec]) (l_a26qf :: [d_a26ed]) (l_a26qb :: TyFun [e_a26ee] (TyFun [f_a26ef] [(a_a26ea, b_a26eb, c_a26ec, d_a26ed, e_a26ee, f_a26ef)] -> *))
data Zip6Sym5 (l_a26qi :: [a_a26ea]) (l_a26qj :: [b_a26eb]) (l_a26qk :: [c_a26ec]) (l_a26ql :: [d_a26ed]) (l_a26qm :: [e_a26ee]) (l_a26qh :: TyFun [f_a26ef] [(a_a26ea, b_a26eb, c_a26ec, d_a26ed, e_a26ee, f_a26ef)])
type Zip6Sym6 (t_a26pR :: [a_a26ea]) (t_a26pS :: [b_a26eb]) (t_a26pT :: [c_a26ec]) (t_a26pU :: [d_a26ed]) (t_a26pV :: [e_a26ee]) (t_a26pW :: [f_a26ef]) = Zip6 t_a26pR t_a26pS t_a26pT t_a26pU t_a26pV t_a26pW
data Zip7Sym0 (l_a26oS :: TyFun [a_a26eg] (TyFun [b_a26eh] (TyFun [c_a26ei] (TyFun [d_a26ej] (TyFun [e_a26ek] (TyFun [f_a26el] (TyFun [g_a26em] [(a_a26eg, b_a26eh, c_a26ei, d_a26ej, e_a26ek, f_a26el, g_a26em)] -> *) -> *) -> *) -> *) -> *) -> *))
data Zip7Sym1 (l_a26oV :: [a_a26eg]) (l_a26oU :: TyFun [b_a26eh] (TyFun [c_a26ei] (TyFun [d_a26ej] (TyFun [e_a26ek] (TyFun [f_a26el] (TyFun [g_a26em] [(a_a26eg, b_a26eh, c_a26ei, d_a26ej, e_a26ek, f_a26el, g_a26em)] -> *) -> *) -> *) -> *) -> *))
data Zip7Sym2 (l_a26oY :: [a_a26eg]) (l_a26oZ :: [b_a26eh]) (l_a26oX :: TyFun [c_a26ei] (TyFun [d_a26ej] (TyFun [e_a26ek] (TyFun [f_a26el] (TyFun [g_a26em] [(a_a26eg, b_a26eh, c_a26ei, d_a26ej, e_a26ek, f_a26el, g_a26em)] -> *) -> *) -> *) -> *))
data Zip7Sym3 (l_a26p2 :: [a_a26eg]) (l_a26p3 :: [b_a26eh]) (l_a26p4 :: [c_a26ei]) (l_a26p1 :: TyFun [d_a26ej] (TyFun [e_a26ek] (TyFun [f_a26el] (TyFun [g_a26em] [(a_a26eg, b_a26eh, c_a26ei, d_a26ej, e_a26ek, f_a26el, g_a26em)] -> *) -> *) -> *))
data Zip7Sym4 (l_a26p7 :: [a_a26eg]) (l_a26p8 :: [b_a26eh]) (l_a26p9 :: [c_a26ei]) (l_a26pa :: [d_a26ej]) (l_a26p6 :: TyFun [e_a26ek] (TyFun [f_a26el] (TyFun [g_a26em] [(a_a26eg, b_a26eh, c_a26ei, d_a26ej, e_a26ek, f_a26el, g_a26em)] -> *) -> *))
data Zip7Sym5 (l_a26pd :: [a_a26eg]) (l_a26pe :: [b_a26eh]) (l_a26pf :: [c_a26ei]) (l_a26pg :: [d_a26ej]) (l_a26ph :: [e_a26ek]) (l_a26pc :: TyFun [f_a26el] (TyFun [g_a26em] [(a_a26eg, b_a26eh, c_a26ei, d_a26ej, e_a26ek, f_a26el, g_a26em)] -> *))
data Zip7Sym6 (l_a26pk :: [a_a26eg]) (l_a26pl :: [b_a26eh]) (l_a26pm :: [c_a26ei]) (l_a26pn :: [d_a26ej]) (l_a26po :: [e_a26ek]) (l_a26pp :: [f_a26el]) (l_a26pj :: TyFun [g_a26em] [(a_a26eg, b_a26eh, c_a26ei, d_a26ej, e_a26ek, f_a26el, g_a26em)])
type Zip7Sym7 (t_a26oL :: [a_a26eg]) (t_a26oM :: [b_a26eh]) (t_a26oN :: [c_a26ei]) (t_a26oO :: [d_a26ej]) (t_a26oP :: [e_a26ek]) (t_a26oQ :: [f_a26el]) (t_a26oR :: [g_a26em]) = Zip7 t_a26oL t_a26oM t_a26oN t_a26oO t_a26oP t_a26oQ t_a26oR
data ZipWith4Sym0 (l_a26nK :: TyFun (TyFun a_a26en (TyFun b_a26eo (TyFun c_a26ep (TyFun d_a26eq e_a26er -> *) -> *) -> *) -> *) (TyFun [a_a26en] (TyFun [b_a26eo] (TyFun [c_a26ep] (TyFun [d_a26eq] [e_a26er] -> *) -> *) -> *) -> *))
data ZipWith4Sym1 (l_a26nN :: TyFun a_a26en (TyFun b_a26eo (TyFun c_a26ep (TyFun d_a26eq e_a26er -> *) -> *) -> *) -> *) (l_a26nM :: TyFun [a_a26en] (TyFun [b_a26eo] (TyFun [c_a26ep] (TyFun [d_a26eq] [e_a26er] -> *) -> *) -> *))
data ZipWith4Sym2 (l_a26nQ :: TyFun a_a26en (TyFun b_a26eo (TyFun c_a26ep (TyFun d_a26eq e_a26er -> *) -> *) -> *) -> *) (l_a26nR :: [a_a26en]) (l_a26nP :: TyFun [b_a26eo] (TyFun [c_a26ep] (TyFun [d_a26eq] [e_a26er] -> *) -> *))
data ZipWith4Sym3 (l_a26nU :: TyFun a_a26en (TyFun b_a26eo (TyFun c_a26ep (TyFun d_a26eq e_a26er -> *) -> *) -> *) -> *) (l_a26nV :: [a_a26en]) (l_a26nW :: [b_a26eo]) (l_a26nT :: TyFun [c_a26ep] (TyFun [d_a26eq] [e_a26er] -> *))
data ZipWith4Sym4 (l_a26nZ :: TyFun a_a26en (TyFun b_a26eo (TyFun c_a26ep (TyFun d_a26eq e_a26er -> *) -> *) -> *) -> *) (l_a26o0 :: [a_a26en]) (l_a26o1 :: [b_a26eo]) (l_a26o2 :: [c_a26ep]) (l_a26nY :: TyFun [d_a26eq] [e_a26er])
type ZipWith4Sym5 (t_a26nF :: TyFun a_a26en (TyFun b_a26eo (TyFun c_a26ep (TyFun d_a26eq e_a26er -> *) -> *) -> *) -> *) (t_a26nG :: [a_a26en]) (t_a26nH :: [b_a26eo]) (t_a26nI :: [c_a26ep]) (t_a26nJ :: [d_a26eq]) = ZipWith4 t_a26nF t_a26nG t_a26nH t_a26nI t_a26nJ
data ZipWith5Sym0 (l_a26mF :: TyFun (TyFun a_a26eB (TyFun b_a26eC (TyFun c_a26eD (TyFun d_a26eE (TyFun e_a26eF f_a26eG -> *) -> *) -> *) -> *) -> *) (TyFun [a_a26eB] (TyFun [b_a26eC] (TyFun [c_a26eD] (TyFun [d_a26eE] (TyFun [e_a26eF] [f_a26eG] -> *) -> *) -> *) -> *) -> *))
data ZipWith5Sym1 (l_a26mI :: TyFun a_a26eB (TyFun b_a26eC (TyFun c_a26eD (TyFun d_a26eE (TyFun e_a26eF f_a26eG -> *) -> *) -> *) -> *) -> *) (l_a26mH :: TyFun [a_a26eB] (TyFun [b_a26eC] (TyFun [c_a26eD] (TyFun [d_a26eE] (TyFun [e_a26eF] [f_a26eG] -> *) -> *) -> *) -> *))
data ZipWith5Sym2 (l_a26mL :: TyFun a_a26eB (TyFun b_a26eC (TyFun c_a26eD (TyFun d_a26eE (TyFun e_a26eF f_a26eG -> *) -> *) -> *) -> *) -> *) (l_a26mM :: [a_a26eB]) (l_a26mK :: TyFun [b_a26eC] (TyFun [c_a26eD] (TyFun [d_a26eE] (TyFun [e_a26eF] [f_a26eG] -> *) -> *) -> *))
data ZipWith5Sym3 (l_a26mP :: TyFun a_a26eB (TyFun b_a26eC (TyFun c_a26eD (TyFun d_a26eE (TyFun e_a26eF f_a26eG -> *) -> *) -> *) -> *) -> *) (l_a26mQ :: [a_a26eB]) (l_a26mR :: [b_a26eC]) (l_a26mO :: TyFun [c_a26eD] (TyFun [d_a26eE] (TyFun [e_a26eF] [f_a26eG] -> *) -> *))
data ZipWith5Sym4 (l_a26mU :: TyFun a_a26eB (TyFun b_a26eC (TyFun c_a26eD (TyFun d_a26eE (TyFun e_a26eF f_a26eG -> *) -> *) -> *) -> *) -> *) (l_a26mV :: [a_a26eB]) (l_a26mW :: [b_a26eC]) (l_a26mX :: [c_a26eD]) (l_a26mT :: TyFun [d_a26eE] (TyFun [e_a26eF] [f_a26eG] -> *))
data ZipWith5Sym5 (l_a26n0 :: TyFun a_a26eB (TyFun b_a26eC (TyFun c_a26eD (TyFun d_a26eE (TyFun e_a26eF f_a26eG -> *) -> *) -> *) -> *) -> *) (l_a26n1 :: [a_a26eB]) (l_a26n2 :: [b_a26eC]) (l_a26n3 :: [c_a26eD]) (l_a26n4 :: [d_a26eE]) (l_a26mZ :: TyFun [e_a26eF] [f_a26eG])
type ZipWith5Sym6 (t_a26mz :: TyFun a_a26eB (TyFun b_a26eC (TyFun c_a26eD (TyFun d_a26eE (TyFun e_a26eF f_a26eG -> *) -> *) -> *) -> *) -> *) (t_a26mA :: [a_a26eB]) (t_a26mB :: [b_a26eC]) (t_a26mC :: [c_a26eD]) (t_a26mD :: [d_a26eE]) (t_a26mE :: [e_a26eF]) = ZipWith5 t_a26mz t_a26mA t_a26mB t_a26mC t_a26mD t_a26mE
data ZipWith6Sym0 (l_a26ll :: TyFun (TyFun a_a26eS (TyFun b_a26eT (TyFun c_a26eU (TyFun d_a26eV (TyFun e_a26eW (TyFun f_a26eX g_a26eY -> *) -> *) -> *) -> *) -> *) -> *) (TyFun [a_a26eS] (TyFun [b_a26eT] (TyFun [c_a26eU] (TyFun [d_a26eV] (TyFun [e_a26eW] (TyFun [f_a26eX] [g_a26eY] -> *) -> *) -> *) -> *) -> *) -> *))
data ZipWith6Sym1 (l_a26lo :: TyFun a_a26eS (TyFun b_a26eT (TyFun c_a26eU (TyFun d_a26eV (TyFun e_a26eW (TyFun f_a26eX g_a26eY -> *) -> *) -> *) -> *) -> *) -> *) (l_a26ln :: TyFun [a_a26eS] (TyFun [b_a26eT] (TyFun [c_a26eU] (TyFun [d_a26eV] (TyFun [e_a26eW] (TyFun [f_a26eX] [g_a26eY] -> *) -> *) -> *) -> *) -> *))
data ZipWith6Sym2 (l_a26lr :: TyFun a_a26eS (TyFun b_a26eT (TyFun c_a26eU (TyFun d_a26eV (TyFun e_a26eW (TyFun f_a26eX g_a26eY -> *) -> *) -> *) -> *) -> *) -> *) (l_a26ls :: [a_a26eS]) (l_a26lq :: TyFun [b_a26eT] (TyFun [c_a26eU] (TyFun [d_a26eV] (TyFun [e_a26eW] (TyFun [f_a26eX] [g_a26eY] -> *) -> *) -> *) -> *))
data ZipWith6Sym3 (l_a26lv :: TyFun a_a26eS (TyFun b_a26eT (TyFun c_a26eU (TyFun d_a26eV (TyFun e_a26eW (TyFun f_a26eX g_a26eY -> *) -> *) -> *) -> *) -> *) -> *) (l_a26lw :: [a_a26eS]) (l_a26lx :: [b_a26eT]) (l_a26lu :: TyFun [c_a26eU] (TyFun [d_a26eV] (TyFun [e_a26eW] (TyFun [f_a26eX] [g_a26eY] -> *) -> *) -> *))
data ZipWith6Sym4 (l_a26lA :: TyFun a_a26eS (TyFun b_a26eT (TyFun c_a26eU (TyFun d_a26eV (TyFun e_a26eW (TyFun f_a26eX g_a26eY -> *) -> *) -> *) -> *) -> *) -> *) (l_a26lB :: [a_a26eS]) (l_a26lC :: [b_a26eT]) (l_a26lD :: [c_a26eU]) (l_a26lz :: TyFun [d_a26eV] (TyFun [e_a26eW] (TyFun [f_a26eX] [g_a26eY] -> *) -> *))
data ZipWith6Sym5 (l_a26lG :: TyFun a_a26eS (TyFun b_a26eT (TyFun c_a26eU (TyFun d_a26eV (TyFun e_a26eW (TyFun f_a26eX g_a26eY -> *) -> *) -> *) -> *) -> *) -> *) (l_a26lH :: [a_a26eS]) (l_a26lI :: [b_a26eT]) (l_a26lJ :: [c_a26eU]) (l_a26lK :: [d_a26eV]) (l_a26lF :: TyFun [e_a26eW] (TyFun [f_a26eX] [g_a26eY] -> *))
data ZipWith6Sym6 (l_a26lN :: TyFun a_a26eS (TyFun b_a26eT (TyFun c_a26eU (TyFun d_a26eV (TyFun e_a26eW (TyFun f_a26eX g_a26eY -> *) -> *) -> *) -> *) -> *) -> *) (l_a26lO :: [a_a26eS]) (l_a26lP :: [b_a26eT]) (l_a26lQ :: [c_a26eU]) (l_a26lR :: [d_a26eV]) (l_a26lS :: [e_a26eW]) (l_a26lM :: TyFun [f_a26eX] [g_a26eY])
type ZipWith6Sym7 (t_a26le :: TyFun a_a26eS (TyFun b_a26eT (TyFun c_a26eU (TyFun d_a26eV (TyFun e_a26eW (TyFun f_a26eX g_a26eY -> *) -> *) -> *) -> *) -> *) -> *) (t_a26lf :: [a_a26eS]) (t_a26lg :: [b_a26eT]) (t_a26lh :: [c_a26eU]) (t_a26li :: [d_a26eV]) (t_a26lj :: [e_a26eW]) (t_a26lk :: [f_a26eX]) = ZipWith6 t_a26le t_a26lf t_a26lg t_a26lh t_a26li t_a26lj t_a26lk
data ZipWith7Sym0 (l_a26jL :: TyFun (TyFun a_a26fc (TyFun b_a26fd (TyFun c_a26fe (TyFun d_a26ff (TyFun e_a26fg (TyFun f_a26fh (TyFun g_a26fi h_a26fj -> *) -> *) -> *) -> *) -> *) -> *) -> *) (TyFun [a_a26fc] (TyFun [b_a26fd] (TyFun [c_a26fe] (TyFun [d_a26ff] (TyFun [e_a26fg] (TyFun [f_a26fh] (TyFun [g_a26fi] [h_a26fj] -> *) -> *) -> *) -> *) -> *) -> *) -> *))
data ZipWith7Sym1 (l_a26jO :: TyFun a_a26fc (TyFun b_a26fd (TyFun c_a26fe (TyFun d_a26ff (TyFun e_a26fg (TyFun f_a26fh (TyFun g_a26fi h_a26fj -> *) -> *) -> *) -> *) -> *) -> *) -> *) (l_a26jN :: TyFun [a_a26fc] (TyFun [b_a26fd] (TyFun [c_a26fe] (TyFun [d_a26ff] (TyFun [e_a26fg] (TyFun [f_a26fh] (TyFun [g_a26fi] [h_a26fj] -> *) -> *) -> *) -> *) -> *) -> *))
data ZipWith7Sym2 (l_a26jR :: TyFun a_a26fc (TyFun b_a26fd (TyFun c_a26fe (TyFun d_a26ff (TyFun e_a26fg (TyFun f_a26fh (TyFun g_a26fi h_a26fj -> *) -> *) -> *) -> *) -> *) -> *) -> *) (l_a26jS :: [a_a26fc]) (l_a26jQ :: TyFun [b_a26fd] (TyFun [c_a26fe] (TyFun [d_a26ff] (TyFun [e_a26fg] (TyFun [f_a26fh] (TyFun [g_a26fi] [h_a26fj] -> *) -> *) -> *) -> *) -> *))
data ZipWith7Sym3 (l_a26jV :: TyFun a_a26fc (TyFun b_a26fd (TyFun c_a26fe (TyFun d_a26ff (TyFun e_a26fg (TyFun f_a26fh (TyFun g_a26fi h_a26fj -> *) -> *) -> *) -> *) -> *) -> *) -> *) (l_a26jW :: [a_a26fc]) (l_a26jX :: [b_a26fd]) (l_a26jU :: TyFun [c_a26fe] (TyFun [d_a26ff] (TyFun [e_a26fg] (TyFun [f_a26fh] (TyFun [g_a26fi] [h_a26fj] -> *) -> *) -> *) -> *))
data ZipWith7Sym4 (l_a26k0 :: TyFun a_a26fc (TyFun b_a26fd (TyFun c_a26fe (TyFun d_a26ff (TyFun e_a26fg (TyFun f_a26fh (TyFun g_a26fi h_a26fj -> *) -> *) -> *) -> *) -> *) -> *) -> *) (l_a26k1 :: [a_a26fc]) (l_a26k2 :: [b_a26fd]) (l_a26k3 :: [c_a26fe]) (l_a26jZ :: TyFun [d_a26ff] (TyFun [e_a26fg] (TyFun [f_a26fh] (TyFun [g_a26fi] [h_a26fj] -> *) -> *) -> *))
data ZipWith7Sym5 (l_a26k6 :: TyFun a_a26fc (TyFun b_a26fd (TyFun c_a26fe (TyFun d_a26ff (TyFun e_a26fg (TyFun f_a26fh (TyFun g_a26fi h_a26fj -> *) -> *) -> *) -> *) -> *) -> *) -> *) (l_a26k7 :: [a_a26fc]) (l_a26k8 :: [b_a26fd]) (l_a26k9 :: [c_a26fe]) (l_a26ka :: [d_a26ff]) (l_a26k5 :: TyFun [e_a26fg] (TyFun [f_a26fh] (TyFun [g_a26fi] [h_a26fj] -> *) -> *))
data ZipWith7Sym6 (l_a26kd :: TyFun a_a26fc (TyFun b_a26fd (TyFun c_a26fe (TyFun d_a26ff (TyFun e_a26fg (TyFun f_a26fh (TyFun g_a26fi h_a26fj -> *) -> *) -> *) -> *) -> *) -> *) -> *) (l_a26ke :: [a_a26fc]) (l_a26kf :: [b_a26fd]) (l_a26kg :: [c_a26fe]) (l_a26kh :: [d_a26ff]) (l_a26ki :: [e_a26fg]) (l_a26kc :: TyFun [f_a26fh] (TyFun [g_a26fi] [h_a26fj] -> *))
data ZipWith7Sym7 (l_a26kl :: TyFun a_a26fc (TyFun b_a26fd (TyFun c_a26fe (TyFun d_a26ff (TyFun e_a26fg (TyFun f_a26fh (TyFun g_a26fi h_a26fj -> *) -> *) -> *) -> *) -> *) -> *) -> *) (l_a26km :: [a_a26fc]) (l_a26kn :: [b_a26fd]) (l_a26ko :: [c_a26fe]) (l_a26kp :: [d_a26ff]) (l_a26kq :: [e_a26fg]) (l_a26kr :: [f_a26fh]) (l_a26kk :: TyFun [g_a26fi] [h_a26fj])
type ZipWith7Sym8 (t_a26jD :: TyFun a_a26fc (TyFun b_a26fd (TyFun c_a26fe (TyFun d_a26ff (TyFun e_a26fg (TyFun f_a26fh (TyFun g_a26fi h_a26fj -> *) -> *) -> *) -> *) -> *) -> *) -> *) (t_a26jE :: [a_a26fc]) (t_a26jF :: [b_a26fd]) (t_a26jG :: [c_a26fe]) (t_a26jH :: [d_a26ff]) (t_a26jI :: [e_a26fg]) (t_a26jJ :: [f_a26fh]) (t_a26jK :: [g_a26fi]) = ZipWith7 t_a26jD t_a26jE t_a26jF t_a26jG t_a26jH t_a26jI t_a26jJ t_a26jK
data NubSym0 (l_a26j6 :: TyFun [a_a26fz] [a_a26fz])
type NubSym1 (t_a26j5 :: [a_a26fz]) = Nub t_a26j5
data NubBySym0 (l_a26hQ :: TyFun (TyFun a_a26fG (TyFun a_a26fG Bool -> *) -> *) (TyFun [a_a26fG] [a_a26fG] -> *))
data NubBySym1 (l_a26hT :: TyFun a_a26fG (TyFun a_a26fG Bool -> *) -> *) (l_a26hS :: TyFun [a_a26fG] [a_a26fG])
type NubBySym2 (t_a26hO :: TyFun a_a26fG (TyFun a_a26fG Bool -> *) -> *) (t_a26hP :: [a_a26fG]) = NubBy t_a26hO t_a26hP
data UnionSym0 (l_a26iW :: TyFun [a_a26fX] (TyFun [a_a26fX] [a_a26fX] -> *))
data UnionSym1 (l_a26iZ :: [a_a26fX]) (l_a26iY :: TyFun [a_a26fX] [a_a26fX])
type UnionSym2 (t_a26iU :: [a_a26fX]) (t_a26iV :: [a_a26fX]) = Union t_a26iU t_a26iV
data UnionBySym0 (l_a26iB :: TyFun (TyFun a_a26fT (TyFun a_a26fT Bool -> *) -> *) (TyFun [a_a26fT] (TyFun [a_a26fT] [a_a26fT] -> *) -> *))
data UnionBySym1 (l_a26iE :: TyFun a_a26fT (TyFun a_a26fT Bool -> *) -> *) (l_a26iD :: TyFun [a_a26fT] (TyFun [a_a26fT] [a_a26fT] -> *))
data UnionBySym2 (l_a26iH :: TyFun a_a26fT (TyFun a_a26fT Bool -> *) -> *) (l_a26iI :: [a_a26fT]) (l_a26iG :: TyFun [a_a26fT] [a_a26fT])
type UnionBySym3 (t_a26iy :: TyFun a_a26fT (TyFun a_a26fT Bool -> *) -> *) (t_a26iz :: [a_a26fT]) (t_a26iA :: [a_a26fT]) = UnionBy t_a26iy t_a26iz t_a26iA
data GenericLengthSym0 (l_a26JF :: TyFun [a_a26g4] i_a26g5)
type GenericLengthSym1 (t_a26JE :: [a_a26g4]) = GenericLength t_a26JE
data GenericTakeSym0 (l_a26Gn :: TyFun i_a26g6 (TyFun [a_a26g7] [a_a26g7] -> *))
data GenericTakeSym1 (l_a26Gq :: i_a26g6) (l_a26Gp :: TyFun [a_a26g7] [a_a26g7])
type GenericTakeSym2 (t_a26Gl :: i_a26g6) (t_a26Gm :: [a_a26g7]) = GenericTake t_a26Gl t_a26Gm
data GenericDropSym0 (l_a26Fe :: TyFun i_a26g8 (TyFun [a_a26g9] [a_a26g9] -> *))
data GenericDropSym1 (l_a26Fh :: i_a26g8) (l_a26Fg :: TyFun [a_a26g9] [a_a26g9])
type GenericDropSym2 (t_a26Fc :: i_a26g8) (t_a26Fd :: [a_a26g9]) = GenericDrop t_a26Fc t_a26Fd
data GenericSplitAtSym0 (l_a26G8 :: TyFun i_a26ga (TyFun [a_a26gb] ([a_a26gb], [a_a26gb]) -> *))
data GenericSplitAtSym1 (l_a26Gb :: i_a26ga) (l_a26Ga :: TyFun [a_a26gb] ([a_a26gb], [a_a26gb]))
type GenericSplitAtSym2 (t_a26G6 :: i_a26ga) (t_a26G7 :: [a_a26gb]) = GenericSplitAt t_a26G6 t_a26G7
data GenericIndexSym0 (l_a26sx :: TyFun [a_a26gc] (TyFun i_a26gd a_a26gc -> *))
data GenericIndexSym1 (l_a26sA :: [a_a26gc]) (l_a26sz :: TyFun i_a26gd a_a26gc)
type GenericIndexSym2 (t_a26sv :: [a_a26gc]) (t_a26sw :: i_a26gd) = GenericIndex t_a26sv t_a26sw
data GenericReplicateSym0 (l_a26GY :: TyFun i_a26ge (TyFun a_a26gf [a_a26gf] -> *))
data GenericReplicateSym1 (l_a26H1 :: i_a26ge) (l_a26H0 :: TyFun a_a26gf [a_a26gf])
type GenericReplicateSym2 (t_a26GW :: i_a26ge) (t_a26GX :: a_a26gf) = GenericReplicate t_a26GW t_a26GX
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627890787NubBy'Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627890787NubBy'Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627890787NubBy'Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627890787NubBy'Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627890860Nub'Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627890860Nub'Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627890860Nub'Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Lambda_1627891549Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Lambda_1627891549Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Lambda_1627891549Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Lambda_1627891549Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891698XsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891709XsSym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891709XsSym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891709XsSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891709XsSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891709XsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891737YsSym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891737YsSym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891737YsSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891737YsSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891737YsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891737ZsSym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891737ZsSym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891737ZsSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891737ZsSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891737ZsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891737X_1627891738Sym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891737X_1627891738Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891737X_1627891738Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891737X_1627891738Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891737X_1627891738Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891847XsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891858XsSym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891858XsSym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891858XsSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891858XsSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891858XsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891886YsSym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891886YsSym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891886YsSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891886YsSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891886YsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891886ZsSym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891886ZsSym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891886ZsSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891886ZsSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891886ZsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891886X_1627891887Sym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891886X_1627891887Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891886X_1627891887Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891886X_1627891887Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891886X_1627891887Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891999YsSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891999YsSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891999YsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891999ZsSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891999ZsSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891999ZsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891999X_1627892000Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891999X_1627892000Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627891999X_1627892000Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627892078Scrutinee_1627890696Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627892078Scrutinee_1627890696Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627892078Scrutinee_1627890696Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627892078Scrutinee_1627890696Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Lambda_1627892074Sym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Lambda_1627892074Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Lambda_1627892074Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Lambda_1627892074Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627892139XsSym4
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627892139XsSym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627892139XsSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627892139XsSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627892139XsSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627892350ProdSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627892350ProdSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627892350ProdSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627892374Sum'Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627892374Sum'Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627892374Sum'Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627892412BuildListSym3
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627892412BuildListSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627892412BuildListSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Let1627892412BuildListSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Lambda_1627892438Sym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Lambda_1627892438Sym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Lambda_1627892438Sym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Elem_bySym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Elem_bySym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Elem_bySym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.NubBySym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.NubBySym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.UnionBySym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.UnionBySym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.UnionBySym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.UnionSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.UnionSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.NubSym0
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.:!!$$)
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings (Data.Promotion.Prelude.List.:!!$)
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.SelectSym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.SelectSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.SelectSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.PartitionSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.PartitionSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.FilterSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.FilterSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.IntersectBySym2
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.IntersectBySym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.IntersectBySym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.IntersectSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.IntersectSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.FindSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.FindSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.LookupSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.LookupSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.SortSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.InsertSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.InsertSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.MinimumSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.MaximumSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.StripPrefixSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.StripPrefixSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.BreakSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.BreakSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.SpanSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.SpanSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.GroupBySym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.GroupBySym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.GroupSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.DropWhileEndSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.DropWhileEndSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.DropWhileSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.DropWhileSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.TakeWhileSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.TakeWhileSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.DropSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.DropSym0
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.TakeSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.TakeSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.SplitAtSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.SplitAtSym0
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.GenericTakeSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.GenericTakeSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.TransposeSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ReplicateSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ReplicateSym0
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.ProductSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.SumSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.LengthSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.FindIndicesSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.FindIndicesSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ElemIndicesSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ElemIndicesSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.FindIndexSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.FindIndexSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ElemIndexSym1
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ElemIndexSym0
instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.GenericLengthSym0
-- | 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_a1Mv4 -> (a_a1Mv5 -> b_a1Mv4) -> Maybe a_a1Mv5 -> b_a1Mv4
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_a1acT -> Bool) -> [a_a1acT] -> 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_a1Mvd :: TyFun b_a1Mv4 (TyFun (TyFun a_a1Mv5 b_a1Mv4 -> *) (TyFun (Maybe a_a1Mv5) b_a1Mv4 -> *) -> *))
data Maybe_Sym1 (l_a1Mvg :: b_a1Mv4) (l_a1Mvf :: TyFun (TyFun a_a1Mv5 b_a1Mv4 -> *) (TyFun (Maybe a_a1Mv5) b_a1Mv4 -> *))
data Maybe_Sym2 (l_a1Mvj :: b_a1Mv4) (l_a1Mvk :: TyFun a_a1Mv5 b_a1Mv4 -> *) (l_a1Mvi :: TyFun (Maybe a_a1Mv5) b_a1Mv4)
type Maybe_Sym3 (t_a1Mva :: b_a1Mv4) (t_a1Mvb :: TyFun a_a1Mv5 b_a1Mv4 -> *) (t_a1Mvc :: Maybe a_a1Mv5) = Maybe_ t_a1Mva t_a1Mvb t_a1Mvc
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_a1cIJ :: TyFun [a_a1c5c] [a_a1c5c])
type ReverseSym1 (t_a1cII :: [a_a1c5c]) = Reverse t_a1cII
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_a1cKh :: TyFun [a_a1c4V] a_a1c4V)
type HeadSym1 (t_a1cKg :: [a_a1c4V]) = Head t_a1cKg
data LastSym0 (l_a1cK7 :: TyFun [a_a1c4X] a_a1c4X)
type LastSym1 (t_a1cK6 :: [a_a1c4X]) = Last t_a1cK6
data TailSym0 (l_a1cJZ :: TyFun [a_a1c51] [a_a1c51])
type TailSym1 (t_a1cJY :: [a_a1c51]) = Tail t_a1cJY
data InitSym0 (l_a1cJs :: TyFun [a_a1c53] [a_a1c53])
type InitSym1 (t_a1cJr :: [a_a1c53]) = Init t_a1cJr
data NullSym0 (l_a1cJi :: TyFun [a_a1c5b] Bool)
type NullSym1 (t_a1cJh :: [a_a1c5b]) = Null t_a1cJh
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_a1cwT :: TyFun (TyFun a_a1c64 (TyFun a_a1c64 a_a1c64 -> *) -> *) (TyFun [a_a1c64] a_a1c64 -> *))
data Foldl1Sym1 (l_a1cwW :: TyFun a_a1c64 (TyFun a_a1c64 a_a1c64 -> *) -> *) (l_a1cwV :: TyFun [a_a1c64] a_a1c64)
type Foldl1Sym2 (t_a1cwR :: TyFun a_a1c64 (TyFun a_a1c64 a_a1c64 -> *) -> *) (t_a1cwS :: [a_a1c64]) = Foldl1 t_a1cwR t_a1cwS
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_a1cwg :: TyFun (TyFun a_a1c6c (TyFun a_a1c6c a_a1c6c -> *) -> *) (TyFun [a_a1c6c] a_a1c6c -> *))
data Foldr1Sym1 (l_a1cwj :: TyFun a_a1c6c (TyFun a_a1c6c a_a1c6c -> *) -> *) (l_a1cwi :: TyFun [a_a1c6c] a_a1c6c)
type Foldr1Sym2 (t_a1cwe :: TyFun a_a1c6c (TyFun a_a1c6c a_a1c6c -> *) -> *) (t_a1cwf :: [a_a1c6c]) = Foldr1 t_a1cwe t_a1cwf
data ConcatSym0 (l_a1cwa :: TyFun [[a_a1c6h]] [a_a1c6h])
type ConcatSym1 (t_a1cw9 :: [[a_a1c6h]]) = Concat t_a1cw9
data ConcatMapSym0 (l_a1cvW :: TyFun (TyFun a_a1c6i [b_a1c6j] -> *) (TyFun [a_a1c6i] [b_a1c6j] -> *))
data ConcatMapSym1 (l_a1cvZ :: TyFun a_a1c6i [b_a1c6j] -> *) (l_a1cvY :: TyFun [a_a1c6i] [b_a1c6j])
type ConcatMapSym2 (t_a1cvU :: TyFun a_a1c6i [b_a1c6j] -> *) (t_a1cvV :: [a_a1c6i]) = ConcatMap t_a1cvU t_a1cvV
data MaximumBySym0 (l_a1cx8 :: TyFun (TyFun a_a1ca3 (TyFun a_a1ca3 Ordering -> *) -> *) (TyFun [a_a1ca3] a_a1ca3 -> *))
data MaximumBySym1 (l_a1cxb :: TyFun a_a1ca3 (TyFun a_a1ca3 Ordering -> *) -> *) (l_a1cxa :: TyFun [a_a1ca3] a_a1ca3)
type MaximumBySym2 (t_a1cx6 :: TyFun a_a1ca3 (TyFun a_a1ca3 Ordering -> *) -> *) (t_a1cx7 :: [a_a1ca3]) = MaximumBy t_a1cx6 t_a1cx7
data MinimumBySym0 (l_a1cyx :: TyFun (TyFun a_a1ca9 (TyFun a_a1ca9 Ordering -> *) -> *) (TyFun [a_a1ca9] a_a1ca9 -> *))
data MinimumBySym1 (l_a1cyA :: TyFun a_a1ca9 (TyFun a_a1ca9 Ordering -> *) -> *) (l_a1cyz :: TyFun [a_a1ca9] a_a1ca9)
type MinimumBySym2 (t_a1cyv :: TyFun a_a1ca9 (TyFun a_a1ca9 Ordering -> *) -> *) (t_a1cyw :: [a_a1ca9]) = MinimumBy t_a1cyv t_a1cyw
data AndSym0 (l_a1cvP :: TyFun [Bool] Bool)
type AndSym1 (t_a1cvO :: [Bool]) = And t_a1cvO
data OrSym0 (l_a1cvJ :: TyFun [Bool] Bool)
type OrSym1 (t_a1cvI :: [Bool]) = Or t_a1cvI
data Any_Sym0 (l_a1ad0 :: TyFun (TyFun a_a1acT Bool -> *) (TyFun [a_a1acT] Bool -> *))
data Any_Sym1 (l_a1ad3 :: TyFun a_a1acT Bool -> *) (l_a1ad2 :: TyFun [a_a1acT] Bool)
type Any_Sym2 (t_a1acY :: TyFun a_a1acT Bool -> *) (t_a1acZ :: [a_a1acT]) = Any_ t_a1acY t_a1acZ
data AllSym0 (l_a1cvv :: TyFun (TyFun a_a1c6p Bool -> *) (TyFun [a_a1c6p] Bool -> *))
data AllSym1 (l_a1cvy :: TyFun a_a1c6p Bool -> *) (l_a1cvx :: TyFun [a_a1c6p] Bool)
type AllSym2 (t_a1cvt :: TyFun a_a1c6p Bool -> *) (t_a1cvu :: [a_a1c6p]) = All t_a1cvt t_a1cvu
data ScanlSym0 (l_a1cuH :: TyFun (TyFun b_a1c6t (TyFun a_a1c6u b_a1c6t -> *) -> *) (TyFun b_a1c6t (TyFun [a_a1c6u] [b_a1c6t] -> *) -> *))
data ScanlSym1 (l_a1cuK :: TyFun b_a1c6t (TyFun a_a1c6u b_a1c6t -> *) -> *) (l_a1cuJ :: TyFun b_a1c6t (TyFun [a_a1c6u] [b_a1c6t] -> *))
data ScanlSym2 (l_a1cuN :: TyFun b_a1c6t (TyFun a_a1c6u b_a1c6t -> *) -> *) (l_a1cuO :: b_a1c6t) (l_a1cuM :: TyFun [a_a1c6u] [b_a1c6t])
type ScanlSym3 (t_a1cuE :: TyFun b_a1c6t (TyFun a_a1c6u b_a1c6t -> *) -> *) (t_a1cuF :: b_a1c6t) (t_a1cuG :: [a_a1c6u]) = Scanl t_a1cuE t_a1cuF t_a1cuG
data Scanl1Sym0 (l_a1cvg :: TyFun (TyFun a_a1c6A (TyFun a_a1c6A a_a1c6A -> *) -> *) (TyFun [a_a1c6A] [a_a1c6A] -> *))
data Scanl1Sym1 (l_a1cvj :: TyFun a_a1c6A (TyFun a_a1c6A a_a1c6A -> *) -> *) (l_a1cvi :: TyFun [a_a1c6A] [a_a1c6A])
type Scanl1Sym2 (t_a1cve :: TyFun a_a1c6A (TyFun a_a1c6A a_a1c6A -> *) -> *) (t_a1cvf :: [a_a1c6A]) = Scanl1 t_a1cve t_a1cvf
data ScanrSym0 (l_a1ctW :: TyFun (TyFun a_a1c6E (TyFun b_a1c6F b_a1c6F -> *) -> *) (TyFun b_a1c6F (TyFun [a_a1c6E] [b_a1c6F] -> *) -> *))
data ScanrSym1 (l_a1ctZ :: TyFun a_a1c6E (TyFun b_a1c6F b_a1c6F -> *) -> *) (l_a1ctY :: TyFun b_a1c6F (TyFun [a_a1c6E] [b_a1c6F] -> *))
data ScanrSym2 (l_a1cu2 :: TyFun a_a1c6E (TyFun b_a1c6F b_a1c6F -> *) -> *) (l_a1cu3 :: b_a1c6F) (l_a1cu1 :: TyFun [a_a1c6E] [b_a1c6F])
type ScanrSym3 (t_a1ctT :: TyFun a_a1c6E (TyFun b_a1c6F b_a1c6F -> *) -> *) (t_a1ctU :: b_a1c6F) (t_a1ctV :: [a_a1c6E]) = Scanr t_a1ctT t_a1ctU t_a1ctV
data Scanr1Sym0 (l_a1csU :: TyFun (TyFun a_a1c6N (TyFun a_a1c6N a_a1c6N -> *) -> *) (TyFun [a_a1c6N] [a_a1c6N] -> *))
data Scanr1Sym1 (l_a1csX :: TyFun a_a1c6N (TyFun a_a1c6N a_a1c6N -> *) -> *) (l_a1csW :: TyFun [a_a1c6N] [a_a1c6N])
type Scanr1Sym2 (t_a1csS :: TyFun a_a1c6N (TyFun a_a1c6N a_a1c6N -> *) -> *) (t_a1csT :: [a_a1c6N]) = Scanr1 t_a1csS t_a1csT
data ElemSym0 (l_a1clF :: TyFun a_a1c7G (TyFun [a_a1c7G] Bool -> *))
data ElemSym1 (l_a1clI :: a_a1c7G) (l_a1clH :: TyFun [a_a1c7G] Bool)
type ElemSym2 (t_a1clD :: a_a1c7G) (t_a1clE :: [a_a1c7G]) = Elem t_a1clD t_a1clE
data NotElemSym0 (l_a1clq :: TyFun a_a1c7K (TyFun [a_a1c7K] Bool -> *))
data NotElemSym1 (l_a1clt :: a_a1c7K) (l_a1cls :: TyFun [a_a1c7K] Bool)
type NotElemSym2 (t_a1clo :: a_a1c7K) (t_a1clp :: [a_a1c7K]) = NotElem t_a1clo t_a1clp
data ZipSym0 (l_a1cl1 :: TyFun [a_a1c7O] (TyFun [b_a1c7P] [(a_a1c7O, b_a1c7P)] -> *))
data ZipSym1 (l_a1cl4 :: [a_a1c7O]) (l_a1cl3 :: TyFun [b_a1c7P] [(a_a1c7O, b_a1c7P)])
type ZipSym2 (t_a1ckZ :: [a_a1c7O]) (t_a1cl0 :: [b_a1c7P]) = Zip t_a1ckZ t_a1cl0
data Zip3Sym0 (l_a1cjP :: TyFun [a_a1c7U] (TyFun [b_a1c7V] (TyFun [c_a1c7W] [(a_a1c7U, b_a1c7V, c_a1c7W)] -> *) -> *))
data Zip3Sym1 (l_a1cjS :: [a_a1c7U]) (l_a1cjR :: TyFun [b_a1c7V] (TyFun [c_a1c7W] [(a_a1c7U, b_a1c7V, c_a1c7W)] -> *))
data Zip3Sym2 (l_a1cjV :: [a_a1c7U]) (l_a1cjW :: [b_a1c7V]) (l_a1cjU :: TyFun [c_a1c7W] [(a_a1c7U, b_a1c7V, c_a1c7W)])
type Zip3Sym3 (t_a1cjM :: [a_a1c7U]) (t_a1cjN :: [b_a1c7V]) (t_a1cjO :: [c_a1c7W]) = Zip3 t_a1cjM t_a1cjN t_a1cjO
data ZipWithSym0 (l_a1cja :: TyFun (TyFun a_a1c83 (TyFun b_a1c84 c_a1c85 -> *) -> *) (TyFun [a_a1c83] (TyFun [b_a1c84] [c_a1c85] -> *) -> *))
data ZipWithSym1 (l_a1cjd :: TyFun a_a1c83 (TyFun b_a1c84 c_a1c85 -> *) -> *) (l_a1cjc :: TyFun [a_a1c83] (TyFun [b_a1c84] [c_a1c85] -> *))
data ZipWithSym2 (l_a1cjg :: TyFun a_a1c83 (TyFun b_a1c84 c_a1c85 -> *) -> *) (l_a1cjh :: [a_a1c83]) (l_a1cjf :: TyFun [b_a1c84] [c_a1c85])
type ZipWithSym3 (t_a1cj7 :: TyFun a_a1c83 (TyFun b_a1c84 c_a1c85 -> *) -> *) (t_a1cj8 :: [a_a1c83]) (t_a1cj9 :: [b_a1c84]) = ZipWith t_a1cj7 t_a1cj8 t_a1cj9
data ZipWith3Sym0 (l_a1chv :: TyFun (TyFun a_a1c8b (TyFun b_a1c8c (TyFun c_a1c8d d_a1c8e -> *) -> *) -> *) (TyFun [a_a1c8b] (TyFun [b_a1c8c] (TyFun [c_a1c8d] [d_a1c8e] -> *) -> *) -> *))
data ZipWith3Sym1 (l_a1chy :: TyFun a_a1c8b (TyFun b_a1c8c (TyFun c_a1c8d d_a1c8e -> *) -> *) -> *) (l_a1chx :: TyFun [a_a1c8b] (TyFun [b_a1c8c] (TyFun [c_a1c8d] [d_a1c8e] -> *) -> *))
data ZipWith3Sym2 (l_a1chB :: TyFun a_a1c8b (TyFun b_a1c8c (TyFun c_a1c8d d_a1c8e -> *) -> *) -> *) (l_a1chC :: [a_a1c8b]) (l_a1chA :: TyFun [b_a1c8c] (TyFun [c_a1c8d] [d_a1c8e] -> *))
data ZipWith3Sym3 (l_a1chF :: TyFun a_a1c8b (TyFun b_a1c8c (TyFun c_a1c8d d_a1c8e -> *) -> *) -> *) (l_a1chG :: [a_a1c8b]) (l_a1chH :: [b_a1c8c]) (l_a1chE :: TyFun [c_a1c8d] [d_a1c8e])
data UnzipSym0 (l_a1cgY :: TyFun [(a_a1c8m, b_a1c8n)] ([a_a1c8m], [b_a1c8n]))
type UnzipSym1 (t_a1cgX :: [(a_a1c8m, b_a1c8n)]) = Unzip t_a1cgX
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_a26HU :: TyFun [a_a26bZ] Nat)
type LengthSym1 (t_a26HT :: [a_a26bZ]) = Length t_a26HT
data SumSym0 (l_a26Hw :: TyFun [Nat] Nat)
type SumSym1 (t_a26Hv :: [Nat]) = Sum t_a26Hv
data ProductSym0 (l_a26H8 :: TyFun [Nat] Nat)
type ProductSym1 (t_a26H7 :: [Nat]) = Product t_a26H7
data ReplicateSym0 (l_a26GG :: TyFun Nat (TyFun a_a26cd [a_a26cd] -> *))
data ReplicateSym1 (l_a26GJ :: Nat) (l_a26GI :: TyFun a_a26cd [a_a26cd])
type ReplicateSym2 (t_a26GE :: Nat) (t_a26GF :: a_a26cd) = Replicate t_a26GE t_a26GF
data TakeSym0 (l_a26Fp :: TyFun Nat (TyFun [a_a26cl] [a_a26cl] -> *))
data TakeSym1 (l_a26Fs :: Nat) (l_a26Fr :: TyFun [a_a26cl] [a_a26cl])
type TakeSym2 (t_a26Fn :: Nat) (t_a26Fo :: [a_a26cl]) = Take t_a26Fn t_a26Fo
data DropSym0 (l_a26EG :: TyFun Nat (TyFun [a_a26cq] [a_a26cq] -> *))
data DropSym1 (l_a26EJ :: Nat) (l_a26EI :: TyFun [a_a26cq] [a_a26cq])
type DropSym2 (t_a26EE :: Nat) (t_a26EF :: [a_a26cq]) = Drop t_a26EE t_a26EF
data SplitAtSym0 (l_a26FT :: TyFun Nat (TyFun [a_a26cv] ([a_a26cv], [a_a26cv]) -> *))
data SplitAtSym1 (l_a26FW :: Nat) (l_a26FV :: TyFun [a_a26cv] ([a_a26cv], [a_a26cv]))
type SplitAtSym2 (t_a26FR :: Nat) (t_a26FS :: [a_a26cv]) = SplitAt t_a26FR t_a26FS
data TakeWhileSym0 (l_a26Ej :: TyFun (TyFun a_a26cy Bool -> *) (TyFun [a_a26cy] [a_a26cy] -> *))
data TakeWhileSym1 (l_a26Em :: TyFun a_a26cy Bool -> *) (l_a26El :: TyFun [a_a26cy] [a_a26cy])
type TakeWhileSym2 (t_a26Eh :: TyFun a_a26cy Bool -> *) (t_a26Ei :: [a_a26cy]) = TakeWhile t_a26Eh t_a26Ei
data DropWhileSym0 (l_a26Dw :: TyFun (TyFun a_a26cC Bool -> *) (TyFun [a_a26cC] [a_a26cC] -> *))
data DropWhileSym1 (l_a26Dz :: TyFun a_a26cC Bool -> *) (l_a26Dy :: TyFun [a_a26cC] [a_a26cC])
type DropWhileSym2 (t_a26Du :: TyFun a_a26cC Bool -> *) (t_a26Dv :: [a_a26cC]) = DropWhile t_a26Du t_a26Dv
data SpanSym0 (l_a26yV :: TyFun (TyFun a_a26cL Bool -> *) (TyFun [a_a26cL] ([a_a26cL], [a_a26cL]) -> *))
data SpanSym1 (l_a26yY :: TyFun a_a26cL Bool -> *) (l_a26yX :: TyFun [a_a26cL] ([a_a26cL], [a_a26cL]))
type SpanSym2 (t_a26yT :: TyFun a_a26cL Bool -> *) (t_a26yU :: [a_a26cL]) = Span t_a26yT t_a26yU
data BreakSym0 (l_a26ww :: TyFun (TyFun a_a26cT Bool -> *) (TyFun [a_a26cT] ([a_a26cT], [a_a26cT]) -> *))
data BreakSym1 (l_a26wz :: TyFun a_a26cT Bool -> *) (l_a26wy :: TyFun [a_a26cT] ([a_a26cT], [a_a26cT]))
type BreakSym2 (t_a26wu :: TyFun a_a26cT Bool -> *) (t_a26wv :: [a_a26cT]) = Break t_a26wu t_a26wv
data LookupSym0 (l_a26v7 :: TyFun a_a26dn (TyFun [(a_a26dn, b_a26do)] (Maybe b_a26do) -> *))
data LookupSym1 (l_a26va :: a_a26dn) (l_a26v9 :: TyFun [(a_a26dn, b_a26do)] (Maybe b_a26do))
type LookupSym2 (t_a26v5 :: a_a26dn) (t_a26v6 :: [(a_a26dn, b_a26do)]) = Lookup t_a26v5 t_a26v6
data FilterSym0 (l_a26tl :: TyFun (TyFun a_a26dw Bool -> *) (TyFun [a_a26dw] [a_a26dw] -> *))
data FilterSym1 (l_a26to :: TyFun a_a26dw Bool -> *) (l_a26tn :: TyFun [a_a26dw] [a_a26dw])
type FilterSym2 (t_a26tj :: TyFun a_a26dw Bool -> *) (t_a26tk :: [a_a26dw]) = Filter t_a26tj t_a26tk
data (:!!$) (l_a26rT :: TyFun [a_a26dJ] (TyFun Nat a_a26dJ -> *))
data (:!!$$) (l_a26rW :: [a_a26dJ]) (l_a26rV :: TyFun Nat a_a26dJ)
type (:!!$$$) (t_a26rR :: [a_a26dJ]) (t_a26rS :: Nat) = (:!!) t_a26rR t_a26rS
-- | 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 -> ()