-- 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. -- -- -- -- It's also used to instantiate un-constrained type variables after type -- checking. For example, length has type -- --
--   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. -- -- -- -- It's also used to instantiate un-constrained type variables after type -- checking. For example, length has type -- --
--   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 -> ()