-- 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.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 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 SingKind k where type DemoteRep k :: * where { type family DemoteRep k :: *; } -- | Convert a singleton to its unrefined version. fromSing :: SingKind k => Sing (a :: k) -> DemoteRep k -- | Convert an unrefined type to an existentially-quantified singleton -- type. toSing :: SingKind k => DemoteRep k -> SomeSing k -- | Convenient synonym to refer to the kind of a type variable: type -- KindOf (a :: k) = ('Proxy :: Proxy k) type KindOf (a :: k) = (Proxy :: Proxy k) -- | Convenient abbreviation for DemoteRep: type Demote (a :: k) -- = DemoteRep k type Demote (a :: k) = DemoteRep k -- | A SingInstance wraps up a SingI instance for explicit -- handling. data SingInstance (a :: k) [SingInstance] :: SingI a => 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 k [SomeSing] :: Sing (a :: k) -> SomeSing k -- | Get an implicit singleton (a SingI instance) from an explicit -- one. singInstance :: forall (a :: k). 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 k => DemoteRep 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 :: forall (a :: k). (SingKind 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 :: * -> * -> * -- | Something of kind `a ~> b` is a defunctionalized type function that -- is not necessarily generative or injective. type (~>) a b = TyFun a b -> * -- | Wrapper for converting the normal type-level arrow into a -- ~>. For example, given: -- --
--   data Nat = Zero | Succ Nat
--   type family Map (a :: 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) -> (k1 ~> k2) -- | Similar to TyCon1, but for two-parameter type constructors. data TyCon2 :: (k1 -> k2 -> k3) -> (k1 ~> (k2 ~> k3)) data TyCon3 :: (k1 -> k2 -> k3 -> k4) -> (k1 ~> (k2 ~> (k3 ~> k4))) data TyCon4 :: (k1 -> k2 -> k3 -> k4 -> k5) -> (k1 ~> (k2 ~> (k3 ~> (k4 ~> k5)))) data TyCon5 :: (k1 -> k2 -> k3 -> k4 -> k5 -> k6) -> (k1 ~> (k2 ~> (k3 ~> (k4 ~> (k5 ~> k6))))) data TyCon6 :: (k1 -> k2 -> k3 -> k4 -> k5 -> k6 -> k7) -> (k1 ~> (k2 ~> (k3 ~> (k4 ~> (k5 ~> (k6 ~> k7)))))) data TyCon7 :: (k1 -> k2 -> k3 -> k4 -> k5 -> k6 -> k7 -> k8) -> (k1 ~> (k2 ~> (k3 ~> (k4 ~> (k5 ~> (k6 ~> (k7 ~> k8))))))) data TyCon8 :: (k1 -> k2 -> k3 -> k4 -> k5 -> k6 -> k7 -> k8 -> k9) -> (k1 ~> (k2 ~> (k3 ~> (k4 ~> (k5 ~> (k6 ~> (k7 ~> (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) -- | A concrete, poly-kinded proxy type data Proxy k (t :: k) :: forall k. k -> * Proxy :: Proxy k instance (Data.Singletons.SingKind k1, Data.Singletons.SingKind k2) => Data.Singletons.SingKind (k1 Data.Singletons.~> k2) -- | 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 SDecide k -- | Compute a proof or disproof of equality, given two singletons. (%~) :: forall (a :: k) (b :: k). SDecide k => 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 (:~:) k (a :: k) (b :: k) :: forall k. k -> k -> * [Refl] :: (:~:) k a a -- | 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 forall k (k1 :: k) k2. Data.Singletons.Decide.SDecide k2 => 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) -- | 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 :: forall (t_a17Pa :: Bool). Sing t_a17Pa -> Sing (Apply NotSym0 t_a17Pa :: Bool) (%:&&) :: forall (t_a17Pd :: Bool) (t_a17Pe :: Bool). Sing t_a17Pd -> Sing t_a17Pe -> Sing (Apply (Apply (:&&$) t_a17Pd) t_a17Pe :: Bool) infixr 3 %:&& (%:||) :: forall (t_a17Pb :: Bool) (t_a17Pc :: Bool). Sing t_a17Pb -> Sing t_a17Pc -> Sing (Apply (Apply (:||$) t_a17Pb) t_a17Pc :: Bool) infixr 2 %:|| bool_ :: forall a_a17Df. a_a17Df -> a_a17Df -> Bool -> a_a17Df sBool_ :: forall (t_a17DE :: a_a17Df) (t_a17DF :: a_a17Df) (t_a17DG :: Bool). Sing t_a17DE -> Sing t_a17DF -> Sing t_a17DG -> Sing (Apply (Apply (Apply Bool_Sym0 t_a17DE) t_a17DF) t_a17DG :: a_a17Df) sOtherwise :: Sing (OtherwiseSym0 :: Bool) type TrueSym0 = True type FalseSym0 = False data NotSym0 (l_a17OH :: TyFun Bool Bool) type NotSym1 (t_a17OG :: Bool) = Not t_a17OG data (:&&$) (l_a17OZ :: TyFun Bool (TyFun Bool Bool -> Type)) data (:&&$$) (l_a17P2 :: Bool) (l_a17P1 :: TyFun Bool Bool) type (:&&$$$) (t_a17OX :: Bool) (t_a17OY :: Bool) = (:&&) t_a17OX t_a17OY data (:||$) (l_a17OM :: TyFun Bool (TyFun Bool Bool -> Type)) data (:||$$) (l_a17OP :: Bool) (l_a17OO :: TyFun Bool Bool) type (:||$$$) (t_a17OK :: Bool) (t_a17OL :: Bool) = (:||) t_a17OK t_a17OL data Bool_Sym0 (l_a17Do :: TyFun a1627657621 (TyFun a1627657621 (TyFun Bool a1627657621 -> Type) -> Type)) data Bool_Sym1 (l_a17Dr :: a1627657621) (l_a17Dq :: TyFun a1627657621 (TyFun Bool a1627657621 -> Type)) data Bool_Sym2 (l_a17Du :: a1627657621) (l_a17Dv :: a1627657621) (l_a17Dt :: TyFun Bool a1627657621) type Bool_Sym3 (t_a17Dl :: a1627657621) (t_a17Dm :: a1627657621) (t_a17Dn :: Bool) = Bool_ t_a17Dl t_a17Dm t_a17Dn 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 ~ Proxy => PEq (kproxy :: Proxy a) where type (:==) (x :: a) (y :: a) :: Bool type (:/=) (x :: a) (y :: a) :: Bool type (:==) (x :: a) (y :: a) = x == y type (:/=) (x :: a) (y :: a) = Not (x :== y) where { type family (:==) (x :: a) (y :: a) :: Bool; type family (:/=) (x :: a) (y :: a) :: Bool; type (:==) (x :: a) (y :: a) = x == y; type (:/=) (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 SEq k where a %:/= b = sNot (a %:== b) -- | Boolean equality on singletons (%:==) :: forall (a :: k) (b :: k). SEq k => Sing a -> Sing b -> Sing (a :== b) -- | Boolean disequality on singletons (%:/=) :: forall (a :: k) (b :: k). SEq k => Sing a -> Sing b -> Sing (a :/= b) -- | Boolean disequality on singletons (%:/=) :: forall (a :: k) (b :: k). (SEq k, (a :/= b) ~ Not (a :== b)) => Sing a -> Sing b -> Sing (a :/= b) data (:==$) (l_a18NX :: TyFun a1627662065 (TyFun a1627662065 Bool -> Type)) data (:==$$) (l_a18O0 :: a1627662065) (l_a18NZ :: TyFun a1627662065 Bool) type (:==$$$) (t_a18NV :: a1627662065) (t_a18NW :: a1627662065) = (:==) t_a18NV t_a18NW data (:/=$) (l_a18O4 :: TyFun a1627662065 (TyFun a1627662065 Bool -> Type)) data (:/=$$) (l_a18O7 :: a1627662065) (l_a18O6 :: TyFun a1627662065 Bool) type (:/=$$$) (t_a18O2 :: a1627662065) (t_a18O3 :: a1627662065) = (:/=) t_a18O2 t_a18O3 instance Data.Singletons.Prelude.Eq.SEq a0 => Data.Singletons.Prelude.Eq.SEq (GHC.Base.Maybe a0) instance Data.Singletons.Prelude.Eq.PEq 'Data.Proxy.Proxy instance Data.Singletons.Prelude.Eq.SEq a0 => Data.Singletons.Prelude.Eq.SEq [a0] instance Data.Singletons.Prelude.Eq.PEq 'Data.Proxy.Proxy instance (Data.Singletons.Prelude.Eq.SEq a0, Data.Singletons.Prelude.Eq.SEq b0) => Data.Singletons.Prelude.Eq.SEq (Data.Either.Either a0 b0) instance Data.Singletons.Prelude.Eq.PEq 'Data.Proxy.Proxy instance Data.Singletons.Prelude.Eq.SEq a0 => Data.Singletons.Prelude.Eq.SEq (Data.List.NonEmpty.NonEmpty a0) instance Data.Singletons.Prelude.Eq.PEq 'Data.Proxy.Proxy instance (Data.Singletons.Prelude.Eq.SEq a0, Data.Singletons.Prelude.Eq.SEq b0) => Data.Singletons.Prelude.Eq.SEq (a0, b0) instance Data.Singletons.Prelude.Eq.PEq 'Data.Proxy.Proxy instance (Data.Singletons.Prelude.Eq.SEq a0, Data.Singletons.Prelude.Eq.SEq b0, Data.Singletons.Prelude.Eq.SEq c0) => Data.Singletons.Prelude.Eq.SEq (a0, b0, c0) instance Data.Singletons.Prelude.Eq.PEq 'Data.Proxy.Proxy instance (Data.Singletons.Prelude.Eq.SEq a0, Data.Singletons.Prelude.Eq.SEq b0, Data.Singletons.Prelude.Eq.SEq c0, Data.Singletons.Prelude.Eq.SEq d0) => Data.Singletons.Prelude.Eq.SEq (a0, b0, c0, d0) instance Data.Singletons.Prelude.Eq.PEq 'Data.Proxy.Proxy instance (Data.Singletons.Prelude.Eq.SEq a0, Data.Singletons.Prelude.Eq.SEq b0, Data.Singletons.Prelude.Eq.SEq c0, Data.Singletons.Prelude.Eq.SEq d0, Data.Singletons.Prelude.Eq.SEq e0) => Data.Singletons.Prelude.Eq.SEq (a0, b0, c0, d0, e0) instance Data.Singletons.Prelude.Eq.PEq 'Data.Proxy.Proxy instance (Data.Singletons.Prelude.Eq.SEq a0, Data.Singletons.Prelude.Eq.SEq b0, Data.Singletons.Prelude.Eq.SEq c0, Data.Singletons.Prelude.Eq.SEq d0, Data.Singletons.Prelude.Eq.SEq e0, Data.Singletons.Prelude.Eq.SEq f0) => Data.Singletons.Prelude.Eq.SEq (a0, b0, c0, d0, e0, f0) instance Data.Singletons.Prelude.Eq.PEq 'Data.Proxy.Proxy instance (Data.Singletons.Prelude.Eq.SEq a0, Data.Singletons.Prelude.Eq.SEq b0, Data.Singletons.Prelude.Eq.SEq c0, Data.Singletons.Prelude.Eq.SEq d0, Data.Singletons.Prelude.Eq.SEq e0, Data.Singletons.Prelude.Eq.SEq f0, Data.Singletons.Prelude.Eq.SEq g0) => Data.Singletons.Prelude.Eq.SEq (a0, b0, c0, d0, e0, f0, g0) instance Data.Singletons.Prelude.Eq.PEq 'Data.Proxy.Proxy instance Data.Singletons.Prelude.Eq.SEq GHC.Types.Bool instance Data.Singletons.Prelude.Eq.PEq 'Data.Proxy.Proxy instance Data.Singletons.Prelude.Eq.SEq GHC.Types.Ordering instance Data.Singletons.Prelude.Eq.PEq 'Data.Proxy.Proxy instance Data.Singletons.Prelude.Eq.SEq () instance Data.Singletons.Prelude.Eq.PEq 'Data.Proxy.Proxy 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 ~ Proxy => PEq (kproxy :: Proxy a) where type (:==) (x :: a) (y :: a) :: Bool type (:/=) (x :: a) (y :: a) :: Bool type (:==) (x :: a) (y :: a) = x == y type (:/=) (x :: a) (y :: a) = Not (x :== y) where { type family (:==) (x :: a) (y :: a) :: Bool; type family (:/=) (x :: a) (y :: a) :: Bool; type (:==) (x :: a) (y :: a) = x == y; type (:/=) (x :: a) (y :: a) = Not (x :== y); } data (:==$) (l_a18NX :: TyFun a1627662065 (TyFun a1627662065 Bool -> Type)) data (:==$$) (l_a18O0 :: a1627662065) (l_a18NZ :: TyFun a1627662065 Bool) type (:==$$$) (t_a18NV :: a1627662065) (t_a18NW :: a1627662065) = (:==) t_a18NV t_a18NW data (:/=$) (l_a18O4 :: TyFun a1627662065 (TyFun a1627662065 Bool -> Type)) data (:/=$$) (l_a18O7 :: a1627662065) (l_a18O6 :: TyFun a1627662065 Bool) type (:/=$$$) (t_a18O2 :: a1627662065) (t_a18O3 :: a1627662065) = (:/=) t_a18O2 t_a18O3 -- | 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_ :: forall a_a17Df. a_a17Df -> a_a17Df -> Bool -> a_a17Df type TrueSym0 = True type FalseSym0 = False data NotSym0 (l_a17OH :: TyFun Bool Bool) type NotSym1 (t_a17OG :: Bool) = Not t_a17OG data (:&&$) (l_a17OZ :: TyFun Bool (TyFun Bool Bool -> Type)) data (:&&$$) (l_a17P2 :: Bool) (l_a17P1 :: TyFun Bool Bool) type (:&&$$$) (t_a17OX :: Bool) (t_a17OY :: Bool) = (:&&) t_a17OX t_a17OY data (:||$) (l_a17OM :: TyFun Bool (TyFun Bool Bool -> Type)) data (:||$$) (l_a17OP :: Bool) (l_a17OO :: TyFun Bool Bool) type (:||$$$) (t_a17OK :: Bool) (t_a17OL :: Bool) = (:||) t_a17OK t_a17OL data Bool_Sym0 (l_a17Do :: TyFun a1627657621 (TyFun a1627657621 (TyFun Bool a1627657621 -> Type) -> Type)) data Bool_Sym1 (l_a17Dr :: a1627657621) (l_a17Dq :: TyFun a1627657621 (TyFun Bool a1627657621 -> Type)) data Bool_Sym2 (l_a17Du :: a1627657621) (l_a17Dv :: a1627657621) (l_a17Dt :: TyFun Bool a1627657621) type Bool_Sym3 (t_a17Dl :: a1627657621) (t_a17Dm :: a1627657621) (t_a17Dn :: Bool) = Bool_ t_a17Dl t_a17Dm t_a17Dn type OtherwiseSym0 = Otherwise -- | Defines the promoted version of Ord, POrd, and the singleton -- version, SOrd. module Data.Singletons.Prelude.Ord class (PEq (Proxy :: Proxy a_a1e21), kproxy_a1ed9 ~ Proxy) => POrd (kproxy_a1ed9 :: Proxy a_a1e21) where type Compare (arg_a1eda :: a_a1e21) (arg_a1edb :: a_a1e21) :: Ordering type (:<) (arg_a1edj :: a_a1e21) (arg_a1edk :: a_a1e21) :: Bool type (:<=) (arg_a1eds :: a_a1e21) (arg_a1edt :: a_a1e21) :: Bool type (:>) (arg_a1edB :: a_a1e21) (arg_a1edC :: a_a1e21) :: Bool type (:>=) (arg_a1edK :: a_a1e21) (arg_a1edL :: a_a1e21) :: Bool type Max (arg_a1edT :: a_a1e21) (arg_a1edU :: a_a1e21) :: a_a1e21 type Min (arg_a1ee2 :: a_a1e21) (arg_a1ee3 :: a_a1e21) :: a_a1e21 type Compare a_a1eeI a_a1eeJ = Apply (Apply Compare_1627683010Sym0 a_a1eeI) a_a1eeJ type (:<) a_a1eff a_a1efg = Apply (Apply TFHelper_1627683043Sym0 a_a1eff) a_a1efg type (:<=) a_a1efM a_a1efN = Apply (Apply TFHelper_1627683076Sym0 a_a1efM) a_a1efN type (:>) a_a1egj a_a1egk = Apply (Apply TFHelper_1627683109Sym0 a_a1egj) a_a1egk type (:>=) a_a1egQ a_a1egR = Apply (Apply TFHelper_1627683142Sym0 a_a1egQ) a_a1egR type Max a_a1ehn a_a1eho = Apply (Apply Max_1627683175Sym0 a_a1ehn) a_a1eho type Min a_a1ehU a_a1ehV = Apply (Apply Min_1627683208Sym0 a_a1ehU) a_a1ehV where { type family Compare (arg_a1eda :: a_a1e21) (arg_a1edb :: a_a1e21) :: Ordering; type family (:<) (arg_a1edj :: a_a1e21) (arg_a1edk :: a_a1e21) :: Bool; type family (:<=) (arg_a1eds :: a_a1e21) (arg_a1edt :: a_a1e21) :: Bool; type family (:>) (arg_a1edB :: a_a1e21) (arg_a1edC :: a_a1e21) :: Bool; type family (:>=) (arg_a1edK :: a_a1e21) (arg_a1edL :: a_a1e21) :: Bool; type family Max (arg_a1edT :: a_a1e21) (arg_a1edU :: a_a1e21) :: a_a1e21; type family Min (arg_a1ee2 :: a_a1e21) (arg_a1ee3 :: a_a1e21) :: a_a1e21; type Compare a_a1eeI a_a1eeJ = Apply (Apply Compare_1627683010Sym0 a_a1eeI) a_a1eeJ; type (:<) a_a1eff a_a1efg = Apply (Apply TFHelper_1627683043Sym0 a_a1eff) a_a1efg; type (:<=) a_a1efM a_a1efN = Apply (Apply TFHelper_1627683076Sym0 a_a1efM) a_a1efN; type (:>) a_a1egj a_a1egk = Apply (Apply TFHelper_1627683109Sym0 a_a1egj) a_a1egk; type (:>=) a_a1egQ a_a1egR = Apply (Apply TFHelper_1627683142Sym0 a_a1egQ) a_a1egR; type Max a_a1ehn a_a1eho = Apply (Apply Max_1627683175Sym0 a_a1ehn) a_a1eho; type Min a_a1ehU a_a1ehV = Apply (Apply Min_1627683208Sym0 a_a1ehU) a_a1ehV; } class SEq a_a1e21 => SOrd a_a1e21 where sCompare sX sY = let lambda_a1eij :: forall x_a1eek y_a1eel. (t_a1ei5 ~ x_a1eek, t_a1ei6 ~ y_a1eel) => Sing x_a1eek -> Sing y_a1eel -> Sing (Apply (Apply CompareSym0 t_a1ei5) t_a1ei6 :: Ordering) lambda_a1eij x_a1eik y_a1eil = let sScrutinee_1627682236 :: Sing (Let1627682986Scrutinee_1627682236Sym2 x_a1eek y_a1eel) sScrutinee_1627682236 = applySing (applySing (singFun2 (Proxy :: Proxy (:==$)) (%:==)) x_a1eik) y_a1eil in case sScrutinee_1627682236 of { STrue -> let lambda_a1eim :: TrueSym0 ~ Let1627682986Scrutinee_1627682236Sym2 x_a1eek y_a1eel => Sing (Case_1627682994 x_a1eek y_a1eel TrueSym0 :: Ordering) lambda_a1eim = SEQ in lambda_a1eim SFalse -> let lambda_a1ein :: FalseSym0 ~ Let1627682986Scrutinee_1627682236Sym2 x_a1eek y_a1eel => Sing (Case_1627682994 x_a1eek y_a1eel FalseSym0 :: Ordering) lambda_a1ein = let sScrutinee_1627682238 :: Sing (Let1627682996Scrutinee_1627682238Sym2 x_a1eek y_a1eel) sScrutinee_1627682238 = applySing (applySing (singFun2 (Proxy :: Proxy (:<=$)) (%:<=)) x_a1eik) y_a1eil in case sScrutinee_1627682238 of { STrue -> let lambda_a1eio :: TrueSym0 ~ Let1627682996Scrutinee_1627682238Sym2 x_a1eek y_a1eel => Sing (Case_1627683004 x_a1eek y_a1eel TrueSym0 :: Ordering) lambda_a1eio = SLT in lambda_a1eio SFalse -> let lambda_a1eip :: FalseSym0 ~ Let1627682996Scrutinee_1627682238Sym2 x_a1eek y_a1eel => Sing (Case_1627683004 x_a1eek y_a1eel FalseSym0 :: Ordering) lambda_a1eip = SGT in lambda_a1eip } :: Sing (Case_1627683004 x_a1eek y_a1eel (Let1627682996Scrutinee_1627682238Sym2 x_a1eek y_a1eel) :: Ordering) in lambda_a1ein } :: Sing (Case_1627682994 x_a1eek y_a1eel (Let1627682986Scrutinee_1627682236Sym2 x_a1eek y_a1eel) :: Ordering) in lambda_a1eij sX sY (%:<) sX sY = let lambda_a1eiq :: forall x_a1ef2 y_a1ef3. (t_a1ei7 ~ x_a1ef2, t_a1ei8 ~ y_a1ef3) => Sing x_a1ef2 -> Sing y_a1ef3 -> Sing (Apply (Apply (:<$) t_a1ei7) t_a1ei8 :: Bool) lambda_a1eiq x_a1eir y_a1eis = let sScrutinee_1627682240 :: Sing (Let1627683030Scrutinee_1627682240Sym2 x_a1ef2 y_a1ef3) sScrutinee_1627682240 = applySing (applySing (singFun2 (Proxy :: Proxy CompareSym0) sCompare) x_a1eir) y_a1eis in case sScrutinee_1627682240 of { SLT -> let lambda_a1eit :: LTSym0 ~ Let1627683030Scrutinee_1627682240Sym2 x_a1ef2 y_a1ef3 => Sing (Case_1627683038 x_a1ef2 y_a1ef3 LTSym0 :: Bool) lambda_a1eit = STrue in lambda_a1eit SEQ -> let lambda_a1eiu :: EQSym0 ~ Let1627683030Scrutinee_1627682240Sym2 x_a1ef2 y_a1ef3 => Sing (Case_1627683038 x_a1ef2 y_a1ef3 EQSym0 :: Bool) lambda_a1eiu = SFalse in lambda_a1eiu SGT -> let lambda_a1eiv :: GTSym0 ~ Let1627683030Scrutinee_1627682240Sym2 x_a1ef2 y_a1ef3 => Sing (Case_1627683038 x_a1ef2 y_a1ef3 GTSym0 :: Bool) lambda_a1eiv = SFalse in lambda_a1eiv } :: Sing (Case_1627683038 x_a1ef2 y_a1ef3 (Let1627683030Scrutinee_1627682240Sym2 x_a1ef2 y_a1ef3) :: Bool) in lambda_a1eiq sX sY (%:<=) sX sY = let lambda_a1eiw :: forall x_a1efz y_a1efA. (t_a1ei9 ~ x_a1efz, t_a1eia ~ y_a1efA) => Sing x_a1efz -> Sing y_a1efA -> Sing (Apply (Apply (:<=$) t_a1ei9) t_a1eia :: Bool) lambda_a1eiw x_a1eix y_a1eiy = let sScrutinee_1627682242 :: Sing (Let1627683063Scrutinee_1627682242Sym2 x_a1efz y_a1efA) sScrutinee_1627682242 = applySing (applySing (singFun2 (Proxy :: Proxy CompareSym0) sCompare) x_a1eix) y_a1eiy in case sScrutinee_1627682242 of { SLT -> let lambda_a1eiz :: LTSym0 ~ Let1627683063Scrutinee_1627682242Sym2 x_a1efz y_a1efA => Sing (Case_1627683071 x_a1efz y_a1efA LTSym0 :: Bool) lambda_a1eiz = STrue in lambda_a1eiz SEQ -> let lambda_a1eiA :: EQSym0 ~ Let1627683063Scrutinee_1627682242Sym2 x_a1efz y_a1efA => Sing (Case_1627683071 x_a1efz y_a1efA EQSym0 :: Bool) lambda_a1eiA = STrue in lambda_a1eiA SGT -> let lambda_a1eiB :: GTSym0 ~ Let1627683063Scrutinee_1627682242Sym2 x_a1efz y_a1efA => Sing (Case_1627683071 x_a1efz y_a1efA GTSym0 :: Bool) lambda_a1eiB = SFalse in lambda_a1eiB } :: Sing (Case_1627683071 x_a1efz y_a1efA (Let1627683063Scrutinee_1627682242Sym2 x_a1efz y_a1efA) :: Bool) in lambda_a1eiw sX sY (%:>) sX sY = let lambda_a1eiC :: forall x_a1eg6 y_a1eg7. (t_a1eib ~ x_a1eg6, t_a1eic ~ y_a1eg7) => Sing x_a1eg6 -> Sing y_a1eg7 -> Sing (Apply (Apply (:>$) t_a1eib) t_a1eic :: Bool) lambda_a1eiC x_a1eiD y_a1eiE = let sScrutinee_1627682244 :: Sing (Let1627683096Scrutinee_1627682244Sym2 x_a1eg6 y_a1eg7) sScrutinee_1627682244 = applySing (applySing (singFun2 (Proxy :: Proxy CompareSym0) sCompare) x_a1eiD) y_a1eiE in case sScrutinee_1627682244 of { SLT -> let lambda_a1eiF :: LTSym0 ~ Let1627683096Scrutinee_1627682244Sym2 x_a1eg6 y_a1eg7 => Sing (Case_1627683104 x_a1eg6 y_a1eg7 LTSym0 :: Bool) lambda_a1eiF = SFalse in lambda_a1eiF SEQ -> let lambda_a1eiG :: EQSym0 ~ Let1627683096Scrutinee_1627682244Sym2 x_a1eg6 y_a1eg7 => Sing (Case_1627683104 x_a1eg6 y_a1eg7 EQSym0 :: Bool) lambda_a1eiG = SFalse in lambda_a1eiG SGT -> let lambda_a1eiH :: GTSym0 ~ Let1627683096Scrutinee_1627682244Sym2 x_a1eg6 y_a1eg7 => Sing (Case_1627683104 x_a1eg6 y_a1eg7 GTSym0 :: Bool) lambda_a1eiH = STrue in lambda_a1eiH } :: Sing (Case_1627683104 x_a1eg6 y_a1eg7 (Let1627683096Scrutinee_1627682244Sym2 x_a1eg6 y_a1eg7) :: Bool) in lambda_a1eiC sX sY (%:>=) sX sY = let lambda_a1eiI :: forall x_a1egD y_a1egE. (t_a1eid ~ x_a1egD, t_a1eie ~ y_a1egE) => Sing x_a1egD -> Sing y_a1egE -> Sing (Apply (Apply (:>=$) t_a1eid) t_a1eie :: Bool) lambda_a1eiI x_a1eiJ y_a1eiK = let sScrutinee_1627682246 :: Sing (Let1627683129Scrutinee_1627682246Sym2 x_a1egD y_a1egE) sScrutinee_1627682246 = applySing (applySing (singFun2 (Proxy :: Proxy CompareSym0) sCompare) x_a1eiJ) y_a1eiK in case sScrutinee_1627682246 of { SLT -> let lambda_a1eiL :: LTSym0 ~ Let1627683129Scrutinee_1627682246Sym2 x_a1egD y_a1egE => Sing (Case_1627683137 x_a1egD y_a1egE LTSym0 :: Bool) lambda_a1eiL = SFalse in lambda_a1eiL SEQ -> let lambda_a1eiM :: EQSym0 ~ Let1627683129Scrutinee_1627682246Sym2 x_a1egD y_a1egE => Sing (Case_1627683137 x_a1egD y_a1egE EQSym0 :: Bool) lambda_a1eiM = STrue in lambda_a1eiM SGT -> let lambda_a1eiN :: GTSym0 ~ Let1627683129Scrutinee_1627682246Sym2 x_a1egD y_a1egE => Sing (Case_1627683137 x_a1egD y_a1egE GTSym0 :: Bool) lambda_a1eiN = STrue in lambda_a1eiN } :: Sing (Case_1627683137 x_a1egD y_a1egE (Let1627683129Scrutinee_1627682246Sym2 x_a1egD y_a1egE) :: Bool) in lambda_a1eiI sX sY sMax sX sY = let lambda_a1eiO :: forall x_a1eha y_a1ehb. (t_a1eif ~ x_a1eha, t_a1eig ~ y_a1ehb) => Sing x_a1eha -> Sing y_a1ehb -> Sing (Apply (Apply MaxSym0 t_a1eif) t_a1eig :: a_a1e21) lambda_a1eiO x_a1eiP y_a1eiQ = let sScrutinee_1627682248 :: Sing (Let1627683162Scrutinee_1627682248Sym2 x_a1eha y_a1ehb) sScrutinee_1627682248 = applySing (applySing (singFun2 (Proxy :: Proxy (:<=$)) (%:<=)) x_a1eiP) y_a1eiQ in case sScrutinee_1627682248 of { STrue -> let lambda_a1eiR :: TrueSym0 ~ Let1627683162Scrutinee_1627682248Sym2 x_a1eha y_a1ehb => Sing (Case_1627683170 x_a1eha y_a1ehb TrueSym0 :: a_a1e21) lambda_a1eiR = y_a1eiQ in lambda_a1eiR SFalse -> let lambda_a1eiS :: FalseSym0 ~ Let1627683162Scrutinee_1627682248Sym2 x_a1eha y_a1ehb => Sing (Case_1627683170 x_a1eha y_a1ehb FalseSym0 :: a_a1e21) lambda_a1eiS = x_a1eiP in lambda_a1eiS } :: Sing (Case_1627683170 x_a1eha y_a1ehb (Let1627683162Scrutinee_1627682248Sym2 x_a1eha y_a1ehb) :: a_a1e21) in lambda_a1eiO sX sY sMin sX sY = let lambda_a1eiT :: forall x_a1ehH y_a1ehI. (t_a1eih ~ x_a1ehH, t_a1eii ~ y_a1ehI) => Sing x_a1ehH -> Sing y_a1ehI -> Sing (Apply (Apply MinSym0 t_a1eih) t_a1eii :: a_a1e21) lambda_a1eiT x_a1eiU y_a1eiV = let sScrutinee_1627682250 :: Sing (Let1627683195Scrutinee_1627682250Sym2 x_a1ehH y_a1ehI) sScrutinee_1627682250 = applySing (applySing (singFun2 (Proxy :: Proxy (:<=$)) (%:<=)) x_a1eiU) y_a1eiV in case sScrutinee_1627682250 of { STrue -> let lambda_a1eiW :: TrueSym0 ~ Let1627683195Scrutinee_1627682250Sym2 x_a1ehH y_a1ehI => Sing (Case_1627683203 x_a1ehH y_a1ehI TrueSym0 :: a_a1e21) lambda_a1eiW = x_a1eiU in lambda_a1eiW SFalse -> let lambda_a1eiX :: FalseSym0 ~ Let1627683195Scrutinee_1627682250Sym2 x_a1ehH y_a1ehI => Sing (Case_1627683203 x_a1ehH y_a1ehI FalseSym0 :: a_a1e21) lambda_a1eiX = y_a1eiV in lambda_a1eiX } :: Sing (Case_1627683203 x_a1ehH y_a1ehI (Let1627683195Scrutinee_1627682250Sym2 x_a1ehH y_a1ehI) :: a_a1e21) in lambda_a1eiT sX sY sCompare :: forall (t_a1ei5 :: a_a1e21) (t_a1ei6 :: a_a1e21). SOrd a_a1e21 => Sing t_a1ei5 -> Sing t_a1ei6 -> Sing (Apply (Apply CompareSym0 t_a1ei5) t_a1ei6 :: Ordering) (%:<) :: forall (t_a1ei7 :: a_a1e21) (t_a1ei8 :: a_a1e21). SOrd a_a1e21 => Sing t_a1ei7 -> Sing t_a1ei8 -> Sing (Apply (Apply (:<$) t_a1ei7) t_a1ei8 :: Bool) (%:<=) :: forall (t_a1ei9 :: a_a1e21) (t_a1eia :: a_a1e21). SOrd a_a1e21 => Sing t_a1ei9 -> Sing t_a1eia -> Sing (Apply (Apply (:<=$) t_a1ei9) t_a1eia :: Bool) (%:>) :: forall (t_a1eib :: a_a1e21) (t_a1eic :: a_a1e21). SOrd a_a1e21 => Sing t_a1eib -> Sing t_a1eic -> Sing (Apply (Apply (:>$) t_a1eib) t_a1eic :: Bool) (%:>=) :: forall (t_a1eid :: a_a1e21) (t_a1eie :: a_a1e21). SOrd a_a1e21 => Sing t_a1eid -> Sing t_a1eie -> Sing (Apply (Apply (:>=$) t_a1eid) t_a1eie :: Bool) sMax :: forall (t_a1eif :: a_a1e21) (t_a1eig :: a_a1e21). SOrd a_a1e21 => Sing t_a1eif -> Sing t_a1eig -> Sing (Apply (Apply MaxSym0 t_a1eif) t_a1eig :: a_a1e21) sMin :: forall (t_a1eih :: a_a1e21) (t_a1eii :: a_a1e21). SOrd a_a1e21 => Sing t_a1eih -> Sing t_a1eii -> Sing (Apply (Apply MinSym0 t_a1eih) t_a1eii :: a_a1e21) sCompare :: forall (t_a1ei5 :: a_a1e21) (t_a1ei6 :: a_a1e21). (SOrd a_a1e21, Apply (Apply CompareSym0 t_a1ei5) t_a1ei6 ~ Apply (Apply Compare_1627683010Sym0 t_a1ei5) t_a1ei6) => Sing t_a1ei5 -> Sing t_a1ei6 -> Sing (Apply (Apply CompareSym0 t_a1ei5) t_a1ei6 :: Ordering) (%:<) :: forall (t_a1ei7 :: a_a1e21) (t_a1ei8 :: a_a1e21). (SOrd a_a1e21, Apply (Apply (:<$) t_a1ei7) t_a1ei8 ~ Apply (Apply TFHelper_1627683043Sym0 t_a1ei7) t_a1ei8) => Sing t_a1ei7 -> Sing t_a1ei8 -> Sing (Apply (Apply (:<$) t_a1ei7) t_a1ei8 :: Bool) (%:<=) :: forall (t_a1ei9 :: a_a1e21) (t_a1eia :: a_a1e21). (SOrd a_a1e21, Apply (Apply (:<=$) t_a1ei9) t_a1eia ~ Apply (Apply TFHelper_1627683076Sym0 t_a1ei9) t_a1eia) => Sing t_a1ei9 -> Sing t_a1eia -> Sing (Apply (Apply (:<=$) t_a1ei9) t_a1eia :: Bool) (%:>) :: forall (t_a1eib :: a_a1e21) (t_a1eic :: a_a1e21). (SOrd a_a1e21, Apply (Apply (:>$) t_a1eib) t_a1eic ~ Apply (Apply TFHelper_1627683109Sym0 t_a1eib) t_a1eic) => Sing t_a1eib -> Sing t_a1eic -> Sing (Apply (Apply (:>$) t_a1eib) t_a1eic :: Bool) (%:>=) :: forall (t_a1eid :: a_a1e21) (t_a1eie :: a_a1e21). (SOrd a_a1e21, Apply (Apply (:>=$) t_a1eid) t_a1eie ~ Apply (Apply TFHelper_1627683142Sym0 t_a1eid) t_a1eie) => Sing t_a1eid -> Sing t_a1eie -> Sing (Apply (Apply (:>=$) t_a1eid) t_a1eie :: Bool) sMax :: forall (t_a1eif :: a_a1e21) (t_a1eig :: a_a1e21). (SOrd a_a1e21, Apply (Apply MaxSym0 t_a1eif) t_a1eig ~ Apply (Apply Max_1627683175Sym0 t_a1eif) t_a1eig) => Sing t_a1eif -> Sing t_a1eig -> Sing (Apply (Apply MaxSym0 t_a1eif) t_a1eig :: a_a1e21) sMin :: forall (t_a1eih :: a_a1e21) (t_a1eii :: a_a1e21). (SOrd a_a1e21, Apply (Apply MinSym0 t_a1eih) t_a1eii ~ Apply (Apply Min_1627683208Sym0 t_a1eih) t_a1eii) => Sing t_a1eih -> Sing t_a1eii -> Sing (Apply (Apply MinSym0 t_a1eih) t_a1eii :: a_a1e21) thenCmp :: Ordering -> Ordering -> Ordering sThenCmp :: forall (t_a1g6O :: Ordering) (t_a1g6P :: Ordering). Sing t_a1g6O -> Sing t_a1g6P -> Sing (Apply (Apply ThenCmpSym0 t_a1g6O) t_a1g6P :: Ordering) -- | The singleton kind-indexed data family. data ThenCmpSym0 (l_a1g6A :: TyFun Ordering (TyFun Ordering Ordering -> Type)) data ThenCmpSym1 (l_a1g6D :: Ordering) (l_a1g6C :: TyFun Ordering Ordering) type ThenCmpSym2 (t_a1g6y :: Ordering) (t_a1g6z :: Ordering) = ThenCmp t_a1g6y t_a1g6z type LTSym0 = LT type EQSym0 = EQ type GTSym0 = GT data CompareSym0 (l_a1ede :: TyFun a1627682221 (TyFun a1627682221 Ordering -> Type)) data CompareSym1 (l_a1edh :: a1627682221) (l_a1edg :: TyFun a1627682221 Ordering) type CompareSym2 (t_a1edc :: a1627682221) (t_a1edd :: a1627682221) = Compare t_a1edc t_a1edd data (:<$) (l_a1edn :: TyFun a1627682221 (TyFun a1627682221 Bool -> Type)) data (:<$$) (l_a1edq :: a1627682221) (l_a1edp :: TyFun a1627682221 Bool) type (:<$$$) (t_a1edl :: a1627682221) (t_a1edm :: a1627682221) = (:<) t_a1edl t_a1edm data (:<=$) (l_a1edw :: TyFun a1627682221 (TyFun a1627682221 Bool -> Type)) data (:<=$$) (l_a1edz :: a1627682221) (l_a1edy :: TyFun a1627682221 Bool) type (:<=$$$) (t_a1edu :: a1627682221) (t_a1edv :: a1627682221) = (:<=) t_a1edu t_a1edv data (:>$) (l_a1edF :: TyFun a1627682221 (TyFun a1627682221 Bool -> Type)) data (:>$$) (l_a1edI :: a1627682221) (l_a1edH :: TyFun a1627682221 Bool) type (:>$$$) (t_a1edD :: a1627682221) (t_a1edE :: a1627682221) = (:>) t_a1edD t_a1edE data (:>=$) (l_a1edO :: TyFun a1627682221 (TyFun a1627682221 Bool -> Type)) data (:>=$$) (l_a1edR :: a1627682221) (l_a1edQ :: TyFun a1627682221 Bool) type (:>=$$$) (t_a1edM :: a1627682221) (t_a1edN :: a1627682221) = (:>=) t_a1edM t_a1edN data MaxSym0 (l_a1edX :: TyFun a1627682221 (TyFun a1627682221 a1627682221 -> Type)) data MaxSym1 (l_a1ee0 :: a1627682221) (l_a1edZ :: TyFun a1627682221 a1627682221) type MaxSym2 (t_a1edV :: a1627682221) (t_a1edW :: a1627682221) = Max t_a1edV t_a1edW data MinSym0 (l_a1ee6 :: TyFun a1627682221 (TyFun a1627682221 a1627682221 -> Type)) data MinSym1 (l_a1ee9 :: a1627682221) (l_a1ee8 :: TyFun a1627682221 a1627682221) type MinSym2 (t_a1ee4 :: a1627682221) (t_a1ee5 :: a1627682221) = Min t_a1ee4 t_a1ee5 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627690545Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627690545Sym0 instance Data.Singletons.Prelude.Ord.POrd 'Data.Proxy.Proxy instance Data.Singletons.Prelude.Ord.SOrd a0 => Data.Singletons.Prelude.Ord.SOrd (GHC.Base.Maybe a0) instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627690597Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627690597Sym0 instance Data.Singletons.Prelude.Ord.POrd 'Data.Proxy.Proxy instance (Data.Singletons.Prelude.Ord.SOrd a0, Data.Singletons.Prelude.Ord.SOrd [a0]) => Data.Singletons.Prelude.Ord.SOrd [a0] instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627690653Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627690653Sym0 instance Data.Singletons.Prelude.Ord.POrd 'Data.Proxy.Proxy instance (Data.Singletons.Prelude.Ord.SOrd a0, Data.Singletons.Prelude.Ord.SOrd b0) => Data.Singletons.Prelude.Ord.SOrd (Data.Either.Either a0 b0) instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627690697Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627690697Sym0 instance Data.Singletons.Prelude.Ord.POrd 'Data.Proxy.Proxy instance (Data.Singletons.Prelude.Ord.SOrd a0, Data.Singletons.Prelude.Ord.SOrd [a0]) => Data.Singletons.Prelude.Ord.SOrd (Data.List.NonEmpty.NonEmpty a0) instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627690734Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627690734Sym0 instance Data.Singletons.Prelude.Ord.POrd 'Data.Proxy.Proxy instance (Data.Singletons.Prelude.Ord.SOrd a0, Data.Singletons.Prelude.Ord.SOrd b0) => Data.Singletons.Prelude.Ord.SOrd (a0, b0) instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627690777Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627690777Sym0 instance Data.Singletons.Prelude.Ord.POrd 'Data.Proxy.Proxy instance (Data.Singletons.Prelude.Ord.SOrd a0, Data.Singletons.Prelude.Ord.SOrd b0, Data.Singletons.Prelude.Ord.SOrd c0) => Data.Singletons.Prelude.Ord.SOrd (a0, b0, c0) instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627690828Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627690828Sym0 instance Data.Singletons.Prelude.Ord.POrd 'Data.Proxy.Proxy instance (Data.Singletons.Prelude.Ord.SOrd a0, Data.Singletons.Prelude.Ord.SOrd b0, Data.Singletons.Prelude.Ord.SOrd c0, Data.Singletons.Prelude.Ord.SOrd d0) => Data.Singletons.Prelude.Ord.SOrd (a0, b0, c0, d0) instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627690887Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627690887Sym0 instance Data.Singletons.Prelude.Ord.POrd 'Data.Proxy.Proxy instance (Data.Singletons.Prelude.Ord.SOrd a0, Data.Singletons.Prelude.Ord.SOrd b0, Data.Singletons.Prelude.Ord.SOrd c0, Data.Singletons.Prelude.Ord.SOrd d0, Data.Singletons.Prelude.Ord.SOrd e0) => Data.Singletons.Prelude.Ord.SOrd (a0, b0, c0, d0, e0) instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627690954Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627690954Sym0 instance Data.Singletons.Prelude.Ord.POrd 'Data.Proxy.Proxy instance (Data.Singletons.Prelude.Ord.SOrd a0, Data.Singletons.Prelude.Ord.SOrd b0, Data.Singletons.Prelude.Ord.SOrd c0, Data.Singletons.Prelude.Ord.SOrd d0, Data.Singletons.Prelude.Ord.SOrd e0, Data.Singletons.Prelude.Ord.SOrd f0) => Data.Singletons.Prelude.Ord.SOrd (a0, b0, c0, d0, e0, f0) instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627691029Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627691029Sym0 instance Data.Singletons.Prelude.Ord.POrd 'Data.Proxy.Proxy instance (Data.Singletons.Prelude.Ord.SOrd a0, Data.Singletons.Prelude.Ord.SOrd b0, Data.Singletons.Prelude.Ord.SOrd c0, Data.Singletons.Prelude.Ord.SOrd d0, Data.Singletons.Prelude.Ord.SOrd e0, Data.Singletons.Prelude.Ord.SOrd f0, Data.Singletons.Prelude.Ord.SOrd g0) => Data.Singletons.Prelude.Ord.SOrd (a0, b0, c0, d0, e0, f0, g0) instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627691064Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627691064Sym0 instance Data.Singletons.Prelude.Ord.POrd 'Data.Proxy.Proxy instance Data.Singletons.Prelude.Ord.SOrd GHC.Types.Bool instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627691088Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627691088Sym0 instance Data.Singletons.Prelude.Ord.POrd 'Data.Proxy.Proxy instance Data.Singletons.Prelude.Ord.SOrd GHC.Types.Ordering instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627691117Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627691117Sym0 instance Data.Singletons.Prelude.Ord.POrd 'Data.Proxy.Proxy instance Data.Singletons.Prelude.Ord.SOrd () 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.Let1627682986Scrutinee_1627682236Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Let1627682986Scrutinee_1627682236Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Let1627682996Scrutinee_1627682238Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Let1627682996Scrutinee_1627682238Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627683010Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Compare_1627683010Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Let1627683030Scrutinee_1627682240Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Let1627683030Scrutinee_1627682240Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.TFHelper_1627683043Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.TFHelper_1627683043Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Let1627683063Scrutinee_1627682242Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Let1627683063Scrutinee_1627682242Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.TFHelper_1627683076Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.TFHelper_1627683076Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Let1627683096Scrutinee_1627682244Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Let1627683096Scrutinee_1627682244Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.TFHelper_1627683109Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.TFHelper_1627683109Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Let1627683129Scrutinee_1627682246Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Let1627683129Scrutinee_1627682246Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.TFHelper_1627683142Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.TFHelper_1627683142Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Let1627683162Scrutinee_1627682248Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Let1627683162Scrutinee_1627682248Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Max_1627683175Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Max_1627683175Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Let1627683195Scrutinee_1627682250Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Let1627683195Scrutinee_1627682250Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Min_1627683208Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Ord.Min_1627683208Sym0 -- | Provides promoted definitions related to type-level comparisons. module Data.Promotion.Prelude.Ord class (PEq (Proxy :: Proxy a_a1e21), kproxy_a1ed9 ~ Proxy) => POrd (kproxy_a1ed9 :: Proxy a_a1e21) where type Compare (arg_a1eda :: a_a1e21) (arg_a1edb :: a_a1e21) :: Ordering type (:<) (arg_a1edj :: a_a1e21) (arg_a1edk :: a_a1e21) :: Bool type (:<=) (arg_a1eds :: a_a1e21) (arg_a1edt :: a_a1e21) :: Bool type (:>) (arg_a1edB :: a_a1e21) (arg_a1edC :: a_a1e21) :: Bool type (:>=) (arg_a1edK :: a_a1e21) (arg_a1edL :: a_a1e21) :: Bool type Max (arg_a1edT :: a_a1e21) (arg_a1edU :: a_a1e21) :: a_a1e21 type Min (arg_a1ee2 :: a_a1e21) (arg_a1ee3 :: a_a1e21) :: a_a1e21 type Compare a_a1eeI a_a1eeJ = Apply (Apply Compare_1627683010Sym0 a_a1eeI) a_a1eeJ type (:<) a_a1eff a_a1efg = Apply (Apply TFHelper_1627683043Sym0 a_a1eff) a_a1efg type (:<=) a_a1efM a_a1efN = Apply (Apply TFHelper_1627683076Sym0 a_a1efM) a_a1efN type (:>) a_a1egj a_a1egk = Apply (Apply TFHelper_1627683109Sym0 a_a1egj) a_a1egk type (:>=) a_a1egQ a_a1egR = Apply (Apply TFHelper_1627683142Sym0 a_a1egQ) a_a1egR type Max a_a1ehn a_a1eho = Apply (Apply Max_1627683175Sym0 a_a1ehn) a_a1eho type Min a_a1ehU a_a1ehV = Apply (Apply Min_1627683208Sym0 a_a1ehU) a_a1ehV where { type family Compare (arg_a1eda :: a_a1e21) (arg_a1edb :: a_a1e21) :: Ordering; type family (:<) (arg_a1edj :: a_a1e21) (arg_a1edk :: a_a1e21) :: Bool; type family (:<=) (arg_a1eds :: a_a1e21) (arg_a1edt :: a_a1e21) :: Bool; type family (:>) (arg_a1edB :: a_a1e21) (arg_a1edC :: a_a1e21) :: Bool; type family (:>=) (arg_a1edK :: a_a1e21) (arg_a1edL :: a_a1e21) :: Bool; type family Max (arg_a1edT :: a_a1e21) (arg_a1edU :: a_a1e21) :: a_a1e21; type family Min (arg_a1ee2 :: a_a1e21) (arg_a1ee3 :: a_a1e21) :: a_a1e21; type Compare a_a1eeI a_a1eeJ = Apply (Apply Compare_1627683010Sym0 a_a1eeI) a_a1eeJ; type (:<) a_a1eff a_a1efg = Apply (Apply TFHelper_1627683043Sym0 a_a1eff) a_a1efg; type (:<=) a_a1efM a_a1efN = Apply (Apply TFHelper_1627683076Sym0 a_a1efM) a_a1efN; type (:>) a_a1egj a_a1egk = Apply (Apply TFHelper_1627683109Sym0 a_a1egj) a_a1egk; type (:>=) a_a1egQ a_a1egR = Apply (Apply TFHelper_1627683142Sym0 a_a1egQ) a_a1egR; type Max a_a1ehn a_a1eho = Apply (Apply Max_1627683175Sym0 a_a1ehn) a_a1eho; type Min a_a1ehU a_a1ehV = Apply (Apply Min_1627683208Sym0 a_a1ehU) a_a1ehV; } type LTSym0 = LT type EQSym0 = EQ type GTSym0 = GT data CompareSym0 (l_a1ede :: TyFun a1627682221 (TyFun a1627682221 Ordering -> Type)) data CompareSym1 (l_a1edh :: a1627682221) (l_a1edg :: TyFun a1627682221 Ordering) type CompareSym2 (t_a1edc :: a1627682221) (t_a1edd :: a1627682221) = Compare t_a1edc t_a1edd data (:<$) (l_a1edn :: TyFun a1627682221 (TyFun a1627682221 Bool -> Type)) data (:<$$) (l_a1edq :: a1627682221) (l_a1edp :: TyFun a1627682221 Bool) type (:<$$$) (t_a1edl :: a1627682221) (t_a1edm :: a1627682221) = (:<) t_a1edl t_a1edm data (:<=$) (l_a1edw :: TyFun a1627682221 (TyFun a1627682221 Bool -> Type)) data (:<=$$) (l_a1edz :: a1627682221) (l_a1edy :: TyFun a1627682221 Bool) type (:<=$$$) (t_a1edu :: a1627682221) (t_a1edv :: a1627682221) = (:<=) t_a1edu t_a1edv data (:>$) (l_a1edF :: TyFun a1627682221 (TyFun a1627682221 Bool -> Type)) data (:>$$) (l_a1edI :: a1627682221) (l_a1edH :: TyFun a1627682221 Bool) type (:>$$$) (t_a1edD :: a1627682221) (t_a1edE :: a1627682221) = (:>) t_a1edD t_a1edE data (:>=$) (l_a1edO :: TyFun a1627682221 (TyFun a1627682221 Bool -> Type)) data (:>=$$) (l_a1edR :: a1627682221) (l_a1edQ :: TyFun a1627682221 Bool) type (:>=$$$) (t_a1edM :: a1627682221) (t_a1edN :: a1627682221) = (:>=) t_a1edM t_a1edN data MaxSym0 (l_a1edX :: TyFun a1627682221 (TyFun a1627682221 a1627682221 -> Type)) data MaxSym1 (l_a1ee0 :: a1627682221) (l_a1edZ :: TyFun a1627682221 a1627682221) type MaxSym2 (t_a1edV :: a1627682221) (t_a1edW :: a1627682221) = Max t_a1edV t_a1edW data MinSym0 (l_a1ee6 :: TyFun a1627682221 (TyFun a1627682221 a1627682221 -> Type)) data MinSym1 (l_a1ee9 :: a1627682221) (l_a1ee8 :: TyFun a1627682221 a1627682221) type MinSym2 (t_a1ee4 :: a1627682221) (t_a1ee5 :: a1627682221) = Min t_a1ee4 t_a1ee5 -- | 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 GHC.Types.Type instance Data.Singletons.Prelude.Eq.PEq 'Data.Proxy.Proxy instance Data.Singletons.Prelude.Eq.SEq GHC.Types.Type instance Data.Singletons.Decide.SDecide GHC.Types.Type 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 :: forall (t_a1HRo :: TyFun a_a1HNL (TyFun b_a1HNM b_a1HNM -> Type) -> Type) (t_a1HRp :: b_a1HNM) (t_a1HRq :: [a_a1HNL]). Sing t_a1HRo -> Sing t_a1HRp -> Sing t_a1HRq -> Sing (Apply (Apply (Apply FoldrSym0 t_a1HRo) t_a1HRp) t_a1HRq :: b_a1HNM) sMap :: forall (t_a1HRm :: TyFun a_a1HNJ b_a1HNK -> Type) (t_a1HRn :: [a_a1HNJ]). Sing t_a1HRm -> Sing t_a1HRn -> Sing (Apply (Apply MapSym0 t_a1HRm) t_a1HRn :: [b_a1HNK]) (%:++) :: forall (t_a1HRk :: [a_a1HNI]) (t_a1HRl :: [a_a1HNI]). Sing t_a1HRk -> Sing t_a1HRl -> Sing (Apply (Apply (:++$) t_a1HRk) t_a1HRl :: [a_a1HNI]) infixr 5 %:++ sOtherwise :: Sing (OtherwiseSym0 :: Bool) sId :: forall (t_a1HRj :: a_a1HNH). Sing t_a1HRj -> Sing (Apply IdSym0 t_a1HRj :: a_a1HNH) sConst :: forall (t_a1HRf :: a_a1HNF) (t_a1HRg :: b_a1HNG). Sing t_a1HRf -> Sing t_a1HRg -> Sing (Apply (Apply ConstSym0 t_a1HRf) t_a1HRg :: a_a1HNF) (%:.) :: forall (t_a1HRc :: TyFun b_a1HNC c_a1HND -> Type) (t_a1HRd :: TyFun a_a1HNE b_a1HNC -> Type) (t_a1HRe :: a_a1HNE). Sing t_a1HRc -> Sing t_a1HRd -> Sing t_a1HRe -> Sing (Apply (Apply (Apply (:.$) t_a1HRc) t_a1HRd) t_a1HRe :: c_a1HND) infixr 9 %:. (%$) :: forall (f :: TyFun a b -> *) (x :: a). Sing f -> Sing x -> Sing ((($$) @@ f) @@ x) infixr 0 %$ (%$!) :: forall (f :: TyFun a b -> *) (x :: a). Sing f -> Sing x -> Sing ((($!$) @@ f) @@ x) infixr 0 %$! sFlip :: forall (t_a1HR9 :: TyFun a_a1HNz (TyFun b_a1HNA c_a1HNB -> Type) -> Type) (t_a1HRa :: b_a1HNA) (t_a1HRb :: a_a1HNz). Sing t_a1HR9 -> Sing t_a1HRa -> Sing t_a1HRb -> Sing (Apply (Apply (Apply FlipSym0 t_a1HR9) t_a1HRa) t_a1HRb :: c_a1HNB) sAsTypeOf :: forall (t_a1HRh :: a_a1HNy) (t_a1HRi :: a_a1HNy). Sing t_a1HRh -> Sing t_a1HRi -> Sing (Apply (Apply AsTypeOfSym0 t_a1HRh) t_a1HRi :: a_a1HNy) sSeq :: forall (t_a1HR7 :: a_a1HNw) (t_a1HR8 :: b_a1HNx). Sing t_a1HR7 -> Sing t_a1HR8 -> Sing (Apply (Apply SeqSym0 t_a1HR7) t_a1HR8 :: b_a1HNx) infixr 0 `sSeq` data FoldrSym0 (l_a1HQu :: TyFun (TyFun a1627796657 (TyFun b1627796658 b1627796658 -> Type) -> Type) (TyFun b1627796658 (TyFun [a1627796657] b1627796658 -> Type) -> Type)) data FoldrSym1 (l_a1HQx :: TyFun a1627796657 (TyFun b1627796658 b1627796658 -> Type) -> Type) (l_a1HQw :: TyFun b1627796658 (TyFun [a1627796657] b1627796658 -> Type)) data FoldrSym2 (l_a1HQA :: TyFun a1627796657 (TyFun b1627796658 b1627796658 -> Type) -> Type) (l_a1HQB :: b1627796658) (l_a1HQz :: TyFun [a1627796657] b1627796658) type FoldrSym3 (t_a1HQr :: TyFun a1627796657 (TyFun b1627796658 b1627796658 -> Type) -> Type) (t_a1HQs :: b1627796658) (t_a1HQt :: [a1627796657]) = Foldr t_a1HQr t_a1HQs t_a1HQt data MapSym0 (l_a1HQe :: TyFun (TyFun a1627796655 b1627796656 -> Type) (TyFun [a1627796655] [b1627796656] -> Type)) data MapSym1 (l_a1HQh :: TyFun a1627796655 b1627796656 -> Type) (l_a1HQg :: TyFun [a1627796655] [b1627796656]) type MapSym2 (t_a1HQc :: TyFun a1627796655 b1627796656 -> Type) (t_a1HQd :: [a1627796655]) = Map t_a1HQc t_a1HQd data (:++$) (l_a1HQ1 :: TyFun [a1627796654] (TyFun [a1627796654] [a1627796654] -> Type)) data (:++$$) (l_a1HQ4 :: [a1627796654]) (l_a1HQ3 :: TyFun [a1627796654] [a1627796654]) type (:++$$$) (t_a1HPZ :: [a1627796654]) (t_a1HQ0 :: [a1627796654]) = (:++) t_a1HPZ t_a1HQ0 type OtherwiseSym0 = Otherwise data IdSym0 (l_a1HPV :: TyFun a1627796653 a1627796653) type IdSym1 (t_a1HPU :: a1627796653) = Id t_a1HPU data ConstSym0 (l_a1HPu :: TyFun a1627796651 (TyFun b1627796652 a1627796651 -> Type)) data ConstSym1 (l_a1HPx :: a1627796651) (l_a1HPw :: TyFun b1627796652 a1627796651) type ConstSym2 (t_a1HPs :: a1627796651) (t_a1HPt :: b1627796652) = Const t_a1HPs t_a1HPt data (:.$) (l_a1HOP :: TyFun (TyFun b1627796648 c1627796649 -> Type) (TyFun (TyFun a1627796650 b1627796648 -> Type) (TyFun a1627796650 c1627796649 -> Type) -> Type)) data (:.$$) (l_a1HOS :: TyFun b1627796648 c1627796649 -> Type) (l_a1HOR :: TyFun (TyFun a1627796650 b1627796648 -> Type) (TyFun a1627796650 c1627796649 -> Type)) data (:.$$$) (l_a1HOV :: TyFun b1627796648 c1627796649 -> Type) (l_a1HOW :: TyFun a1627796650 b1627796648 -> Type) (l_a1HOU :: TyFun a1627796650 c1627796649) type (:.$$$$) (t_a1HOM :: TyFun b1627796648 c1627796649 -> Type) (t_a1HON :: TyFun a1627796650 b1627796648 -> Type) (t_a1HOO :: a1627796650) = (:.) t_a1HOM t_a1HON t_a1HOO 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_a1HOx :: TyFun (TyFun a1627796645 (TyFun b1627796646 c1627796647 -> Type) -> Type) (TyFun b1627796646 (TyFun a1627796645 c1627796647 -> Type) -> Type)) data FlipSym1 (l_a1HOA :: TyFun a1627796645 (TyFun b1627796646 c1627796647 -> Type) -> Type) (l_a1HOz :: TyFun b1627796646 (TyFun a1627796645 c1627796647 -> Type)) data FlipSym2 (l_a1HOD :: TyFun a1627796645 (TyFun b1627796646 c1627796647 -> Type) -> Type) (l_a1HOE :: b1627796646) (l_a1HOC :: TyFun a1627796645 c1627796647) type FlipSym3 (t_a1HOu :: TyFun a1627796645 (TyFun b1627796646 c1627796647 -> Type) -> Type) (t_a1HOv :: b1627796646) (t_a1HOw :: a1627796645) = Flip t_a1HOu t_a1HOv t_a1HOw data AsTypeOfSym0 (l_a1HPL :: TyFun a1627796644 (TyFun a1627796644 a1627796644 -> Type)) data AsTypeOfSym1 (l_a1HPO :: a1627796644) (l_a1HPN :: TyFun a1627796644 a1627796644) type AsTypeOfSym2 (t_a1HPJ :: a1627796644) (t_a1HPK :: a1627796644) = AsTypeOf t_a1HPJ t_a1HPK data SeqSym0 (l_a1HOj :: TyFun a1627796642 (TyFun b1627796643 b1627796643 -> Type)) data SeqSym1 (l_a1HOm :: a1627796642) (l_a1HOl :: TyFun b1627796643 b1627796643) type SeqSym2 (t_a1HOh :: a1627796642) (t_a1HOi :: b1627796643) = Seq t_a1HOh t_a1HOi instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Base.Lambda_1627796740Sym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Base.Lambda_1627796740Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Base.Lambda_1627796740Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Base.Lambda_1627796740Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Base.Let1627796843GoSym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Base.Let1627796843GoSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Base.Let1627796843GoSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Base.Let1627796843GoSym0 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_a1N9t ~ Proxy => PNum (kproxy_a1N9t :: Proxy a_a1N9p) where type (:+) (arg_a1N9u :: a_a1N9p) (arg_a1N9v :: a_a1N9p) :: a_a1N9p type (:-) (arg_a1N9D :: a_a1N9p) (arg_a1N9E :: a_a1N9p) :: a_a1N9p type (:*) (arg_a1N9M :: a_a1N9p) (arg_a1N9N :: a_a1N9p) :: a_a1N9p type Negate (arg_a1N9V :: a_a1N9p) :: a_a1N9p type Abs (arg_a1N9Z :: a_a1N9p) :: a_a1N9p type Signum (arg_a1Na3 :: a_a1N9p) :: a_a1N9p type FromInteger (arg_a1Na7 :: Nat) :: a_a1N9p type (:-) a_a1Nam a_a1Nan = Apply (Apply TFHelper_1627817280Sym0 a_a1Nam) a_a1Nan type Negate a_a1NaC = Apply Negate_1627817295Sym0 a_a1NaC where { type family (:+) (arg_a1N9u :: a_a1N9p) (arg_a1N9v :: a_a1N9p) :: a_a1N9p; type family (:-) (arg_a1N9D :: a_a1N9p) (arg_a1N9E :: a_a1N9p) :: a_a1N9p; type family (:*) (arg_a1N9M :: a_a1N9p) (arg_a1N9N :: a_a1N9p) :: a_a1N9p; type family Negate (arg_a1N9V :: a_a1N9p) :: a_a1N9p; type family Abs (arg_a1N9Z :: a_a1N9p) :: a_a1N9p; type family Signum (arg_a1Na3 :: a_a1N9p) :: a_a1N9p; type family FromInteger (arg_a1Na7 :: Nat) :: a_a1N9p; type (:-) a_a1Nam a_a1Nan = Apply (Apply TFHelper_1627817280Sym0 a_a1Nam) a_a1Nan; type Negate a_a1NaC = Apply Negate_1627817295Sym0 a_a1NaC; } class SNum a_a1N9p where (%:-) sX sY = let lambda_a1NaS :: forall x_a1Nak y_a1Nal. (t_a1NaK ~ x_a1Nak, t_a1NaL ~ y_a1Nal) => Sing x_a1Nak -> Sing y_a1Nal -> Sing (Apply (Apply (:-$) t_a1NaK) t_a1NaL :: a_a1N9p) lambda_a1NaS x_a1NaT y_a1NaU = applySing (applySing (singFun2 (Proxy :: Proxy (:+$)) (%:+)) x_a1NaT) (applySing (singFun1 (Proxy :: Proxy NegateSym0) sNegate) y_a1NaU) in lambda_a1NaS sX sY sNegate sX = let lambda_a1NaV :: forall x_a1NaB. t_a1NaO ~ x_a1NaB => Sing x_a1NaB -> Sing (Apply NegateSym0 t_a1NaO :: a_a1N9p) lambda_a1NaV x_a1NaW = applySing (applySing (singFun2 (Proxy :: Proxy (:-$)) (%:-)) (sFromInteger (sing :: Sing 0))) x_a1NaW in lambda_a1NaV sX (%:+) :: forall (t_a1NaI :: a_a1N9p) (t_a1NaJ :: a_a1N9p). SNum a_a1N9p => Sing t_a1NaI -> Sing t_a1NaJ -> Sing (Apply (Apply (:+$) t_a1NaI) t_a1NaJ :: a_a1N9p) (%:-) :: forall (t_a1NaK :: a_a1N9p) (t_a1NaL :: a_a1N9p). SNum a_a1N9p => Sing t_a1NaK -> Sing t_a1NaL -> Sing (Apply (Apply (:-$) t_a1NaK) t_a1NaL :: a_a1N9p) (%:*) :: forall (t_a1NaM :: a_a1N9p) (t_a1NaN :: a_a1N9p). SNum a_a1N9p => Sing t_a1NaM -> Sing t_a1NaN -> Sing (Apply (Apply (:*$) t_a1NaM) t_a1NaN :: a_a1N9p) sNegate :: forall (t_a1NaO :: a_a1N9p). SNum a_a1N9p => Sing t_a1NaO -> Sing (Apply NegateSym0 t_a1NaO :: a_a1N9p) sAbs :: forall (t_a1NaP :: a_a1N9p). SNum a_a1N9p => Sing t_a1NaP -> Sing (Apply AbsSym0 t_a1NaP :: a_a1N9p) sSignum :: forall (t_a1NaQ :: a_a1N9p). SNum a_a1N9p => Sing t_a1NaQ -> Sing (Apply SignumSym0 t_a1NaQ :: a_a1N9p) sFromInteger :: forall (t_a1NaR :: Nat). SNum a_a1N9p => Sing t_a1NaR -> Sing (Apply FromIntegerSym0 t_a1NaR :: a_a1N9p) (%:-) :: forall (t_a1NaK :: a_a1N9p) (t_a1NaL :: a_a1N9p). (SNum a_a1N9p, Apply (Apply (:-$) t_a1NaK) t_a1NaL ~ Apply (Apply TFHelper_1627817280Sym0 t_a1NaK) t_a1NaL) => Sing t_a1NaK -> Sing t_a1NaL -> Sing (Apply (Apply (:-$) t_a1NaK) t_a1NaL :: a_a1N9p) sNegate :: forall (t_a1NaO :: a_a1N9p). (SNum a_a1N9p, Apply NegateSym0 t_a1NaO ~ Apply Negate_1627817295Sym0 t_a1NaO) => Sing t_a1NaO -> Sing (Apply NegateSym0 t_a1NaO :: a_a1N9p) sSubtract :: forall (t_a1NMz :: a_a1NLP) (t_a1NMA :: a_a1NLP). SNum a_a1NLP => Sing t_a1NMz -> Sing t_a1NMA -> Sing (Apply (Apply SubtractSym0 t_a1NMz) t_a1NMA :: a_a1NLP) data (:+$) (l_a1N9y :: TyFun a1627817219 (TyFun a1627817219 a1627817219 -> Type)) data (:+$$) (l_a1N9B :: a1627817219) (l_a1N9A :: TyFun a1627817219 a1627817219) type (:+$$$) (t_a1N9w :: a1627817219) (t_a1N9x :: a1627817219) = (:+) t_a1N9w t_a1N9x data (:-$) (l_a1N9H :: TyFun a1627817219 (TyFun a1627817219 a1627817219 -> Type)) data (:-$$) (l_a1N9K :: a1627817219) (l_a1N9J :: TyFun a1627817219 a1627817219) type (:-$$$) (t_a1N9F :: a1627817219) (t_a1N9G :: a1627817219) = (:-) t_a1N9F t_a1N9G data (:*$) (l_a1N9Q :: TyFun a1627817219 (TyFun a1627817219 a1627817219 -> Type)) data (:*$$) (l_a1N9T :: a1627817219) (l_a1N9S :: TyFun a1627817219 a1627817219) type (:*$$$) (t_a1N9O :: a1627817219) (t_a1N9P :: a1627817219) = (:*) t_a1N9O t_a1N9P data NegateSym0 (l_a1N9X :: TyFun a1627817219 a1627817219) type NegateSym1 (t_a1N9W :: a1627817219) = Negate t_a1N9W data AbsSym0 (l_a1Na1 :: TyFun a1627817219 a1627817219) type AbsSym1 (t_a1Na0 :: a1627817219) = Abs t_a1Na0 data SignumSym0 (l_a1Na5 :: TyFun a1627817219 a1627817219) type SignumSym1 (t_a1Na4 :: a1627817219) = Signum t_a1Na4 data FromIntegerSym0 (l_a1Na9 :: TyFun Nat a1627817219) type FromIntegerSym1 (t_a1Na8 :: Nat) = FromInteger t_a1Na8 data SubtractSym0 (l_a1NMq :: TyFun a1627819601 (TyFun a1627819601 a1627819601 -> Type)) data SubtractSym1 (l_a1NMt :: a1627819601) (l_a1NMs :: TyFun a1627819601 a1627819601) type SubtractSym2 (t_a1NMo :: a1627819601) (t_a1NMp :: a1627819601) = Subtract t_a1NMo t_a1NMp 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_1627817280Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Num.TFHelper_1627817280Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Num.Negate_1627817295Sym0 instance Data.Singletons.Prelude.Num.PNum 'Data.Proxy.Proxy instance Data.Singletons.Prelude.Num.SNum GHC.Types.Nat -- | 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. Declared here because -- class IP needs it data Symbol :: * -- | The singleton kind-indexed data family. -- | 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_a1LFh :: TyFun k01627810588 k1627810590) type ErrorSym1 (t_a1LFg :: k01627810588) = Error t_a1LFg -- | 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_a1LHT data (:^$$) (l_a1LHW :: Nat) l_a1LHV type (:^$$$) (t_a1LHR :: Nat) (t_a1LHS :: Nat) = (:^) t_a1LHR t_a1LHS instance GHC.Num.Num GHC.Types.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 ~ Proxy => PEq (kproxy :: Proxy a) where type (:==) (x :: a) (y :: a) :: Bool type (:/=) (x :: a) (y :: a) :: Bool type (:==) (x :: a) (y :: a) = x == y type (:/=) (x :: a) (y :: a) = Not (x :== y) where { type family (:==) (x :: a) (y :: a) :: Bool; type family (:/=) (x :: a) (y :: a) :: Bool; type (:==) (x :: a) (y :: a) = x == y; type (:/=) (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 SEq k where a %:/= b = sNot (a %:== b) -- | Boolean equality on singletons (%:==) :: forall (a :: k) (b :: k). SEq k => Sing a -> Sing b -> Sing (a :== b) -- | Boolean disequality on singletons (%:/=) :: forall (a :: k) (b :: k). SEq k => Sing a -> Sing b -> Sing (a :/= b) -- | Boolean disequality on singletons (%:/=) :: forall (a :: k) (b :: k). (SEq k, (a :/= b) ~ Not (a :== b)) => Sing a -> Sing b -> Sing (a :/= b) class (PEq (Proxy :: Proxy a_a1e21), kproxy_a1ed9 ~ Proxy) => POrd (kproxy_a1ed9 :: Proxy a_a1e21) where type Compare (arg_a1eda :: a_a1e21) (arg_a1edb :: a_a1e21) :: Ordering type (:<) (arg_a1edj :: a_a1e21) (arg_a1edk :: a_a1e21) :: Bool type (:<=) (arg_a1eds :: a_a1e21) (arg_a1edt :: a_a1e21) :: Bool type (:>) (arg_a1edB :: a_a1e21) (arg_a1edC :: a_a1e21) :: Bool type (:>=) (arg_a1edK :: a_a1e21) (arg_a1edL :: a_a1e21) :: Bool type Max (arg_a1edT :: a_a1e21) (arg_a1edU :: a_a1e21) :: a_a1e21 type Min (arg_a1ee2 :: a_a1e21) (arg_a1ee3 :: a_a1e21) :: a_a1e21 type Compare a_a1eeI a_a1eeJ = Apply (Apply Compare_1627683010Sym0 a_a1eeI) a_a1eeJ type (:<) a_a1eff a_a1efg = Apply (Apply TFHelper_1627683043Sym0 a_a1eff) a_a1efg type (:<=) a_a1efM a_a1efN = Apply (Apply TFHelper_1627683076Sym0 a_a1efM) a_a1efN type (:>) a_a1egj a_a1egk = Apply (Apply TFHelper_1627683109Sym0 a_a1egj) a_a1egk type (:>=) a_a1egQ a_a1egR = Apply (Apply TFHelper_1627683142Sym0 a_a1egQ) a_a1egR type Max a_a1ehn a_a1eho = Apply (Apply Max_1627683175Sym0 a_a1ehn) a_a1eho type Min a_a1ehU a_a1ehV = Apply (Apply Min_1627683208Sym0 a_a1ehU) a_a1ehV where { type family Compare (arg_a1eda :: a_a1e21) (arg_a1edb :: a_a1e21) :: Ordering; type family (:<) (arg_a1edj :: a_a1e21) (arg_a1edk :: a_a1e21) :: Bool; type family (:<=) (arg_a1eds :: a_a1e21) (arg_a1edt :: a_a1e21) :: Bool; type family (:>) (arg_a1edB :: a_a1e21) (arg_a1edC :: a_a1e21) :: Bool; type family (:>=) (arg_a1edK :: a_a1e21) (arg_a1edL :: a_a1e21) :: Bool; type family Max (arg_a1edT :: a_a1e21) (arg_a1edU :: a_a1e21) :: a_a1e21; type family Min (arg_a1ee2 :: a_a1e21) (arg_a1ee3 :: a_a1e21) :: a_a1e21; type Compare a_a1eeI a_a1eeJ = Apply (Apply Compare_1627683010Sym0 a_a1eeI) a_a1eeJ; type (:<) a_a1eff a_a1efg = Apply (Apply TFHelper_1627683043Sym0 a_a1eff) a_a1efg; type (:<=) a_a1efM a_a1efN = Apply (Apply TFHelper_1627683076Sym0 a_a1efM) a_a1efN; type (:>) a_a1egj a_a1egk = Apply (Apply TFHelper_1627683109Sym0 a_a1egj) a_a1egk; type (:>=) a_a1egQ a_a1egR = Apply (Apply TFHelper_1627683142Sym0 a_a1egQ) a_a1egR; type Max a_a1ehn a_a1eho = Apply (Apply Max_1627683175Sym0 a_a1ehn) a_a1eho; type Min a_a1ehU a_a1ehV = Apply (Apply Min_1627683208Sym0 a_a1ehU) a_a1ehV; } class SEq a_a1e21 => SOrd a_a1e21 where sCompare sX sY = let lambda_a1eij :: forall x_a1eek y_a1eel. (t_a1ei5 ~ x_a1eek, t_a1ei6 ~ y_a1eel) => Sing x_a1eek -> Sing y_a1eel -> Sing (Apply (Apply CompareSym0 t_a1ei5) t_a1ei6 :: Ordering) lambda_a1eij x_a1eik y_a1eil = let sScrutinee_1627682236 :: Sing (Let1627682986Scrutinee_1627682236Sym2 x_a1eek y_a1eel) sScrutinee_1627682236 = applySing (applySing (singFun2 (Proxy :: Proxy (:==$)) (%:==)) x_a1eik) y_a1eil in case sScrutinee_1627682236 of { STrue -> let lambda_a1eim :: TrueSym0 ~ Let1627682986Scrutinee_1627682236Sym2 x_a1eek y_a1eel => Sing (Case_1627682994 x_a1eek y_a1eel TrueSym0 :: Ordering) lambda_a1eim = SEQ in lambda_a1eim SFalse -> let lambda_a1ein :: FalseSym0 ~ Let1627682986Scrutinee_1627682236Sym2 x_a1eek y_a1eel => Sing (Case_1627682994 x_a1eek y_a1eel FalseSym0 :: Ordering) lambda_a1ein = let sScrutinee_1627682238 :: Sing (Let1627682996Scrutinee_1627682238Sym2 x_a1eek y_a1eel) sScrutinee_1627682238 = applySing (applySing (singFun2 (Proxy :: Proxy (:<=$)) (%:<=)) x_a1eik) y_a1eil in case sScrutinee_1627682238 of { STrue -> let lambda_a1eio :: TrueSym0 ~ Let1627682996Scrutinee_1627682238Sym2 x_a1eek y_a1eel => Sing (Case_1627683004 x_a1eek y_a1eel TrueSym0 :: Ordering) lambda_a1eio = SLT in lambda_a1eio SFalse -> let lambda_a1eip :: FalseSym0 ~ Let1627682996Scrutinee_1627682238Sym2 x_a1eek y_a1eel => Sing (Case_1627683004 x_a1eek y_a1eel FalseSym0 :: Ordering) lambda_a1eip = SGT in lambda_a1eip } :: Sing (Case_1627683004 x_a1eek y_a1eel (Let1627682996Scrutinee_1627682238Sym2 x_a1eek y_a1eel) :: Ordering) in lambda_a1ein } :: Sing (Case_1627682994 x_a1eek y_a1eel (Let1627682986Scrutinee_1627682236Sym2 x_a1eek y_a1eel) :: Ordering) in lambda_a1eij sX sY (%:<) sX sY = let lambda_a1eiq :: forall x_a1ef2 y_a1ef3. (t_a1ei7 ~ x_a1ef2, t_a1ei8 ~ y_a1ef3) => Sing x_a1ef2 -> Sing y_a1ef3 -> Sing (Apply (Apply (:<$) t_a1ei7) t_a1ei8 :: Bool) lambda_a1eiq x_a1eir y_a1eis = let sScrutinee_1627682240 :: Sing (Let1627683030Scrutinee_1627682240Sym2 x_a1ef2 y_a1ef3) sScrutinee_1627682240 = applySing (applySing (singFun2 (Proxy :: Proxy CompareSym0) sCompare) x_a1eir) y_a1eis in case sScrutinee_1627682240 of { SLT -> let lambda_a1eit :: LTSym0 ~ Let1627683030Scrutinee_1627682240Sym2 x_a1ef2 y_a1ef3 => Sing (Case_1627683038 x_a1ef2 y_a1ef3 LTSym0 :: Bool) lambda_a1eit = STrue in lambda_a1eit SEQ -> let lambda_a1eiu :: EQSym0 ~ Let1627683030Scrutinee_1627682240Sym2 x_a1ef2 y_a1ef3 => Sing (Case_1627683038 x_a1ef2 y_a1ef3 EQSym0 :: Bool) lambda_a1eiu = SFalse in lambda_a1eiu SGT -> let lambda_a1eiv :: GTSym0 ~ Let1627683030Scrutinee_1627682240Sym2 x_a1ef2 y_a1ef3 => Sing (Case_1627683038 x_a1ef2 y_a1ef3 GTSym0 :: Bool) lambda_a1eiv = SFalse in lambda_a1eiv } :: Sing (Case_1627683038 x_a1ef2 y_a1ef3 (Let1627683030Scrutinee_1627682240Sym2 x_a1ef2 y_a1ef3) :: Bool) in lambda_a1eiq sX sY (%:<=) sX sY = let lambda_a1eiw :: forall x_a1efz y_a1efA. (t_a1ei9 ~ x_a1efz, t_a1eia ~ y_a1efA) => Sing x_a1efz -> Sing y_a1efA -> Sing (Apply (Apply (:<=$) t_a1ei9) t_a1eia :: Bool) lambda_a1eiw x_a1eix y_a1eiy = let sScrutinee_1627682242 :: Sing (Let1627683063Scrutinee_1627682242Sym2 x_a1efz y_a1efA) sScrutinee_1627682242 = applySing (applySing (singFun2 (Proxy :: Proxy CompareSym0) sCompare) x_a1eix) y_a1eiy in case sScrutinee_1627682242 of { SLT -> let lambda_a1eiz :: LTSym0 ~ Let1627683063Scrutinee_1627682242Sym2 x_a1efz y_a1efA => Sing (Case_1627683071 x_a1efz y_a1efA LTSym0 :: Bool) lambda_a1eiz = STrue in lambda_a1eiz SEQ -> let lambda_a1eiA :: EQSym0 ~ Let1627683063Scrutinee_1627682242Sym2 x_a1efz y_a1efA => Sing (Case_1627683071 x_a1efz y_a1efA EQSym0 :: Bool) lambda_a1eiA = STrue in lambda_a1eiA SGT -> let lambda_a1eiB :: GTSym0 ~ Let1627683063Scrutinee_1627682242Sym2 x_a1efz y_a1efA => Sing (Case_1627683071 x_a1efz y_a1efA GTSym0 :: Bool) lambda_a1eiB = SFalse in lambda_a1eiB } :: Sing (Case_1627683071 x_a1efz y_a1efA (Let1627683063Scrutinee_1627682242Sym2 x_a1efz y_a1efA) :: Bool) in lambda_a1eiw sX sY (%:>) sX sY = let lambda_a1eiC :: forall x_a1eg6 y_a1eg7. (t_a1eib ~ x_a1eg6, t_a1eic ~ y_a1eg7) => Sing x_a1eg6 -> Sing y_a1eg7 -> Sing (Apply (Apply (:>$) t_a1eib) t_a1eic :: Bool) lambda_a1eiC x_a1eiD y_a1eiE = let sScrutinee_1627682244 :: Sing (Let1627683096Scrutinee_1627682244Sym2 x_a1eg6 y_a1eg7) sScrutinee_1627682244 = applySing (applySing (singFun2 (Proxy :: Proxy CompareSym0) sCompare) x_a1eiD) y_a1eiE in case sScrutinee_1627682244 of { SLT -> let lambda_a1eiF :: LTSym0 ~ Let1627683096Scrutinee_1627682244Sym2 x_a1eg6 y_a1eg7 => Sing (Case_1627683104 x_a1eg6 y_a1eg7 LTSym0 :: Bool) lambda_a1eiF = SFalse in lambda_a1eiF SEQ -> let lambda_a1eiG :: EQSym0 ~ Let1627683096Scrutinee_1627682244Sym2 x_a1eg6 y_a1eg7 => Sing (Case_1627683104 x_a1eg6 y_a1eg7 EQSym0 :: Bool) lambda_a1eiG = SFalse in lambda_a1eiG SGT -> let lambda_a1eiH :: GTSym0 ~ Let1627683096Scrutinee_1627682244Sym2 x_a1eg6 y_a1eg7 => Sing (Case_1627683104 x_a1eg6 y_a1eg7 GTSym0 :: Bool) lambda_a1eiH = STrue in lambda_a1eiH } :: Sing (Case_1627683104 x_a1eg6 y_a1eg7 (Let1627683096Scrutinee_1627682244Sym2 x_a1eg6 y_a1eg7) :: Bool) in lambda_a1eiC sX sY (%:>=) sX sY = let lambda_a1eiI :: forall x_a1egD y_a1egE. (t_a1eid ~ x_a1egD, t_a1eie ~ y_a1egE) => Sing x_a1egD -> Sing y_a1egE -> Sing (Apply (Apply (:>=$) t_a1eid) t_a1eie :: Bool) lambda_a1eiI x_a1eiJ y_a1eiK = let sScrutinee_1627682246 :: Sing (Let1627683129Scrutinee_1627682246Sym2 x_a1egD y_a1egE) sScrutinee_1627682246 = applySing (applySing (singFun2 (Proxy :: Proxy CompareSym0) sCompare) x_a1eiJ) y_a1eiK in case sScrutinee_1627682246 of { SLT -> let lambda_a1eiL :: LTSym0 ~ Let1627683129Scrutinee_1627682246Sym2 x_a1egD y_a1egE => Sing (Case_1627683137 x_a1egD y_a1egE LTSym0 :: Bool) lambda_a1eiL = SFalse in lambda_a1eiL SEQ -> let lambda_a1eiM :: EQSym0 ~ Let1627683129Scrutinee_1627682246Sym2 x_a1egD y_a1egE => Sing (Case_1627683137 x_a1egD y_a1egE EQSym0 :: Bool) lambda_a1eiM = STrue in lambda_a1eiM SGT -> let lambda_a1eiN :: GTSym0 ~ Let1627683129Scrutinee_1627682246Sym2 x_a1egD y_a1egE => Sing (Case_1627683137 x_a1egD y_a1egE GTSym0 :: Bool) lambda_a1eiN = STrue in lambda_a1eiN } :: Sing (Case_1627683137 x_a1egD y_a1egE (Let1627683129Scrutinee_1627682246Sym2 x_a1egD y_a1egE) :: Bool) in lambda_a1eiI sX sY sMax sX sY = let lambda_a1eiO :: forall x_a1eha y_a1ehb. (t_a1eif ~ x_a1eha, t_a1eig ~ y_a1ehb) => Sing x_a1eha -> Sing y_a1ehb -> Sing (Apply (Apply MaxSym0 t_a1eif) t_a1eig :: a_a1e21) lambda_a1eiO x_a1eiP y_a1eiQ = let sScrutinee_1627682248 :: Sing (Let1627683162Scrutinee_1627682248Sym2 x_a1eha y_a1ehb) sScrutinee_1627682248 = applySing (applySing (singFun2 (Proxy :: Proxy (:<=$)) (%:<=)) x_a1eiP) y_a1eiQ in case sScrutinee_1627682248 of { STrue -> let lambda_a1eiR :: TrueSym0 ~ Let1627683162Scrutinee_1627682248Sym2 x_a1eha y_a1ehb => Sing (Case_1627683170 x_a1eha y_a1ehb TrueSym0 :: a_a1e21) lambda_a1eiR = y_a1eiQ in lambda_a1eiR SFalse -> let lambda_a1eiS :: FalseSym0 ~ Let1627683162Scrutinee_1627682248Sym2 x_a1eha y_a1ehb => Sing (Case_1627683170 x_a1eha y_a1ehb FalseSym0 :: a_a1e21) lambda_a1eiS = x_a1eiP in lambda_a1eiS } :: Sing (Case_1627683170 x_a1eha y_a1ehb (Let1627683162Scrutinee_1627682248Sym2 x_a1eha y_a1ehb) :: a_a1e21) in lambda_a1eiO sX sY sMin sX sY = let lambda_a1eiT :: forall x_a1ehH y_a1ehI. (t_a1eih ~ x_a1ehH, t_a1eii ~ y_a1ehI) => Sing x_a1ehH -> Sing y_a1ehI -> Sing (Apply (Apply MinSym0 t_a1eih) t_a1eii :: a_a1e21) lambda_a1eiT x_a1eiU y_a1eiV = let sScrutinee_1627682250 :: Sing (Let1627683195Scrutinee_1627682250Sym2 x_a1ehH y_a1ehI) sScrutinee_1627682250 = applySing (applySing (singFun2 (Proxy :: Proxy (:<=$)) (%:<=)) x_a1eiU) y_a1eiV in case sScrutinee_1627682250 of { STrue -> let lambda_a1eiW :: TrueSym0 ~ Let1627683195Scrutinee_1627682250Sym2 x_a1ehH y_a1ehI => Sing (Case_1627683203 x_a1ehH y_a1ehI TrueSym0 :: a_a1e21) lambda_a1eiW = x_a1eiU in lambda_a1eiW SFalse -> let lambda_a1eiX :: FalseSym0 ~ Let1627683195Scrutinee_1627682250Sym2 x_a1ehH y_a1ehI => Sing (Case_1627683203 x_a1ehH y_a1ehI FalseSym0 :: a_a1e21) lambda_a1eiX = y_a1eiV in lambda_a1eiX } :: Sing (Case_1627683203 x_a1ehH y_a1ehI (Let1627683195Scrutinee_1627682250Sym2 x_a1ehH y_a1ehI) :: a_a1e21) in lambda_a1eiT sX sY sCompare :: forall (t_a1ei5 :: a_a1e21) (t_a1ei6 :: a_a1e21). SOrd a_a1e21 => Sing t_a1ei5 -> Sing t_a1ei6 -> Sing (Apply (Apply CompareSym0 t_a1ei5) t_a1ei6 :: Ordering) (%:<) :: forall (t_a1ei7 :: a_a1e21) (t_a1ei8 :: a_a1e21). SOrd a_a1e21 => Sing t_a1ei7 -> Sing t_a1ei8 -> Sing (Apply (Apply (:<$) t_a1ei7) t_a1ei8 :: Bool) (%:<=) :: forall (t_a1ei9 :: a_a1e21) (t_a1eia :: a_a1e21). SOrd a_a1e21 => Sing t_a1ei9 -> Sing t_a1eia -> Sing (Apply (Apply (:<=$) t_a1ei9) t_a1eia :: Bool) (%:>) :: forall (t_a1eib :: a_a1e21) (t_a1eic :: a_a1e21). SOrd a_a1e21 => Sing t_a1eib -> Sing t_a1eic -> Sing (Apply (Apply (:>$) t_a1eib) t_a1eic :: Bool) (%:>=) :: forall (t_a1eid :: a_a1e21) (t_a1eie :: a_a1e21). SOrd a_a1e21 => Sing t_a1eid -> Sing t_a1eie -> Sing (Apply (Apply (:>=$) t_a1eid) t_a1eie :: Bool) sMax :: forall (t_a1eif :: a_a1e21) (t_a1eig :: a_a1e21). SOrd a_a1e21 => Sing t_a1eif -> Sing t_a1eig -> Sing (Apply (Apply MaxSym0 t_a1eif) t_a1eig :: a_a1e21) sMin :: forall (t_a1eih :: a_a1e21) (t_a1eii :: a_a1e21). SOrd a_a1e21 => Sing t_a1eih -> Sing t_a1eii -> Sing (Apply (Apply MinSym0 t_a1eih) t_a1eii :: a_a1e21) sCompare :: forall (t_a1ei5 :: a_a1e21) (t_a1ei6 :: a_a1e21). (SOrd a_a1e21, Apply (Apply CompareSym0 t_a1ei5) t_a1ei6 ~ Apply (Apply Compare_1627683010Sym0 t_a1ei5) t_a1ei6) => Sing t_a1ei5 -> Sing t_a1ei6 -> Sing (Apply (Apply CompareSym0 t_a1ei5) t_a1ei6 :: Ordering) (%:<) :: forall (t_a1ei7 :: a_a1e21) (t_a1ei8 :: a_a1e21). (SOrd a_a1e21, Apply (Apply (:<$) t_a1ei7) t_a1ei8 ~ Apply (Apply TFHelper_1627683043Sym0 t_a1ei7) t_a1ei8) => Sing t_a1ei7 -> Sing t_a1ei8 -> Sing (Apply (Apply (:<$) t_a1ei7) t_a1ei8 :: Bool) (%:<=) :: forall (t_a1ei9 :: a_a1e21) (t_a1eia :: a_a1e21). (SOrd a_a1e21, Apply (Apply (:<=$) t_a1ei9) t_a1eia ~ Apply (Apply TFHelper_1627683076Sym0 t_a1ei9) t_a1eia) => Sing t_a1ei9 -> Sing t_a1eia -> Sing (Apply (Apply (:<=$) t_a1ei9) t_a1eia :: Bool) (%:>) :: forall (t_a1eib :: a_a1e21) (t_a1eic :: a_a1e21). (SOrd a_a1e21, Apply (Apply (:>$) t_a1eib) t_a1eic ~ Apply (Apply TFHelper_1627683109Sym0 t_a1eib) t_a1eic) => Sing t_a1eib -> Sing t_a1eic -> Sing (Apply (Apply (:>$) t_a1eib) t_a1eic :: Bool) (%:>=) :: forall (t_a1eid :: a_a1e21) (t_a1eie :: a_a1e21). (SOrd a_a1e21, Apply (Apply (:>=$) t_a1eid) t_a1eie ~ Apply (Apply TFHelper_1627683142Sym0 t_a1eid) t_a1eie) => Sing t_a1eid -> Sing t_a1eie -> Sing (Apply (Apply (:>=$) t_a1eid) t_a1eie :: Bool) sMax :: forall (t_a1eif :: a_a1e21) (t_a1eig :: a_a1e21). (SOrd a_a1e21, Apply (Apply MaxSym0 t_a1eif) t_a1eig ~ Apply (Apply Max_1627683175Sym0 t_a1eif) t_a1eig) => Sing t_a1eif -> Sing t_a1eig -> Sing (Apply (Apply MaxSym0 t_a1eif) t_a1eig :: a_a1e21) sMin :: forall (t_a1eih :: a_a1e21) (t_a1eii :: a_a1e21). (SOrd a_a1e21, Apply (Apply MinSym0 t_a1eih) t_a1eii ~ Apply (Apply Min_1627683208Sym0 t_a1eih) t_a1eii) => Sing t_a1eih -> Sing t_a1eii -> Sing (Apply (Apply MinSym0 t_a1eih) t_a1eii :: a_a1e21) sThenCmp :: forall (t_a1g6O :: Ordering) (t_a1g6P :: Ordering). Sing t_a1g6O -> Sing t_a1g6P -> Sing (Apply (Apply ThenCmpSym0 t_a1g6O) t_a1g6P :: Ordering) sFoldl :: forall (t_aXQ1 :: TyFun b_aXP3 (TyFun a_aXP2 b_aXP3 -> Type) -> Type) (t_aXQ2 :: b_aXP3) (t_aXQ3 :: [a_aXP2]). Sing t_aXQ1 -> Sing t_aXQ2 -> Sing t_aXQ3 -> Sing (Apply (Apply (Apply FoldlSym0 t_aXQ1) t_aXQ2) t_aXQ3 :: b_aXP3) -- | 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 SDecide k -- | Compute a proof or disproof of equality, given two singletons. (%~) :: forall (a :: k) (b :: k). SDecide k => 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 (:~:) k (a :: k) (b :: k) :: forall k. k -> k -> * [Refl] :: (:~:) k a a -- | 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 k (t :: k) :: forall k. k -> * Proxy :: Proxy k -- | 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 k [SomeSing] :: Sing (a :: k) -> SomeSing k -- | The promotion of error. This version is more poly-kinded for -- easier use. data ErrorSym0 (l_a1LFh :: TyFun k01627810588 k1627810590) type TrueSym0 = True type FalseSym0 = False type LTSym0 = LT type EQSym0 = EQ type GTSym0 = GT type Tuple0Sym0 = '() data Tuple2Sym0 (l_aUPv :: TyFun a822083586 (TyFun b822083587 (a822083586, b822083587) -> Type)) data Tuple2Sym1 (l_aUPy :: a822083586) (l_aUPx :: TyFun b822083587 (a822083586, b822083587)) type Tuple2Sym2 (t_aUPt :: a822083586) (t_aUPu :: b822083587) = '(t_aUPt, t_aUPu) data Tuple3Sym0 (l_aUPP :: TyFun a822083586 (TyFun b822083587 (TyFun c822083588 (a822083586, b822083587, c822083588) -> Type) -> Type)) data Tuple3Sym1 (l_aUPS :: a822083586) (l_aUPR :: TyFun b822083587 (TyFun c822083588 (a822083586, b822083587, c822083588) -> Type)) data Tuple3Sym2 (l_aUPV :: a822083586) (l_aUPW :: b822083587) (l_aUPU :: TyFun c822083588 (a822083586, b822083587, c822083588)) type Tuple3Sym3 (t_aUPM :: a822083586) (t_aUPN :: b822083587) (t_aUPO :: c822083588) = '(t_aUPM, t_aUPN, t_aUPO) data Tuple4Sym0 (l_aUQj :: TyFun a822083586 (TyFun b822083587 (TyFun c822083588 (TyFun d822083589 (a822083586, b822083587, c822083588, d822083589) -> Type) -> Type) -> Type)) data Tuple4Sym1 (l_aUQm :: a822083586) (l_aUQl :: TyFun b822083587 (TyFun c822083588 (TyFun d822083589 (a822083586, b822083587, c822083588, d822083589) -> Type) -> Type)) data Tuple4Sym2 (l_aUQp :: a822083586) (l_aUQq :: b822083587) (l_aUQo :: TyFun c822083588 (TyFun d822083589 (a822083586, b822083587, c822083588, d822083589) -> Type)) data Tuple4Sym3 (l_aUQt :: a822083586) (l_aUQu :: b822083587) (l_aUQv :: c822083588) (l_aUQs :: TyFun d822083589 (a822083586, b822083587, c822083588, d822083589)) type Tuple4Sym4 (t_aUQf :: a822083586) (t_aUQg :: b822083587) (t_aUQh :: c822083588) (t_aUQi :: d822083589) = '(t_aUQf, t_aUQg, t_aUQh, t_aUQi) data Tuple5Sym0 (l_aUQY :: TyFun a822083586 (TyFun b822083587 (TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (a822083586, b822083587, c822083588, d822083589, e822083590) -> Type) -> Type) -> Type) -> Type)) data Tuple5Sym1 (l_aUR1 :: a822083586) (l_aUR0 :: TyFun b822083587 (TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (a822083586, b822083587, c822083588, d822083589, e822083590) -> Type) -> Type) -> Type)) data Tuple5Sym2 (l_aUR4 :: a822083586) (l_aUR5 :: b822083587) (l_aUR3 :: TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (a822083586, b822083587, c822083588, d822083589, e822083590) -> Type) -> Type)) data Tuple5Sym3 (l_aUR8 :: a822083586) (l_aUR9 :: b822083587) (l_aURa :: c822083588) (l_aUR7 :: TyFun d822083589 (TyFun e822083590 (a822083586, b822083587, c822083588, d822083589, e822083590) -> Type)) data Tuple5Sym4 (l_aURd :: a822083586) (l_aURe :: b822083587) (l_aURf :: c822083588) (l_aURg :: d822083589) (l_aURc :: TyFun e822083590 (a822083586, b822083587, c822083588, d822083589, e822083590)) type Tuple5Sym5 (t_aUQT :: a822083586) (t_aUQU :: b822083587) (t_aUQV :: c822083588) (t_aUQW :: d822083589) (t_aUQX :: e822083590) = '(t_aUQT, t_aUQU, t_aUQV, t_aUQW, t_aUQX) data Tuple6Sym0 (l_aURP :: TyFun a822083586 (TyFun b822083587 (TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (TyFun f822083591 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591) -> Type) -> Type) -> Type) -> Type) -> Type)) data Tuple6Sym1 (l_aURS :: a822083586) (l_aURR :: TyFun b822083587 (TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (TyFun f822083591 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591) -> Type) -> Type) -> Type) -> Type)) data Tuple6Sym2 (l_aURV :: a822083586) (l_aURW :: b822083587) (l_aURU :: TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (TyFun f822083591 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591) -> Type) -> Type) -> Type)) data Tuple6Sym3 (l_aURZ :: a822083586) (l_aUS0 :: b822083587) (l_aUS1 :: c822083588) (l_aURY :: TyFun d822083589 (TyFun e822083590 (TyFun f822083591 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591) -> Type) -> Type)) data Tuple6Sym4 (l_aUS4 :: a822083586) (l_aUS5 :: b822083587) (l_aUS6 :: c822083588) (l_aUS7 :: d822083589) (l_aUS3 :: TyFun e822083590 (TyFun f822083591 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591) -> Type)) data Tuple6Sym5 (l_aUSa :: a822083586) (l_aUSb :: b822083587) (l_aUSc :: c822083588) (l_aUSd :: d822083589) (l_aUSe :: e822083590) (l_aUS9 :: TyFun f822083591 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591)) type Tuple6Sym6 (t_aURJ :: a822083586) (t_aURK :: b822083587) (t_aURL :: c822083588) (t_aURM :: d822083589) (t_aURN :: e822083590) (t_aURO :: f822083591) = '(t_aURJ, t_aURK, t_aURL, t_aURM, t_aURN, t_aURO) data Tuple7Sym0 (l_aUST :: TyFun a822083586 (TyFun b822083587 (TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (TyFun f822083591 (TyFun g822083592 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591, g822083592) -> Type) -> Type) -> Type) -> Type) -> Type) -> Type)) data Tuple7Sym1 (l_aUSW :: a822083586) (l_aUSV :: TyFun b822083587 (TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (TyFun f822083591 (TyFun g822083592 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591, g822083592) -> Type) -> Type) -> Type) -> Type) -> Type)) data Tuple7Sym2 (l_aUSZ :: a822083586) (l_aUT0 :: b822083587) (l_aUSY :: TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (TyFun f822083591 (TyFun g822083592 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591, g822083592) -> Type) -> Type) -> Type) -> Type)) data Tuple7Sym3 (l_aUT3 :: a822083586) (l_aUT4 :: b822083587) (l_aUT5 :: c822083588) (l_aUT2 :: TyFun d822083589 (TyFun e822083590 (TyFun f822083591 (TyFun g822083592 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591, g822083592) -> Type) -> Type) -> Type)) data Tuple7Sym4 (l_aUT8 :: a822083586) (l_aUT9 :: b822083587) (l_aUTa :: c822083588) (l_aUTb :: d822083589) (l_aUT7 :: TyFun e822083590 (TyFun f822083591 (TyFun g822083592 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591, g822083592) -> Type) -> Type)) data Tuple7Sym5 (l_aUTe :: a822083586) (l_aUTf :: b822083587) (l_aUTg :: c822083588) (l_aUTh :: d822083589) (l_aUTi :: e822083590) (l_aUTd :: TyFun f822083591 (TyFun g822083592 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591, g822083592) -> Type)) data Tuple7Sym6 (l_aUTl :: a822083586) (l_aUTm :: b822083587) (l_aUTn :: c822083588) (l_aUTo :: d822083589) (l_aUTp :: e822083590) (l_aUTq :: f822083591) (l_aUTk :: TyFun g822083592 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591, g822083592)) type Tuple7Sym7 (t_aUSM :: a822083586) (t_aUSN :: b822083587) (t_aUSO :: c822083588) (t_aUSP :: d822083589) (t_aUSQ :: e822083590) (t_aUSR :: f822083591) (t_aUSS :: g822083592) = '(t_aUSM, t_aUSN, t_aUSO, t_aUSP, t_aUSQ, t_aUSR, t_aUSS) data CompareSym0 (l_a1ede :: TyFun a1627682221 (TyFun a1627682221 Ordering -> Type)) data ThenCmpSym0 (l_a1g6A :: TyFun Ordering (TyFun Ordering Ordering -> Type)) data FoldlSym0 (l_aXPg :: TyFun (TyFun b1627619913 (TyFun a1627619912 b1627619913 -> Type) -> Type) (TyFun b1627619913 (TyFun [a1627619912] b1627619913 -> Type) -> Type)) -- | 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_acqs b_acqt -> Type) either_ :: forall a_a1Qgk c_a1Qgl b_a1Qgm. (a_a1Qgk -> c_a1Qgl) -> (b_a1Qgm -> c_a1Qgl) -> Either a_a1Qgk b_a1Qgm -> c_a1Qgl sEither_ :: forall (t_a1QgR :: TyFun a_a1Qgk c_a1Qgl -> Type) (t_a1QgS :: TyFun b_a1Qgm c_a1Qgl -> Type) (t_a1QgT :: Either a_a1Qgk b_a1Qgm). Sing t_a1QgR -> Sing t_a1QgS -> Sing t_a1QgT -> Sing (Apply (Apply (Apply Either_Sym0 t_a1QgR) t_a1QgS) t_a1QgT :: c_a1Qgl) sLefts :: forall (t_a1QCB :: [Either a_a1QAS b_a1QAT]). Sing t_a1QCB -> Sing (Apply LeftsSym0 t_a1QCB :: [a_a1QAS]) sRights :: forall (t_a1QCA :: [Either a_a1QAQ b_a1QAR]). Sing t_a1QCA -> Sing (Apply RightsSym0 t_a1QCA :: [b_a1QAR]) sPartitionEithers :: forall (t_a1QCz :: [Either a_a1QAO b_a1QAP]). Sing t_a1QCz -> Sing (Apply PartitionEithersSym0 t_a1QCz :: ([a_a1QAO], [b_a1QAP])) sIsLeft :: forall (t_a1QCy :: Either a_a1QAM b_a1QAN). Sing t_a1QCy -> Sing (Apply IsLeftSym0 t_a1QCy :: Bool) sIsRight :: forall (t_a1QCx :: Either a_a1QAK b_a1QAL). Sing t_a1QCx -> Sing (Apply IsRightSym0 t_a1QCx :: Bool) data LeftSym0 (l_aUOW :: TyFun a1627437720 (Either a1627437720 b1627437721)) type LeftSym1 (t_aUOV :: a1627437720) = Left t_aUOV data RightSym0 (l_aUOZ :: TyFun b1627437721 (Either a1627437720 b1627437721)) type RightSym1 (t_aUOY :: b1627437721) = Right t_aUOY data Either_Sym0 (l_a1Qgv :: TyFun (TyFun a1627829180 c1627829181 -> Type) (TyFun (TyFun b1627829182 c1627829181 -> Type) (TyFun (Either a1627829180 b1627829182) c1627829181 -> Type) -> Type)) data Either_Sym1 (l_a1Qgy :: TyFun a1627829180 c1627829181 -> Type) (l_a1Qgx :: TyFun (TyFun b1627829182 c1627829181 -> Type) (TyFun (Either a1627829180 b1627829182) c1627829181 -> Type)) data Either_Sym2 (l_a1QgB :: TyFun a1627829180 c1627829181 -> Type) (l_a1QgC :: TyFun b1627829182 c1627829181 -> Type) (l_a1QgA :: TyFun (Either a1627829180 b1627829182) c1627829181) type Either_Sym3 (t_a1Qgs :: TyFun a1627829180 c1627829181 -> Type) (t_a1Qgt :: TyFun b1627829182 c1627829181 -> Type) (t_a1Qgu :: Either a1627829180 b1627829182) = Either_ t_a1Qgs t_a1Qgt t_a1Qgu data LeftsSym0 (l_a1QCo :: TyFun [Either a1627830454 b1627830455] [a1627830454]) type LeftsSym1 (t_a1QCn :: [Either a1627830454 b1627830455]) = Lefts t_a1QCn data RightsSym0 (l_a1QCe :: TyFun [Either a1627830452 b1627830453] [b1627830453]) type RightsSym1 (t_a1QCd :: [Either a1627830452 b1627830453]) = Rights t_a1QCd data IsLeftSym0 (l_a1QBo :: TyFun (Either a1627830448 b1627830449) Bool) type IsLeftSym1 (t_a1QBn :: Either a1627830448 b1627830449) = IsLeft t_a1QBn data IsRightSym0 (l_a1QBe :: TyFun (Either a1627830446 b1627830447) Bool) type IsRightSym1 (t_a1QBd :: Either a1627830446 b1627830447) = IsRight t_a1QBd instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Either.Let1627830502RightSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Either.Let1627830502RightSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Either.Let1627830502RightSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Either.Let1627830502LeftSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Either.Let1627830502LeftSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Either.Let1627830502LeftSym0 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_ :: forall a_a1Qgk c_a1Qgl b_a1Qgm. (a_a1Qgk -> c_a1Qgl) -> (b_a1Qgm -> c_a1Qgl) -> Either a_a1Qgk b_a1Qgm -> c_a1Qgl data LeftSym0 (l_aUOW :: TyFun a1627437720 (Either a1627437720 b1627437721)) type LeftSym1 (t_aUOV :: a1627437720) = Left t_aUOV data RightSym0 (l_aUOZ :: TyFun b1627437721 (Either a1627437720 b1627437721)) type RightSym1 (t_aUOY :: b1627437721) = Right t_aUOY data Either_Sym0 (l_a1Qgv :: TyFun (TyFun a1627829180 c1627829181 -> Type) (TyFun (TyFun b1627829182 c1627829181 -> Type) (TyFun (Either a1627829180 b1627829182) c1627829181 -> Type) -> Type)) data Either_Sym1 (l_a1Qgy :: TyFun a1627829180 c1627829181 -> Type) (l_a1Qgx :: TyFun (TyFun b1627829182 c1627829181 -> Type) (TyFun (Either a1627829180 b1627829182) c1627829181 -> Type)) data Either_Sym2 (l_a1QgB :: TyFun a1627829180 c1627829181 -> Type) (l_a1QgC :: TyFun b1627829182 c1627829181 -> Type) (l_a1QgA :: TyFun (Either a1627829180 b1627829182) c1627829181) type Either_Sym3 (t_a1Qgs :: TyFun a1627829180 c1627829181 -> Type) (t_a1Qgt :: TyFun b1627829182 c1627829181 -> Type) (t_a1Qgu :: Either a1627829180 b1627829182) = Either_ t_a1Qgs t_a1Qgt t_a1Qgu data LeftsSym0 (l_a1QCo :: TyFun [Either a1627830454 b1627830455] [a1627830454]) type LeftsSym1 (t_a1QCn :: [Either a1627830454 b1627830455]) = Lefts t_a1QCn data RightsSym0 (l_a1QCe :: TyFun [Either a1627830452 b1627830453] [b1627830453]) type RightsSym1 (t_a1QCd :: [Either a1627830452 b1627830453]) = Rights t_a1QCd data IsLeftSym0 (l_a1QBo :: TyFun (Either a1627830448 b1627830449) Bool) type IsLeftSym1 (t_a1QBn :: Either a1627830448 b1627830449) = IsLeft t_a1QBn data IsRightSym0 (l_a1QBe :: TyFun (Either a1627830446 b1627830447) Bool) type IsRightSym1 (t_a1QBd :: Either a1627830446 b1627830447) = IsRight t_a1QBd -- | 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) type STuple2 = (Sing :: (a_12, b_13) -> Type) type STuple3 = (Sing :: (a_12, b_13, c_14) -> Type) type STuple4 = (Sing :: (a_12, b_13, c_14, d_15) -> Type) type STuple5 = (Sing :: (a_12, b_13, c_14, d_15, e_16) -> Type) type STuple6 = (Sing :: (a_12, b_13, c_14, d_15, e_16, f_17) -> Type) type STuple7 = (Sing :: (a_12, b_13, c_14, d_15, e_16, f_17, g_18) -> Type) sFst :: forall (t_a1ThL :: (a_a1TgB, b_a1TgC)). Sing t_a1ThL -> Sing (Apply FstSym0 t_a1ThL :: a_a1TgB) sSnd :: forall (t_a1ThK :: (a_a1Tgz, b_a1TgA)). Sing t_a1ThK -> Sing (Apply SndSym0 t_a1ThK :: b_a1TgA) sCurry :: forall (t_a1ThH :: TyFun (a_a1Tgw, b_a1Tgx) c_a1Tgy -> Type) (t_a1ThI :: a_a1Tgw) (t_a1ThJ :: b_a1Tgx). Sing t_a1ThH -> Sing t_a1ThI -> Sing t_a1ThJ -> Sing (Apply (Apply (Apply CurrySym0 t_a1ThH) t_a1ThI) t_a1ThJ :: c_a1Tgy) sUncurry :: forall (t_a1ThM :: TyFun a_a1Tgt (TyFun b_a1Tgu c_a1Tgv -> Type) -> Type) (t_a1ThN :: (a_a1Tgt, b_a1Tgu)). Sing t_a1ThM -> Sing t_a1ThN -> Sing (Apply (Apply UncurrySym0 t_a1ThM) t_a1ThN :: c_a1Tgv) sSwap :: forall (t_a1ThG :: (a_a1Tgr, b_a1Tgs)). Sing t_a1ThG -> Sing (Apply SwapSym0 t_a1ThG :: (b_a1Tgs, a_a1Tgr)) type Tuple0Sym0 = '() data Tuple2Sym0 (l_aUPv :: TyFun a822083586 (TyFun b822083587 (a822083586, b822083587) -> Type)) data Tuple2Sym1 (l_aUPy :: a822083586) (l_aUPx :: TyFun b822083587 (a822083586, b822083587)) type Tuple2Sym2 (t_aUPt :: a822083586) (t_aUPu :: b822083587) = '(t_aUPt, t_aUPu) data Tuple3Sym0 (l_aUPP :: TyFun a822083586 (TyFun b822083587 (TyFun c822083588 (a822083586, b822083587, c822083588) -> Type) -> Type)) data Tuple3Sym1 (l_aUPS :: a822083586) (l_aUPR :: TyFun b822083587 (TyFun c822083588 (a822083586, b822083587, c822083588) -> Type)) data Tuple3Sym2 (l_aUPV :: a822083586) (l_aUPW :: b822083587) (l_aUPU :: TyFun c822083588 (a822083586, b822083587, c822083588)) type Tuple3Sym3 (t_aUPM :: a822083586) (t_aUPN :: b822083587) (t_aUPO :: c822083588) = '(t_aUPM, t_aUPN, t_aUPO) data Tuple4Sym0 (l_aUQj :: TyFun a822083586 (TyFun b822083587 (TyFun c822083588 (TyFun d822083589 (a822083586, b822083587, c822083588, d822083589) -> Type) -> Type) -> Type)) data Tuple4Sym1 (l_aUQm :: a822083586) (l_aUQl :: TyFun b822083587 (TyFun c822083588 (TyFun d822083589 (a822083586, b822083587, c822083588, d822083589) -> Type) -> Type)) data Tuple4Sym2 (l_aUQp :: a822083586) (l_aUQq :: b822083587) (l_aUQo :: TyFun c822083588 (TyFun d822083589 (a822083586, b822083587, c822083588, d822083589) -> Type)) data Tuple4Sym3 (l_aUQt :: a822083586) (l_aUQu :: b822083587) (l_aUQv :: c822083588) (l_aUQs :: TyFun d822083589 (a822083586, b822083587, c822083588, d822083589)) type Tuple4Sym4 (t_aUQf :: a822083586) (t_aUQg :: b822083587) (t_aUQh :: c822083588) (t_aUQi :: d822083589) = '(t_aUQf, t_aUQg, t_aUQh, t_aUQi) data Tuple5Sym0 (l_aUQY :: TyFun a822083586 (TyFun b822083587 (TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (a822083586, b822083587, c822083588, d822083589, e822083590) -> Type) -> Type) -> Type) -> Type)) data Tuple5Sym1 (l_aUR1 :: a822083586) (l_aUR0 :: TyFun b822083587 (TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (a822083586, b822083587, c822083588, d822083589, e822083590) -> Type) -> Type) -> Type)) data Tuple5Sym2 (l_aUR4 :: a822083586) (l_aUR5 :: b822083587) (l_aUR3 :: TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (a822083586, b822083587, c822083588, d822083589, e822083590) -> Type) -> Type)) data Tuple5Sym3 (l_aUR8 :: a822083586) (l_aUR9 :: b822083587) (l_aURa :: c822083588) (l_aUR7 :: TyFun d822083589 (TyFun e822083590 (a822083586, b822083587, c822083588, d822083589, e822083590) -> Type)) data Tuple5Sym4 (l_aURd :: a822083586) (l_aURe :: b822083587) (l_aURf :: c822083588) (l_aURg :: d822083589) (l_aURc :: TyFun e822083590 (a822083586, b822083587, c822083588, d822083589, e822083590)) type Tuple5Sym5 (t_aUQT :: a822083586) (t_aUQU :: b822083587) (t_aUQV :: c822083588) (t_aUQW :: d822083589) (t_aUQX :: e822083590) = '(t_aUQT, t_aUQU, t_aUQV, t_aUQW, t_aUQX) data Tuple6Sym0 (l_aURP :: TyFun a822083586 (TyFun b822083587 (TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (TyFun f822083591 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591) -> Type) -> Type) -> Type) -> Type) -> Type)) data Tuple6Sym1 (l_aURS :: a822083586) (l_aURR :: TyFun b822083587 (TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (TyFun f822083591 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591) -> Type) -> Type) -> Type) -> Type)) data Tuple6Sym2 (l_aURV :: a822083586) (l_aURW :: b822083587) (l_aURU :: TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (TyFun f822083591 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591) -> Type) -> Type) -> Type)) data Tuple6Sym3 (l_aURZ :: a822083586) (l_aUS0 :: b822083587) (l_aUS1 :: c822083588) (l_aURY :: TyFun d822083589 (TyFun e822083590 (TyFun f822083591 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591) -> Type) -> Type)) data Tuple6Sym4 (l_aUS4 :: a822083586) (l_aUS5 :: b822083587) (l_aUS6 :: c822083588) (l_aUS7 :: d822083589) (l_aUS3 :: TyFun e822083590 (TyFun f822083591 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591) -> Type)) data Tuple6Sym5 (l_aUSa :: a822083586) (l_aUSb :: b822083587) (l_aUSc :: c822083588) (l_aUSd :: d822083589) (l_aUSe :: e822083590) (l_aUS9 :: TyFun f822083591 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591)) type Tuple6Sym6 (t_aURJ :: a822083586) (t_aURK :: b822083587) (t_aURL :: c822083588) (t_aURM :: d822083589) (t_aURN :: e822083590) (t_aURO :: f822083591) = '(t_aURJ, t_aURK, t_aURL, t_aURM, t_aURN, t_aURO) data Tuple7Sym0 (l_aUST :: TyFun a822083586 (TyFun b822083587 (TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (TyFun f822083591 (TyFun g822083592 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591, g822083592) -> Type) -> Type) -> Type) -> Type) -> Type) -> Type)) data Tuple7Sym1 (l_aUSW :: a822083586) (l_aUSV :: TyFun b822083587 (TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (TyFun f822083591 (TyFun g822083592 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591, g822083592) -> Type) -> Type) -> Type) -> Type) -> Type)) data Tuple7Sym2 (l_aUSZ :: a822083586) (l_aUT0 :: b822083587) (l_aUSY :: TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (TyFun f822083591 (TyFun g822083592 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591, g822083592) -> Type) -> Type) -> Type) -> Type)) data Tuple7Sym3 (l_aUT3 :: a822083586) (l_aUT4 :: b822083587) (l_aUT5 :: c822083588) (l_aUT2 :: TyFun d822083589 (TyFun e822083590 (TyFun f822083591 (TyFun g822083592 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591, g822083592) -> Type) -> Type) -> Type)) data Tuple7Sym4 (l_aUT8 :: a822083586) (l_aUT9 :: b822083587) (l_aUTa :: c822083588) (l_aUTb :: d822083589) (l_aUT7 :: TyFun e822083590 (TyFun f822083591 (TyFun g822083592 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591, g822083592) -> Type) -> Type)) data Tuple7Sym5 (l_aUTe :: a822083586) (l_aUTf :: b822083587) (l_aUTg :: c822083588) (l_aUTh :: d822083589) (l_aUTi :: e822083590) (l_aUTd :: TyFun f822083591 (TyFun g822083592 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591, g822083592) -> Type)) data Tuple7Sym6 (l_aUTl :: a822083586) (l_aUTm :: b822083587) (l_aUTn :: c822083588) (l_aUTo :: d822083589) (l_aUTp :: e822083590) (l_aUTq :: f822083591) (l_aUTk :: TyFun g822083592 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591, g822083592)) type Tuple7Sym7 (t_aUSM :: a822083586) (t_aUSN :: b822083587) (t_aUSO :: c822083588) (t_aUSP :: d822083589) (t_aUSQ :: e822083590) (t_aUSR :: f822083591) (t_aUSS :: g822083592) = '(t_aUSM, t_aUSN, t_aUSO, t_aUSP, t_aUSQ, t_aUSR, t_aUSS) data FstSym0 (l_a1Tho :: TyFun (a1627840729, b1627840730) a1627840729) type FstSym1 (t_a1Thn :: (a1627840729, b1627840730)) = Fst t_a1Thn data SndSym0 (l_a1Thg :: TyFun (a1627840727, b1627840728) b1627840728) type SndSym1 (t_a1Thf :: (a1627840727, b1627840728)) = Snd t_a1Thf data CurrySym0 (l_a1Th0 :: TyFun (TyFun (a1627840724, b1627840725) c1627840726 -> Type) (TyFun a1627840724 (TyFun b1627840725 c1627840726 -> Type) -> Type)) data CurrySym1 (l_a1Th3 :: TyFun (a1627840724, b1627840725) c1627840726 -> Type) (l_a1Th2 :: TyFun a1627840724 (TyFun b1627840725 c1627840726 -> Type)) data CurrySym2 (l_a1Th6 :: TyFun (a1627840724, b1627840725) c1627840726 -> Type) (l_a1Th7 :: a1627840724) (l_a1Th5 :: TyFun b1627840725 c1627840726) type CurrySym3 (t_a1TgX :: TyFun (a1627840724, b1627840725) c1627840726 -> Type) (t_a1TgY :: a1627840724) (t_a1TgZ :: b1627840725) = Curry t_a1TgX t_a1TgY t_a1TgZ data UncurrySym0 (l_a1Thx :: TyFun (TyFun a1627840721 (TyFun b1627840722 c1627840723 -> Type) -> Type) (TyFun (a1627840721, b1627840722) c1627840723 -> Type)) data UncurrySym1 (l_a1ThA :: TyFun a1627840721 (TyFun b1627840722 c1627840723 -> Type) -> Type) (l_a1Thz :: TyFun (a1627840721, b1627840722) c1627840723) type UncurrySym2 (t_a1Thv :: TyFun a1627840721 (TyFun b1627840722 c1627840723 -> Type) -> Type) (t_a1Thw :: (a1627840721, b1627840722)) = Uncurry t_a1Thv t_a1Thw data SwapSym0 (l_a1TgS :: TyFun (a1627840719, b1627840720) (b1627840720, a1627840719)) type SwapSym1 (t_a1TgR :: (a1627840719, b1627840720)) = Swap t_a1TgR 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_aUPv :: TyFun a822083586 (TyFun b822083587 (a822083586, b822083587) -> Type)) data Tuple2Sym1 (l_aUPy :: a822083586) (l_aUPx :: TyFun b822083587 (a822083586, b822083587)) type Tuple2Sym2 (t_aUPt :: a822083586) (t_aUPu :: b822083587) = '(t_aUPt, t_aUPu) data Tuple3Sym0 (l_aUPP :: TyFun a822083586 (TyFun b822083587 (TyFun c822083588 (a822083586, b822083587, c822083588) -> Type) -> Type)) data Tuple3Sym1 (l_aUPS :: a822083586) (l_aUPR :: TyFun b822083587 (TyFun c822083588 (a822083586, b822083587, c822083588) -> Type)) data Tuple3Sym2 (l_aUPV :: a822083586) (l_aUPW :: b822083587) (l_aUPU :: TyFun c822083588 (a822083586, b822083587, c822083588)) type Tuple3Sym3 (t_aUPM :: a822083586) (t_aUPN :: b822083587) (t_aUPO :: c822083588) = '(t_aUPM, t_aUPN, t_aUPO) data Tuple4Sym0 (l_aUQj :: TyFun a822083586 (TyFun b822083587 (TyFun c822083588 (TyFun d822083589 (a822083586, b822083587, c822083588, d822083589) -> Type) -> Type) -> Type)) data Tuple4Sym1 (l_aUQm :: a822083586) (l_aUQl :: TyFun b822083587 (TyFun c822083588 (TyFun d822083589 (a822083586, b822083587, c822083588, d822083589) -> Type) -> Type)) data Tuple4Sym2 (l_aUQp :: a822083586) (l_aUQq :: b822083587) (l_aUQo :: TyFun c822083588 (TyFun d822083589 (a822083586, b822083587, c822083588, d822083589) -> Type)) data Tuple4Sym3 (l_aUQt :: a822083586) (l_aUQu :: b822083587) (l_aUQv :: c822083588) (l_aUQs :: TyFun d822083589 (a822083586, b822083587, c822083588, d822083589)) type Tuple4Sym4 (t_aUQf :: a822083586) (t_aUQg :: b822083587) (t_aUQh :: c822083588) (t_aUQi :: d822083589) = '(t_aUQf, t_aUQg, t_aUQh, t_aUQi) data Tuple5Sym0 (l_aUQY :: TyFun a822083586 (TyFun b822083587 (TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (a822083586, b822083587, c822083588, d822083589, e822083590) -> Type) -> Type) -> Type) -> Type)) data Tuple5Sym1 (l_aUR1 :: a822083586) (l_aUR0 :: TyFun b822083587 (TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (a822083586, b822083587, c822083588, d822083589, e822083590) -> Type) -> Type) -> Type)) data Tuple5Sym2 (l_aUR4 :: a822083586) (l_aUR5 :: b822083587) (l_aUR3 :: TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (a822083586, b822083587, c822083588, d822083589, e822083590) -> Type) -> Type)) data Tuple5Sym3 (l_aUR8 :: a822083586) (l_aUR9 :: b822083587) (l_aURa :: c822083588) (l_aUR7 :: TyFun d822083589 (TyFun e822083590 (a822083586, b822083587, c822083588, d822083589, e822083590) -> Type)) data Tuple5Sym4 (l_aURd :: a822083586) (l_aURe :: b822083587) (l_aURf :: c822083588) (l_aURg :: d822083589) (l_aURc :: TyFun e822083590 (a822083586, b822083587, c822083588, d822083589, e822083590)) type Tuple5Sym5 (t_aUQT :: a822083586) (t_aUQU :: b822083587) (t_aUQV :: c822083588) (t_aUQW :: d822083589) (t_aUQX :: e822083590) = '(t_aUQT, t_aUQU, t_aUQV, t_aUQW, t_aUQX) data Tuple6Sym0 (l_aURP :: TyFun a822083586 (TyFun b822083587 (TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (TyFun f822083591 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591) -> Type) -> Type) -> Type) -> Type) -> Type)) data Tuple6Sym1 (l_aURS :: a822083586) (l_aURR :: TyFun b822083587 (TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (TyFun f822083591 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591) -> Type) -> Type) -> Type) -> Type)) data Tuple6Sym2 (l_aURV :: a822083586) (l_aURW :: b822083587) (l_aURU :: TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (TyFun f822083591 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591) -> Type) -> Type) -> Type)) data Tuple6Sym3 (l_aURZ :: a822083586) (l_aUS0 :: b822083587) (l_aUS1 :: c822083588) (l_aURY :: TyFun d822083589 (TyFun e822083590 (TyFun f822083591 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591) -> Type) -> Type)) data Tuple6Sym4 (l_aUS4 :: a822083586) (l_aUS5 :: b822083587) (l_aUS6 :: c822083588) (l_aUS7 :: d822083589) (l_aUS3 :: TyFun e822083590 (TyFun f822083591 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591) -> Type)) data Tuple6Sym5 (l_aUSa :: a822083586) (l_aUSb :: b822083587) (l_aUSc :: c822083588) (l_aUSd :: d822083589) (l_aUSe :: e822083590) (l_aUS9 :: TyFun f822083591 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591)) type Tuple6Sym6 (t_aURJ :: a822083586) (t_aURK :: b822083587) (t_aURL :: c822083588) (t_aURM :: d822083589) (t_aURN :: e822083590) (t_aURO :: f822083591) = '(t_aURJ, t_aURK, t_aURL, t_aURM, t_aURN, t_aURO) data Tuple7Sym0 (l_aUST :: TyFun a822083586 (TyFun b822083587 (TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (TyFun f822083591 (TyFun g822083592 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591, g822083592) -> Type) -> Type) -> Type) -> Type) -> Type) -> Type)) data Tuple7Sym1 (l_aUSW :: a822083586) (l_aUSV :: TyFun b822083587 (TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (TyFun f822083591 (TyFun g822083592 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591, g822083592) -> Type) -> Type) -> Type) -> Type) -> Type)) data Tuple7Sym2 (l_aUSZ :: a822083586) (l_aUT0 :: b822083587) (l_aUSY :: TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (TyFun f822083591 (TyFun g822083592 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591, g822083592) -> Type) -> Type) -> Type) -> Type)) data Tuple7Sym3 (l_aUT3 :: a822083586) (l_aUT4 :: b822083587) (l_aUT5 :: c822083588) (l_aUT2 :: TyFun d822083589 (TyFun e822083590 (TyFun f822083591 (TyFun g822083592 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591, g822083592) -> Type) -> Type) -> Type)) data Tuple7Sym4 (l_aUT8 :: a822083586) (l_aUT9 :: b822083587) (l_aUTa :: c822083588) (l_aUTb :: d822083589) (l_aUT7 :: TyFun e822083590 (TyFun f822083591 (TyFun g822083592 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591, g822083592) -> Type) -> Type)) data Tuple7Sym5 (l_aUTe :: a822083586) (l_aUTf :: b822083587) (l_aUTg :: c822083588) (l_aUTh :: d822083589) (l_aUTi :: e822083590) (l_aUTd :: TyFun f822083591 (TyFun g822083592 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591, g822083592) -> Type)) data Tuple7Sym6 (l_aUTl :: a822083586) (l_aUTm :: b822083587) (l_aUTn :: c822083588) (l_aUTo :: d822083589) (l_aUTp :: e822083590) (l_aUTq :: f822083591) (l_aUTk :: TyFun g822083592 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591, g822083592)) type Tuple7Sym7 (t_aUSM :: a822083586) (t_aUSN :: b822083587) (t_aUSO :: c822083588) (t_aUSP :: d822083589) (t_aUSQ :: e822083590) (t_aUSR :: f822083591) (t_aUSS :: g822083592) = '(t_aUSM, t_aUSN, t_aUSO, t_aUSP, t_aUSQ, t_aUSR, t_aUSS) data FstSym0 (l_a1Tho :: TyFun (a1627840729, b1627840730) a1627840729) type FstSym1 (t_a1Thn :: (a1627840729, b1627840730)) = Fst t_a1Thn data SndSym0 (l_a1Thg :: TyFun (a1627840727, b1627840728) b1627840728) type SndSym1 (t_a1Thf :: (a1627840727, b1627840728)) = Snd t_a1Thf data CurrySym0 (l_a1Th0 :: TyFun (TyFun (a1627840724, b1627840725) c1627840726 -> Type) (TyFun a1627840724 (TyFun b1627840725 c1627840726 -> Type) -> Type)) data CurrySym1 (l_a1Th3 :: TyFun (a1627840724, b1627840725) c1627840726 -> Type) (l_a1Th2 :: TyFun a1627840724 (TyFun b1627840725 c1627840726 -> Type)) data CurrySym2 (l_a1Th6 :: TyFun (a1627840724, b1627840725) c1627840726 -> Type) (l_a1Th7 :: a1627840724) (l_a1Th5 :: TyFun b1627840725 c1627840726) type CurrySym3 (t_a1TgX :: TyFun (a1627840724, b1627840725) c1627840726 -> Type) (t_a1TgY :: a1627840724) (t_a1TgZ :: b1627840725) = Curry t_a1TgX t_a1TgY t_a1TgZ data UncurrySym0 (l_a1Thx :: TyFun (TyFun a1627840721 (TyFun b1627840722 c1627840723 -> Type) -> Type) (TyFun (a1627840721, b1627840722) c1627840723 -> Type)) data UncurrySym1 (l_a1ThA :: TyFun a1627840721 (TyFun b1627840722 c1627840723 -> Type) -> Type) (l_a1Thz :: TyFun (a1627840721, b1627840722) c1627840723) type UncurrySym2 (t_a1Thv :: TyFun a1627840721 (TyFun b1627840722 c1627840723 -> Type) -> Type) (t_a1Thw :: (a1627840721, b1627840722)) = Uncurry t_a1Thv t_a1Thw data SwapSym0 (l_a1TgS :: TyFun (a1627840719, b1627840720) (b1627840720, a1627840719)) type SwapSym1 (t_a1TgR :: (a1627840719, b1627840720)) = Swap t_a1TgR -- | 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_a1HQu :: TyFun (TyFun a1627796657 (TyFun b1627796658 b1627796658 -> Type) -> Type) (TyFun b1627796658 (TyFun [a1627796657] b1627796658 -> Type) -> Type)) data FoldrSym1 (l_a1HQx :: TyFun a1627796657 (TyFun b1627796658 b1627796658 -> Type) -> Type) (l_a1HQw :: TyFun b1627796658 (TyFun [a1627796657] b1627796658 -> Type)) data FoldrSym2 (l_a1HQA :: TyFun a1627796657 (TyFun b1627796658 b1627796658 -> Type) -> Type) (l_a1HQB :: b1627796658) (l_a1HQz :: TyFun [a1627796657] b1627796658) type FoldrSym3 (t_a1HQr :: TyFun a1627796657 (TyFun b1627796658 b1627796658 -> Type) -> Type) (t_a1HQs :: b1627796658) (t_a1HQt :: [a1627796657]) = Foldr t_a1HQr t_a1HQs t_a1HQt data MapSym0 (l_a1HQe :: TyFun (TyFun a1627796655 b1627796656 -> Type) (TyFun [a1627796655] [b1627796656] -> Type)) data MapSym1 (l_a1HQh :: TyFun a1627796655 b1627796656 -> Type) (l_a1HQg :: TyFun [a1627796655] [b1627796656]) type MapSym2 (t_a1HQc :: TyFun a1627796655 b1627796656 -> Type) (t_a1HQd :: [a1627796655]) = Map t_a1HQc t_a1HQd data (:++$) (l_a1HQ1 :: TyFun [a1627796654] (TyFun [a1627796654] [a1627796654] -> Type)) data (:++$$) (l_a1HQ4 :: [a1627796654]) (l_a1HQ3 :: TyFun [a1627796654] [a1627796654]) type (:++$$$) (t_a1HPZ :: [a1627796654]) (t_a1HQ0 :: [a1627796654]) = (:++) t_a1HPZ t_a1HQ0 type OtherwiseSym0 = Otherwise data IdSym0 (l_a1HPV :: TyFun a1627796653 a1627796653) type IdSym1 (t_a1HPU :: a1627796653) = Id t_a1HPU data ConstSym0 (l_a1HPu :: TyFun a1627796651 (TyFun b1627796652 a1627796651 -> Type)) data ConstSym1 (l_a1HPx :: a1627796651) (l_a1HPw :: TyFun b1627796652 a1627796651) type ConstSym2 (t_a1HPs :: a1627796651) (t_a1HPt :: b1627796652) = Const t_a1HPs t_a1HPt data (:.$) (l_a1HOP :: TyFun (TyFun b1627796648 c1627796649 -> Type) (TyFun (TyFun a1627796650 b1627796648 -> Type) (TyFun a1627796650 c1627796649 -> Type) -> Type)) data (:.$$) (l_a1HOS :: TyFun b1627796648 c1627796649 -> Type) (l_a1HOR :: TyFun (TyFun a1627796650 b1627796648 -> Type) (TyFun a1627796650 c1627796649 -> Type)) data (:.$$$) (l_a1HOV :: TyFun b1627796648 c1627796649 -> Type) (l_a1HOW :: TyFun a1627796650 b1627796648 -> Type) (l_a1HOU :: TyFun a1627796650 c1627796649) type (:.$$$$) (t_a1HOM :: TyFun b1627796648 c1627796649 -> Type) (t_a1HON :: TyFun a1627796650 b1627796648 -> Type) (t_a1HOO :: a1627796650) = (:.) t_a1HOM t_a1HON t_a1HOO 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_a1HOx :: TyFun (TyFun a1627796645 (TyFun b1627796646 c1627796647 -> Type) -> Type) (TyFun b1627796646 (TyFun a1627796645 c1627796647 -> Type) -> Type)) data FlipSym1 (l_a1HOA :: TyFun a1627796645 (TyFun b1627796646 c1627796647 -> Type) -> Type) (l_a1HOz :: TyFun b1627796646 (TyFun a1627796645 c1627796647 -> Type)) data FlipSym2 (l_a1HOD :: TyFun a1627796645 (TyFun b1627796646 c1627796647 -> Type) -> Type) (l_a1HOE :: b1627796646) (l_a1HOC :: TyFun a1627796645 c1627796647) type FlipSym3 (t_a1HOu :: TyFun a1627796645 (TyFun b1627796646 c1627796647 -> Type) -> Type) (t_a1HOv :: b1627796646) (t_a1HOw :: a1627796645) = Flip t_a1HOu t_a1HOv t_a1HOw data UntilSym0 (l_a1Uva :: TyFun (TyFun a1627845465 Bool -> Type) (TyFun (TyFun a1627845465 a1627845465 -> Type) (TyFun a1627845465 a1627845465 -> Type) -> Type)) data UntilSym1 (l_a1Uvd :: TyFun a1627845465 Bool -> Type) (l_a1Uvc :: TyFun (TyFun a1627845465 a1627845465 -> Type) (TyFun a1627845465 a1627845465 -> Type)) data UntilSym2 (l_a1Uvg :: TyFun a1627845465 Bool -> Type) (l_a1Uvh :: TyFun a1627845465 a1627845465 -> Type) (l_a1Uvf :: TyFun a1627845465 a1627845465) type UntilSym3 (t_a1Uv7 :: TyFun a1627845465 Bool -> Type) (t_a1Uv8 :: TyFun a1627845465 a1627845465 -> Type) (t_a1Uv9 :: a1627845465) = Until t_a1Uv7 t_a1Uv8 t_a1Uv9 data AsTypeOfSym0 (l_a1HPL :: TyFun a1627796644 (TyFun a1627796644 a1627796644 -> Type)) data AsTypeOfSym1 (l_a1HPO :: a1627796644) (l_a1HPN :: TyFun a1627796644 a1627796644) type AsTypeOfSym2 (t_a1HPJ :: a1627796644) (t_a1HPK :: a1627796644) = AsTypeOf t_a1HPJ t_a1HPK data SeqSym0 (l_a1HOj :: TyFun a1627796642 (TyFun b1627796643 b1627796643 -> Type)) data SeqSym1 (l_a1HOm :: a1627796642) (l_a1HOl :: TyFun b1627796643 b1627796643) type SeqSym2 (t_a1HOh :: a1627796642) (t_a1HOi :: b1627796643) = Seq t_a1HOh t_a1HOi instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.Base.Let1627845493GoSym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.Base.Let1627845493GoSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.Base.Let1627845493GoSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.Base.Let1627845493GoSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.Base.UntilSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.Base.UntilSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.Base.UntilSym0 -- | Defines functions and datatypes relating to the singleton for -- Maybe, including a singletons version of all the definitions in -- Data.Maybe. -- -- Because many of these definitions are produced by Template Haskell, it -- is not possible to create proper Haddock documentation. Please look up -- the corresponding operation in Data.Maybe. Also, please -- excuse the apparent repeated variable names. This is due to an -- interaction between Template Haskell and Haddock. module Data.Singletons.Prelude.Maybe -- | The singleton kind-indexed data family. type SMaybe = (Sing :: Maybe a_12 -> Type) maybe_ :: forall b_a1V6b a_a1V6c. b_a1V6b -> (a_a1V6c -> b_a1V6b) -> Maybe a_a1V6c -> b_a1V6b sMaybe_ :: forall (t_a1V6F :: b_a1V6b) (t_a1V6G :: TyFun a_a1V6c b_a1V6b -> Type) (t_a1V6H :: Maybe a_a1V6c). Sing t_a1V6F -> Sing t_a1V6G -> Sing t_a1V6H -> Sing (Apply (Apply (Apply Maybe_Sym0 t_a1V6F) t_a1V6G) t_a1V6H :: b_a1V6b) sIsJust :: forall (t_a1VsJ :: Maybe a_a1VqA). Sing t_a1VsJ -> Sing (Apply IsJustSym0 t_a1VsJ :: Bool) sIsNothing :: forall (t_a1VsI :: Maybe a_a1Vqz). Sing t_a1VsI -> Sing (Apply IsNothingSym0 t_a1VsI :: Bool) sFromJust :: forall (t_a1VsH :: Maybe a_a1Vqy). Sing t_a1VsH -> Sing (Apply FromJustSym0 t_a1VsH :: a_a1Vqy) sFromMaybe :: forall (t_a1VsF :: a_a1Vqx) (t_a1VsG :: Maybe a_a1Vqx). Sing t_a1VsF -> Sing t_a1VsG -> Sing (Apply (Apply FromMaybeSym0 t_a1VsF) t_a1VsG :: a_a1Vqx) sListToMaybe :: forall (t_a1VsD :: [a_a1Vqv]). Sing t_a1VsD -> Sing (Apply ListToMaybeSym0 t_a1VsD :: Maybe a_a1Vqv) sMaybeToList :: forall (t_a1VsE :: Maybe a_a1Vqw). Sing t_a1VsE -> Sing (Apply MaybeToListSym0 t_a1VsE :: [a_a1Vqw]) sCatMaybes :: forall (t_a1VsC :: [Maybe a_a1Vqu]). Sing t_a1VsC -> Sing (Apply CatMaybesSym0 t_a1VsC :: [a_a1Vqu]) sMapMaybe :: forall (t_a1VsA :: TyFun a_a1Vqs (Maybe b_a1Vqt) -> Type) (t_a1VsB :: [a_a1Vqs]). Sing t_a1VsA -> Sing t_a1VsB -> Sing (Apply (Apply MapMaybeSym0 t_a1VsA) t_a1VsB :: [b_a1Vqt]) type NothingSym0 = Nothing data JustSym0 (l_aUOv :: TyFun a822083586 (Maybe a822083586)) type JustSym1 (t_aUOu :: a822083586) = Just t_aUOu data Maybe_Sym0 (l_a1V6k :: TyFun b1627847771 (TyFun (TyFun a1627847772 b1627847771 -> Type) (TyFun (Maybe a1627847772) b1627847771 -> Type) -> Type)) data Maybe_Sym1 (l_a1V6n :: b1627847771) (l_a1V6m :: TyFun (TyFun a1627847772 b1627847771 -> Type) (TyFun (Maybe a1627847772) b1627847771 -> Type)) data Maybe_Sym2 (l_a1V6q :: b1627847771) (l_a1V6r :: TyFun a1627847772 b1627847771 -> Type) (l_a1V6p :: TyFun (Maybe a1627847772) b1627847771) type Maybe_Sym3 (t_a1V6h :: b1627847771) (t_a1V6i :: TyFun a1627847772 b1627847771 -> Type) (t_a1V6j :: Maybe a1627847772) = Maybe_ t_a1V6h t_a1V6i t_a1V6j data IsJustSym0 (l_a1Vsu :: TyFun (Maybe a1627849036) Bool) type IsJustSym1 (t_a1Vst :: Maybe a1627849036) = IsJust t_a1Vst data IsNothingSym0 (l_a1Vsn :: TyFun (Maybe a1627849035) Bool) type IsNothingSym1 (t_a1Vsm :: Maybe a1627849035) = IsNothing t_a1Vsm data FromJustSym0 (l_a1Vsi :: TyFun (Maybe a1627849034) a1627849034) type FromJustSym1 (t_a1Vsh :: Maybe a1627849034) = FromJust t_a1Vsh data FromMaybeSym0 (l_a1Vs4 :: TyFun a1627849033 (TyFun (Maybe a1627849033) a1627849033 -> Type)) data FromMaybeSym1 (l_a1Vs7 :: a1627849033) (l_a1Vs6 :: TyFun (Maybe a1627849033) a1627849033) type FromMaybeSym2 (t_a1Vs2 :: a1627849033) (t_a1Vs3 :: Maybe a1627849033) = FromMaybe t_a1Vs2 t_a1Vs3 data ListToMaybeSym0 (l_a1VrQ :: TyFun [a1627849031] (Maybe a1627849031)) type ListToMaybeSym1 (t_a1VrP :: [a1627849031]) = ListToMaybe t_a1VrP data MaybeToListSym0 (l_a1VrY :: TyFun (Maybe a1627849032) [a1627849032]) type MaybeToListSym1 (t_a1VrX :: Maybe a1627849032) = MaybeToList t_a1VrX data CatMaybesSym0 (l_a1VrJ :: TyFun [Maybe a1627849030] [a1627849030]) type CatMaybesSym1 (t_a1VrI :: [Maybe a1627849030]) = CatMaybes t_a1VrI data MapMaybeSym0 (l_a1Vr1 :: TyFun (TyFun a1627849028 (Maybe b1627849029) -> Type) (TyFun [a1627849028] [b1627849029] -> Type)) data MapMaybeSym1 (l_a1Vr4 :: TyFun a1627849028 (Maybe b1627849029) -> Type) (l_a1Vr3 :: TyFun [a1627849028] [b1627849029]) type MapMaybeSym2 (t_a1VqZ :: TyFun a1627849028 (Maybe b1627849029) -> Type) (t_a1Vr0 :: [a1627849028]) = MapMaybe t_a1VqZ t_a1Vr0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Maybe.Let1627849076RsSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Maybe.Let1627849076RsSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Maybe.Let1627849076RsSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Maybe.Let1627849089Scrutinee_1627849059Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Maybe.Let1627849089Scrutinee_1627849059Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Maybe.Let1627849089Scrutinee_1627849059Sym0 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_ :: forall b_a1V6b a_a1V6c. b_a1V6b -> (a_a1V6c -> b_a1V6b) -> Maybe a_a1V6c -> b_a1V6b type NothingSym0 = Nothing data JustSym0 (l_aUOv :: TyFun a822083586 (Maybe a822083586)) type JustSym1 (t_aUOu :: a822083586) = Just t_aUOu data Maybe_Sym0 (l_a1V6k :: TyFun b1627847771 (TyFun (TyFun a1627847772 b1627847771 -> Type) (TyFun (Maybe a1627847772) b1627847771 -> Type) -> Type)) data Maybe_Sym1 (l_a1V6n :: b1627847771) (l_a1V6m :: TyFun (TyFun a1627847772 b1627847771 -> Type) (TyFun (Maybe a1627847772) b1627847771 -> Type)) data Maybe_Sym2 (l_a1V6q :: b1627847771) (l_a1V6r :: TyFun a1627847772 b1627847771 -> Type) (l_a1V6p :: TyFun (Maybe a1627847772) b1627847771) type Maybe_Sym3 (t_a1V6h :: b1627847771) (t_a1V6i :: TyFun a1627847772 b1627847771 -> Type) (t_a1V6j :: Maybe a1627847772) = Maybe_ t_a1V6h t_a1V6i t_a1V6j data IsJustSym0 (l_a1Vsu :: TyFun (Maybe a1627849036) Bool) type IsJustSym1 (t_a1Vst :: Maybe a1627849036) = IsJust t_a1Vst data IsNothingSym0 (l_a1Vsn :: TyFun (Maybe a1627849035) Bool) type IsNothingSym1 (t_a1Vsm :: Maybe a1627849035) = IsNothing t_a1Vsm data FromJustSym0 (l_a1Vsi :: TyFun (Maybe a1627849034) a1627849034) type FromJustSym1 (t_a1Vsh :: Maybe a1627849034) = FromJust t_a1Vsh data FromMaybeSym0 (l_a1Vs4 :: TyFun a1627849033 (TyFun (Maybe a1627849033) a1627849033 -> Type)) data FromMaybeSym1 (l_a1Vs7 :: a1627849033) (l_a1Vs6 :: TyFun (Maybe a1627849033) a1627849033) type FromMaybeSym2 (t_a1Vs2 :: a1627849033) (t_a1Vs3 :: Maybe a1627849033) = FromMaybe t_a1Vs2 t_a1Vs3 data MaybeToListSym0 (l_a1VrY :: TyFun (Maybe a1627849032) [a1627849032]) type MaybeToListSym1 (t_a1VrX :: Maybe a1627849032) = MaybeToList t_a1VrX data ListToMaybeSym0 (l_a1VrQ :: TyFun [a1627849031] (Maybe a1627849031)) type ListToMaybeSym1 (t_a1VrP :: [a1627849031]) = ListToMaybe t_a1VrP data CatMaybesSym0 (l_a1VrJ :: TyFun [Maybe a1627849030] [a1627849030]) type CatMaybesSym1 (t_a1VrI :: [Maybe a1627849030]) = CatMaybes t_a1VrI data MapMaybeSym0 (l_a1Vr1 :: TyFun (TyFun a1627849028 (Maybe b1627849029) -> Type) (TyFun [a1627849028] [b1627849029] -> Type)) data MapMaybeSym1 (l_a1Vr4 :: TyFun a1627849028 (Maybe b1627849029) -> Type) (l_a1Vr3 :: TyFun [a1627849028] [b1627849029]) type MapMaybeSym2 (t_a1VqZ :: TyFun a1627849028 (Maybe b1627849029) -> Type) (t_a1Vr0 :: [a1627849028]) = MapMaybe t_a1VqZ t_a1Vr0 -- | Defines the promoted and singleton version of Bounded, PBounded -- and SBounded module Data.Singletons.Prelude.Enum class kproxy_a1Ykl ~ Proxy => PBounded (kproxy_a1Ykl :: Proxy a_a1Ykk) where type MinBound :: a_a1Ykk type MaxBound :: a_a1Ykk where { type family MinBound :: a_a1Ykk; type family MaxBound :: a_a1Ykk; } class SBounded a_a1Ykk sMinBound :: SBounded a_a1Ykk => Sing (MinBoundSym0 :: a_a1Ykk) sMaxBound :: SBounded a_a1Ykk => Sing (MaxBoundSym0 :: a_a1Ykk) class kproxy_a1ZvV ~ Proxy => PEnum (kproxy_a1ZvV :: Proxy a_a1Znn) where type Succ (arg_a1ZvW :: a_a1Znn) :: a_a1Znn type Pred (arg_a1Zw0 :: a_a1Znn) :: a_a1Znn type ToEnum (arg_a1Zw4 :: Nat) :: a_a1Znn type FromEnum (arg_a1Zw8 :: a_a1Znn) :: Nat type EnumFromTo (arg_a1Zwc :: a_a1Znn) (arg_a1Zwd :: a_a1Znn) :: [a_a1Znn] type EnumFromThenTo (arg_a1Zwl :: a_a1Znn) (arg_a1Zwm :: a_a1Znn) (arg_a1Zwn :: a_a1Znn) :: [a_a1Znn] type Succ a_a1ZwH = Apply Succ_1627864792Sym0 a_a1ZwH type Pred a_a1ZwU = Apply Pred_1627864805Sym0 a_a1ZwU type EnumFromTo a_a1Zxb a_a1Zxc = Apply (Apply EnumFromTo_1627864823Sym0 a_a1Zxb) a_a1Zxc type EnumFromThenTo a_a1ZxE a_a1ZxF a_a1ZxG = Apply (Apply (Apply EnumFromThenTo_1627864853Sym0 a_a1ZxE) a_a1ZxF) a_a1ZxG where { type family Succ (arg_a1ZvW :: a_a1Znn) :: a_a1Znn; type family Pred (arg_a1Zw0 :: a_a1Znn) :: a_a1Znn; type family ToEnum (arg_a1Zw4 :: Nat) :: a_a1Znn; type family FromEnum (arg_a1Zw8 :: a_a1Znn) :: Nat; type family EnumFromTo (arg_a1Zwc :: a_a1Znn) (arg_a1Zwd :: a_a1Znn) :: [a_a1Znn]; type family EnumFromThenTo (arg_a1Zwl :: a_a1Znn) (arg_a1Zwm :: a_a1Znn) (arg_a1Zwn :: a_a1Znn) :: [a_a1Znn]; type Succ a_a1ZwH = Apply Succ_1627864792Sym0 a_a1ZwH; type Pred a_a1ZwU = Apply Pred_1627864805Sym0 a_a1ZwU; type EnumFromTo a_a1Zxb a_a1Zxc = Apply (Apply EnumFromTo_1627864823Sym0 a_a1Zxb) a_a1Zxc; type EnumFromThenTo a_a1ZxE a_a1ZxF a_a1ZxG = Apply (Apply (Apply EnumFromThenTo_1627864853Sym0 a_a1ZxE) a_a1ZxF) a_a1ZxG; } class SEnum a_a1Znn where sSucc sA_1627864784 = let lambda_a1ZB1 :: forall a_1627864784_a1ZwG. t_a1ZAS ~ a_1627864784_a1ZwG => Sing a_1627864784_a1ZwG -> Sing (Apply SuccSym0 t_a1ZAS :: a_a1Znn) lambda_a1ZB1 a_1627864784_a1ZB2 = 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_1627864784_a1ZB2 in lambda_a1ZB1 sA_1627864784 sPred sA_1627864797 = let lambda_a1ZB3 :: forall a_1627864797_a1ZwT. t_a1ZAT ~ a_1627864797_a1ZwT => Sing a_1627864797_a1ZwT -> Sing (Apply PredSym0 t_a1ZAT :: a_a1Znn) lambda_a1ZB3 a_1627864797_a1ZB4 = 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_1627864797_a1ZB4 in lambda_a1ZB3 sA_1627864797 sEnumFromTo sX sY = let lambda_a1ZB6 :: forall x_a1Zx9 y_a1Zxa. (t_a1ZAW ~ x_a1Zx9, t_a1ZAX ~ y_a1Zxa) => Sing x_a1Zx9 -> Sing y_a1Zxa -> Sing (Apply (Apply EnumFromToSym0 t_a1ZAW) t_a1ZAX :: [a_a1Znn]) lambda_a1ZB6 x_a1ZB7 y_a1ZB8 = 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_a1ZB7)) (applySing (singFun1 (Proxy :: Proxy FromEnumSym0) sFromEnum) y_a1ZB8)) in lambda_a1ZB6 sX sY sEnumFromThenTo sX1 sX2 sY = let lambda_a1ZBa :: forall x1_a1ZxB x2_a1ZxC y_a1ZxD. (t_a1ZAY ~ x1_a1ZxB, t_a1ZAZ ~ x2_a1ZxC, t_a1ZB0 ~ y_a1ZxD) => Sing x1_a1ZxB -> Sing x2_a1ZxC -> Sing y_a1ZxD -> Sing (Apply (Apply (Apply EnumFromThenToSym0 t_a1ZAY) t_a1ZAZ) t_a1ZB0 :: [a_a1Znn]) lambda_a1ZBa x1_a1ZBb x2_a1ZBc y_a1ZBd = 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_a1ZBb)) (applySing (singFun1 (Proxy :: Proxy FromEnumSym0) sFromEnum) x2_a1ZBc)) (applySing (singFun1 (Proxy :: Proxy FromEnumSym0) sFromEnum) y_a1ZBd)) in lambda_a1ZBa sX1 sX2 sY sSucc :: forall (t_a1ZAS :: a_a1Znn). SEnum a_a1Znn => Sing t_a1ZAS -> Sing (Apply SuccSym0 t_a1ZAS :: a_a1Znn) sPred :: forall (t_a1ZAT :: a_a1Znn). SEnum a_a1Znn => Sing t_a1ZAT -> Sing (Apply PredSym0 t_a1ZAT :: a_a1Znn) sToEnum :: forall (t_a1ZAU :: Nat). SEnum a_a1Znn => Sing t_a1ZAU -> Sing (Apply ToEnumSym0 t_a1ZAU :: a_a1Znn) sFromEnum :: forall (t_a1ZAV :: a_a1Znn). SEnum a_a1Znn => Sing t_a1ZAV -> Sing (Apply FromEnumSym0 t_a1ZAV :: Nat) sEnumFromTo :: forall (t_a1ZAW :: a_a1Znn) (t_a1ZAX :: a_a1Znn). SEnum a_a1Znn => Sing t_a1ZAW -> Sing t_a1ZAX -> Sing (Apply (Apply EnumFromToSym0 t_a1ZAW) t_a1ZAX :: [a_a1Znn]) sEnumFromThenTo :: forall (t_a1ZAY :: a_a1Znn) (t_a1ZAZ :: a_a1Znn) (t_a1ZB0 :: a_a1Znn). SEnum a_a1Znn => Sing t_a1ZAY -> Sing t_a1ZAZ -> Sing t_a1ZB0 -> Sing (Apply (Apply (Apply EnumFromThenToSym0 t_a1ZAY) t_a1ZAZ) t_a1ZB0 :: [a_a1Znn]) sSucc :: forall (t_a1ZAS :: a_a1Znn). (SEnum a_a1Znn, Apply SuccSym0 t_a1ZAS ~ Apply Succ_1627864792Sym0 t_a1ZAS) => Sing t_a1ZAS -> Sing (Apply SuccSym0 t_a1ZAS :: a_a1Znn) sPred :: forall (t_a1ZAT :: a_a1Znn). (SEnum a_a1Znn, Apply PredSym0 t_a1ZAT ~ Apply Pred_1627864805Sym0 t_a1ZAT) => Sing t_a1ZAT -> Sing (Apply PredSym0 t_a1ZAT :: a_a1Znn) sEnumFromTo :: forall (t_a1ZAW :: a_a1Znn) (t_a1ZAX :: a_a1Znn). (SEnum a_a1Znn, Apply (Apply EnumFromToSym0 t_a1ZAW) t_a1ZAX ~ Apply (Apply EnumFromTo_1627864823Sym0 t_a1ZAW) t_a1ZAX) => Sing t_a1ZAW -> Sing t_a1ZAX -> Sing (Apply (Apply EnumFromToSym0 t_a1ZAW) t_a1ZAX :: [a_a1Znn]) sEnumFromThenTo :: forall (t_a1ZAY :: a_a1Znn) (t_a1ZAZ :: a_a1Znn) (t_a1ZB0 :: a_a1Znn). (SEnum a_a1Znn, Apply (Apply (Apply EnumFromThenToSym0 t_a1ZAY) t_a1ZAZ) t_a1ZB0 ~ Apply (Apply (Apply EnumFromThenTo_1627864853Sym0 t_a1ZAY) t_a1ZAZ) t_a1ZB0) => Sing t_a1ZAY -> Sing t_a1ZAZ -> Sing t_a1ZB0 -> Sing (Apply (Apply (Apply EnumFromThenToSym0 t_a1ZAY) t_a1ZAZ) t_a1ZB0 :: [a_a1Znn]) type MinBoundSym0 = MinBound type MaxBoundSym0 = MaxBound data SuccSym0 (l_a1ZvY :: TyFun a1627864213 a1627864213) type SuccSym1 (t_a1ZvX :: a1627864213) = Succ t_a1ZvX data PredSym0 (l_a1Zw2 :: TyFun a1627864213 a1627864213) type PredSym1 (t_a1Zw1 :: a1627864213) = Pred t_a1Zw1 data ToEnumSym0 (l_a1Zw6 :: TyFun Nat a1627864213) type ToEnumSym1 (t_a1Zw5 :: Nat) = ToEnum t_a1Zw5 data FromEnumSym0 (l_a1Zwa :: TyFun a1627864213 Nat) type FromEnumSym1 (t_a1Zw9 :: a1627864213) = FromEnum t_a1Zw9 data EnumFromToSym0 (l_a1Zwg :: TyFun a1627864213 (TyFun a1627864213 [a1627864213] -> Type)) data EnumFromToSym1 (l_a1Zwj :: a1627864213) (l_a1Zwi :: TyFun a1627864213 [a1627864213]) type EnumFromToSym2 (t_a1Zwe :: a1627864213) (t_a1Zwf :: a1627864213) = EnumFromTo t_a1Zwe t_a1Zwf data EnumFromThenToSym0 (l_a1Zwr :: TyFun a1627864213 (TyFun a1627864213 (TyFun a1627864213 [a1627864213] -> Type) -> Type)) data EnumFromThenToSym1 (l_a1Zwu :: a1627864213) (l_a1Zwt :: TyFun a1627864213 (TyFun a1627864213 [a1627864213] -> Type)) data EnumFromThenToSym2 (l_a1Zwx :: a1627864213) (l_a1Zwy :: a1627864213) (l_a1Zww :: TyFun a1627864213 [a1627864213]) type EnumFromThenToSym3 (t_a1Zwo :: a1627864213) (t_a1Zwp :: a1627864213) (t_a1Zwq :: a1627864213) = EnumFromThenTo t_a1Zwo t_a1Zwp t_a1Zwq instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.ToEnum_1627884818Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.FromEnum_1627884828Sym0 instance Data.Singletons.Prelude.Enum.PEnum 'Data.Proxy.Proxy instance Data.Singletons.Prelude.Enum.SEnum GHC.Types.Bool instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.ToEnum_1627884857Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.FromEnum_1627884867Sym0 instance Data.Singletons.Prelude.Enum.PEnum 'Data.Proxy.Proxy instance Data.Singletons.Prelude.Enum.SEnum GHC.Types.Ordering instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.ToEnum_1627884893Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.FromEnum_1627884903Sym0 instance Data.Singletons.Prelude.Enum.PEnum 'Data.Proxy.Proxy instance Data.Singletons.Prelude.Enum.SEnum () instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864301Scrutinee_1627864272Sym5 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864301Scrutinee_1627864272Sym4 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864301Scrutinee_1627864272Sym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864301Scrutinee_1627864272Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864301Scrutinee_1627864272Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864301Scrutinee_1627864272Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864338DeltaSym5 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864338DeltaSym4 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864338DeltaSym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864338DeltaSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864338DeltaSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864338DeltaSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864338Y'Sym5 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864338Y'Sym4 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864338Y'Sym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864338Y'Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864338Y'Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864338Y'Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864338Go_dnSym6 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864338Go_dnSym5 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864338Go_dnSym4 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864338Go_dnSym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864338Go_dnSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864338Go_dnSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864338Go_dnSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864483Scrutinee_1627864262Sym5 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864483Scrutinee_1627864262Sym4 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864483Scrutinee_1627864262Sym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864483Scrutinee_1627864262Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864483Scrutinee_1627864262Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864483Scrutinee_1627864262Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864520DeltaSym5 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864520DeltaSym4 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864520DeltaSym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864520DeltaSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864520DeltaSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864520DeltaSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864520Y'Sym5 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864520Y'Sym4 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864520Y'Sym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864520Y'Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864520Y'Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864520Y'Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864520Go_upSym6 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864520Go_upSym5 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864520Go_upSym4 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864520Go_upSym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864520Go_upSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864520Go_upSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864520Go_upSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864710Scrutinee_1627864248Sym4 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864710Scrutinee_1627864248Sym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864710Scrutinee_1627864248Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864710Scrutinee_1627864248Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864710Scrutinee_1627864248Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864682GoSym4 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864682GoSym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864682GoSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864682GoSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Let1627864682GoSym0 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_1627864792Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Pred_1627864805Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.EnumFromTo_1627864823Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.EnumFromTo_1627864823Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.EnumFromThenTo_1627864853Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.EnumFromThenTo_1627864853Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.EnumFromThenTo_1627864853Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Succ_1627864873Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.Pred_1627864884Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.ToEnum_1627864895Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.FromEnum_1627864906Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.EnumFromTo_1627864928Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.EnumFromTo_1627864928Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.EnumFromThenTo_1627864964Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.EnumFromThenTo_1627864964Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.Enum.EnumFromThenTo_1627864964Sym0 instance Data.Singletons.Prelude.Enum.PEnum 'Data.Proxy.Proxy instance Data.Singletons.Prelude.Enum.SEnum GHC.Types.Nat instance Data.Singletons.Prelude.Enum.PBounded 'Data.Proxy.Proxy instance (Data.Singletons.Prelude.Enum.SBounded a0, Data.Singletons.Prelude.Enum.SBounded b0) => Data.Singletons.Prelude.Enum.SBounded (a0, b0) instance Data.Singletons.Prelude.Enum.PBounded 'Data.Proxy.Proxy instance (Data.Singletons.Prelude.Enum.SBounded a0, Data.Singletons.Prelude.Enum.SBounded b0, Data.Singletons.Prelude.Enum.SBounded c0) => Data.Singletons.Prelude.Enum.SBounded (a0, b0, c0) instance Data.Singletons.Prelude.Enum.PBounded 'Data.Proxy.Proxy instance (Data.Singletons.Prelude.Enum.SBounded a0, Data.Singletons.Prelude.Enum.SBounded b0, Data.Singletons.Prelude.Enum.SBounded c0, Data.Singletons.Prelude.Enum.SBounded d0) => Data.Singletons.Prelude.Enum.SBounded (a0, b0, c0, d0) instance Data.Singletons.Prelude.Enum.PBounded 'Data.Proxy.Proxy instance (Data.Singletons.Prelude.Enum.SBounded a0, Data.Singletons.Prelude.Enum.SBounded b0, Data.Singletons.Prelude.Enum.SBounded c0, Data.Singletons.Prelude.Enum.SBounded d0, Data.Singletons.Prelude.Enum.SBounded e0) => Data.Singletons.Prelude.Enum.SBounded (a0, b0, c0, d0, e0) instance Data.Singletons.Prelude.Enum.PBounded 'Data.Proxy.Proxy instance (Data.Singletons.Prelude.Enum.SBounded a0, Data.Singletons.Prelude.Enum.SBounded b0, Data.Singletons.Prelude.Enum.SBounded c0, Data.Singletons.Prelude.Enum.SBounded d0, Data.Singletons.Prelude.Enum.SBounded e0, Data.Singletons.Prelude.Enum.SBounded f0) => Data.Singletons.Prelude.Enum.SBounded (a0, b0, c0, d0, e0, f0) instance Data.Singletons.Prelude.Enum.PBounded 'Data.Proxy.Proxy instance (Data.Singletons.Prelude.Enum.SBounded a0, Data.Singletons.Prelude.Enum.SBounded b0, Data.Singletons.Prelude.Enum.SBounded c0, Data.Singletons.Prelude.Enum.SBounded d0, Data.Singletons.Prelude.Enum.SBounded e0, Data.Singletons.Prelude.Enum.SBounded f0, Data.Singletons.Prelude.Enum.SBounded g0) => Data.Singletons.Prelude.Enum.SBounded (a0, b0, c0, d0, e0, f0, g0) instance Data.Singletons.Prelude.Enum.PBounded 'Data.Proxy.Proxy instance Data.Singletons.Prelude.Enum.SBounded GHC.Types.Bool instance Data.Singletons.Prelude.Enum.PBounded 'Data.Proxy.Proxy instance Data.Singletons.Prelude.Enum.SBounded GHC.Types.Ordering instance Data.Singletons.Prelude.Enum.PBounded 'Data.Proxy.Proxy instance Data.Singletons.Prelude.Enum.SBounded () -- | Exports promoted versions of Enum and Bounded module Data.Promotion.Prelude.Enum class kproxy_a1Ykl ~ Proxy => PBounded (kproxy_a1Ykl :: Proxy a_a1Ykk) where type MinBound :: a_a1Ykk type MaxBound :: a_a1Ykk where { type family MinBound :: a_a1Ykk; type family MaxBound :: a_a1Ykk; } class kproxy_a1ZvV ~ Proxy => PEnum (kproxy_a1ZvV :: Proxy a_a1Znn) where type Succ (arg_a1ZvW :: a_a1Znn) :: a_a1Znn type Pred (arg_a1Zw0 :: a_a1Znn) :: a_a1Znn type ToEnum (arg_a1Zw4 :: Nat) :: a_a1Znn type FromEnum (arg_a1Zw8 :: a_a1Znn) :: Nat type EnumFromTo (arg_a1Zwc :: a_a1Znn) (arg_a1Zwd :: a_a1Znn) :: [a_a1Znn] type EnumFromThenTo (arg_a1Zwl :: a_a1Znn) (arg_a1Zwm :: a_a1Znn) (arg_a1Zwn :: a_a1Znn) :: [a_a1Znn] type Succ a_a1ZwH = Apply Succ_1627864792Sym0 a_a1ZwH type Pred a_a1ZwU = Apply Pred_1627864805Sym0 a_a1ZwU type EnumFromTo a_a1Zxb a_a1Zxc = Apply (Apply EnumFromTo_1627864823Sym0 a_a1Zxb) a_a1Zxc type EnumFromThenTo a_a1ZxE a_a1ZxF a_a1ZxG = Apply (Apply (Apply EnumFromThenTo_1627864853Sym0 a_a1ZxE) a_a1ZxF) a_a1ZxG where { type family Succ (arg_a1ZvW :: a_a1Znn) :: a_a1Znn; type family Pred (arg_a1Zw0 :: a_a1Znn) :: a_a1Znn; type family ToEnum (arg_a1Zw4 :: Nat) :: a_a1Znn; type family FromEnum (arg_a1Zw8 :: a_a1Znn) :: Nat; type family EnumFromTo (arg_a1Zwc :: a_a1Znn) (arg_a1Zwd :: a_a1Znn) :: [a_a1Znn]; type family EnumFromThenTo (arg_a1Zwl :: a_a1Znn) (arg_a1Zwm :: a_a1Znn) (arg_a1Zwn :: a_a1Znn) :: [a_a1Znn]; type Succ a_a1ZwH = Apply Succ_1627864792Sym0 a_a1ZwH; type Pred a_a1ZwU = Apply Pred_1627864805Sym0 a_a1ZwU; type EnumFromTo a_a1Zxb a_a1Zxc = Apply (Apply EnumFromTo_1627864823Sym0 a_a1Zxb) a_a1Zxc; type EnumFromThenTo a_a1ZxE a_a1ZxF a_a1ZxG = Apply (Apply (Apply EnumFromThenTo_1627864853Sym0 a_a1ZxE) a_a1ZxF) a_a1ZxG; } type MinBoundSym0 = MinBound type MaxBoundSym0 = MaxBound data SuccSym0 (l_a1ZvY :: TyFun a1627864213 a1627864213) type SuccSym1 (t_a1ZvX :: a1627864213) = Succ t_a1ZvX data PredSym0 (l_a1Zw2 :: TyFun a1627864213 a1627864213) type PredSym1 (t_a1Zw1 :: a1627864213) = Pred t_a1Zw1 data ToEnumSym0 (l_a1Zw6 :: TyFun Nat a1627864213) type ToEnumSym1 (t_a1Zw5 :: Nat) = ToEnum t_a1Zw5 data FromEnumSym0 (l_a1Zwa :: TyFun a1627864213 Nat) type FromEnumSym1 (t_a1Zw9 :: a1627864213) = FromEnum t_a1Zw9 data EnumFromToSym0 (l_a1Zwg :: TyFun a1627864213 (TyFun a1627864213 [a1627864213] -> Type)) data EnumFromToSym1 (l_a1Zwj :: a1627864213) (l_a1Zwi :: TyFun a1627864213 [a1627864213]) type EnumFromToSym2 (t_a1Zwe :: a1627864213) (t_a1Zwf :: a1627864213) = EnumFromTo t_a1Zwe t_a1Zwf data EnumFromThenToSym0 (l_a1Zwr :: TyFun a1627864213 (TyFun a1627864213 (TyFun a1627864213 [a1627864213] -> Type) -> Type)) data EnumFromThenToSym1 (l_a1Zwu :: a1627864213) (l_a1Zwt :: TyFun a1627864213 (TyFun a1627864213 [a1627864213] -> Type)) data EnumFromThenToSym2 (l_a1Zwx :: a1627864213) (l_a1Zwy :: a1627864213) (l_a1Zww :: TyFun a1627864213 [a1627864213]) type EnumFromThenToSym3 (t_a1Zwo :: a1627864213) (t_a1Zwp :: a1627864213) (t_a1Zwq :: a1627864213) = EnumFromThenTo t_a1Zwo t_a1Zwp t_a1Zwq -- | 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] -> Type) (%:++) :: forall (t_a1HRk :: [a_a1HNI]) (t_a1HRl :: [a_a1HNI]). Sing t_a1HRk -> Sing t_a1HRl -> Sing (Apply (Apply (:++$) t_a1HRk) t_a1HRl :: [a_a1HNI]) infixr 5 %:++ sHead :: forall (t_a2nE1 :: [a_a2mA1]). Sing t_a2nE1 -> Sing (Apply HeadSym0 t_a2nE1 :: a_a2mA1) sLast :: forall (t_a2nE0 :: [a_a2mA0]). Sing t_a2nE0 -> Sing (Apply LastSym0 t_a2nE0 :: a_a2mA0) sTail :: forall (t_a2nDZ :: [a_a2mzZ]). Sing t_a2nDZ -> Sing (Apply TailSym0 t_a2nDZ :: [a_a2mzZ]) sInit :: forall (t_a2nDY :: [a_a2mzY]). Sing t_a2nDY -> Sing (Apply InitSym0 t_a2nDY :: [a_a2mzY]) sNull :: forall (t_a2nDV :: [a_a2mzX]). Sing t_a2nDV -> Sing (Apply NullSym0 t_a2nDV :: Bool) sLength :: forall (t_a2nBx :: [a_a2my8]). Sing t_a2nBx -> Sing (Apply LengthSym0 t_a2nBx :: Nat) sMap :: forall (t_a1HRm :: TyFun a_a1HNJ b_a1HNK -> Type) (t_a1HRn :: [a_a1HNJ]). Sing t_a1HRm -> Sing t_a1HRn -> Sing (Apply (Apply MapSym0 t_a1HRm) t_a1HRn :: [b_a1HNK]) sReverse :: forall (t_a2nDS :: [a_a2mzW]). Sing t_a2nDS -> Sing (Apply ReverseSym0 t_a2nDS :: [a_a2mzW]) sIntersperse :: forall (t_a2nDO :: a_a2mzV) (t_a2nDP :: [a_a2mzV]). Sing t_a2nDO -> Sing t_a2nDP -> Sing (Apply (Apply IntersperseSym0 t_a2nDO) t_a2nDP :: [a_a2mzV]) sIntercalate :: forall (t_a2nDQ :: [a_a2mzU]) (t_a2nDR :: [[a_a2mzU]]). Sing t_a2nDQ -> Sing t_a2nDR -> Sing (Apply (Apply IntercalateSym0 t_a2nDQ) t_a2nDR :: [a_a2mzU]) sTranspose :: forall (t_a2nE2 :: [[a_a2my6]]). Sing t_a2nE2 -> Sing (Apply TransposeSym0 t_a2nE2 :: [[a_a2my6]]) sSubsequences :: forall (t_a2nDN :: [a_a2mzT]). Sing t_a2nDN -> Sing (Apply SubsequencesSym0 t_a2nDN :: [[a_a2mzT]]) sPermutations :: forall (t_a2nDJ :: [a_a2mzQ]). Sing t_a2nDJ -> Sing (Apply PermutationsSym0 t_a2nDJ :: [[a_a2mzQ]]) sFoldl :: forall (t_aXQ1 :: TyFun b_aXP3 (TyFun a_aXP2 b_aXP3 -> Type) -> Type) (t_aXQ2 :: b_aXP3) (t_aXQ3 :: [a_aXP2]). Sing t_aXQ1 -> Sing t_aXQ2 -> Sing t_aXQ3 -> Sing (Apply (Apply (Apply FoldlSym0 t_aXQ1) t_aXQ2) t_aXQ3 :: b_aXP3) sFoldl' :: forall (t_a2nDE :: TyFun b_a2mzP (TyFun a_a2mzO b_a2mzP -> Type) -> Type) (t_a2nDF :: b_a2mzP) (t_a2nDG :: [a_a2mzO]). Sing t_a2nDE -> Sing t_a2nDF -> Sing t_a2nDG -> Sing (Apply (Apply (Apply Foldl'Sym0 t_a2nDE) t_a2nDF) t_a2nDG :: b_a2mzP) sFoldl1 :: forall (t_a2nDw :: TyFun a_a2mzN (TyFun a_a2mzN a_a2mzN -> Type) -> Type) (t_a2nDx :: [a_a2mzN]). Sing t_a2nDw -> Sing t_a2nDx -> Sing (Apply (Apply Foldl1Sym0 t_a2nDw) t_a2nDx :: a_a2mzN) sFoldl1' :: forall (t_a2nDH :: TyFun a_a2mzM (TyFun a_a2mzM a_a2mzM -> Type) -> Type) (t_a2nDI :: [a_a2mzM]). Sing t_a2nDH -> Sing t_a2nDI -> Sing (Apply (Apply Foldl1'Sym0 t_a2nDH) t_a2nDI :: a_a2mzM) sFoldr :: forall (t_a1HRo :: TyFun a_a1HNL (TyFun b_a1HNM b_a1HNM -> Type) -> Type) (t_a1HRp :: b_a1HNM) (t_a1HRq :: [a_a1HNL]). Sing t_a1HRo -> Sing t_a1HRp -> Sing t_a1HRq -> Sing (Apply (Apply (Apply FoldrSym0 t_a1HRo) t_a1HRp) t_a1HRq :: b_a1HNM) sFoldr1 :: forall (t_a2nDu :: TyFun a_a2mzL (TyFun a_a2mzL a_a2mzL -> Type) -> Type) (t_a2nDv :: [a_a2mzL]). Sing t_a2nDu -> Sing t_a2nDv -> Sing (Apply (Apply Foldr1Sym0 t_a2nDu) t_a2nDv :: a_a2mzL) sConcat :: forall (t_a2nDt :: [[a_a2mzK]]). Sing t_a2nDt -> Sing (Apply ConcatSym0 t_a2nDt :: [a_a2mzK]) sConcatMap :: forall (t_a2nDr :: TyFun a_a2mzI [b_a2mzJ] -> Type) (t_a2nDs :: [a_a2mzI]). Sing t_a2nDr -> Sing t_a2nDs -> Sing (Apply (Apply ConcatMapSym0 t_a2nDr) t_a2nDs :: [b_a2mzJ]) sAnd :: forall (t_a2nDq :: [Bool]). Sing t_a2nDq -> Sing (Apply AndSym0 t_a2nDq :: Bool) sOr :: forall (t_a2nDp :: [Bool]). Sing t_a2nDp -> Sing (Apply OrSym0 t_a2nDp :: Bool) sAny_ :: forall (t_a2jNO :: TyFun a_a2jNu Bool -> Type) (t_a2jNP :: [a_a2jNu]). Sing t_a2jNO -> Sing t_a2jNP -> Sing (Apply (Apply Any_Sym0 t_a2jNO) t_a2jNP :: Bool) sAll :: forall (t_a2nDn :: TyFun a_a2mzH Bool -> Type) (t_a2nDo :: [a_a2mzH]). Sing t_a2nDn -> Sing t_a2nDo -> Sing (Apply (Apply AllSym0 t_a2nDn) t_a2nDo :: Bool) sSum :: forall (t_a2nBz :: [a_a2mya]). SNum a_a2mya => Sing t_a2nBz -> Sing (Apply SumSym0 t_a2nBz :: a_a2mya) sProduct :: forall (t_a2nBy :: [a_a2my9]). SNum a_a2my9 => Sing t_a2nBy -> Sing (Apply ProductSym0 t_a2nBy :: a_a2my9) sMaximum :: forall (t_a2nDC :: [a_a2myj]). SOrd a_a2myj => Sing t_a2nDC -> Sing (Apply MaximumSym0 t_a2nDC :: a_a2myj) sMinimum :: forall (t_a2nDD :: [a_a2myi]). SOrd a_a2myi => Sing t_a2nDD -> Sing (Apply MinimumSym0 t_a2nDD :: a_a2myi) any_ :: forall a_a2jNu. (a_a2jNu -> Bool) -> [a_a2jNu] -> Bool sScanl :: forall (t_a2nDi :: TyFun b_a2mzF (TyFun a_a2mzG b_a2mzF -> Type) -> Type) (t_a2nDj :: b_a2mzF) (t_a2nDk :: [a_a2mzG]). Sing t_a2nDi -> Sing t_a2nDj -> Sing t_a2nDk -> Sing (Apply (Apply (Apply ScanlSym0 t_a2nDi) t_a2nDj) t_a2nDk :: [b_a2mzF]) sScanl1 :: forall (t_a2nDl :: TyFun a_a2mzE (TyFun a_a2mzE a_a2mzE -> Type) -> Type) (t_a2nDm :: [a_a2mzE]). Sing t_a2nDl -> Sing t_a2nDm -> Sing (Apply (Apply Scanl1Sym0 t_a2nDl) t_a2nDm :: [a_a2mzE]) sScanr :: forall (t_a2nDf :: TyFun a_a2mzC (TyFun b_a2mzD b_a2mzD -> Type) -> Type) (t_a2nDg :: b_a2mzD) (t_a2nDh :: [a_a2mzC]). Sing t_a2nDf -> Sing t_a2nDg -> Sing t_a2nDh -> Sing (Apply (Apply (Apply ScanrSym0 t_a2nDf) t_a2nDg) t_a2nDh :: [b_a2mzD]) sScanr1 :: forall (t_a2nDd :: TyFun a_a2mzB (TyFun a_a2mzB a_a2mzB -> Type) -> Type) (t_a2nDe :: [a_a2mzB]). Sing t_a2nDd -> Sing t_a2nDe -> Sing (Apply (Apply Scanr1Sym0 t_a2nDd) t_a2nDe :: [a_a2mzB]) sMapAccumL :: forall (t_a2nDa :: TyFun acc_a2mzy (TyFun x_a2mzz (acc_a2mzy, y_a2mzA) -> Type) -> Type) (t_a2nDb :: acc_a2mzy) (t_a2nDc :: [x_a2mzz]). Sing t_a2nDa -> Sing t_a2nDb -> Sing t_a2nDc -> Sing (Apply (Apply (Apply MapAccumLSym0 t_a2nDa) t_a2nDb) t_a2nDc :: (acc_a2mzy, [y_a2mzA])) sMapAccumR :: forall (t_a2nD7 :: TyFun acc_a2mzv (TyFun x_a2mzw (acc_a2mzv, y_a2mzx) -> Type) -> Type) (t_a2nD8 :: acc_a2mzv) (t_a2nD9 :: [x_a2mzw]). Sing t_a2nD7 -> Sing t_a2nD8 -> Sing t_a2nD9 -> Sing (Apply (Apply (Apply MapAccumRSym0 t_a2nD7) t_a2nD8) t_a2nD9 :: (acc_a2mzv, [y_a2mzx])) sReplicate :: forall (t_a2nBv :: Nat) (t_a2nBw :: a_a2my7). Sing t_a2nBv -> Sing t_a2nBw -> Sing (Apply (Apply ReplicateSym0 t_a2nBv) t_a2nBw :: [a_a2my7]) sUnfoldr :: forall (t_a2nD5 :: TyFun b_a2mzt (Maybe (a_a2mzu, b_a2mzt)) -> Type) (t_a2nD6 :: b_a2mzt). Sing t_a2nD5 -> Sing t_a2nD6 -> Sing (Apply (Apply UnfoldrSym0 t_a2nD5) t_a2nD6 :: [a_a2mzu]) sTake :: forall (t_a2nBJ :: Nat) (t_a2nBK :: [a_a2myn]). Sing t_a2nBJ -> Sing t_a2nBK -> Sing (Apply (Apply TakeSym0 t_a2nBJ) t_a2nBK :: [a_a2myn]) sDrop :: forall (t_a2nBH :: Nat) (t_a2nBI :: [a_a2mym]). Sing t_a2nBH -> Sing t_a2nBI -> Sing (Apply (Apply DropSym0 t_a2nBH) t_a2nBI :: [a_a2mym]) sSplitAt :: forall (t_a2nBL :: Nat) (t_a2nBM :: [a_a2myl]). Sing t_a2nBL -> Sing t_a2nBM -> Sing (Apply (Apply SplitAtSym0 t_a2nBL) t_a2nBM :: ([a_a2myl], [a_a2myl])) sTakeWhile :: forall (t_a2nBW :: TyFun a_a2mys Bool -> Type) (t_a2nBX :: [a_a2mys]). Sing t_a2nBW -> Sing t_a2nBX -> Sing (Apply (Apply TakeWhileSym0 t_a2nBW) t_a2nBX :: [a_a2mys]) sDropWhile :: forall (t_a2nBU :: TyFun a_a2myr Bool -> Type) (t_a2nBV :: [a_a2myr]). Sing t_a2nBU -> Sing t_a2nBV -> Sing (Apply (Apply DropWhileSym0 t_a2nBU) t_a2nBV :: [a_a2myr]) sDropWhileEnd :: forall (t_a2nDW :: TyFun a_a2myq Bool -> Type) (t_a2nDX :: [a_a2myq]). Sing t_a2nDW -> Sing t_a2nDX -> Sing (Apply (Apply DropWhileEndSym0 t_a2nDW) t_a2nDX :: [a_a2myq]) sSpan :: forall (t_a2nBP :: TyFun a_a2myp Bool -> Type) (t_a2nBQ :: [a_a2myp]). Sing t_a2nBP -> Sing t_a2nBQ -> Sing (Apply (Apply SpanSym0 t_a2nBP) t_a2nBQ :: ([a_a2myp], [a_a2myp])) sBreak :: forall (t_a2nBN :: TyFun a_a2myo Bool -> Type) (t_a2nBO :: [a_a2myo]). Sing t_a2nBN -> Sing t_a2nBO -> Sing (Apply (Apply BreakSym0 t_a2nBN) t_a2nBO :: ([a_a2myo], [a_a2myo])) sGroup :: forall (t_a2nBT :: [a_a2myk]). SEq a_a2myk => Sing t_a2nBT -> Sing (Apply GroupSym0 t_a2nBT :: [[a_a2myk]]) sInits :: forall (t_a2nD4 :: [a_a2mzs]). Sing t_a2nD4 -> Sing (Apply InitsSym0 t_a2nD4 :: [[a_a2mzs]]) sTails :: forall (t_a2nD1 :: [a_a2mzr]). Sing t_a2nD1 -> Sing (Apply TailsSym0 t_a2nD1 :: [[a_a2mzr]]) sIsPrefixOf :: forall (t_a2nCZ :: [a_a2mzq]) (t_a2nD0 :: [a_a2mzq]). SEq a_a2mzq => Sing t_a2nCZ -> Sing t_a2nD0 -> Sing (Apply (Apply IsPrefixOfSym0 t_a2nCZ) t_a2nD0 :: Bool) sIsSuffixOf :: forall (t_a2nDT :: [a_a2mzp]) (t_a2nDU :: [a_a2mzp]). SEq a_a2mzp => Sing t_a2nDT -> Sing t_a2nDU -> Sing (Apply (Apply IsSuffixOfSym0 t_a2nDT) t_a2nDU :: Bool) sIsInfixOf :: forall (t_a2nD2 :: [a_a2mzo]) (t_a2nD3 :: [a_a2mzo]). SEq a_a2mzo => Sing t_a2nD2 -> Sing t_a2nD3 -> Sing (Apply (Apply IsInfixOfSym0 t_a2nD2) t_a2nD3 :: Bool) sElem :: forall (t_a2nCW :: a_a2mzn) (t_a2nCX :: [a_a2mzn]). SEq a_a2mzn => Sing t_a2nCW -> Sing t_a2nCX -> Sing (Apply (Apply ElemSym0 t_a2nCW) t_a2nCX :: Bool) sNotElem :: forall (t_a2nCU :: a_a2mzm) (t_a2nCV :: [a_a2mzm]). SEq a_a2mzm => Sing t_a2nCU -> Sing t_a2nCV -> Sing (Apply (Apply NotElemSym0 t_a2nCU) t_a2nCV :: Bool) sLookup :: forall (t_a2nBF :: a_a2myd) (t_a2nBG :: [(a_a2myd, b_a2mye)]). SEq a_a2myd => Sing t_a2nBF -> Sing t_a2nBG -> Sing (Apply (Apply LookupSym0 t_a2nBF) t_a2nBG :: Maybe b_a2mye) sFind :: forall (t_a2nC0 :: TyFun a_a2myz Bool -> Type) (t_a2nC1 :: [a_a2myz]). Sing t_a2nC0 -> Sing t_a2nC1 -> Sing (Apply (Apply FindSym0 t_a2nC0) t_a2nC1 :: Maybe a_a2myz) sFilter :: forall (t_a2nBY :: TyFun a_a2myA Bool -> Type) (t_a2nBZ :: [a_a2myA]). Sing t_a2nBY -> Sing t_a2nBZ -> Sing (Apply (Apply FilterSym0 t_a2nBY) t_a2nBZ :: [a_a2myA]) sPartition :: forall (t_a2nBD :: TyFun a_a2myc Bool -> Type) (t_a2nBE :: [a_a2myc]). Sing t_a2nBD -> Sing t_a2nBE -> Sing (Apply (Apply PartitionSym0 t_a2nBD) t_a2nBE :: ([a_a2myc], [a_a2myc])) (%:!!) :: forall (t_a2nBt :: [a_a2my5]) (t_a2nBu :: Nat). Sing t_a2nBt -> Sing t_a2nBu -> Sing (Apply (Apply (:!!$) t_a2nBt) t_a2nBu :: a_a2my5) sElemIndex :: forall (t_a2nCS :: a_a2myy) (t_a2nCT :: [a_a2myy]). SEq a_a2myy => Sing t_a2nCS -> Sing t_a2nCT -> Sing (Apply (Apply ElemIndexSym0 t_a2nCS) t_a2nCT :: Maybe Nat) sElemIndices :: forall (t_a2nCO :: a_a2myx) (t_a2nCP :: [a_a2myx]). SEq a_a2myx => Sing t_a2nCO -> Sing t_a2nCP -> Sing (Apply (Apply ElemIndicesSym0 t_a2nCO) t_a2nCP :: [Nat]) sFindIndex :: forall (t_a2nCQ :: TyFun a_a2myw Bool -> Type) (t_a2nCR :: [a_a2myw]). Sing t_a2nCQ -> Sing t_a2nCR -> Sing (Apply (Apply FindIndexSym0 t_a2nCQ) t_a2nCR :: Maybe Nat) sFindIndices :: forall (t_a2nCM :: TyFun a_a2myv Bool -> Type) (t_a2nCN :: [a_a2myv]). Sing t_a2nCM -> Sing t_a2nCN -> Sing (Apply (Apply FindIndicesSym0 t_a2nCM) t_a2nCN :: [Nat]) sZip :: forall (t_a2nCK :: [a_a2mzk]) (t_a2nCL :: [b_a2mzl]). Sing t_a2nCK -> Sing t_a2nCL -> Sing (Apply (Apply ZipSym0 t_a2nCK) t_a2nCL :: [(a_a2mzk, b_a2mzl)]) sZip3 :: forall (t_a2nCH :: [a_a2mzh]) (t_a2nCI :: [b_a2mzi]) (t_a2nCJ :: [c_a2mzj]). Sing t_a2nCH -> Sing t_a2nCI -> Sing t_a2nCJ -> Sing (Apply (Apply (Apply Zip3Sym0 t_a2nCH) t_a2nCI) t_a2nCJ :: [(a_a2mzh, b_a2mzi, c_a2mzj)]) sZipWith :: forall (t_a2nCE :: TyFun a_a2mze (TyFun b_a2mzf c_a2mzg -> Type) -> Type) (t_a2nCF :: [a_a2mze]) (t_a2nCG :: [b_a2mzf]). Sing t_a2nCE -> Sing t_a2nCF -> Sing t_a2nCG -> Sing (Apply (Apply (Apply ZipWithSym0 t_a2nCE) t_a2nCF) t_a2nCG :: [c_a2mzg]) sZipWith3 :: forall (t_a2nCA :: TyFun a_a2mza (TyFun b_a2mzb (TyFun c_a2mzc d_a2mzd -> Type) -> Type) -> Type) (t_a2nCB :: [a_a2mza]) (t_a2nCC :: [b_a2mzb]) (t_a2nCD :: [c_a2mzc]). Sing t_a2nCA -> Sing t_a2nCB -> Sing t_a2nCC -> Sing t_a2nCD -> Sing (Apply (Apply (Apply (Apply ZipWith3Sym0 t_a2nCA) t_a2nCB) t_a2nCC) t_a2nCD :: [d_a2mzd]) sUnzip :: forall (t_a2nCz :: [(a_a2mz8, b_a2mz9)]). Sing t_a2nCz -> Sing (Apply UnzipSym0 t_a2nCz :: ([a_a2mz8], [b_a2mz9])) sUnzip3 :: forall (t_a2nCy :: [(a_a2mz5, b_a2mz6, c_a2mz7)]). Sing t_a2nCy -> Sing (Apply Unzip3Sym0 t_a2nCy :: ([a_a2mz5], [b_a2mz6], [c_a2mz7])) sUnzip4 :: forall (t_a2nCx :: [(a_a2mz1, b_a2mz2, c_a2mz3, d_a2mz4)]). Sing t_a2nCx -> Sing (Apply Unzip4Sym0 t_a2nCx :: ([a_a2mz1], [b_a2mz2], [c_a2mz3], [d_a2mz4])) sUnzip5 :: forall (t_a2nCw :: [(a_a2myW, b_a2myX, c_a2myY, d_a2myZ, e_a2mz0)]). Sing t_a2nCw -> Sing (Apply Unzip5Sym0 t_a2nCw :: ([a_a2myW], [b_a2myX], [c_a2myY], [d_a2myZ], [e_a2mz0])) sUnzip6 :: forall (t_a2nCv :: [(a_a2myQ, b_a2myR, c_a2myS, d_a2myT, e_a2myU, f_a2myV)]). Sing t_a2nCv -> Sing (Apply Unzip6Sym0 t_a2nCv :: ([a_a2myQ], [b_a2myR], [c_a2myS], [d_a2myT], [e_a2myU], [f_a2myV])) sUnzip7 :: forall (t_a2nCu :: [(a_a2myJ, b_a2myK, c_a2myL, d_a2myM, e_a2myN, f_a2myO, g_a2myP)]). Sing t_a2nCu -> Sing (Apply Unzip7Sym0 t_a2nCu :: ([a_a2myJ], [b_a2myK], [c_a2myL], [d_a2myM], [e_a2myN], [f_a2myO], [g_a2myP])) sNub :: forall (t_a2nCY :: [a_a2my4]). SEq a_a2my4 => Sing t_a2nCY -> Sing (Apply NubSym0 t_a2nCY :: [a_a2my4]) sDelete :: forall (t_a2nCq :: a_a2myI) (t_a2nCr :: [a_a2myI]). SEq a_a2myI => Sing t_a2nCq -> Sing t_a2nCr -> Sing (Apply (Apply DeleteSym0 t_a2nCq) t_a2nCr :: [a_a2myI]) (%:\\) :: forall (t_a2nCs :: [a_a2myH]) (t_a2nCt :: [a_a2myH]). SEq a_a2myH => Sing t_a2nCs -> Sing t_a2nCt -> Sing (Apply (Apply (:\\$) t_a2nCs) t_a2nCt :: [a_a2myH]) infix 5 %:\\ sUnion :: forall (t_a2nCo :: [a_a2my0]) (t_a2nCp :: [a_a2my0]). SEq a_a2my0 => Sing t_a2nCo -> Sing t_a2nCp -> Sing (Apply (Apply UnionSym0 t_a2nCo) t_a2nCp :: [a_a2my0]) sIntersect :: forall (t_a2nC5 :: [a_a2myu]) (t_a2nC6 :: [a_a2myu]). SEq a_a2myu => Sing t_a2nC5 -> Sing t_a2nC6 -> Sing (Apply (Apply IntersectSym0 t_a2nC5) t_a2nC6 :: [a_a2myu]) sInsert :: forall (t_a2nCa :: a_a2myh) (t_a2nCb :: [a_a2myh]). SOrd a_a2myh => Sing t_a2nCa -> Sing t_a2nCb -> Sing (Apply (Apply InsertSym0 t_a2nCa) t_a2nCb :: [a_a2myh]) sSort :: forall (t_a2nCe :: [a_a2myg]). SOrd a_a2myg => Sing t_a2nCe -> Sing (Apply SortSym0 t_a2nCe :: [a_a2myg]) sNubBy :: forall (t_a2nBr :: TyFun a_a2my3 (TyFun a_a2my3 Bool -> Type) -> Type) (t_a2nBs :: [a_a2my3]). Sing t_a2nBr -> Sing t_a2nBs -> Sing (Apply (Apply NubBySym0 t_a2nBr) t_a2nBs :: [a_a2my3]) sDeleteBy :: forall (t_a2nCf :: TyFun a_a2myG (TyFun a_a2myG Bool -> Type) -> Type) (t_a2nCg :: a_a2myG) (t_a2nCh :: [a_a2myG]). Sing t_a2nCf -> Sing t_a2nCg -> Sing t_a2nCh -> Sing (Apply (Apply (Apply DeleteBySym0 t_a2nCf) t_a2nCg) t_a2nCh :: [a_a2myG]) sDeleteFirstsBy :: forall (t_a2nCi :: TyFun a_a2myF (TyFun a_a2myF Bool -> Type) -> Type) (t_a2nCj :: [a_a2myF]) (t_a2nCk :: [a_a2myF]). Sing t_a2nCi -> Sing t_a2nCj -> Sing t_a2nCk -> Sing (Apply (Apply (Apply DeleteFirstsBySym0 t_a2nCi) t_a2nCj) t_a2nCk :: [a_a2myF]) sUnionBy :: forall (t_a2nCl :: TyFun a_a2my1 (TyFun a_a2my1 Bool -> Type) -> Type) (t_a2nCm :: [a_a2my1]) (t_a2nCn :: [a_a2my1]). Sing t_a2nCl -> Sing t_a2nCm -> Sing t_a2nCn -> Sing (Apply (Apply (Apply UnionBySym0 t_a2nCl) t_a2nCm) t_a2nCn :: [a_a2my1]) sIntersectBy :: forall (t_a2nC2 :: TyFun a_a2myt (TyFun a_a2myt Bool -> Type) -> Type) (t_a2nC3 :: [a_a2myt]) (t_a2nC4 :: [a_a2myt]). Sing t_a2nC2 -> Sing t_a2nC3 -> Sing t_a2nC4 -> Sing (Apply (Apply (Apply IntersectBySym0 t_a2nC2) t_a2nC3) t_a2nC4 :: [a_a2myt]) sGroupBy :: forall (t_a2nBR :: TyFun a_a2myf (TyFun a_a2myf Bool -> Type) -> Type) (t_a2nBS :: [a_a2myf]). Sing t_a2nBR -> Sing t_a2nBS -> Sing (Apply (Apply GroupBySym0 t_a2nBR) t_a2nBS :: [[a_a2myf]]) sSortBy :: forall (t_a2nCc :: TyFun a_a2myE (TyFun a_a2myE Ordering -> Type) -> Type) (t_a2nCd :: [a_a2myE]). Sing t_a2nCc -> Sing t_a2nCd -> Sing (Apply (Apply SortBySym0 t_a2nCc) t_a2nCd :: [a_a2myE]) sInsertBy :: forall (t_a2nC7 :: TyFun a_a2myD (TyFun a_a2myD Ordering -> Type) -> Type) (t_a2nC8 :: a_a2myD) (t_a2nC9 :: [a_a2myD]). Sing t_a2nC7 -> Sing t_a2nC8 -> Sing t_a2nC9 -> Sing (Apply (Apply (Apply InsertBySym0 t_a2nC7) t_a2nC8) t_a2nC9 :: [a_a2myD]) sMaximumBy :: forall (t_a2nDy :: TyFun a_a2myC (TyFun a_a2myC Ordering -> Type) -> Type) (t_a2nDz :: [a_a2myC]). Sing t_a2nDy -> Sing t_a2nDz -> Sing (Apply (Apply MaximumBySym0 t_a2nDy) t_a2nDz :: a_a2myC) sMinimumBy :: forall (t_a2nDA :: TyFun a_a2myB (TyFun a_a2myB Ordering -> Type) -> Type) (t_a2nDB :: [a_a2myB]). Sing t_a2nDA -> Sing t_a2nDB -> Sing (Apply (Apply MinimumBySym0 t_a2nDA) t_a2nDB :: a_a2myB) sGenericLength :: forall (t_a2nBn :: [a_a2mxZ]). SNum i_a2mxY => Sing t_a2nBn -> Sing (Apply GenericLengthSym0 t_a2nBn :: i_a2mxY) type NilSym0 = '[] data (:$) (l_aUOF :: TyFun a822083586 (TyFun [a822083586] [a822083586] -> Type)) data (:$$) (l_aUOI :: a822083586) (l_aUOH :: TyFun [a822083586] [a822083586]) type (:$$$) (t_aUOD :: a822083586) (t_aUOE :: [a822083586]) = (:) t_aUOD t_aUOE type (:++$$$) (t_a1HPZ :: [a1627796654]) (t_a1HQ0 :: [a1627796654]) = (:++) t_a1HPZ t_a1HQ0 data (:++$$) (l_a1HQ4 :: [a1627796654]) (l_a1HQ3 :: TyFun [a1627796654] [a1627796654]) data (:++$) (l_a1HQ1 :: TyFun [a1627796654] (TyFun [a1627796654] [a1627796654] -> Type)) data HeadSym0 (l_a2nB8 :: TyFun [a1627953409] a1627953409) type HeadSym1 (t_a2nB7 :: [a1627953409]) = Head t_a2nB7 data LastSym0 (l_a2nAY :: TyFun [a1627953408] a1627953408) type LastSym1 (t_a2nAX :: [a1627953408]) = Last t_a2nAX data TailSym0 (l_a2nAQ :: TyFun [a1627953407] [a1627953407]) type TailSym1 (t_a2nAP :: [a1627953407]) = Tail t_a2nAP data InitSym0 (l_a2nAj :: TyFun [a1627953406] [a1627953406]) type InitSym1 (t_a2nAi :: [a1627953406]) = Init t_a2nAi data NullSym0 (l_a2nzc :: TyFun [a1627953405] Bool) type NullSym1 (t_a2nzb :: [a1627953405]) = Null t_a2nzb data LengthSym0 (l_a2mLr :: TyFun [a1627953292] Nat) type LengthSym1 (t_a2mLq :: [a1627953292]) = Length t_a2mLq data MapSym0 (l_a1HQe :: TyFun (TyFun a1627796655 b1627796656 -> Type) (TyFun [a1627796655] [b1627796656] -> Type)) data MapSym1 (l_a1HQh :: TyFun a1627796655 b1627796656 -> Type) (l_a1HQg :: TyFun [a1627796655] [b1627796656]) type MapSym2 (t_a1HQc :: TyFun a1627796655 b1627796656 -> Type) (t_a1HQd :: [a1627796655]) = Map t_a1HQc t_a1HQd data ReverseSym0 (l_a2nyD :: TyFun [a1627953404] [a1627953404]) type ReverseSym1 (t_a2nyC :: [a1627953404]) = Reverse t_a2nyC data IntersperseSym0 (l_a2nye :: TyFun a1627953403 (TyFun [a1627953403] [a1627953403] -> Type)) data IntersperseSym1 (l_a2nyh :: a1627953403) (l_a2nyg :: TyFun [a1627953403] [a1627953403]) type IntersperseSym2 (t_a2nyc :: a1627953403) (t_a2nyd :: [a1627953403]) = Intersperse t_a2nyc t_a2nyd data IntercalateSym0 (l_a2nyt :: TyFun [a1627953402] (TyFun [[a1627953402]] [a1627953402] -> Type)) data IntercalateSym1 (l_a2nyw :: [a1627953402]) (l_a2nyv :: TyFun [[a1627953402]] [a1627953402]) type IntercalateSym2 (t_a2nyr :: [a1627953402]) (t_a2nys :: [[a1627953402]]) = Intercalate t_a2nyr t_a2nys data TransposeSym0 (l_a2nBg :: TyFun [[a1627953290]] [[a1627953290]]) type TransposeSym1 (t_a2nBf :: [[a1627953290]]) = Transpose t_a2nBf data SubsequencesSym0 (l_a2ny8 :: TyFun [a1627953401] [[a1627953401]]) type SubsequencesSym1 (t_a2ny7 :: [a1627953401]) = Subsequences t_a2ny7 data PermutationsSym0 (l_a2nrq :: TyFun [a1627953398] [[a1627953398]]) type PermutationsSym1 (t_a2nrp :: [a1627953398]) = Permutations t_a2nrp data FoldlSym0 (l_aXPg :: TyFun (TyFun b1627619913 (TyFun a1627619912 b1627619913 -> Type) -> Type) (TyFun b1627619913 (TyFun [a1627619912] b1627619913 -> Type) -> Type)) data FoldlSym1 (l_aXPj :: TyFun b1627619913 (TyFun a1627619912 b1627619913 -> Type) -> Type) (l_aXPi :: TyFun b1627619913 (TyFun [a1627619912] b1627619913 -> Type)) data FoldlSym2 (l_aXPm :: TyFun b1627619913 (TyFun a1627619912 b1627619913 -> Type) -> Type) (l_aXPn :: b1627619913) (l_aXPl :: TyFun [a1627619912] b1627619913) type FoldlSym3 (t_aXPd :: TyFun b1627619913 (TyFun a1627619912 b1627619913 -> Type) -> Type) (t_aXPe :: b1627619913) (t_aXPf :: [a1627619912]) = Foldl t_aXPd t_aXPe t_aXPf data Foldl'Sym0 (l_a2npR :: TyFun (TyFun b1627953397 (TyFun a1627953396 b1627953397 -> Type) -> Type) (TyFun b1627953397 (TyFun [a1627953396] b1627953397 -> Type) -> Type)) data Foldl'Sym1 (l_a2npU :: TyFun b1627953397 (TyFun a1627953396 b1627953397 -> Type) -> Type) (l_a2npT :: TyFun b1627953397 (TyFun [a1627953396] b1627953397 -> Type)) data Foldl'Sym2 (l_a2npX :: TyFun b1627953397 (TyFun a1627953396 b1627953397 -> Type) -> Type) (l_a2npY :: b1627953397) (l_a2npW :: TyFun [a1627953396] b1627953397) type Foldl'Sym3 (t_a2npO :: TyFun b1627953397 (TyFun a1627953396 b1627953397 -> Type) -> Type) (t_a2npP :: b1627953397) (t_a2npQ :: [a1627953396]) = Foldl' t_a2npO t_a2npP t_a2npQ data Foldl1Sym0 (l_a2nml :: TyFun (TyFun a1627953395 (TyFun a1627953395 a1627953395 -> Type) -> Type) (TyFun [a1627953395] a1627953395 -> Type)) data Foldl1Sym1 (l_a2nmo :: TyFun a1627953395 (TyFun a1627953395 a1627953395 -> Type) -> Type) (l_a2nmn :: TyFun [a1627953395] a1627953395) type Foldl1Sym2 (t_a2nmj :: TyFun a1627953395 (TyFun a1627953395 a1627953395 -> Type) -> Type) (t_a2nmk :: [a1627953395]) = Foldl1 t_a2nmj t_a2nmk data Foldl1'Sym0 (l_a2nrc :: TyFun (TyFun a1627953394 (TyFun a1627953394 a1627953394 -> Type) -> Type) (TyFun [a1627953394] a1627953394 -> Type)) data Foldl1'Sym1 (l_a2nrf :: TyFun a1627953394 (TyFun a1627953394 a1627953394 -> Type) -> Type) (l_a2nre :: TyFun [a1627953394] a1627953394) type Foldl1'Sym2 (t_a2nra :: TyFun a1627953394 (TyFun a1627953394 a1627953394 -> Type) -> Type) (t_a2nrb :: [a1627953394]) = Foldl1' t_a2nra t_a2nrb data FoldrSym0 (l_a1HQu :: TyFun (TyFun a1627796657 (TyFun b1627796658 b1627796658 -> Type) -> Type) (TyFun b1627796658 (TyFun [a1627796657] b1627796658 -> Type) -> Type)) data FoldrSym1 (l_a1HQx :: TyFun a1627796657 (TyFun b1627796658 b1627796658 -> Type) -> Type) (l_a1HQw :: TyFun b1627796658 (TyFun [a1627796657] b1627796658 -> Type)) data FoldrSym2 (l_a1HQA :: TyFun a1627796657 (TyFun b1627796658 b1627796658 -> Type) -> Type) (l_a1HQB :: b1627796658) (l_a1HQz :: TyFun [a1627796657] b1627796658) type FoldrSym3 (t_a1HQr :: TyFun a1627796657 (TyFun b1627796658 b1627796658 -> Type) -> Type) (t_a1HQs :: b1627796658) (t_a1HQt :: [a1627796657]) = Foldr t_a1HQr t_a1HQs t_a1HQt data Foldr1Sym0 (l_a2nlI :: TyFun (TyFun a1627953393 (TyFun a1627953393 a1627953393 -> Type) -> Type) (TyFun [a1627953393] a1627953393 -> Type)) data Foldr1Sym1 (l_a2nlL :: TyFun a1627953393 (TyFun a1627953393 a1627953393 -> Type) -> Type) (l_a2nlK :: TyFun [a1627953393] a1627953393) type Foldr1Sym2 (t_a2nlG :: TyFun a1627953393 (TyFun a1627953393 a1627953393 -> Type) -> Type) (t_a2nlH :: [a1627953393]) = Foldr1 t_a2nlG t_a2nlH data ConcatSym0 (l_a2nlC :: TyFun [[a1627953392]] [a1627953392]) type ConcatSym1 (t_a2nlB :: [[a1627953392]]) = Concat t_a2nlB data ConcatMapSym0 (l_a2nlo :: TyFun (TyFun a1627953390 [b1627953391] -> Type) (TyFun [a1627953390] [b1627953391] -> Type)) data ConcatMapSym1 (l_a2nlr :: TyFun a1627953390 [b1627953391] -> Type) (l_a2nlq :: TyFun [a1627953390] [b1627953391]) type ConcatMapSym2 (t_a2nlm :: TyFun a1627953390 [b1627953391] -> Type) (t_a2nln :: [a1627953390]) = ConcatMap t_a2nlm t_a2nln data AndSym0 (l_a2nlh :: TyFun [Bool] Bool) type AndSym1 (t_a2nlg :: [Bool]) = And t_a2nlg data OrSym0 (l_a2nlb :: TyFun [Bool] Bool) type OrSym1 (t_a2nla :: [Bool]) = Or t_a2nla data Any_Sym0 (l_a2jNB :: TyFun (TyFun a1627942712 Bool -> Type) (TyFun [a1627942712] Bool -> Type)) data Any_Sym1 (l_a2jNE :: TyFun a1627942712 Bool -> Type) (l_a2jND :: TyFun [a1627942712] Bool) type Any_Sym2 (t_a2jNz :: TyFun a1627942712 Bool -> Type) (t_a2jNA :: [a1627942712]) = Any_ t_a2jNz t_a2jNA data AllSym0 (l_a2nkX :: TyFun (TyFun a1627953389 Bool -> Type) (TyFun [a1627953389] Bool -> Type)) data AllSym1 (l_a2nl0 :: TyFun a1627953389 Bool -> Type) (l_a2nkZ :: TyFun [a1627953389] Bool) type AllSym2 (t_a2nkV :: TyFun a1627953389 Bool -> Type) (t_a2nkW :: [a1627953389]) = All t_a2nkV t_a2nkW data SumSym0 (l_a2mLX :: TyFun [a1627953294] a1627953294) type SumSym1 (t_a2mLW :: [a1627953294]) = Sum t_a2mLW data ProductSym0 (l_a2mLz :: TyFun [a1627953293] a1627953293) type ProductSym1 (t_a2mLy :: [a1627953293]) = Product t_a2mLy data MaximumSym0 (l_a2npn :: TyFun [a1627953303] a1627953303) type MaximumSym1 (t_a2npm :: [a1627953303]) = Maximum t_a2npm data MinimumSym0 (l_a2npB :: TyFun [a1627953302] a1627953302) type MinimumSym1 (t_a2npA :: [a1627953302]) = Minimum t_a2npA data ScanlSym0 (l_a2nkm :: TyFun (TyFun b1627953387 (TyFun a1627953388 b1627953387 -> Type) -> Type) (TyFun b1627953387 (TyFun [a1627953388] [b1627953387] -> Type) -> Type)) data ScanlSym1 (l_a2nkp :: TyFun b1627953387 (TyFun a1627953388 b1627953387 -> Type) -> Type) (l_a2nko :: TyFun b1627953387 (TyFun [a1627953388] [b1627953387] -> Type)) data ScanlSym2 (l_a2nks :: TyFun b1627953387 (TyFun a1627953388 b1627953387 -> Type) -> Type) (l_a2nkt :: b1627953387) (l_a2nkr :: TyFun [a1627953388] [b1627953387]) type ScanlSym3 (t_a2nkj :: TyFun b1627953387 (TyFun a1627953388 b1627953387 -> Type) -> Type) (t_a2nkk :: b1627953387) (t_a2nkl :: [a1627953388]) = Scanl t_a2nkj t_a2nkk t_a2nkl data Scanl1Sym0 (l_a2nkI :: TyFun (TyFun a1627953386 (TyFun a1627953386 a1627953386 -> Type) -> Type) (TyFun [a1627953386] [a1627953386] -> Type)) data Scanl1Sym1 (l_a2nkL :: TyFun a1627953386 (TyFun a1627953386 a1627953386 -> Type) -> Type) (l_a2nkK :: TyFun [a1627953386] [a1627953386]) type Scanl1Sym2 (t_a2nkG :: TyFun a1627953386 (TyFun a1627953386 a1627953386 -> Type) -> Type) (t_a2nkH :: [a1627953386]) = Scanl1 t_a2nkG t_a2nkH data ScanrSym0 (l_a2njB :: TyFun (TyFun a1627953384 (TyFun b1627953385 b1627953385 -> Type) -> Type) (TyFun b1627953385 (TyFun [a1627953384] [b1627953385] -> Type) -> Type)) data ScanrSym1 (l_a2njE :: TyFun a1627953384 (TyFun b1627953385 b1627953385 -> Type) -> Type) (l_a2njD :: TyFun b1627953385 (TyFun [a1627953384] [b1627953385] -> Type)) data ScanrSym2 (l_a2njH :: TyFun a1627953384 (TyFun b1627953385 b1627953385 -> Type) -> Type) (l_a2njI :: b1627953385) (l_a2njG :: TyFun [a1627953384] [b1627953385]) type ScanrSym3 (t_a2njy :: TyFun a1627953384 (TyFun b1627953385 b1627953385 -> Type) -> Type) (t_a2njz :: b1627953385) (t_a2njA :: [a1627953384]) = Scanr t_a2njy t_a2njz t_a2njA data Scanr1Sym0 (l_a2niz :: TyFun (TyFun a1627953383 (TyFun a1627953383 a1627953383 -> Type) -> Type) (TyFun [a1627953383] [a1627953383] -> Type)) data Scanr1Sym1 (l_a2niC :: TyFun a1627953383 (TyFun a1627953383 a1627953383 -> Type) -> Type) (l_a2niB :: TyFun [a1627953383] [a1627953383]) type Scanr1Sym2 (t_a2nix :: TyFun a1627953383 (TyFun a1627953383 a1627953383 -> Type) -> Type) (t_a2niy :: [a1627953383]) = Scanr1 t_a2nix t_a2niy data MapAccumLSym0 (l_a2nfO :: TyFun (TyFun acc1627953380 (TyFun x1627953381 (acc1627953380, y1627953382) -> Type) -> Type) (TyFun acc1627953380 (TyFun [x1627953381] (acc1627953380, [y1627953382]) -> Type) -> Type)) data MapAccumLSym1 (l_a2nfR :: TyFun acc1627953380 (TyFun x1627953381 (acc1627953380, y1627953382) -> Type) -> Type) (l_a2nfQ :: TyFun acc1627953380 (TyFun [x1627953381] (acc1627953380, [y1627953382]) -> Type)) data MapAccumLSym2 (l_a2nfU :: TyFun acc1627953380 (TyFun x1627953381 (acc1627953380, y1627953382) -> Type) -> Type) (l_a2nfV :: acc1627953380) (l_a2nfT :: TyFun [x1627953381] (acc1627953380, [y1627953382])) type MapAccumLSym3 (t_a2nfL :: TyFun acc1627953380 (TyFun x1627953381 (acc1627953380, y1627953382) -> Type) -> Type) (t_a2nfM :: acc1627953380) (t_a2nfN :: [x1627953381]) = MapAccumL t_a2nfL t_a2nfM t_a2nfN data MapAccumRSym0 (l_a2nd2 :: TyFun (TyFun acc1627953377 (TyFun x1627953378 (acc1627953377, y1627953379) -> Type) -> Type) (TyFun acc1627953377 (TyFun [x1627953378] (acc1627953377, [y1627953379]) -> Type) -> Type)) data MapAccumRSym1 (l_a2nd5 :: TyFun acc1627953377 (TyFun x1627953378 (acc1627953377, y1627953379) -> Type) -> Type) (l_a2nd4 :: TyFun acc1627953377 (TyFun [x1627953378] (acc1627953377, [y1627953379]) -> Type)) data MapAccumRSym2 (l_a2nd8 :: TyFun acc1627953377 (TyFun x1627953378 (acc1627953377, y1627953379) -> Type) -> Type) (l_a2nd9 :: acc1627953377) (l_a2nd7 :: TyFun [x1627953378] (acc1627953377, [y1627953379])) type MapAccumRSym3 (t_a2ncZ :: TyFun acc1627953377 (TyFun x1627953378 (acc1627953377, y1627953379) -> Type) -> Type) (t_a2nd0 :: acc1627953377) (t_a2nd1 :: [x1627953378]) = MapAccumR t_a2ncZ t_a2nd0 t_a2nd1 data ReplicateSym0 (l_a2mL6 :: TyFun Nat (TyFun a1627953291 [a1627953291] -> Type)) data ReplicateSym1 (l_a2mL9 :: Nat) (l_a2mL8 :: TyFun a1627953291 [a1627953291]) type ReplicateSym2 (t_a2mL4 :: Nat) (t_a2mL5 :: a1627953291) = Replicate t_a2mL4 t_a2mL5 data UnfoldrSym0 (l_a2ncD :: TyFun (TyFun b1627953375 (Maybe (a1627953376, b1627953375)) -> Type) (TyFun b1627953375 [a1627953376] -> Type)) data UnfoldrSym1 (l_a2ncG :: TyFun b1627953375 (Maybe (a1627953376, b1627953375)) -> Type) (l_a2ncF :: TyFun b1627953375 [a1627953376]) type UnfoldrSym2 (t_a2ncB :: TyFun b1627953375 (Maybe (a1627953376, b1627953375)) -> Type) (t_a2ncC :: b1627953375) = Unfoldr t_a2ncB t_a2ncC data TakeSym0 (l_a2mOh :: TyFun Nat (TyFun [a1627953307] [a1627953307] -> Type)) data TakeSym1 (l_a2mOk :: Nat) (l_a2mOj :: TyFun [a1627953307] [a1627953307]) type TakeSym2 (t_a2mOf :: Nat) (t_a2mOg :: [a1627953307]) = Take t_a2mOf t_a2mOg data DropSym0 (l_a2mNM :: TyFun Nat (TyFun [a1627953306] [a1627953306] -> Type)) data DropSym1 (l_a2mNP :: Nat) (l_a2mNO :: TyFun [a1627953306] [a1627953306]) type DropSym2 (t_a2mNK :: Nat) (t_a2mNL :: [a1627953306]) = Drop t_a2mNK t_a2mNL data SplitAtSym0 (l_a2mOM :: TyFun Nat (TyFun [a1627953305] ([a1627953305], [a1627953305]) -> Type)) data SplitAtSym1 (l_a2mOP :: Nat) (l_a2mOO :: TyFun [a1627953305] ([a1627953305], [a1627953305])) type SplitAtSym2 (t_a2mOK :: Nat) (t_a2mOL :: [a1627953305]) = SplitAt t_a2mOK t_a2mOL data TakeWhileSym0 (l_a2mUi :: TyFun (TyFun a1627953312 Bool -> Type) (TyFun [a1627953312] [a1627953312] -> Type)) data TakeWhileSym1 (l_a2mUl :: TyFun a1627953312 Bool -> Type) (l_a2mUk :: TyFun [a1627953312] [a1627953312]) type TakeWhileSym2 (t_a2mUg :: TyFun a1627953312 Bool -> Type) (t_a2mUh :: [a1627953312]) = TakeWhile t_a2mUg t_a2mUh data DropWhileSym0 (l_a2mTA :: TyFun (TyFun a1627953311 Bool -> Type) (TyFun [a1627953311] [a1627953311] -> Type)) data DropWhileSym1 (l_a2mTD :: TyFun a1627953311 Bool -> Type) (l_a2mTC :: TyFun [a1627953311] [a1627953311]) type DropWhileSym2 (t_a2mTy :: TyFun a1627953311 Bool -> Type) (t_a2mTz :: [a1627953311]) = DropWhile t_a2mTy t_a2mTz data DropWhileEndSym0 (l_a2nzn :: TyFun (TyFun a1627953310 Bool -> Type) (TyFun [a1627953310] [a1627953310] -> Type)) data DropWhileEndSym1 (l_a2nzq :: TyFun a1627953310 Bool -> Type) (l_a2nzp :: TyFun [a1627953310] [a1627953310]) type DropWhileEndSym2 (t_a2nzl :: TyFun a1627953310 Bool -> Type) (t_a2nzm :: [a1627953310]) = DropWhileEnd t_a2nzl t_a2nzm data SpanSym0 (l_a2mQE :: TyFun (TyFun a1627953309 Bool -> Type) (TyFun [a1627953309] ([a1627953309], [a1627953309]) -> Type)) data SpanSym1 (l_a2mQH :: TyFun a1627953309 Bool -> Type) (l_a2mQG :: TyFun [a1627953309] ([a1627953309], [a1627953309])) type SpanSym2 (t_a2mQC :: TyFun a1627953309 Bool -> Type) (t_a2mQD :: [a1627953309]) = Span t_a2mQC t_a2mQD data BreakSym0 (l_a2mOX :: TyFun (TyFun a1627953308 Bool -> Type) (TyFun [a1627953308] ([a1627953308], [a1627953308]) -> Type)) data BreakSym1 (l_a2mP0 :: TyFun a1627953308 Bool -> Type) (l_a2mOZ :: TyFun [a1627953308] ([a1627953308], [a1627953308])) type BreakSym2 (t_a2mOV :: TyFun a1627953308 Bool -> Type) (t_a2mOW :: [a1627953308]) = Break t_a2mOV t_a2mOW data GroupSym0 (l_a2mTu :: TyFun [a1627953304] [[a1627953304]]) type GroupSym1 (t_a2mTt :: [a1627953304]) = Group t_a2mTt data InitsSym0 (l_a2ncs :: TyFun [a1627953374] [[a1627953374]]) type InitsSym1 (t_a2ncr :: [a1627953374]) = Inits t_a2ncr data TailsSym0 (l_a2nc5 :: TyFun [a1627953373] [[a1627953373]]) type TailsSym1 (t_a2nc4 :: [a1627953373]) = Tails t_a2nc4 data IsPrefixOfSym0 (l_a2nbH :: TyFun [a1627953372] (TyFun [a1627953372] Bool -> Type)) data IsPrefixOfSym1 (l_a2nbK :: [a1627953372]) (l_a2nbJ :: TyFun [a1627953372] Bool) type IsPrefixOfSym2 (t_a2nbF :: [a1627953372]) (t_a2nbG :: [a1627953372]) = IsPrefixOf t_a2nbF t_a2nbG data IsSuffixOfSym0 (l_a2nz2 :: TyFun [a1627953371] (TyFun [a1627953371] Bool -> Type)) data IsSuffixOfSym1 (l_a2nz5 :: [a1627953371]) (l_a2nz4 :: TyFun [a1627953371] Bool) type IsSuffixOfSym2 (t_a2nz0 :: [a1627953371]) (t_a2nz1 :: [a1627953371]) = IsSuffixOf t_a2nz0 t_a2nz1 data IsInfixOfSym0 (l_a2nci :: TyFun [a1627953370] (TyFun [a1627953370] Bool -> Type)) data IsInfixOfSym1 (l_a2ncl :: [a1627953370]) (l_a2nck :: TyFun [a1627953370] Bool) type IsInfixOfSym2 (t_a2ncg :: [a1627953370]) (t_a2nch :: [a1627953370]) = IsInfixOf t_a2ncg t_a2nch data ElemSym0 (l_a2naG :: TyFun a1627953369 (TyFun [a1627953369] Bool -> Type)) data ElemSym1 (l_a2naJ :: a1627953369) (l_a2naI :: TyFun [a1627953369] Bool) type ElemSym2 (t_a2naE :: a1627953369) (t_a2naF :: [a1627953369]) = Elem t_a2naE t_a2naF data NotElemSym0 (l_a2nar :: TyFun a1627953368 (TyFun [a1627953368] Bool -> Type)) data NotElemSym1 (l_a2nau :: a1627953368) (l_a2nat :: TyFun [a1627953368] Bool) type NotElemSym2 (t_a2nap :: a1627953368) (t_a2naq :: [a1627953368]) = NotElem t_a2nap t_a2naq data LookupSym0 (l_a2mNc :: TyFun a1627953297 (TyFun [(a1627953297, b1627953298)] (Maybe b1627953298) -> Type)) data LookupSym1 (l_a2mNf :: a1627953297) (l_a2mNe :: TyFun [(a1627953297, b1627953298)] (Maybe b1627953298)) type LookupSym2 (t_a2mNa :: a1627953297) (t_a2mNb :: [(a1627953297, b1627953298)]) = Lookup t_a2mNa t_a2mNb data FindSym0 (l_a2mVg :: TyFun (TyFun a1627953319 Bool -> Type) (TyFun [a1627953319] (Maybe a1627953319) -> Type)) data FindSym1 (l_a2mVj :: TyFun a1627953319 Bool -> Type) (l_a2mVi :: TyFun [a1627953319] (Maybe a1627953319)) type FindSym2 (t_a2mVe :: TyFun a1627953319 Bool -> Type) (t_a2mVf :: [a1627953319]) = Find t_a2mVe t_a2mVf data FilterSym0 (l_a2mUN :: TyFun (TyFun a1627953320 Bool -> Type) (TyFun [a1627953320] [a1627953320] -> Type)) data FilterSym1 (l_a2mUQ :: TyFun a1627953320 Bool -> Type) (l_a2mUP :: TyFun [a1627953320] [a1627953320]) type FilterSym2 (t_a2mUL :: TyFun a1627953320 Bool -> Type) (t_a2mUM :: [a1627953320]) = Filter t_a2mUL t_a2mUM data PartitionSym0 (l_a2mN1 :: TyFun (TyFun a1627953296 Bool -> Type) (TyFun [a1627953296] ([a1627953296], [a1627953296]) -> Type)) data PartitionSym1 (l_a2mN4 :: TyFun a1627953296 Bool -> Type) (l_a2mN3 :: TyFun [a1627953296] ([a1627953296], [a1627953296])) type PartitionSym2 (t_a2mMZ :: TyFun a1627953296 Bool -> Type) (t_a2mN0 :: [a1627953296]) = Partition t_a2mMZ t_a2mN0 data (:!!$) (l_a2mKB :: TyFun [a1627953289] (TyFun Nat a1627953289 -> Type)) data (:!!$$) (l_a2mKE :: [a1627953289]) (l_a2mKD :: TyFun Nat a1627953289) type (:!!$$$) (t_a2mKz :: [a1627953289]) (t_a2mKA :: Nat) = (:!!) t_a2mKz t_a2mKA data ElemIndexSym0 (l_a2nae :: TyFun a1627953318 (TyFun [a1627953318] (Maybe Nat) -> Type)) data ElemIndexSym1 (l_a2nah :: a1627953318) (l_a2nag :: TyFun [a1627953318] (Maybe Nat)) type ElemIndexSym2 (t_a2nac :: a1627953318) (t_a2nad :: [a1627953318]) = ElemIndex t_a2nac t_a2nad data ElemIndicesSym0 (l_a2n9O :: TyFun a1627953317 (TyFun [a1627953317] [Nat] -> Type)) data ElemIndicesSym1 (l_a2n9R :: a1627953317) (l_a2n9Q :: TyFun [a1627953317] [Nat]) type ElemIndicesSym2 (t_a2n9M :: a1627953317) (t_a2n9N :: [a1627953317]) = ElemIndices t_a2n9M t_a2n9N data FindIndexSym0 (l_a2na1 :: TyFun (TyFun a1627953316 Bool -> Type) (TyFun [a1627953316] (Maybe Nat) -> Type)) data FindIndexSym1 (l_a2na4 :: TyFun a1627953316 Bool -> Type) (l_a2na3 :: TyFun [a1627953316] (Maybe Nat)) type FindIndexSym2 (t_a2n9Z :: TyFun a1627953316 Bool -> Type) (t_a2na0 :: [a1627953316]) = FindIndex t_a2n9Z t_a2na0 data FindIndicesSym0 (l_a2n8N :: TyFun (TyFun a1627953315 Bool -> Type) (TyFun [a1627953315] [Nat] -> Type)) data FindIndicesSym1 (l_a2n8Q :: TyFun a1627953315 Bool -> Type) (l_a2n8P :: TyFun [a1627953315] [Nat]) type FindIndicesSym2 (t_a2n8L :: TyFun a1627953315 Bool -> Type) (t_a2n8M :: [a1627953315]) = FindIndices t_a2n8L t_a2n8M data ZipSym0 (l_a2n8o :: TyFun [a1627953366] (TyFun [b1627953367] [(a1627953366, b1627953367)] -> Type)) data ZipSym1 (l_a2n8r :: [a1627953366]) (l_a2n8q :: TyFun [b1627953367] [(a1627953366, b1627953367)]) type ZipSym2 (t_a2n8m :: [a1627953366]) (t_a2n8n :: [b1627953367]) = Zip t_a2n8m t_a2n8n data Zip3Sym0 (l_a2n7c :: TyFun [a1627953363] (TyFun [b1627953364] (TyFun [c1627953365] [(a1627953363, b1627953364, c1627953365)] -> Type) -> Type)) data Zip3Sym1 (l_a2n7f :: [a1627953363]) (l_a2n7e :: TyFun [b1627953364] (TyFun [c1627953365] [(a1627953363, b1627953364, c1627953365)] -> Type)) data Zip3Sym2 (l_a2n7i :: [a1627953363]) (l_a2n7j :: [b1627953364]) (l_a2n7h :: TyFun [c1627953365] [(a1627953363, b1627953364, c1627953365)]) type Zip3Sym3 (t_a2n79 :: [a1627953363]) (t_a2n7a :: [b1627953364]) (t_a2n7b :: [c1627953365]) = Zip3 t_a2n79 t_a2n7a t_a2n7b data ZipWithSym0 (l_a2n6x :: TyFun (TyFun a1627953360 (TyFun b1627953361 c1627953362 -> Type) -> Type) (TyFun [a1627953360] (TyFun [b1627953361] [c1627953362] -> Type) -> Type)) data ZipWithSym1 (l_a2n6A :: TyFun a1627953360 (TyFun b1627953361 c1627953362 -> Type) -> Type) (l_a2n6z :: TyFun [a1627953360] (TyFun [b1627953361] [c1627953362] -> Type)) data ZipWithSym2 (l_a2n6D :: TyFun a1627953360 (TyFun b1627953361 c1627953362 -> Type) -> Type) (l_a2n6E :: [a1627953360]) (l_a2n6C :: TyFun [b1627953361] [c1627953362]) type ZipWithSym3 (t_a2n6u :: TyFun a1627953360 (TyFun b1627953361 c1627953362 -> Type) -> Type) (t_a2n6v :: [a1627953360]) (t_a2n6w :: [b1627953361]) = ZipWith t_a2n6u t_a2n6v t_a2n6w data ZipWith3Sym0 (l_a2n4S :: TyFun (TyFun a1627953356 (TyFun b1627953357 (TyFun c1627953358 d1627953359 -> Type) -> Type) -> Type) (TyFun [a1627953356] (TyFun [b1627953357] (TyFun [c1627953358] [d1627953359] -> Type) -> Type) -> Type)) data ZipWith3Sym1 (l_a2n4V :: TyFun a1627953356 (TyFun b1627953357 (TyFun c1627953358 d1627953359 -> Type) -> Type) -> Type) (l_a2n4U :: TyFun [a1627953356] (TyFun [b1627953357] (TyFun [c1627953358] [d1627953359] -> Type) -> Type)) data ZipWith3Sym2 (l_a2n4Y :: TyFun a1627953356 (TyFun b1627953357 (TyFun c1627953358 d1627953359 -> Type) -> Type) -> Type) (l_a2n4Z :: [a1627953356]) (l_a2n4X :: TyFun [b1627953357] (TyFun [c1627953358] [d1627953359] -> Type)) data ZipWith3Sym3 (l_a2n52 :: TyFun a1627953356 (TyFun b1627953357 (TyFun c1627953358 d1627953359 -> Type) -> Type) -> Type) (l_a2n53 :: [a1627953356]) (l_a2n54 :: [b1627953357]) (l_a2n51 :: TyFun [c1627953358] [d1627953359]) type ZipWith3Sym4 (t_a2n4O :: TyFun a1627953356 (TyFun b1627953357 (TyFun c1627953358 d1627953359 -> Type) -> Type) -> Type) (t_a2n4P :: [a1627953356]) (t_a2n4Q :: [b1627953357]) (t_a2n4R :: [c1627953358]) = ZipWith3 t_a2n4O t_a2n4P t_a2n4Q t_a2n4R data UnzipSym0 (l_a2n4l :: TyFun [(a1627953354, b1627953355)] ([a1627953354], [b1627953355])) type UnzipSym1 (t_a2n4k :: [(a1627953354, b1627953355)]) = Unzip t_a2n4k data Unzip3Sym0 (l_a2n3P :: TyFun [(a1627953351, b1627953352, c1627953353)] ([a1627953351], [b1627953352], [c1627953353])) type Unzip3Sym1 (t_a2n3O :: [(a1627953351, b1627953352, c1627953353)]) = Unzip3 t_a2n3O data Unzip4Sym0 (l_a2n3h :: TyFun [(a1627953347, b1627953348, c1627953349, d1627953350)] ([a1627953347], [b1627953348], [c1627953349], [d1627953350])) type Unzip4Sym1 (t_a2n3g :: [(a1627953347, b1627953348, c1627953349, d1627953350)]) = Unzip4 t_a2n3g data Unzip5Sym0 (l_a2n2H :: TyFun [(a1627953342, b1627953343, c1627953344, d1627953345, e1627953346)] ([a1627953342], [b1627953343], [c1627953344], [d1627953345], [e1627953346])) type Unzip5Sym1 (t_a2n2G :: [(a1627953342, b1627953343, c1627953344, d1627953345, e1627953346)]) = Unzip5 t_a2n2G data Unzip6Sym0 (l_a2n25 :: TyFun [(a1627953336, b1627953337, c1627953338, d1627953339, e1627953340, f1627953341)] ([a1627953336], [b1627953337], [c1627953338], [d1627953339], [e1627953340], [f1627953341])) type Unzip6Sym1 (t_a2n24 :: [(a1627953336, b1627953337, c1627953338, d1627953339, e1627953340, f1627953341)]) = Unzip6 t_a2n24 data Unzip7Sym0 (l_a2n1r :: TyFun [(a1627953329, b1627953330, c1627953331, d1627953332, e1627953333, f1627953334, g1627953335)] ([a1627953329], [b1627953330], [c1627953331], [d1627953332], [e1627953333], [f1627953334], [g1627953335])) type Unzip7Sym1 (t_a2n1q :: [(a1627953329, b1627953330, c1627953331, d1627953332, e1627953333, f1627953334, g1627953335)]) = Unzip7 t_a2n1q data NubSym0 (l_a2naU :: TyFun [a1627953288] [a1627953288]) type NubSym1 (t_a2naT :: [a1627953288]) = Nub t_a2naT data DeleteSym0 (l_a2n12 :: TyFun a1627953328 (TyFun [a1627953328] [a1627953328] -> Type)) data DeleteSym1 (l_a2n15 :: a1627953328) (l_a2n14 :: TyFun [a1627953328] [a1627953328]) type DeleteSym2 (t_a2n10 :: a1627953328) (t_a2n11 :: [a1627953328]) = Delete t_a2n10 t_a2n11 data (:\\$) (l_a2n1h :: TyFun [a1627953327] (TyFun [a1627953327] [a1627953327] -> Type)) data (:\\$$) (l_a2n1k :: [a1627953327]) (l_a2n1j :: TyFun [a1627953327] [a1627953327]) type (:\\$$$) (t_a2n1f :: [a1627953327]) (t_a2n1g :: [a1627953327]) = (:\\) t_a2n1f t_a2n1g data UnionSym0 (l_a2n0N :: TyFun [a1627953284] (TyFun [a1627953284] [a1627953284] -> Type)) data UnionSym1 (l_a2n0Q :: [a1627953284]) (l_a2n0P :: TyFun [a1627953284] [a1627953284]) type UnionSym2 (t_a2n0L :: [a1627953284]) (t_a2n0M :: [a1627953284]) = Union t_a2n0L t_a2n0M data IntersectSym0 (l_a2mXC :: TyFun [a1627953314] (TyFun [a1627953314] [a1627953314] -> Type)) data IntersectSym1 (l_a2mXF :: [a1627953314]) (l_a2mXE :: TyFun [a1627953314] [a1627953314]) type IntersectSym2 (t_a2mXA :: [a1627953314]) (t_a2mXB :: [a1627953314]) = Intersect t_a2mXA t_a2mXB data InsertSym0 (l_a2mYP :: TyFun a1627953301 (TyFun [a1627953301] [a1627953301] -> Type)) data InsertSym1 (l_a2mYS :: a1627953301) (l_a2mYR :: TyFun [a1627953301] [a1627953301]) type InsertSym2 (t_a2mYN :: a1627953301) (t_a2mYO :: [a1627953301]) = Insert t_a2mYN t_a2mYO data SortSym0 (l_a2mZe :: TyFun [a1627953300] [a1627953300]) type SortSym1 (t_a2mZd :: [a1627953300]) = Sort t_a2mZd data NubBySym0 (l_a2mJw :: TyFun (TyFun a1627953287 (TyFun a1627953287 Bool -> Type) -> Type) (TyFun [a1627953287] [a1627953287] -> Type)) data NubBySym1 (l_a2mJz :: TyFun a1627953287 (TyFun a1627953287 Bool -> Type) -> Type) (l_a2mJy :: TyFun [a1627953287] [a1627953287]) type NubBySym2 (t_a2mJu :: TyFun a1627953287 (TyFun a1627953287 Bool -> Type) -> Type) (t_a2mJv :: [a1627953287]) = NubBy t_a2mJu t_a2mJv data DeleteBySym0 (l_a2mZl :: TyFun (TyFun a1627953326 (TyFun a1627953326 Bool -> Type) -> Type) (TyFun a1627953326 (TyFun [a1627953326] [a1627953326] -> Type) -> Type)) data DeleteBySym1 (l_a2mZo :: TyFun a1627953326 (TyFun a1627953326 Bool -> Type) -> Type) (l_a2mZn :: TyFun a1627953326 (TyFun [a1627953326] [a1627953326] -> Type)) data DeleteBySym2 (l_a2mZr :: TyFun a1627953326 (TyFun a1627953326 Bool -> Type) -> Type) (l_a2mZs :: a1627953326) (l_a2mZq :: TyFun [a1627953326] [a1627953326]) type DeleteBySym3 (t_a2mZi :: TyFun a1627953326 (TyFun a1627953326 Bool -> Type) -> Type) (t_a2mZj :: a1627953326) (t_a2mZk :: [a1627953326]) = DeleteBy t_a2mZi t_a2mZj t_a2mZk data DeleteFirstsBySym0 (l_a2n06 :: TyFun (TyFun a1627953325 (TyFun a1627953325 Bool -> Type) -> Type) (TyFun [a1627953325] (TyFun [a1627953325] [a1627953325] -> Type) -> Type)) data DeleteFirstsBySym1 (l_a2n09 :: TyFun a1627953325 (TyFun a1627953325 Bool -> Type) -> Type) (l_a2n08 :: TyFun [a1627953325] (TyFun [a1627953325] [a1627953325] -> Type)) data DeleteFirstsBySym2 (l_a2n0c :: TyFun a1627953325 (TyFun a1627953325 Bool -> Type) -> Type) (l_a2n0d :: [a1627953325]) (l_a2n0b :: TyFun [a1627953325] [a1627953325]) type DeleteFirstsBySym3 (t_a2n03 :: TyFun a1627953325 (TyFun a1627953325 Bool -> Type) -> Type) (t_a2n04 :: [a1627953325]) (t_a2n05 :: [a1627953325]) = DeleteFirstsBy t_a2n03 t_a2n04 t_a2n05 data UnionBySym0 (l_a2n0s :: TyFun (TyFun a1627953285 (TyFun a1627953285 Bool -> Type) -> Type) (TyFun [a1627953285] (TyFun [a1627953285] [a1627953285] -> Type) -> Type)) data UnionBySym1 (l_a2n0v :: TyFun a1627953285 (TyFun a1627953285 Bool -> Type) -> Type) (l_a2n0u :: TyFun [a1627953285] (TyFun [a1627953285] [a1627953285] -> Type)) data UnionBySym2 (l_a2n0y :: TyFun a1627953285 (TyFun a1627953285 Bool -> Type) -> Type) (l_a2n0z :: [a1627953285]) (l_a2n0x :: TyFun [a1627953285] [a1627953285]) type UnionBySym3 (t_a2n0p :: TyFun a1627953285 (TyFun a1627953285 Bool -> Type) -> Type) (t_a2n0q :: [a1627953285]) (t_a2n0r :: [a1627953285]) = UnionBy t_a2n0p t_a2n0q t_a2n0r data IntersectBySym0 (l_a2mVu :: TyFun (TyFun a1627953313 (TyFun a1627953313 Bool -> Type) -> Type) (TyFun [a1627953313] (TyFun [a1627953313] [a1627953313] -> Type) -> Type)) data IntersectBySym1 (l_a2mVx :: TyFun a1627953313 (TyFun a1627953313 Bool -> Type) -> Type) (l_a2mVw :: TyFun [a1627953313] (TyFun [a1627953313] [a1627953313] -> Type)) data IntersectBySym2 (l_a2mVA :: TyFun a1627953313 (TyFun a1627953313 Bool -> Type) -> Type) (l_a2mVB :: [a1627953313]) (l_a2mVz :: TyFun [a1627953313] [a1627953313]) type IntersectBySym3 (t_a2mVr :: TyFun a1627953313 (TyFun a1627953313 Bool -> Type) -> Type) (t_a2mVs :: [a1627953313]) (t_a2mVt :: [a1627953313]) = IntersectBy t_a2mVr t_a2mVs t_a2mVt data GroupBySym0 (l_a2mSl :: TyFun (TyFun a1627953299 (TyFun a1627953299 Bool -> Type) -> Type) (TyFun [a1627953299] [[a1627953299]] -> Type)) data GroupBySym1 (l_a2mSo :: TyFun a1627953299 (TyFun a1627953299 Bool -> Type) -> Type) (l_a2mSn :: TyFun [a1627953299] [[a1627953299]]) type GroupBySym2 (t_a2mSj :: TyFun a1627953299 (TyFun a1627953299 Bool -> Type) -> Type) (t_a2mSk :: [a1627953299]) = GroupBy t_a2mSj t_a2mSk data SortBySym0 (l_a2mZ0 :: TyFun (TyFun a1627953324 (TyFun a1627953324 Ordering -> Type) -> Type) (TyFun [a1627953324] [a1627953324] -> Type)) data SortBySym1 (l_a2mZ3 :: TyFun a1627953324 (TyFun a1627953324 Ordering -> Type) -> Type) (l_a2mZ2 :: TyFun [a1627953324] [a1627953324]) type SortBySym2 (t_a2mYY :: TyFun a1627953324 (TyFun a1627953324 Ordering -> Type) -> Type) (t_a2mYZ :: [a1627953324]) = SortBy t_a2mYY t_a2mYZ data InsertBySym0 (l_a2mXO :: TyFun (TyFun a1627953323 (TyFun a1627953323 Ordering -> Type) -> Type) (TyFun a1627953323 (TyFun [a1627953323] [a1627953323] -> Type) -> Type)) data InsertBySym1 (l_a2mXR :: TyFun a1627953323 (TyFun a1627953323 Ordering -> Type) -> Type) (l_a2mXQ :: TyFun a1627953323 (TyFun [a1627953323] [a1627953323] -> Type)) data InsertBySym2 (l_a2mXU :: TyFun a1627953323 (TyFun a1627953323 Ordering -> Type) -> Type) (l_a2mXV :: a1627953323) (l_a2mXT :: TyFun [a1627953323] [a1627953323]) type InsertBySym3 (t_a2mXL :: TyFun a1627953323 (TyFun a1627953323 Ordering -> Type) -> Type) (t_a2mXM :: a1627953323) (t_a2mXN :: [a1627953323]) = InsertBy t_a2mXL t_a2mXM t_a2mXN data MaximumBySym0 (l_a2nmA :: TyFun (TyFun a1627953322 (TyFun a1627953322 Ordering -> Type) -> Type) (TyFun [a1627953322] a1627953322 -> Type)) data MaximumBySym1 (l_a2nmD :: TyFun a1627953322 (TyFun a1627953322 Ordering -> Type) -> Type) (l_a2nmC :: TyFun [a1627953322] a1627953322) type MaximumBySym2 (t_a2nmy :: TyFun a1627953322 (TyFun a1627953322 Ordering -> Type) -> Type) (t_a2nmz :: [a1627953322]) = MaximumBy t_a2nmy t_a2nmz data MinimumBySym0 (l_a2nnZ :: TyFun (TyFun a1627953321 (TyFun a1627953321 Ordering -> Type) -> Type) (TyFun [a1627953321] a1627953321 -> Type)) data MinimumBySym1 (l_a2no2 :: TyFun a1627953321 (TyFun a1627953321 Ordering -> Type) -> Type) (l_a2no1 :: TyFun [a1627953321] a1627953321) type MinimumBySym2 (t_a2nnX :: TyFun a1627953321 (TyFun a1627953321 Ordering -> Type) -> Type) (t_a2nnY :: [a1627953321]) = MinimumBy t_a2nnX t_a2nnY data GenericLengthSym0 (l_a2mIY :: TyFun [a1627953283] i1627953282) type GenericLengthSym1 (t_a2mIX :: [a1627953283]) = GenericLength t_a2mIX instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954034Scrutinee_1627953954Sym4 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954034Scrutinee_1627953954Sym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954034Scrutinee_1627953954Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954034Scrutinee_1627953954Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954034Scrutinee_1627953954Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954007NubBy'Sym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954007NubBy'Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954007NubBy'Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954007NubBy'Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954078Scrutinee_1627953950Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954078Scrutinee_1627953950Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954078Scrutinee_1627953950Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954105Scrutinee_1627953948Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954105Scrutinee_1627953948Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954129ProdSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954129ProdSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954129ProdSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954153Sum'Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954153Sum'Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954153Sum'Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954191Scrutinee_1627953946Sym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954191Scrutinee_1627953946Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954191Scrutinee_1627953946Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954191Scrutinee_1627953946Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954238Scrutinee_1627953944Sym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954238Scrutinee_1627953944Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954238Scrutinee_1627953944Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954238Scrutinee_1627953944Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954275Scrutinee_1627953934Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954275Scrutinee_1627953934Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954275Scrutinee_1627953934Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954306Scrutinee_1627953932Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954306Scrutinee_1627953932Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954306Scrutinee_1627953932Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954345XsSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954352XsSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954352XsSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954352XsSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954365Scrutinee_1627953930Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954365Scrutinee_1627953930Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954365Scrutinee_1627953930Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954380YsSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954380YsSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954380YsSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954380ZsSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954380ZsSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954380ZsSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954380X_1627954381Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954380X_1627954381Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954380X_1627954381Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954450XsSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954457XsSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954457XsSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954457XsSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954470Scrutinee_1627953928Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954470Scrutinee_1627953928Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954470Scrutinee_1627953928Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954485YsSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954485YsSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954485YsSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954485ZsSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954485ZsSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954485ZsSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954485X_1627954486Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954485X_1627954486Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954485X_1627954486Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954558YsSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954558YsSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954558YsSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954558ZsSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954558ZsSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954558ZsSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954558X_1627954559Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954558X_1627954559Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954558X_1627954559Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954635XsSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954635XsSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954635XsSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954648Scrutinee_1627953924Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954648Scrutinee_1627953924Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954648Scrutinee_1627953924Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954679Scrutinee_1627953922Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954679Scrutinee_1627953922Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954679Scrutinee_1627953922Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954708Scrutinee_1627953910Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954708Scrutinee_1627953910Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954708Scrutinee_1627953910Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954778XsSym4 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954778XsSym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954778XsSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954778XsSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954778XsSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954778YsSym4 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954778YsSym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954778YsSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954778YsSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954778YsSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627954829Sym5 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627954829Sym4 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627954829Sym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627954829Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627954829Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627954829Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954904YsSym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954904YsSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954904YsSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954904YsSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954923Scrutinee_1627953896Sym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954923Scrutinee_1627953896Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954923Scrutinee_1627953896Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627954923Scrutinee_1627953896Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627955001Scrutinee_1627953894Sym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627955001Scrutinee_1627953894Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627955001Scrutinee_1627953894Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627955001Scrutinee_1627953894Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627955113Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627955113Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627955113Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627955153Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627955153Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627955153Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627955191Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627955191Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627955191Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627955227Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627955227Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627955227Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627955261Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627955261Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627955261Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627955293Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627955293Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627955293Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627955574BuildListSym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627955574BuildListSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627955574BuildListSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627955574BuildListSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627955603Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627955603Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627955603Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627955721Scrutinee_1627953952Sym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627955721Scrutinee_1627953952Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627955721Scrutinee_1627953952Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627955721Scrutinee_1627953952Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627955700Nub'Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627955700Nub'Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627955700Nub'Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627955812Scrutinee_1627953868Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627955812Scrutinee_1627953868Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627955848S'Sym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627955848S'Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627955848S'Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627955848S'Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627955848YsSym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627955848YsSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627955848YsSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627955848YsSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627955848S''Sym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627955848S''Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627955848S''Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627955848S''Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627955848YSym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627955848YSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627955848YSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627955848YSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627955848X_1627955849Sym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627955848X_1627955849Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627955848X_1627955849Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627955848X_1627955849Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627955848X_1627955855Sym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627955848X_1627955855Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627955848X_1627955855Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627955848X_1627955855Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956020S'Sym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956020S'Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956020S'Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956020S'Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956020YSym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956020YSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956020YSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956020YSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956020S''Sym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956020S''Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956020S''Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956020S''Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956020YsSym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956020YsSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956020YsSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956020YsSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956020X_1627956021Sym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956020X_1627956021Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956020X_1627956021Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956020X_1627956021Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956020X_1627956027Sym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956020X_1627956027Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956020X_1627956027Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956020X_1627956027Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956189XsSym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956189XsSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956189XsSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956189XsSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956208Scrutinee_1627953862Sym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956208Scrutinee_1627953862Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956208Scrutinee_1627953862Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956208Scrutinee_1627953862Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956255Scrutinee_1627953860Sym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956255Scrutinee_1627953860Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956255Scrutinee_1627953860Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956255Scrutinee_1627953860Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956381XsSym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956381XsSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956381XsSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956381XsSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956433XsSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956433XsSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956433XsSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956476Scrutinee_1627953898Sym4 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956476Scrutinee_1627953898Sym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956476Scrutinee_1627953898Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956476Scrutinee_1627953898Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956476Scrutinee_1627953898Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956446MaxBySym4 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956446MaxBySym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956446MaxBySym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956446MaxBySym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956446MaxBySym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956520XsSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956520XsSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956520XsSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956563Scrutinee_1627953904Sym4 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956563Scrutinee_1627953904Sym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956563Scrutinee_1627953904Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956563Scrutinee_1627953904Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956563Scrutinee_1627953904Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956533MinBySym4 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956533MinBySym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956533MinBySym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956533MinBySym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956533MinBySym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956598XsSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956598XsSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956612XsSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956612XsSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956670Z'Sym5 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956670Z'Sym4 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956670Z'Sym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956670Z'Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956670Z'Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956670Z'Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956638LgoSym4 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956638LgoSym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956638LgoSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956638LgoSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956638LgoSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956799UsSym7 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956799UsSym6 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956799UsSym5 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956799UsSym4 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956799UsSym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956799UsSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956799UsSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956799UsSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956799ZsSym7 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956799ZsSym6 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956799ZsSym5 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956799ZsSym4 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956799ZsSym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956799ZsSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956799ZsSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956799ZsSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956799X_1627956800Sym7 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956799X_1627956800Sym6 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956799X_1627956800Sym5 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956799X_1627956800Sym4 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956799X_1627956800Sym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956799X_1627956800Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956799X_1627956800Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956799X_1627956800Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627957013ZsSym5 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627957013ZsSym4 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627957013ZsSym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627957013ZsSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627957013ZsSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627957013ZsSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627957013X_1627957014Sym5 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627957013X_1627957014Sym4 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627957013X_1627957014Sym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627957013X_1627957014Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627957013X_1627957014Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627957013X_1627957014Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956745Interleave'Sym6 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956745Interleave'Sym5 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956745Interleave'Sym4 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956745Interleave'Sym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956745Interleave'Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956745Interleave'Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956745Interleave'Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956745InterleaveSym5 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956745InterleaveSym4 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956745InterleaveSym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956745InterleaveSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956745InterleaveSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956745InterleaveSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956724PermsSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956724PermsSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627956724PermsSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627957112FSym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627957112FSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627957112FSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627957112FSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627957171RevSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627957171RevSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627957171RevSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627957228Scrutinee_1627953926Sym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627957228Scrutinee_1627953926Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627957228Scrutinee_1627953926Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627957228Scrutinee_1627953926Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627957224Sym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627957224Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627957224Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Lambda_1627957224Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627957276Init'Sym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627957276Init'Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627957276Init'Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Let1627957276Init'Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.GenericLengthSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Elem_bySym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Elem_bySym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Elem_bySym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.NubBySym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.NubBySym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings (Data.Singletons.Prelude.List.:!!$$) instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings (Data.Singletons.Prelude.List.:!!$) instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ReplicateSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ReplicateSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.LengthSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ProductSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.SumSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.SelectSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.SelectSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.SelectSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.PartitionSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.PartitionSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.LookupSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.LookupSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.DropSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.DropSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.TakeSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.TakeSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.SplitAtSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.SplitAtSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.BreakSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.BreakSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.SpanSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.SpanSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.GroupBySym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.GroupBySym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.GroupSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.DropWhileSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.DropWhileSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.TakeWhileSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.TakeWhileSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.FilterSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.FilterSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.FindSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.FindSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.IntersectBySym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.IntersectBySym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.IntersectBySym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.IntersectSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.IntersectSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.InsertBySym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.InsertBySym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.InsertBySym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.InsertSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.InsertSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.SortBySym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.SortBySym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.SortSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.DeleteBySym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.DeleteBySym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.DeleteBySym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.DeleteFirstsBySym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.DeleteFirstsBySym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.DeleteFirstsBySym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.UnionBySym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.UnionBySym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.UnionBySym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.UnionSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.UnionSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.DeleteSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.DeleteSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings (Data.Singletons.Prelude.List.:\\$$) instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings (Data.Singletons.Prelude.List.:\\$) instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Unzip7Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Unzip6Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Unzip5Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Unzip4Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Unzip3Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.UnzipSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ZipWith3Sym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ZipWith3Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ZipWith3Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ZipWith3Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ZipWithSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ZipWithSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ZipWithSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Zip3Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Zip3Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Zip3Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ZipSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ZipSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.FindIndicesSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.FindIndicesSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ElemIndicesSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ElemIndicesSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.FindIndexSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.FindIndexSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ElemIndexSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ElemIndexSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.NotElemSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.NotElemSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ElemSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ElemSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.NubSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.IsPrefixOfSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.IsPrefixOfSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.TailsSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.IsInfixOfSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.IsInfixOfSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.InitsSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.UnfoldrSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.UnfoldrSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.MapAccumRSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.MapAccumRSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.MapAccumRSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.MapAccumLSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.MapAccumLSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.MapAccumLSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Scanr1Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Scanr1Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ScanrSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ScanrSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ScanrSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ScanlSym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ScanlSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ScanlSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Scanl1Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Scanl1Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.AllSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.AllSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.OrSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.AndSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ConcatMapSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ConcatMapSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ConcatSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Foldr1Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Foldr1Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Foldl1Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Foldl1Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.MaximumBySym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.MaximumBySym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.MinimumBySym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.MinimumBySym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.MaximumSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.MinimumSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Foldl'Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Foldl'Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Foldl'Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Foldl1'Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Foldl1'Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.PermutationsSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.PrependToAllSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.PrependToAllSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.NonEmptySubsequencesSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.SubsequencesSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.IntersperseSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.IntersperseSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.IntercalateSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.IntercalateSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.ReverseSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.IsSuffixOfSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.IsSuffixOfSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.NullSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.DropWhileEndSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.DropWhileEndSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.InitSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.TailSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.LastSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.HeadSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.TransposeSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Any_Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Singletons.Prelude.List.Any_Sym0 -- | Mimics the Haskell Prelude, but with singleton types. Includes the -- basic singleton definitions. Note: This is currently very incomplete! -- -- Because many of these definitions are produced by Template Haskell, it -- is not possible to create proper Haddock documentation. Also, please -- excuse the apparent repeated variable names. This is due to an -- interaction between Template Haskell and Haddock. module Data.Singletons.Prelude -- | The singleton kind-indexed data family. type SBool = (Sing :: Bool -> Type) type SList = (Sing :: [a_12] -> Type) type SMaybe = (Sing :: Maybe a_12 -> Type) type SEither = (Sing :: Either a_acqs b_acqt -> Type) type SOrdering = (Sing :: Ordering -> Type) type STuple0 = (Sing :: () -> Type) type STuple2 = (Sing :: (a_12, b_13) -> Type) type STuple3 = (Sing :: (a_12, b_13, c_14) -> Type) type STuple4 = (Sing :: (a_12, b_13, c_14, d_15) -> Type) type STuple5 = (Sing :: (a_12, b_13, c_14, d_15, e_16) -> Type) type STuple6 = (Sing :: (a_12, b_13, c_14, d_15, e_16, f_17) -> Type) type STuple7 = (Sing :: (a_12, b_13, c_14, d_15, e_16, f_17, g_18) -> Type) -- | 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 :: forall (t_a17Pa :: Bool). Sing t_a17Pa -> Sing (Apply NotSym0 t_a17Pa :: Bool) (%:&&) :: forall (t_a17Pd :: Bool) (t_a17Pe :: Bool). Sing t_a17Pd -> Sing t_a17Pe -> Sing (Apply (Apply (:&&$) t_a17Pd) t_a17Pe :: Bool) infixr 3 %:&& (%:||) :: forall (t_a17Pb :: Bool) (t_a17Pc :: Bool). Sing t_a17Pb -> Sing t_a17Pc -> Sing (Apply (Apply (:||$) t_a17Pb) t_a17Pc :: Bool) infixr 2 %:|| sOtherwise :: Sing (OtherwiseSym0 :: Bool) -- | The promotion of error. This version is more poly-kinded for -- easier use. data ErrorSym0 (l_a1LFh :: TyFun k01627810588 k1627810590) -- | The singleton for error sError :: Sing (str :: Symbol) -> a sId :: forall (t_a1HRj :: a_a1HNH). Sing t_a1HRj -> Sing (Apply IdSym0 t_a1HRj :: a_a1HNH) sConst :: forall (t_a1HRf :: a_a1HNF) (t_a1HRg :: b_a1HNG). Sing t_a1HRf -> Sing t_a1HRg -> Sing (Apply (Apply ConstSym0 t_a1HRf) t_a1HRg :: a_a1HNF) (%:.) :: forall (t_a1HRc :: TyFun b_a1HNC c_a1HND -> Type) (t_a1HRd :: TyFun a_a1HNE b_a1HNC -> Type) (t_a1HRe :: a_a1HNE). Sing t_a1HRc -> Sing t_a1HRd -> Sing t_a1HRe -> Sing (Apply (Apply (Apply (:.$) t_a1HRc) t_a1HRd) t_a1HRe :: c_a1HND) infixr 9 %:. (%$) :: forall (f :: TyFun a b -> *) (x :: a). Sing f -> Sing x -> Sing ((($$) @@ f) @@ x) infixr 0 %$ (%$!) :: forall (f :: TyFun a b -> *) (x :: a). Sing f -> Sing x -> Sing ((($!$) @@ f) @@ x) infixr 0 %$! sFlip :: forall (t_a1HR9 :: TyFun a_a1HNz (TyFun b_a1HNA c_a1HNB -> Type) -> Type) (t_a1HRa :: b_a1HNA) (t_a1HRb :: a_a1HNz). Sing t_a1HR9 -> Sing t_a1HRa -> Sing t_a1HRb -> Sing (Apply (Apply (Apply FlipSym0 t_a1HR9) t_a1HRa) t_a1HRb :: c_a1HNB) sAsTypeOf :: forall (t_a1HRh :: a_a1HNy) (t_a1HRi :: a_a1HNy). Sing t_a1HRh -> Sing t_a1HRi -> Sing (Apply (Apply AsTypeOfSym0 t_a1HRh) t_a1HRi :: a_a1HNy) sSeq :: forall (t_a1HR7 :: a_a1HNw) (t_a1HR8 :: b_a1HNx). Sing t_a1HR7 -> Sing t_a1HR8 -> Sing (Apply (Apply SeqSym0 t_a1HR7) t_a1HR8 :: b_a1HNx) infixr 0 `sSeq` sMap :: forall (t_a1HRm :: TyFun a_a1HNJ b_a1HNK -> Type) (t_a1HRn :: [a_a1HNJ]). Sing t_a1HRm -> Sing t_a1HRn -> Sing (Apply (Apply MapSym0 t_a1HRm) t_a1HRn :: [b_a1HNK]) (%:++) :: forall (t_a1HRk :: [a_a1HNI]) (t_a1HRl :: [a_a1HNI]). Sing t_a1HRk -> Sing t_a1HRl -> Sing (Apply (Apply (:++$) t_a1HRk) t_a1HRl :: [a_a1HNI]) infixr 5 %:++ sHead :: forall (t_a2nE1 :: [a_a2mA1]). Sing t_a2nE1 -> Sing (Apply HeadSym0 t_a2nE1 :: a_a2mA1) sLast :: forall (t_a2nE0 :: [a_a2mA0]). Sing t_a2nE0 -> Sing (Apply LastSym0 t_a2nE0 :: a_a2mA0) sTail :: forall (t_a2nDZ :: [a_a2mzZ]). Sing t_a2nDZ -> Sing (Apply TailSym0 t_a2nDZ :: [a_a2mzZ]) sInit :: forall (t_a2nDY :: [a_a2mzY]). Sing t_a2nDY -> Sing (Apply InitSym0 t_a2nDY :: [a_a2mzY]) sNull :: forall (t_a2nDV :: [a_a2mzX]). Sing t_a2nDV -> Sing (Apply NullSym0 t_a2nDV :: Bool) sReverse :: forall (t_a2nDS :: [a_a2mzW]). Sing t_a2nDS -> Sing (Apply ReverseSym0 t_a2nDS :: [a_a2mzW]) sFoldl :: forall (t_aXQ1 :: TyFun b_aXP3 (TyFun a_aXP2 b_aXP3 -> Type) -> Type) (t_aXQ2 :: b_aXP3) (t_aXQ3 :: [a_aXP2]). Sing t_aXQ1 -> Sing t_aXQ2 -> Sing t_aXQ3 -> Sing (Apply (Apply (Apply FoldlSym0 t_aXQ1) t_aXQ2) t_aXQ3 :: b_aXP3) sFoldl1 :: forall (t_a2nDw :: TyFun a_a2mzN (TyFun a_a2mzN a_a2mzN -> Type) -> Type) (t_a2nDx :: [a_a2mzN]). Sing t_a2nDw -> Sing t_a2nDx -> Sing (Apply (Apply Foldl1Sym0 t_a2nDw) t_a2nDx :: a_a2mzN) sFoldr :: forall (t_a1HRo :: TyFun a_a1HNL (TyFun b_a1HNM b_a1HNM -> Type) -> Type) (t_a1HRp :: b_a1HNM) (t_a1HRq :: [a_a1HNL]). Sing t_a1HRo -> Sing t_a1HRp -> Sing t_a1HRq -> Sing (Apply (Apply (Apply FoldrSym0 t_a1HRo) t_a1HRp) t_a1HRq :: b_a1HNM) sFoldr1 :: forall (t_a2nDu :: TyFun a_a2mzL (TyFun a_a2mzL a_a2mzL -> Type) -> Type) (t_a2nDv :: [a_a2mzL]). Sing t_a2nDu -> Sing t_a2nDv -> Sing (Apply (Apply Foldr1Sym0 t_a2nDu) t_a2nDv :: a_a2mzL) sAnd :: forall (t_a2nDq :: [Bool]). Sing t_a2nDq -> Sing (Apply AndSym0 t_a2nDq :: Bool) sOr :: forall (t_a2nDp :: [Bool]). Sing t_a2nDp -> Sing (Apply OrSym0 t_a2nDp :: Bool) sAny_ :: forall (t_a2jNO :: TyFun a_a2jNu Bool -> Type) (t_a2jNP :: [a_a2jNu]). Sing t_a2jNO -> Sing t_a2jNP -> Sing (Apply (Apply Any_Sym0 t_a2jNO) t_a2jNP :: Bool) sAll :: forall (t_a2nDn :: TyFun a_a2mzH Bool -> Type) (t_a2nDo :: [a_a2mzH]). Sing t_a2nDn -> Sing t_a2nDo -> Sing (Apply (Apply AllSym0 t_a2nDn) t_a2nDo :: Bool) sConcat :: forall (t_a2nDt :: [[a_a2mzK]]). Sing t_a2nDt -> Sing (Apply ConcatSym0 t_a2nDt :: [a_a2mzK]) sConcatMap :: forall (t_a2nDr :: TyFun a_a2mzI [b_a2mzJ] -> Type) (t_a2nDs :: [a_a2mzI]). Sing t_a2nDr -> Sing t_a2nDs -> Sing (Apply (Apply ConcatMapSym0 t_a2nDr) t_a2nDs :: [b_a2mzJ]) sScanl :: forall (t_a2nDi :: TyFun b_a2mzF (TyFun a_a2mzG b_a2mzF -> Type) -> Type) (t_a2nDj :: b_a2mzF) (t_a2nDk :: [a_a2mzG]). Sing t_a2nDi -> Sing t_a2nDj -> Sing t_a2nDk -> Sing (Apply (Apply (Apply ScanlSym0 t_a2nDi) t_a2nDj) t_a2nDk :: [b_a2mzF]) sScanl1 :: forall (t_a2nDl :: TyFun a_a2mzE (TyFun a_a2mzE a_a2mzE -> Type) -> Type) (t_a2nDm :: [a_a2mzE]). Sing t_a2nDl -> Sing t_a2nDm -> Sing (Apply (Apply Scanl1Sym0 t_a2nDl) t_a2nDm :: [a_a2mzE]) sScanr :: forall (t_a2nDf :: TyFun a_a2mzC (TyFun b_a2mzD b_a2mzD -> Type) -> Type) (t_a2nDg :: b_a2mzD) (t_a2nDh :: [a_a2mzC]). Sing t_a2nDf -> Sing t_a2nDg -> Sing t_a2nDh -> Sing (Apply (Apply (Apply ScanrSym0 t_a2nDf) t_a2nDg) t_a2nDh :: [b_a2mzD]) sScanr1 :: forall (t_a2nDd :: TyFun a_a2mzB (TyFun a_a2mzB a_a2mzB -> Type) -> Type) (t_a2nDe :: [a_a2mzB]). Sing t_a2nDd -> Sing t_a2nDe -> Sing (Apply (Apply Scanr1Sym0 t_a2nDd) t_a2nDe :: [a_a2mzB]) sElem :: forall (t_a2nCW :: a_a2mzn) (t_a2nCX :: [a_a2mzn]). SEq a_a2mzn => Sing t_a2nCW -> Sing t_a2nCX -> Sing (Apply (Apply ElemSym0 t_a2nCW) t_a2nCX :: Bool) sNotElem :: forall (t_a2nCU :: a_a2mzm) (t_a2nCV :: [a_a2mzm]). SEq a_a2mzm => Sing t_a2nCU -> Sing t_a2nCV -> Sing (Apply (Apply NotElemSym0 t_a2nCU) t_a2nCV :: Bool) sLookup :: forall (t_a2nBF :: a_a2myd) (t_a2nBG :: [(a_a2myd, b_a2mye)]). SEq a_a2myd => Sing t_a2nBF -> Sing t_a2nBG -> Sing (Apply (Apply LookupSym0 t_a2nBF) t_a2nBG :: Maybe b_a2mye) sZip :: forall (t_a2nCK :: [a_a2mzk]) (t_a2nCL :: [b_a2mzl]). Sing t_a2nCK -> Sing t_a2nCL -> Sing (Apply (Apply ZipSym0 t_a2nCK) t_a2nCL :: [(a_a2mzk, b_a2mzl)]) sZip3 :: forall (t_a2nCH :: [a_a2mzh]) (t_a2nCI :: [b_a2mzi]) (t_a2nCJ :: [c_a2mzj]). Sing t_a2nCH -> Sing t_a2nCI -> Sing t_a2nCJ -> Sing (Apply (Apply (Apply Zip3Sym0 t_a2nCH) t_a2nCI) t_a2nCJ :: [(a_a2mzh, b_a2mzi, c_a2mzj)]) sZipWith :: forall (t_a2nCE :: TyFun a_a2mze (TyFun b_a2mzf c_a2mzg -> Type) -> Type) (t_a2nCF :: [a_a2mze]) (t_a2nCG :: [b_a2mzf]). Sing t_a2nCE -> Sing t_a2nCF -> Sing t_a2nCG -> Sing (Apply (Apply (Apply ZipWithSym0 t_a2nCE) t_a2nCF) t_a2nCG :: [c_a2mzg]) sZipWith3 :: forall (t_a2nCA :: TyFun a_a2mza (TyFun b_a2mzb (TyFun c_a2mzc d_a2mzd -> Type) -> Type) -> Type) (t_a2nCB :: [a_a2mza]) (t_a2nCC :: [b_a2mzb]) (t_a2nCD :: [c_a2mzc]). Sing t_a2nCA -> Sing t_a2nCB -> Sing t_a2nCC -> Sing t_a2nCD -> Sing (Apply (Apply (Apply (Apply ZipWith3Sym0 t_a2nCA) t_a2nCB) t_a2nCC) t_a2nCD :: [d_a2mzd]) sUnzip :: forall (t_a2nCz :: [(a_a2mz8, b_a2mz9)]). Sing t_a2nCz -> Sing (Apply UnzipSym0 t_a2nCz :: ([a_a2mz8], [b_a2mz9])) sUnzip3 :: forall (t_a2nCy :: [(a_a2mz5, b_a2mz6, c_a2mz7)]). Sing t_a2nCy -> Sing (Apply Unzip3Sym0 t_a2nCy :: ([a_a2mz5], [b_a2mz6], [c_a2mz7])) sMaybe_ :: forall (t_a1V6F :: b_a1V6b) (t_a1V6G :: TyFun a_a1V6c b_a1V6b -> Type) (t_a1V6H :: Maybe a_a1V6c). Sing t_a1V6F -> Sing t_a1V6G -> Sing t_a1V6H -> Sing (Apply (Apply (Apply Maybe_Sym0 t_a1V6F) t_a1V6G) t_a1V6H :: b_a1V6b) sEither_ :: forall (t_a1QgR :: TyFun a_a1Qgk c_a1Qgl -> Type) (t_a1QgS :: TyFun b_a1Qgm c_a1Qgl -> Type) (t_a1QgT :: Either a_a1Qgk b_a1Qgm). Sing t_a1QgR -> Sing t_a1QgS -> Sing t_a1QgT -> Sing (Apply (Apply (Apply Either_Sym0 t_a1QgR) t_a1QgS) t_a1QgT :: c_a1Qgl) sFst :: forall (t_a1ThL :: (a_a1TgB, b_a1TgC)). Sing t_a1ThL -> Sing (Apply FstSym0 t_a1ThL :: a_a1TgB) sSnd :: forall (t_a1ThK :: (a_a1Tgz, b_a1TgA)). Sing t_a1ThK -> Sing (Apply SndSym0 t_a1ThK :: b_a1TgA) sCurry :: forall (t_a1ThH :: TyFun (a_a1Tgw, b_a1Tgx) c_a1Tgy -> Type) (t_a1ThI :: a_a1Tgw) (t_a1ThJ :: b_a1Tgx). Sing t_a1ThH -> Sing t_a1ThI -> Sing t_a1ThJ -> Sing (Apply (Apply (Apply CurrySym0 t_a1ThH) t_a1ThI) t_a1ThJ :: c_a1Tgy) sUncurry :: forall (t_a1ThM :: TyFun a_a1Tgt (TyFun b_a1Tgu c_a1Tgv -> Type) -> Type) (t_a1ThN :: (a_a1Tgt, b_a1Tgu)). Sing t_a1ThM -> Sing t_a1ThN -> Sing (Apply (Apply UncurrySym0 t_a1ThM) t_a1ThN :: c_a1Tgv) -- | (Kind) This is the kind of type-level symbols. Declared here because -- class IP needs it data Symbol :: * either_ :: forall a_a1Qgk c_a1Qgl b_a1Qgm. (a_a1Qgk -> c_a1Qgl) -> (b_a1Qgm -> c_a1Qgl) -> Either a_a1Qgk b_a1Qgm -> c_a1Qgl maybe_ :: forall b_a1V6b a_a1V6c. b_a1V6b -> (a_a1V6c -> b_a1V6b) -> Maybe a_a1V6c -> b_a1V6b bool_ :: forall a_a17Df. a_a17Df -> a_a17Df -> Bool -> a_a17Df any_ :: forall a_a2jNu. (a_a2jNu -> Bool) -> [a_a2jNu] -> Bool type FalseSym0 = False type TrueSym0 = True data NotSym0 (l_a17OH :: TyFun Bool Bool) type NotSym1 (t_a17OG :: Bool) = Not t_a17OG data (:&&$) (l_a17OZ :: TyFun Bool (TyFun Bool Bool -> Type)) data (:&&$$) (l_a17P2 :: Bool) (l_a17P1 :: TyFun Bool Bool) type (:&&$$$) (t_a17OX :: Bool) (t_a17OY :: Bool) = (:&&) t_a17OX t_a17OY data (:||$) (l_a17OM :: TyFun Bool (TyFun Bool Bool -> Type)) data (:||$$) (l_a17OP :: Bool) (l_a17OO :: TyFun Bool Bool) type (:||$$$) (t_a17OK :: Bool) (t_a17OL :: Bool) = (:||) t_a17OK t_a17OL type OtherwiseSym0 = Otherwise type NothingSym0 = Nothing data JustSym0 (l_aUOv :: TyFun a822083586 (Maybe a822083586)) type JustSym1 (t_aUOu :: a822083586) = Just t_aUOu data Maybe_Sym0 (l_a1V6k :: TyFun b1627847771 (TyFun (TyFun a1627847772 b1627847771 -> Type) (TyFun (Maybe a1627847772) b1627847771 -> Type) -> Type)) data Maybe_Sym1 (l_a1V6n :: b1627847771) (l_a1V6m :: TyFun (TyFun a1627847772 b1627847771 -> Type) (TyFun (Maybe a1627847772) b1627847771 -> Type)) data Maybe_Sym2 (l_a1V6q :: b1627847771) (l_a1V6r :: TyFun a1627847772 b1627847771 -> Type) (l_a1V6p :: TyFun (Maybe a1627847772) b1627847771) type Maybe_Sym3 (t_a1V6h :: b1627847771) (t_a1V6i :: TyFun a1627847772 b1627847771 -> Type) (t_a1V6j :: Maybe a1627847772) = Maybe_ t_a1V6h t_a1V6i t_a1V6j data LeftSym0 (l_aUOW :: TyFun a1627437720 (Either a1627437720 b1627437721)) type LeftSym1 (t_aUOV :: a1627437720) = Left t_aUOV data RightSym0 (l_aUOZ :: TyFun b1627437721 (Either a1627437720 b1627437721)) type RightSym1 (t_aUOY :: b1627437721) = Right t_aUOY data Either_Sym0 (l_a1Qgv :: TyFun (TyFun a1627829180 c1627829181 -> Type) (TyFun (TyFun b1627829182 c1627829181 -> Type) (TyFun (Either a1627829180 b1627829182) c1627829181 -> Type) -> Type)) data Either_Sym1 (l_a1Qgy :: TyFun a1627829180 c1627829181 -> Type) (l_a1Qgx :: TyFun (TyFun b1627829182 c1627829181 -> Type) (TyFun (Either a1627829180 b1627829182) c1627829181 -> Type)) data Either_Sym2 (l_a1QgB :: TyFun a1627829180 c1627829181 -> Type) (l_a1QgC :: TyFun b1627829182 c1627829181 -> Type) (l_a1QgA :: TyFun (Either a1627829180 b1627829182) c1627829181) type Either_Sym3 (t_a1Qgs :: TyFun a1627829180 c1627829181 -> Type) (t_a1Qgt :: TyFun b1627829182 c1627829181 -> Type) (t_a1Qgu :: Either a1627829180 b1627829182) = Either_ t_a1Qgs t_a1Qgt t_a1Qgu type Tuple0Sym0 = '() data Tuple2Sym0 (l_aUPv :: TyFun a822083586 (TyFun b822083587 (a822083586, b822083587) -> Type)) data Tuple2Sym1 (l_aUPy :: a822083586) (l_aUPx :: TyFun b822083587 (a822083586, b822083587)) type Tuple2Sym2 (t_aUPt :: a822083586) (t_aUPu :: b822083587) = '(t_aUPt, t_aUPu) data Tuple3Sym0 (l_aUPP :: TyFun a822083586 (TyFun b822083587 (TyFun c822083588 (a822083586, b822083587, c822083588) -> Type) -> Type)) data Tuple3Sym1 (l_aUPS :: a822083586) (l_aUPR :: TyFun b822083587 (TyFun c822083588 (a822083586, b822083587, c822083588) -> Type)) data Tuple3Sym2 (l_aUPV :: a822083586) (l_aUPW :: b822083587) (l_aUPU :: TyFun c822083588 (a822083586, b822083587, c822083588)) type Tuple3Sym3 (t_aUPM :: a822083586) (t_aUPN :: b822083587) (t_aUPO :: c822083588) = '(t_aUPM, t_aUPN, t_aUPO) data Tuple4Sym0 (l_aUQj :: TyFun a822083586 (TyFun b822083587 (TyFun c822083588 (TyFun d822083589 (a822083586, b822083587, c822083588, d822083589) -> Type) -> Type) -> Type)) data Tuple4Sym1 (l_aUQm :: a822083586) (l_aUQl :: TyFun b822083587 (TyFun c822083588 (TyFun d822083589 (a822083586, b822083587, c822083588, d822083589) -> Type) -> Type)) data Tuple4Sym2 (l_aUQp :: a822083586) (l_aUQq :: b822083587) (l_aUQo :: TyFun c822083588 (TyFun d822083589 (a822083586, b822083587, c822083588, d822083589) -> Type)) data Tuple4Sym3 (l_aUQt :: a822083586) (l_aUQu :: b822083587) (l_aUQv :: c822083588) (l_aUQs :: TyFun d822083589 (a822083586, b822083587, c822083588, d822083589)) type Tuple4Sym4 (t_aUQf :: a822083586) (t_aUQg :: b822083587) (t_aUQh :: c822083588) (t_aUQi :: d822083589) = '(t_aUQf, t_aUQg, t_aUQh, t_aUQi) data Tuple5Sym0 (l_aUQY :: TyFun a822083586 (TyFun b822083587 (TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (a822083586, b822083587, c822083588, d822083589, e822083590) -> Type) -> Type) -> Type) -> Type)) data Tuple5Sym1 (l_aUR1 :: a822083586) (l_aUR0 :: TyFun b822083587 (TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (a822083586, b822083587, c822083588, d822083589, e822083590) -> Type) -> Type) -> Type)) data Tuple5Sym2 (l_aUR4 :: a822083586) (l_aUR5 :: b822083587) (l_aUR3 :: TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (a822083586, b822083587, c822083588, d822083589, e822083590) -> Type) -> Type)) data Tuple5Sym3 (l_aUR8 :: a822083586) (l_aUR9 :: b822083587) (l_aURa :: c822083588) (l_aUR7 :: TyFun d822083589 (TyFun e822083590 (a822083586, b822083587, c822083588, d822083589, e822083590) -> Type)) data Tuple5Sym4 (l_aURd :: a822083586) (l_aURe :: b822083587) (l_aURf :: c822083588) (l_aURg :: d822083589) (l_aURc :: TyFun e822083590 (a822083586, b822083587, c822083588, d822083589, e822083590)) type Tuple5Sym5 (t_aUQT :: a822083586) (t_aUQU :: b822083587) (t_aUQV :: c822083588) (t_aUQW :: d822083589) (t_aUQX :: e822083590) = '(t_aUQT, t_aUQU, t_aUQV, t_aUQW, t_aUQX) data Tuple6Sym0 (l_aURP :: TyFun a822083586 (TyFun b822083587 (TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (TyFun f822083591 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591) -> Type) -> Type) -> Type) -> Type) -> Type)) data Tuple6Sym1 (l_aURS :: a822083586) (l_aURR :: TyFun b822083587 (TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (TyFun f822083591 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591) -> Type) -> Type) -> Type) -> Type)) data Tuple6Sym2 (l_aURV :: a822083586) (l_aURW :: b822083587) (l_aURU :: TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (TyFun f822083591 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591) -> Type) -> Type) -> Type)) data Tuple6Sym3 (l_aURZ :: a822083586) (l_aUS0 :: b822083587) (l_aUS1 :: c822083588) (l_aURY :: TyFun d822083589 (TyFun e822083590 (TyFun f822083591 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591) -> Type) -> Type)) data Tuple6Sym4 (l_aUS4 :: a822083586) (l_aUS5 :: b822083587) (l_aUS6 :: c822083588) (l_aUS7 :: d822083589) (l_aUS3 :: TyFun e822083590 (TyFun f822083591 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591) -> Type)) data Tuple6Sym5 (l_aUSa :: a822083586) (l_aUSb :: b822083587) (l_aUSc :: c822083588) (l_aUSd :: d822083589) (l_aUSe :: e822083590) (l_aUS9 :: TyFun f822083591 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591)) type Tuple6Sym6 (t_aURJ :: a822083586) (t_aURK :: b822083587) (t_aURL :: c822083588) (t_aURM :: d822083589) (t_aURN :: e822083590) (t_aURO :: f822083591) = '(t_aURJ, t_aURK, t_aURL, t_aURM, t_aURN, t_aURO) data Tuple7Sym0 (l_aUST :: TyFun a822083586 (TyFun b822083587 (TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (TyFun f822083591 (TyFun g822083592 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591, g822083592) -> Type) -> Type) -> Type) -> Type) -> Type) -> Type)) data Tuple7Sym1 (l_aUSW :: a822083586) (l_aUSV :: TyFun b822083587 (TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (TyFun f822083591 (TyFun g822083592 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591, g822083592) -> Type) -> Type) -> Type) -> Type) -> Type)) data Tuple7Sym2 (l_aUSZ :: a822083586) (l_aUT0 :: b822083587) (l_aUSY :: TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (TyFun f822083591 (TyFun g822083592 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591, g822083592) -> Type) -> Type) -> Type) -> Type)) data Tuple7Sym3 (l_aUT3 :: a822083586) (l_aUT4 :: b822083587) (l_aUT5 :: c822083588) (l_aUT2 :: TyFun d822083589 (TyFun e822083590 (TyFun f822083591 (TyFun g822083592 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591, g822083592) -> Type) -> Type) -> Type)) data Tuple7Sym4 (l_aUT8 :: a822083586) (l_aUT9 :: b822083587) (l_aUTa :: c822083588) (l_aUTb :: d822083589) (l_aUT7 :: TyFun e822083590 (TyFun f822083591 (TyFun g822083592 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591, g822083592) -> Type) -> Type)) data Tuple7Sym5 (l_aUTe :: a822083586) (l_aUTf :: b822083587) (l_aUTg :: c822083588) (l_aUTh :: d822083589) (l_aUTi :: e822083590) (l_aUTd :: TyFun f822083591 (TyFun g822083592 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591, g822083592) -> Type)) data Tuple7Sym6 (l_aUTl :: a822083586) (l_aUTm :: b822083587) (l_aUTn :: c822083588) (l_aUTo :: d822083589) (l_aUTp :: e822083590) (l_aUTq :: f822083591) (l_aUTk :: TyFun g822083592 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591, g822083592)) type Tuple7Sym7 (t_aUSM :: a822083586) (t_aUSN :: b822083587) (t_aUSO :: c822083588) (t_aUSP :: d822083589) (t_aUSQ :: e822083590) (t_aUSR :: f822083591) (t_aUSS :: g822083592) = '(t_aUSM, t_aUSN, t_aUSO, t_aUSP, t_aUSQ, t_aUSR, t_aUSS) data FstSym0 (l_a1Tho :: TyFun (a1627840729, b1627840730) a1627840729) type FstSym1 (t_a1Thn :: (a1627840729, b1627840730)) = Fst t_a1Thn data SndSym0 (l_a1Thg :: TyFun (a1627840727, b1627840728) b1627840728) type SndSym1 (t_a1Thf :: (a1627840727, b1627840728)) = Snd t_a1Thf data CurrySym0 (l_a1Th0 :: TyFun (TyFun (a1627840724, b1627840725) c1627840726 -> Type) (TyFun a1627840724 (TyFun b1627840725 c1627840726 -> Type) -> Type)) data CurrySym1 (l_a1Th3 :: TyFun (a1627840724, b1627840725) c1627840726 -> Type) (l_a1Th2 :: TyFun a1627840724 (TyFun b1627840725 c1627840726 -> Type)) data CurrySym2 (l_a1Th6 :: TyFun (a1627840724, b1627840725) c1627840726 -> Type) (l_a1Th7 :: a1627840724) (l_a1Th5 :: TyFun b1627840725 c1627840726) type CurrySym3 (t_a1TgX :: TyFun (a1627840724, b1627840725) c1627840726 -> Type) (t_a1TgY :: a1627840724) (t_a1TgZ :: b1627840725) = Curry t_a1TgX t_a1TgY t_a1TgZ data UncurrySym0 (l_a1Thx :: TyFun (TyFun a1627840721 (TyFun b1627840722 c1627840723 -> Type) -> Type) (TyFun (a1627840721, b1627840722) c1627840723 -> Type)) data UncurrySym1 (l_a1ThA :: TyFun a1627840721 (TyFun b1627840722 c1627840723 -> Type) -> Type) (l_a1Thz :: TyFun (a1627840721, b1627840722) c1627840723) type UncurrySym2 (t_a1Thv :: TyFun a1627840721 (TyFun b1627840722 c1627840723 -> Type) -> Type) (t_a1Thw :: (a1627840721, b1627840722)) = Uncurry t_a1Thv t_a1Thw data IdSym0 (l_a1HPV :: TyFun a1627796653 a1627796653) type IdSym1 (t_a1HPU :: a1627796653) = Id t_a1HPU data ConstSym0 (l_a1HPu :: TyFun a1627796651 (TyFun b1627796652 a1627796651 -> Type)) data ConstSym1 (l_a1HPx :: a1627796651) (l_a1HPw :: TyFun b1627796652 a1627796651) type ConstSym2 (t_a1HPs :: a1627796651) (t_a1HPt :: b1627796652) = Const t_a1HPs t_a1HPt data (:.$) (l_a1HOP :: TyFun (TyFun b1627796648 c1627796649 -> Type) (TyFun (TyFun a1627796650 b1627796648 -> Type) (TyFun a1627796650 c1627796649 -> Type) -> Type)) data (:.$$) (l_a1HOS :: TyFun b1627796648 c1627796649 -> Type) (l_a1HOR :: TyFun (TyFun a1627796650 b1627796648 -> Type) (TyFun a1627796650 c1627796649 -> Type)) data (:.$$$) (l_a1HOV :: TyFun b1627796648 c1627796649 -> Type) (l_a1HOW :: TyFun a1627796650 b1627796648 -> Type) (l_a1HOU :: TyFun a1627796650 c1627796649) 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_a1HOx :: TyFun (TyFun a1627796645 (TyFun b1627796646 c1627796647 -> Type) -> Type) (TyFun b1627796646 (TyFun a1627796645 c1627796647 -> Type) -> Type)) data FlipSym1 (l_a1HOA :: TyFun a1627796645 (TyFun b1627796646 c1627796647 -> Type) -> Type) (l_a1HOz :: TyFun b1627796646 (TyFun a1627796645 c1627796647 -> Type)) data FlipSym2 (l_a1HOD :: TyFun a1627796645 (TyFun b1627796646 c1627796647 -> Type) -> Type) (l_a1HOE :: b1627796646) (l_a1HOC :: TyFun a1627796645 c1627796647) data AsTypeOfSym0 (l_a1HPL :: TyFun a1627796644 (TyFun a1627796644 a1627796644 -> Type)) data AsTypeOfSym1 (l_a1HPO :: a1627796644) (l_a1HPN :: TyFun a1627796644 a1627796644) type AsTypeOfSym2 (t_a1HPJ :: a1627796644) (t_a1HPK :: a1627796644) = AsTypeOf t_a1HPJ t_a1HPK data SeqSym0 (l_a1HOj :: TyFun a1627796642 (TyFun b1627796643 b1627796643 -> Type)) data SeqSym1 (l_a1HOm :: a1627796642) (l_a1HOl :: TyFun b1627796643 b1627796643) type SeqSym2 (t_a1HOh :: a1627796642) (t_a1HOi :: b1627796643) = Seq t_a1HOh t_a1HOi data (:$) (l_aUOF :: TyFun a822083586 (TyFun [a822083586] [a822083586] -> Type)) data (:$$) (l_aUOI :: a822083586) (l_aUOH :: TyFun [a822083586] [a822083586]) type (:$$$) (t_aUOD :: a822083586) (t_aUOE :: [a822083586]) = (:) t_aUOD t_aUOE type NilSym0 = '[] data MapSym0 (l_a1HQe :: TyFun (TyFun a1627796655 b1627796656 -> Type) (TyFun [a1627796655] [b1627796656] -> Type)) data MapSym1 (l_a1HQh :: TyFun a1627796655 b1627796656 -> Type) (l_a1HQg :: TyFun [a1627796655] [b1627796656]) type MapSym2 (t_a1HQc :: TyFun a1627796655 b1627796656 -> Type) (t_a1HQd :: [a1627796655]) = Map t_a1HQc t_a1HQd data ReverseSym0 (l_a2nyD :: TyFun [a1627953404] [a1627953404]) type ReverseSym1 (t_a2nyC :: [a1627953404]) = Reverse t_a2nyC data (:++$$) (l_a1HQ4 :: [a1627796654]) (l_a1HQ3 :: TyFun [a1627796654] [a1627796654]) data (:++$) (l_a1HQ1 :: TyFun [a1627796654] (TyFun [a1627796654] [a1627796654] -> Type)) data HeadSym0 (l_a2nB8 :: TyFun [a1627953409] a1627953409) type HeadSym1 (t_a2nB7 :: [a1627953409]) = Head t_a2nB7 data LastSym0 (l_a2nAY :: TyFun [a1627953408] a1627953408) type LastSym1 (t_a2nAX :: [a1627953408]) = Last t_a2nAX data TailSym0 (l_a2nAQ :: TyFun [a1627953407] [a1627953407]) type TailSym1 (t_a2nAP :: [a1627953407]) = Tail t_a2nAP data InitSym0 (l_a2nAj :: TyFun [a1627953406] [a1627953406]) type InitSym1 (t_a2nAi :: [a1627953406]) = Init t_a2nAi data NullSym0 (l_a2nzc :: TyFun [a1627953405] Bool) type NullSym1 (t_a2nzb :: [a1627953405]) = Null t_a2nzb data FoldlSym0 (l_aXPg :: TyFun (TyFun b1627619913 (TyFun a1627619912 b1627619913 -> Type) -> Type) (TyFun b1627619913 (TyFun [a1627619912] b1627619913 -> Type) -> Type)) data FoldlSym1 (l_aXPj :: TyFun b1627619913 (TyFun a1627619912 b1627619913 -> Type) -> Type) (l_aXPi :: TyFun b1627619913 (TyFun [a1627619912] b1627619913 -> Type)) data FoldlSym2 (l_aXPm :: TyFun b1627619913 (TyFun a1627619912 b1627619913 -> Type) -> Type) (l_aXPn :: b1627619913) (l_aXPl :: TyFun [a1627619912] b1627619913) type FoldlSym3 (t_aXPd :: TyFun b1627619913 (TyFun a1627619912 b1627619913 -> Type) -> Type) (t_aXPe :: b1627619913) (t_aXPf :: [a1627619912]) = Foldl t_aXPd t_aXPe t_aXPf data Foldl1Sym0 (l_a2nml :: TyFun (TyFun a1627953395 (TyFun a1627953395 a1627953395 -> Type) -> Type) (TyFun [a1627953395] a1627953395 -> Type)) data Foldl1Sym1 (l_a2nmo :: TyFun a1627953395 (TyFun a1627953395 a1627953395 -> Type) -> Type) (l_a2nmn :: TyFun [a1627953395] a1627953395) type Foldl1Sym2 (t_a2nmj :: TyFun a1627953395 (TyFun a1627953395 a1627953395 -> Type) -> Type) (t_a2nmk :: [a1627953395]) = Foldl1 t_a2nmj t_a2nmk data FoldrSym0 (l_a1HQu :: TyFun (TyFun a1627796657 (TyFun b1627796658 b1627796658 -> Type) -> Type) (TyFun b1627796658 (TyFun [a1627796657] b1627796658 -> Type) -> Type)) data FoldrSym1 (l_a1HQx :: TyFun a1627796657 (TyFun b1627796658 b1627796658 -> Type) -> Type) (l_a1HQw :: TyFun b1627796658 (TyFun [a1627796657] b1627796658 -> Type)) data FoldrSym2 (l_a1HQA :: TyFun a1627796657 (TyFun b1627796658 b1627796658 -> Type) -> Type) (l_a1HQB :: b1627796658) (l_a1HQz :: TyFun [a1627796657] b1627796658) type FoldrSym3 (t_a1HQr :: TyFun a1627796657 (TyFun b1627796658 b1627796658 -> Type) -> Type) (t_a1HQs :: b1627796658) (t_a1HQt :: [a1627796657]) = Foldr t_a1HQr t_a1HQs t_a1HQt data Foldr1Sym0 (l_a2nlI :: TyFun (TyFun a1627953393 (TyFun a1627953393 a1627953393 -> Type) -> Type) (TyFun [a1627953393] a1627953393 -> Type)) data Foldr1Sym1 (l_a2nlL :: TyFun a1627953393 (TyFun a1627953393 a1627953393 -> Type) -> Type) (l_a2nlK :: TyFun [a1627953393] a1627953393) type Foldr1Sym2 (t_a2nlG :: TyFun a1627953393 (TyFun a1627953393 a1627953393 -> Type) -> Type) (t_a2nlH :: [a1627953393]) = Foldr1 t_a2nlG t_a2nlH data ConcatSym0 (l_a2nlC :: TyFun [[a1627953392]] [a1627953392]) type ConcatSym1 (t_a2nlB :: [[a1627953392]]) = Concat t_a2nlB data ConcatMapSym0 (l_a2nlo :: TyFun (TyFun a1627953390 [b1627953391] -> Type) (TyFun [a1627953390] [b1627953391] -> Type)) data ConcatMapSym1 (l_a2nlr :: TyFun a1627953390 [b1627953391] -> Type) (l_a2nlq :: TyFun [a1627953390] [b1627953391]) type ConcatMapSym2 (t_a2nlm :: TyFun a1627953390 [b1627953391] -> Type) (t_a2nln :: [a1627953390]) = ConcatMap t_a2nlm t_a2nln data AndSym0 (l_a2nlh :: TyFun [Bool] Bool) type AndSym1 (t_a2nlg :: [Bool]) = And t_a2nlg data OrSym0 (l_a2nlb :: TyFun [Bool] Bool) type OrSym1 (t_a2nla :: [Bool]) = Or t_a2nla data Any_Sym0 (l_a2jNB :: TyFun (TyFun a1627942712 Bool -> Type) (TyFun [a1627942712] Bool -> Type)) data Any_Sym1 (l_a2jNE :: TyFun a1627942712 Bool -> Type) (l_a2jND :: TyFun [a1627942712] Bool) type Any_Sym2 (t_a2jNz :: TyFun a1627942712 Bool -> Type) (t_a2jNA :: [a1627942712]) = Any_ t_a2jNz t_a2jNA data AllSym0 (l_a2nkX :: TyFun (TyFun a1627953389 Bool -> Type) (TyFun [a1627953389] Bool -> Type)) data AllSym1 (l_a2nl0 :: TyFun a1627953389 Bool -> Type) (l_a2nkZ :: TyFun [a1627953389] Bool) type AllSym2 (t_a2nkV :: TyFun a1627953389 Bool -> Type) (t_a2nkW :: [a1627953389]) = All t_a2nkV t_a2nkW data ScanlSym0 (l_a2nkm :: TyFun (TyFun b1627953387 (TyFun a1627953388 b1627953387 -> Type) -> Type) (TyFun b1627953387 (TyFun [a1627953388] [b1627953387] -> Type) -> Type)) data ScanlSym1 (l_a2nkp :: TyFun b1627953387 (TyFun a1627953388 b1627953387 -> Type) -> Type) (l_a2nko :: TyFun b1627953387 (TyFun [a1627953388] [b1627953387] -> Type)) data ScanlSym2 (l_a2nks :: TyFun b1627953387 (TyFun a1627953388 b1627953387 -> Type) -> Type) (l_a2nkt :: b1627953387) (l_a2nkr :: TyFun [a1627953388] [b1627953387]) type ScanlSym3 (t_a2nkj :: TyFun b1627953387 (TyFun a1627953388 b1627953387 -> Type) -> Type) (t_a2nkk :: b1627953387) (t_a2nkl :: [a1627953388]) = Scanl t_a2nkj t_a2nkk t_a2nkl data Scanl1Sym0 (l_a2nkI :: TyFun (TyFun a1627953386 (TyFun a1627953386 a1627953386 -> Type) -> Type) (TyFun [a1627953386] [a1627953386] -> Type)) data Scanl1Sym1 (l_a2nkL :: TyFun a1627953386 (TyFun a1627953386 a1627953386 -> Type) -> Type) (l_a2nkK :: TyFun [a1627953386] [a1627953386]) type Scanl1Sym2 (t_a2nkG :: TyFun a1627953386 (TyFun a1627953386 a1627953386 -> Type) -> Type) (t_a2nkH :: [a1627953386]) = Scanl1 t_a2nkG t_a2nkH data ScanrSym0 (l_a2njB :: TyFun (TyFun a1627953384 (TyFun b1627953385 b1627953385 -> Type) -> Type) (TyFun b1627953385 (TyFun [a1627953384] [b1627953385] -> Type) -> Type)) data ScanrSym1 (l_a2njE :: TyFun a1627953384 (TyFun b1627953385 b1627953385 -> Type) -> Type) (l_a2njD :: TyFun b1627953385 (TyFun [a1627953384] [b1627953385] -> Type)) data ScanrSym2 (l_a2njH :: TyFun a1627953384 (TyFun b1627953385 b1627953385 -> Type) -> Type) (l_a2njI :: b1627953385) (l_a2njG :: TyFun [a1627953384] [b1627953385]) type ScanrSym3 (t_a2njy :: TyFun a1627953384 (TyFun b1627953385 b1627953385 -> Type) -> Type) (t_a2njz :: b1627953385) (t_a2njA :: [a1627953384]) = Scanr t_a2njy t_a2njz t_a2njA data Scanr1Sym0 (l_a2niz :: TyFun (TyFun a1627953383 (TyFun a1627953383 a1627953383 -> Type) -> Type) (TyFun [a1627953383] [a1627953383] -> Type)) data Scanr1Sym1 (l_a2niC :: TyFun a1627953383 (TyFun a1627953383 a1627953383 -> Type) -> Type) (l_a2niB :: TyFun [a1627953383] [a1627953383]) type Scanr1Sym2 (t_a2nix :: TyFun a1627953383 (TyFun a1627953383 a1627953383 -> Type) -> Type) (t_a2niy :: [a1627953383]) = Scanr1 t_a2nix t_a2niy data ElemSym0 (l_a2naG :: TyFun a1627953369 (TyFun [a1627953369] Bool -> Type)) data ElemSym1 (l_a2naJ :: a1627953369) (l_a2naI :: TyFun [a1627953369] Bool) type ElemSym2 (t_a2naE :: a1627953369) (t_a2naF :: [a1627953369]) = Elem t_a2naE t_a2naF data NotElemSym0 (l_a2nar :: TyFun a1627953368 (TyFun [a1627953368] Bool -> Type)) data NotElemSym1 (l_a2nau :: a1627953368) (l_a2nat :: TyFun [a1627953368] Bool) type NotElemSym2 (t_a2nap :: a1627953368) (t_a2naq :: [a1627953368]) = NotElem t_a2nap t_a2naq data ZipSym0 (l_a2n8o :: TyFun [a1627953366] (TyFun [b1627953367] [(a1627953366, b1627953367)] -> Type)) data ZipSym1 (l_a2n8r :: [a1627953366]) (l_a2n8q :: TyFun [b1627953367] [(a1627953366, b1627953367)]) type ZipSym2 (t_a2n8m :: [a1627953366]) (t_a2n8n :: [b1627953367]) = Zip t_a2n8m t_a2n8n data Zip3Sym0 (l_a2n7c :: TyFun [a1627953363] (TyFun [b1627953364] (TyFun [c1627953365] [(a1627953363, b1627953364, c1627953365)] -> Type) -> Type)) data Zip3Sym1 (l_a2n7f :: [a1627953363]) (l_a2n7e :: TyFun [b1627953364] (TyFun [c1627953365] [(a1627953363, b1627953364, c1627953365)] -> Type)) data Zip3Sym2 (l_a2n7i :: [a1627953363]) (l_a2n7j :: [b1627953364]) (l_a2n7h :: TyFun [c1627953365] [(a1627953363, b1627953364, c1627953365)]) type Zip3Sym3 (t_a2n79 :: [a1627953363]) (t_a2n7a :: [b1627953364]) (t_a2n7b :: [c1627953365]) = Zip3 t_a2n79 t_a2n7a t_a2n7b data ZipWithSym0 (l_a2n6x :: TyFun (TyFun a1627953360 (TyFun b1627953361 c1627953362 -> Type) -> Type) (TyFun [a1627953360] (TyFun [b1627953361] [c1627953362] -> Type) -> Type)) data ZipWithSym1 (l_a2n6A :: TyFun a1627953360 (TyFun b1627953361 c1627953362 -> Type) -> Type) (l_a2n6z :: TyFun [a1627953360] (TyFun [b1627953361] [c1627953362] -> Type)) data ZipWithSym2 (l_a2n6D :: TyFun a1627953360 (TyFun b1627953361 c1627953362 -> Type) -> Type) (l_a2n6E :: [a1627953360]) (l_a2n6C :: TyFun [b1627953361] [c1627953362]) type ZipWithSym3 (t_a2n6u :: TyFun a1627953360 (TyFun b1627953361 c1627953362 -> Type) -> Type) (t_a2n6v :: [a1627953360]) (t_a2n6w :: [b1627953361]) = ZipWith t_a2n6u t_a2n6v t_a2n6w data ZipWith3Sym0 (l_a2n4S :: TyFun (TyFun a1627953356 (TyFun b1627953357 (TyFun c1627953358 d1627953359 -> Type) -> Type) -> Type) (TyFun [a1627953356] (TyFun [b1627953357] (TyFun [c1627953358] [d1627953359] -> Type) -> Type) -> Type)) data ZipWith3Sym1 (l_a2n4V :: TyFun a1627953356 (TyFun b1627953357 (TyFun c1627953358 d1627953359 -> Type) -> Type) -> Type) (l_a2n4U :: TyFun [a1627953356] (TyFun [b1627953357] (TyFun [c1627953358] [d1627953359] -> Type) -> Type)) data ZipWith3Sym2 (l_a2n4Y :: TyFun a1627953356 (TyFun b1627953357 (TyFun c1627953358 d1627953359 -> Type) -> Type) -> Type) (l_a2n4Z :: [a1627953356]) (l_a2n4X :: TyFun [b1627953357] (TyFun [c1627953358] [d1627953359] -> Type)) data ZipWith3Sym3 (l_a2n52 :: TyFun a1627953356 (TyFun b1627953357 (TyFun c1627953358 d1627953359 -> Type) -> Type) -> Type) (l_a2n53 :: [a1627953356]) (l_a2n54 :: [b1627953357]) (l_a2n51 :: TyFun [c1627953358] [d1627953359]) data UnzipSym0 (l_a2n4l :: TyFun [(a1627953354, b1627953355)] ([a1627953354], [b1627953355])) type UnzipSym1 (t_a2n4k :: [(a1627953354, b1627953355)]) = Unzip t_a2n4k -- | 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_ :: forall a_a2jNu. (a_a2jNu -> Bool) -> [a_a2jNu] -> Bool type NilSym0 = '[] data (:$) (l_aUOF :: TyFun a822083586 (TyFun [a822083586] [a822083586] -> Type)) data (:$$) (l_aUOI :: a822083586) (l_aUOH :: TyFun [a822083586] [a822083586]) type (:$$$) (t_aUOD :: a822083586) (t_aUOE :: [a822083586]) = (:) t_aUOD t_aUOE type (:++$$$) (t_a1HPZ :: [a1627796654]) (t_a1HQ0 :: [a1627796654]) = (:++) t_a1HPZ t_a1HQ0 data (:++$$) (l_a1HQ4 :: [a1627796654]) (l_a1HQ3 :: TyFun [a1627796654] [a1627796654]) data (:++$) (l_a1HQ1 :: TyFun [a1627796654] (TyFun [a1627796654] [a1627796654] -> Type)) data HeadSym0 (l_a2nB8 :: TyFun [a1627953409] a1627953409) type HeadSym1 (t_a2nB7 :: [a1627953409]) = Head t_a2nB7 data LastSym0 (l_a2nAY :: TyFun [a1627953408] a1627953408) type LastSym1 (t_a2nAX :: [a1627953408]) = Last t_a2nAX data TailSym0 (l_a2nAQ :: TyFun [a1627953407] [a1627953407]) type TailSym1 (t_a2nAP :: [a1627953407]) = Tail t_a2nAP data InitSym0 (l_a2nAj :: TyFun [a1627953406] [a1627953406]) type InitSym1 (t_a2nAi :: [a1627953406]) = Init t_a2nAi data NullSym0 (l_a2nzc :: TyFun [a1627953405] Bool) type NullSym1 (t_a2nzb :: [a1627953405]) = Null t_a2nzb data MapSym0 (l_a1HQe :: TyFun (TyFun a1627796655 b1627796656 -> Type) (TyFun [a1627796655] [b1627796656] -> Type)) data MapSym1 (l_a1HQh :: TyFun a1627796655 b1627796656 -> Type) (l_a1HQg :: TyFun [a1627796655] [b1627796656]) type MapSym2 (t_a1HQc :: TyFun a1627796655 b1627796656 -> Type) (t_a1HQd :: [a1627796655]) = Map t_a1HQc t_a1HQd data ReverseSym0 (l_a2nyD :: TyFun [a1627953404] [a1627953404]) type ReverseSym1 (t_a2nyC :: [a1627953404]) = Reverse t_a2nyC data IntersperseSym0 (l_a2nye :: TyFun a1627953403 (TyFun [a1627953403] [a1627953403] -> Type)) data IntersperseSym1 (l_a2nyh :: a1627953403) (l_a2nyg :: TyFun [a1627953403] [a1627953403]) type IntersperseSym2 (t_a2nyc :: a1627953403) (t_a2nyd :: [a1627953403]) = Intersperse t_a2nyc t_a2nyd data IntercalateSym0 (l_a2nyt :: TyFun [a1627953402] (TyFun [[a1627953402]] [a1627953402] -> Type)) data IntercalateSym1 (l_a2nyw :: [a1627953402]) (l_a2nyv :: TyFun [[a1627953402]] [a1627953402]) type IntercalateSym2 (t_a2nyr :: [a1627953402]) (t_a2nys :: [[a1627953402]]) = Intercalate t_a2nyr t_a2nys data SubsequencesSym0 (l_a2ny8 :: TyFun [a1627953401] [[a1627953401]]) type SubsequencesSym1 (t_a2ny7 :: [a1627953401]) = Subsequences t_a2ny7 data PermutationsSym0 (l_a2nrq :: TyFun [a1627953398] [[a1627953398]]) type PermutationsSym1 (t_a2nrp :: [a1627953398]) = Permutations t_a2nrp data FoldlSym0 (l_aXPg :: TyFun (TyFun b1627619913 (TyFun a1627619912 b1627619913 -> Type) -> Type) (TyFun b1627619913 (TyFun [a1627619912] b1627619913 -> Type) -> Type)) data FoldlSym1 (l_aXPj :: TyFun b1627619913 (TyFun a1627619912 b1627619913 -> Type) -> Type) (l_aXPi :: TyFun b1627619913 (TyFun [a1627619912] b1627619913 -> Type)) data FoldlSym2 (l_aXPm :: TyFun b1627619913 (TyFun a1627619912 b1627619913 -> Type) -> Type) (l_aXPn :: b1627619913) (l_aXPl :: TyFun [a1627619912] b1627619913) type FoldlSym3 (t_aXPd :: TyFun b1627619913 (TyFun a1627619912 b1627619913 -> Type) -> Type) (t_aXPe :: b1627619913) (t_aXPf :: [a1627619912]) = Foldl t_aXPd t_aXPe t_aXPf data Foldl'Sym0 (l_a2npR :: TyFun (TyFun b1627953397 (TyFun a1627953396 b1627953397 -> Type) -> Type) (TyFun b1627953397 (TyFun [a1627953396] b1627953397 -> Type) -> Type)) data Foldl'Sym1 (l_a2npU :: TyFun b1627953397 (TyFun a1627953396 b1627953397 -> Type) -> Type) (l_a2npT :: TyFun b1627953397 (TyFun [a1627953396] b1627953397 -> Type)) data Foldl'Sym2 (l_a2npX :: TyFun b1627953397 (TyFun a1627953396 b1627953397 -> Type) -> Type) (l_a2npY :: b1627953397) (l_a2npW :: TyFun [a1627953396] b1627953397) type Foldl'Sym3 (t_a2npO :: TyFun b1627953397 (TyFun a1627953396 b1627953397 -> Type) -> Type) (t_a2npP :: b1627953397) (t_a2npQ :: [a1627953396]) = Foldl' t_a2npO t_a2npP t_a2npQ data Foldl1Sym0 (l_a2nml :: TyFun (TyFun a1627953395 (TyFun a1627953395 a1627953395 -> Type) -> Type) (TyFun [a1627953395] a1627953395 -> Type)) data Foldl1Sym1 (l_a2nmo :: TyFun a1627953395 (TyFun a1627953395 a1627953395 -> Type) -> Type) (l_a2nmn :: TyFun [a1627953395] a1627953395) type Foldl1Sym2 (t_a2nmj :: TyFun a1627953395 (TyFun a1627953395 a1627953395 -> Type) -> Type) (t_a2nmk :: [a1627953395]) = Foldl1 t_a2nmj t_a2nmk data Foldl1'Sym0 (l_a2nrc :: TyFun (TyFun a1627953394 (TyFun a1627953394 a1627953394 -> Type) -> Type) (TyFun [a1627953394] a1627953394 -> Type)) data Foldl1'Sym1 (l_a2nrf :: TyFun a1627953394 (TyFun a1627953394 a1627953394 -> Type) -> Type) (l_a2nre :: TyFun [a1627953394] a1627953394) type Foldl1'Sym2 (t_a2nra :: TyFun a1627953394 (TyFun a1627953394 a1627953394 -> Type) -> Type) (t_a2nrb :: [a1627953394]) = Foldl1' t_a2nra t_a2nrb data FoldrSym0 (l_a1HQu :: TyFun (TyFun a1627796657 (TyFun b1627796658 b1627796658 -> Type) -> Type) (TyFun b1627796658 (TyFun [a1627796657] b1627796658 -> Type) -> Type)) data FoldrSym1 (l_a1HQx :: TyFun a1627796657 (TyFun b1627796658 b1627796658 -> Type) -> Type) (l_a1HQw :: TyFun b1627796658 (TyFun [a1627796657] b1627796658 -> Type)) data FoldrSym2 (l_a1HQA :: TyFun a1627796657 (TyFun b1627796658 b1627796658 -> Type) -> Type) (l_a1HQB :: b1627796658) (l_a1HQz :: TyFun [a1627796657] b1627796658) type FoldrSym3 (t_a1HQr :: TyFun a1627796657 (TyFun b1627796658 b1627796658 -> Type) -> Type) (t_a1HQs :: b1627796658) (t_a1HQt :: [a1627796657]) = Foldr t_a1HQr t_a1HQs t_a1HQt data Foldr1Sym0 (l_a2nlI :: TyFun (TyFun a1627953393 (TyFun a1627953393 a1627953393 -> Type) -> Type) (TyFun [a1627953393] a1627953393 -> Type)) data Foldr1Sym1 (l_a2nlL :: TyFun a1627953393 (TyFun a1627953393 a1627953393 -> Type) -> Type) (l_a2nlK :: TyFun [a1627953393] a1627953393) type Foldr1Sym2 (t_a2nlG :: TyFun a1627953393 (TyFun a1627953393 a1627953393 -> Type) -> Type) (t_a2nlH :: [a1627953393]) = Foldr1 t_a2nlG t_a2nlH data ConcatSym0 (l_a2nlC :: TyFun [[a1627953392]] [a1627953392]) type ConcatSym1 (t_a2nlB :: [[a1627953392]]) = Concat t_a2nlB data ConcatMapSym0 (l_a2nlo :: TyFun (TyFun a1627953390 [b1627953391] -> Type) (TyFun [a1627953390] [b1627953391] -> Type)) data ConcatMapSym1 (l_a2nlr :: TyFun a1627953390 [b1627953391] -> Type) (l_a2nlq :: TyFun [a1627953390] [b1627953391]) type ConcatMapSym2 (t_a2nlm :: TyFun a1627953390 [b1627953391] -> Type) (t_a2nln :: [a1627953390]) = ConcatMap t_a2nlm t_a2nln data AndSym0 (l_a2nlh :: TyFun [Bool] Bool) type AndSym1 (t_a2nlg :: [Bool]) = And t_a2nlg data OrSym0 (l_a2nlb :: TyFun [Bool] Bool) type OrSym1 (t_a2nla :: [Bool]) = Or t_a2nla data Any_Sym0 (l_a2jNB :: TyFun (TyFun a1627942712 Bool -> Type) (TyFun [a1627942712] Bool -> Type)) data Any_Sym1 (l_a2jNE :: TyFun a1627942712 Bool -> Type) (l_a2jND :: TyFun [a1627942712] Bool) type Any_Sym2 (t_a2jNz :: TyFun a1627942712 Bool -> Type) (t_a2jNA :: [a1627942712]) = Any_ t_a2jNz t_a2jNA data AllSym0 (l_a2nkX :: TyFun (TyFun a1627953389 Bool -> Type) (TyFun [a1627953389] Bool -> Type)) data AllSym1 (l_a2nl0 :: TyFun a1627953389 Bool -> Type) (l_a2nkZ :: TyFun [a1627953389] Bool) type AllSym2 (t_a2nkV :: TyFun a1627953389 Bool -> Type) (t_a2nkW :: [a1627953389]) = All t_a2nkV t_a2nkW data ScanlSym0 (l_a2nkm :: TyFun (TyFun b1627953387 (TyFun a1627953388 b1627953387 -> Type) -> Type) (TyFun b1627953387 (TyFun [a1627953388] [b1627953387] -> Type) -> Type)) data ScanlSym1 (l_a2nkp :: TyFun b1627953387 (TyFun a1627953388 b1627953387 -> Type) -> Type) (l_a2nko :: TyFun b1627953387 (TyFun [a1627953388] [b1627953387] -> Type)) data ScanlSym2 (l_a2nks :: TyFun b1627953387 (TyFun a1627953388 b1627953387 -> Type) -> Type) (l_a2nkt :: b1627953387) (l_a2nkr :: TyFun [a1627953388] [b1627953387]) type ScanlSym3 (t_a2nkj :: TyFun b1627953387 (TyFun a1627953388 b1627953387 -> Type) -> Type) (t_a2nkk :: b1627953387) (t_a2nkl :: [a1627953388]) = Scanl t_a2nkj t_a2nkk t_a2nkl data Scanl1Sym0 (l_a2nkI :: TyFun (TyFun a1627953386 (TyFun a1627953386 a1627953386 -> Type) -> Type) (TyFun [a1627953386] [a1627953386] -> Type)) data Scanl1Sym1 (l_a2nkL :: TyFun a1627953386 (TyFun a1627953386 a1627953386 -> Type) -> Type) (l_a2nkK :: TyFun [a1627953386] [a1627953386]) type Scanl1Sym2 (t_a2nkG :: TyFun a1627953386 (TyFun a1627953386 a1627953386 -> Type) -> Type) (t_a2nkH :: [a1627953386]) = Scanl1 t_a2nkG t_a2nkH data ScanrSym0 (l_a2njB :: TyFun (TyFun a1627953384 (TyFun b1627953385 b1627953385 -> Type) -> Type) (TyFun b1627953385 (TyFun [a1627953384] [b1627953385] -> Type) -> Type)) data ScanrSym1 (l_a2njE :: TyFun a1627953384 (TyFun b1627953385 b1627953385 -> Type) -> Type) (l_a2njD :: TyFun b1627953385 (TyFun [a1627953384] [b1627953385] -> Type)) data ScanrSym2 (l_a2njH :: TyFun a1627953384 (TyFun b1627953385 b1627953385 -> Type) -> Type) (l_a2njI :: b1627953385) (l_a2njG :: TyFun [a1627953384] [b1627953385]) type ScanrSym3 (t_a2njy :: TyFun a1627953384 (TyFun b1627953385 b1627953385 -> Type) -> Type) (t_a2njz :: b1627953385) (t_a2njA :: [a1627953384]) = Scanr t_a2njy t_a2njz t_a2njA data Scanr1Sym0 (l_a2niz :: TyFun (TyFun a1627953383 (TyFun a1627953383 a1627953383 -> Type) -> Type) (TyFun [a1627953383] [a1627953383] -> Type)) data Scanr1Sym1 (l_a2niC :: TyFun a1627953383 (TyFun a1627953383 a1627953383 -> Type) -> Type) (l_a2niB :: TyFun [a1627953383] [a1627953383]) type Scanr1Sym2 (t_a2nix :: TyFun a1627953383 (TyFun a1627953383 a1627953383 -> Type) -> Type) (t_a2niy :: [a1627953383]) = Scanr1 t_a2nix t_a2niy data MapAccumLSym0 (l_a2nfO :: TyFun (TyFun acc1627953380 (TyFun x1627953381 (acc1627953380, y1627953382) -> Type) -> Type) (TyFun acc1627953380 (TyFun [x1627953381] (acc1627953380, [y1627953382]) -> Type) -> Type)) data MapAccumLSym1 (l_a2nfR :: TyFun acc1627953380 (TyFun x1627953381 (acc1627953380, y1627953382) -> Type) -> Type) (l_a2nfQ :: TyFun acc1627953380 (TyFun [x1627953381] (acc1627953380, [y1627953382]) -> Type)) data MapAccumLSym2 (l_a2nfU :: TyFun acc1627953380 (TyFun x1627953381 (acc1627953380, y1627953382) -> Type) -> Type) (l_a2nfV :: acc1627953380) (l_a2nfT :: TyFun [x1627953381] (acc1627953380, [y1627953382])) type MapAccumLSym3 (t_a2nfL :: TyFun acc1627953380 (TyFun x1627953381 (acc1627953380, y1627953382) -> Type) -> Type) (t_a2nfM :: acc1627953380) (t_a2nfN :: [x1627953381]) = MapAccumL t_a2nfL t_a2nfM t_a2nfN data MapAccumRSym0 (l_a2nd2 :: TyFun (TyFun acc1627953377 (TyFun x1627953378 (acc1627953377, y1627953379) -> Type) -> Type) (TyFun acc1627953377 (TyFun [x1627953378] (acc1627953377, [y1627953379]) -> Type) -> Type)) data MapAccumRSym1 (l_a2nd5 :: TyFun acc1627953377 (TyFun x1627953378 (acc1627953377, y1627953379) -> Type) -> Type) (l_a2nd4 :: TyFun acc1627953377 (TyFun [x1627953378] (acc1627953377, [y1627953379]) -> Type)) data MapAccumRSym2 (l_a2nd8 :: TyFun acc1627953377 (TyFun x1627953378 (acc1627953377, y1627953379) -> Type) -> Type) (l_a2nd9 :: acc1627953377) (l_a2nd7 :: TyFun [x1627953378] (acc1627953377, [y1627953379])) type MapAccumRSym3 (t_a2ncZ :: TyFun acc1627953377 (TyFun x1627953378 (acc1627953377, y1627953379) -> Type) -> Type) (t_a2nd0 :: acc1627953377) (t_a2nd1 :: [x1627953378]) = MapAccumR t_a2ncZ t_a2nd0 t_a2nd1 data UnfoldrSym0 (l_a2ncD :: TyFun (TyFun b1627953375 (Maybe (a1627953376, b1627953375)) -> Type) (TyFun b1627953375 [a1627953376] -> Type)) data UnfoldrSym1 (l_a2ncG :: TyFun b1627953375 (Maybe (a1627953376, b1627953375)) -> Type) (l_a2ncF :: TyFun b1627953375 [a1627953376]) type UnfoldrSym2 (t_a2ncB :: TyFun b1627953375 (Maybe (a1627953376, b1627953375)) -> Type) (t_a2ncC :: b1627953375) = Unfoldr t_a2ncB t_a2ncC data InitsSym0 (l_a2ncs :: TyFun [a1627953374] [[a1627953374]]) type InitsSym1 (t_a2ncr :: [a1627953374]) = Inits t_a2ncr data TailsSym0 (l_a2nc5 :: TyFun [a1627953373] [[a1627953373]]) type TailsSym1 (t_a2nc4 :: [a1627953373]) = Tails t_a2nc4 data IsPrefixOfSym0 (l_a2nbH :: TyFun [a1627953372] (TyFun [a1627953372] Bool -> Type)) data IsPrefixOfSym1 (l_a2nbK :: [a1627953372]) (l_a2nbJ :: TyFun [a1627953372] Bool) type IsPrefixOfSym2 (t_a2nbF :: [a1627953372]) (t_a2nbG :: [a1627953372]) = IsPrefixOf t_a2nbF t_a2nbG data IsSuffixOfSym0 (l_a2nz2 :: TyFun [a1627953371] (TyFun [a1627953371] Bool -> Type)) data IsSuffixOfSym1 (l_a2nz5 :: [a1627953371]) (l_a2nz4 :: TyFun [a1627953371] Bool) type IsSuffixOfSym2 (t_a2nz0 :: [a1627953371]) (t_a2nz1 :: [a1627953371]) = IsSuffixOf t_a2nz0 t_a2nz1 data IsInfixOfSym0 (l_a2nci :: TyFun [a1627953370] (TyFun [a1627953370] Bool -> Type)) data IsInfixOfSym1 (l_a2ncl :: [a1627953370]) (l_a2nck :: TyFun [a1627953370] Bool) type IsInfixOfSym2 (t_a2ncg :: [a1627953370]) (t_a2nch :: [a1627953370]) = IsInfixOf t_a2ncg t_a2nch data ElemSym0 (l_a2naG :: TyFun a1627953369 (TyFun [a1627953369] Bool -> Type)) data ElemSym1 (l_a2naJ :: a1627953369) (l_a2naI :: TyFun [a1627953369] Bool) type ElemSym2 (t_a2naE :: a1627953369) (t_a2naF :: [a1627953369]) = Elem t_a2naE t_a2naF data NotElemSym0 (l_a2nar :: TyFun a1627953368 (TyFun [a1627953368] Bool -> Type)) data NotElemSym1 (l_a2nau :: a1627953368) (l_a2nat :: TyFun [a1627953368] Bool) type NotElemSym2 (t_a2nap :: a1627953368) (t_a2naq :: [a1627953368]) = NotElem t_a2nap t_a2naq data ZipSym0 (l_a2n8o :: TyFun [a1627953366] (TyFun [b1627953367] [(a1627953366, b1627953367)] -> Type)) data ZipSym1 (l_a2n8r :: [a1627953366]) (l_a2n8q :: TyFun [b1627953367] [(a1627953366, b1627953367)]) type ZipSym2 (t_a2n8m :: [a1627953366]) (t_a2n8n :: [b1627953367]) = Zip t_a2n8m t_a2n8n data Zip3Sym0 (l_a2n7c :: TyFun [a1627953363] (TyFun [b1627953364] (TyFun [c1627953365] [(a1627953363, b1627953364, c1627953365)] -> Type) -> Type)) data Zip3Sym1 (l_a2n7f :: [a1627953363]) (l_a2n7e :: TyFun [b1627953364] (TyFun [c1627953365] [(a1627953363, b1627953364, c1627953365)] -> Type)) data Zip3Sym2 (l_a2n7i :: [a1627953363]) (l_a2n7j :: [b1627953364]) (l_a2n7h :: TyFun [c1627953365] [(a1627953363, b1627953364, c1627953365)]) type Zip3Sym3 (t_a2n79 :: [a1627953363]) (t_a2n7a :: [b1627953364]) (t_a2n7b :: [c1627953365]) = Zip3 t_a2n79 t_a2n7a t_a2n7b data ZipWithSym0 (l_a2n6x :: TyFun (TyFun a1627953360 (TyFun b1627953361 c1627953362 -> Type) -> Type) (TyFun [a1627953360] (TyFun [b1627953361] [c1627953362] -> Type) -> Type)) data ZipWithSym1 (l_a2n6A :: TyFun a1627953360 (TyFun b1627953361 c1627953362 -> Type) -> Type) (l_a2n6z :: TyFun [a1627953360] (TyFun [b1627953361] [c1627953362] -> Type)) data ZipWithSym2 (l_a2n6D :: TyFun a1627953360 (TyFun b1627953361 c1627953362 -> Type) -> Type) (l_a2n6E :: [a1627953360]) (l_a2n6C :: TyFun [b1627953361] [c1627953362]) type ZipWithSym3 (t_a2n6u :: TyFun a1627953360 (TyFun b1627953361 c1627953362 -> Type) -> Type) (t_a2n6v :: [a1627953360]) (t_a2n6w :: [b1627953361]) = ZipWith t_a2n6u t_a2n6v t_a2n6w data ZipWith3Sym0 (l_a2n4S :: TyFun (TyFun a1627953356 (TyFun b1627953357 (TyFun c1627953358 d1627953359 -> Type) -> Type) -> Type) (TyFun [a1627953356] (TyFun [b1627953357] (TyFun [c1627953358] [d1627953359] -> Type) -> Type) -> Type)) data ZipWith3Sym1 (l_a2n4V :: TyFun a1627953356 (TyFun b1627953357 (TyFun c1627953358 d1627953359 -> Type) -> Type) -> Type) (l_a2n4U :: TyFun [a1627953356] (TyFun [b1627953357] (TyFun [c1627953358] [d1627953359] -> Type) -> Type)) data ZipWith3Sym2 (l_a2n4Y :: TyFun a1627953356 (TyFun b1627953357 (TyFun c1627953358 d1627953359 -> Type) -> Type) -> Type) (l_a2n4Z :: [a1627953356]) (l_a2n4X :: TyFun [b1627953357] (TyFun [c1627953358] [d1627953359] -> Type)) data ZipWith3Sym3 (l_a2n52 :: TyFun a1627953356 (TyFun b1627953357 (TyFun c1627953358 d1627953359 -> Type) -> Type) -> Type) (l_a2n53 :: [a1627953356]) (l_a2n54 :: [b1627953357]) (l_a2n51 :: TyFun [c1627953358] [d1627953359]) type ZipWith3Sym4 (t_a2n4O :: TyFun a1627953356 (TyFun b1627953357 (TyFun c1627953358 d1627953359 -> Type) -> Type) -> Type) (t_a2n4P :: [a1627953356]) (t_a2n4Q :: [b1627953357]) (t_a2n4R :: [c1627953358]) = ZipWith3 t_a2n4O t_a2n4P t_a2n4Q t_a2n4R data UnzipSym0 (l_a2n4l :: TyFun [(a1627953354, b1627953355)] ([a1627953354], [b1627953355])) type UnzipSym1 (t_a2n4k :: [(a1627953354, b1627953355)]) = Unzip t_a2n4k data Unzip3Sym0 (l_a2n3P :: TyFun [(a1627953351, b1627953352, c1627953353)] ([a1627953351], [b1627953352], [c1627953353])) type Unzip3Sym1 (t_a2n3O :: [(a1627953351, b1627953352, c1627953353)]) = Unzip3 t_a2n3O data Unzip4Sym0 (l_a2n3h :: TyFun [(a1627953347, b1627953348, c1627953349, d1627953350)] ([a1627953347], [b1627953348], [c1627953349], [d1627953350])) type Unzip4Sym1 (t_a2n3g :: [(a1627953347, b1627953348, c1627953349, d1627953350)]) = Unzip4 t_a2n3g data Unzip5Sym0 (l_a2n2H :: TyFun [(a1627953342, b1627953343, c1627953344, d1627953345, e1627953346)] ([a1627953342], [b1627953343], [c1627953344], [d1627953345], [e1627953346])) type Unzip5Sym1 (t_a2n2G :: [(a1627953342, b1627953343, c1627953344, d1627953345, e1627953346)]) = Unzip5 t_a2n2G data Unzip6Sym0 (l_a2n25 :: TyFun [(a1627953336, b1627953337, c1627953338, d1627953339, e1627953340, f1627953341)] ([a1627953336], [b1627953337], [c1627953338], [d1627953339], [e1627953340], [f1627953341])) type Unzip6Sym1 (t_a2n24 :: [(a1627953336, b1627953337, c1627953338, d1627953339, e1627953340, f1627953341)]) = Unzip6 t_a2n24 data Unzip7Sym0 (l_a2n1r :: TyFun [(a1627953329, b1627953330, c1627953331, d1627953332, e1627953333, f1627953334, g1627953335)] ([a1627953329], [b1627953330], [c1627953331], [d1627953332], [e1627953333], [f1627953334], [g1627953335])) type Unzip7Sym1 (t_a2n1q :: [(a1627953329, b1627953330, c1627953331, d1627953332, e1627953333, f1627953334, g1627953335)]) = Unzip7 t_a2n1q data DeleteSym0 (l_a2n12 :: TyFun a1627953328 (TyFun [a1627953328] [a1627953328] -> Type)) data DeleteSym1 (l_a2n15 :: a1627953328) (l_a2n14 :: TyFun [a1627953328] [a1627953328]) type DeleteSym2 (t_a2n10 :: a1627953328) (t_a2n11 :: [a1627953328]) = Delete t_a2n10 t_a2n11 data (:\\$) (l_a2n1h :: TyFun [a1627953327] (TyFun [a1627953327] [a1627953327] -> Type)) data (:\\$$) (l_a2n1k :: [a1627953327]) (l_a2n1j :: TyFun [a1627953327] [a1627953327]) type (:\\$$$) (t_a2n1f :: [a1627953327]) (t_a2n1g :: [a1627953327]) = (:\\) t_a2n1f t_a2n1g data IntersectSym0 (l_a2mXC :: TyFun [a1627953314] (TyFun [a1627953314] [a1627953314] -> Type)) data IntersectSym1 (l_a2mXF :: [a1627953314]) (l_a2mXE :: TyFun [a1627953314] [a1627953314]) type IntersectSym2 (t_a2mXA :: [a1627953314]) (t_a2mXB :: [a1627953314]) = Intersect t_a2mXA t_a2mXB data InsertSym0 (l_a2mYP :: TyFun a1627953301 (TyFun [a1627953301] [a1627953301] -> Type)) data InsertSym1 (l_a2mYS :: a1627953301) (l_a2mYR :: TyFun [a1627953301] [a1627953301]) type InsertSym2 (t_a2mYN :: a1627953301) (t_a2mYO :: [a1627953301]) = Insert t_a2mYN t_a2mYO data SortSym0 (l_a2mZe :: TyFun [a1627953300] [a1627953300]) type SortSym1 (t_a2mZd :: [a1627953300]) = Sort t_a2mZd data DeleteBySym0 (l_a2mZl :: TyFun (TyFun a1627953326 (TyFun a1627953326 Bool -> Type) -> Type) (TyFun a1627953326 (TyFun [a1627953326] [a1627953326] -> Type) -> Type)) data DeleteBySym1 (l_a2mZo :: TyFun a1627953326 (TyFun a1627953326 Bool -> Type) -> Type) (l_a2mZn :: TyFun a1627953326 (TyFun [a1627953326] [a1627953326] -> Type)) data DeleteBySym2 (l_a2mZr :: TyFun a1627953326 (TyFun a1627953326 Bool -> Type) -> Type) (l_a2mZs :: a1627953326) (l_a2mZq :: TyFun [a1627953326] [a1627953326]) type DeleteBySym3 (t_a2mZi :: TyFun a1627953326 (TyFun a1627953326 Bool -> Type) -> Type) (t_a2mZj :: a1627953326) (t_a2mZk :: [a1627953326]) = DeleteBy t_a2mZi t_a2mZj t_a2mZk data DeleteFirstsBySym0 (l_a2n06 :: TyFun (TyFun a1627953325 (TyFun a1627953325 Bool -> Type) -> Type) (TyFun [a1627953325] (TyFun [a1627953325] [a1627953325] -> Type) -> Type)) data DeleteFirstsBySym1 (l_a2n09 :: TyFun a1627953325 (TyFun a1627953325 Bool -> Type) -> Type) (l_a2n08 :: TyFun [a1627953325] (TyFun [a1627953325] [a1627953325] -> Type)) data DeleteFirstsBySym2 (l_a2n0c :: TyFun a1627953325 (TyFun a1627953325 Bool -> Type) -> Type) (l_a2n0d :: [a1627953325]) (l_a2n0b :: TyFun [a1627953325] [a1627953325]) type DeleteFirstsBySym3 (t_a2n03 :: TyFun a1627953325 (TyFun a1627953325 Bool -> Type) -> Type) (t_a2n04 :: [a1627953325]) (t_a2n05 :: [a1627953325]) = DeleteFirstsBy t_a2n03 t_a2n04 t_a2n05 data IntersectBySym0 (l_a2mVu :: TyFun (TyFun a1627953313 (TyFun a1627953313 Bool -> Type) -> Type) (TyFun [a1627953313] (TyFun [a1627953313] [a1627953313] -> Type) -> Type)) data IntersectBySym1 (l_a2mVx :: TyFun a1627953313 (TyFun a1627953313 Bool -> Type) -> Type) (l_a2mVw :: TyFun [a1627953313] (TyFun [a1627953313] [a1627953313] -> Type)) data IntersectBySym2 (l_a2mVA :: TyFun a1627953313 (TyFun a1627953313 Bool -> Type) -> Type) (l_a2mVB :: [a1627953313]) (l_a2mVz :: TyFun [a1627953313] [a1627953313]) data SortBySym0 (l_a2mZ0 :: TyFun (TyFun a1627953324 (TyFun a1627953324 Ordering -> Type) -> Type) (TyFun [a1627953324] [a1627953324] -> Type)) data SortBySym1 (l_a2mZ3 :: TyFun a1627953324 (TyFun a1627953324 Ordering -> Type) -> Type) (l_a2mZ2 :: TyFun [a1627953324] [a1627953324]) type SortBySym2 (t_a2mYY :: TyFun a1627953324 (TyFun a1627953324 Ordering -> Type) -> Type) (t_a2mYZ :: [a1627953324]) = SortBy t_a2mYY t_a2mYZ data InsertBySym0 (l_a2mXO :: TyFun (TyFun a1627953323 (TyFun a1627953323 Ordering -> Type) -> Type) (TyFun a1627953323 (TyFun [a1627953323] [a1627953323] -> Type) -> Type)) data InsertBySym1 (l_a2mXR :: TyFun a1627953323 (TyFun a1627953323 Ordering -> Type) -> Type) (l_a2mXQ :: TyFun a1627953323 (TyFun [a1627953323] [a1627953323] -> Type)) data InsertBySym2 (l_a2mXU :: TyFun a1627953323 (TyFun a1627953323 Ordering -> Type) -> Type) (l_a2mXV :: a1627953323) (l_a2mXT :: TyFun [a1627953323] [a1627953323]) type InsertBySym3 (t_a2mXL :: TyFun a1627953323 (TyFun a1627953323 Ordering -> Type) -> Type) (t_a2mXM :: a1627953323) (t_a2mXN :: [a1627953323]) = InsertBy t_a2mXL t_a2mXM t_a2mXN data MaximumBySym0 (l_a2nmA :: TyFun (TyFun a1627953322 (TyFun a1627953322 Ordering -> Type) -> Type) (TyFun [a1627953322] a1627953322 -> Type)) data MaximumBySym1 (l_a2nmD :: TyFun a1627953322 (TyFun a1627953322 Ordering -> Type) -> Type) (l_a2nmC :: TyFun [a1627953322] a1627953322) type MaximumBySym2 (t_a2nmy :: TyFun a1627953322 (TyFun a1627953322 Ordering -> Type) -> Type) (t_a2nmz :: [a1627953322]) = MaximumBy t_a2nmy t_a2nmz data MinimumBySym0 (l_a2nnZ :: TyFun (TyFun a1627953321 (TyFun a1627953321 Ordering -> Type) -> Type) (TyFun [a1627953321] a1627953321 -> Type)) data MinimumBySym1 (l_a2no2 :: TyFun a1627953321 (TyFun a1627953321 Ordering -> Type) -> Type) (l_a2no1 :: TyFun [a1627953321] a1627953321) type MinimumBySym2 (t_a2nnX :: TyFun a1627953321 (TyFun a1627953321 Ordering -> Type) -> Type) (t_a2nnY :: [a1627953321]) = MinimumBy t_a2nnX t_a2nnY data LengthSym0 (l_a2mLr :: TyFun [a1627953292] Nat) type LengthSym1 (t_a2mLq :: [a1627953292]) = Length t_a2mLq data SumSym0 (l_a2mLX :: TyFun [a1627953294] a1627953294) type SumSym1 (t_a2mLW :: [a1627953294]) = Sum t_a2mLW data ProductSym0 (l_a2mLz :: TyFun [a1627953293] a1627953293) type ProductSym1 (t_a2mLy :: [a1627953293]) = Product t_a2mLy data ReplicateSym0 (l_a2mL6 :: TyFun Nat (TyFun a1627953291 [a1627953291] -> Type)) data ReplicateSym1 (l_a2mL9 :: Nat) (l_a2mL8 :: TyFun a1627953291 [a1627953291]) type ReplicateSym2 (t_a2mL4 :: Nat) (t_a2mL5 :: a1627953291) = Replicate t_a2mL4 t_a2mL5 data TransposeSym0 (l_a2nBg :: TyFun [[a1627953290]] [[a1627953290]]) type TransposeSym1 (t_a2nBf :: [[a1627953290]]) = Transpose t_a2nBf data TakeSym0 (l_a2mOh :: TyFun Nat (TyFun [a1627953307] [a1627953307] -> Type)) data TakeSym1 (l_a2mOk :: Nat) (l_a2mOj :: TyFun [a1627953307] [a1627953307]) type TakeSym2 (t_a2mOf :: Nat) (t_a2mOg :: [a1627953307]) = Take t_a2mOf t_a2mOg data DropSym0 (l_a2mNM :: TyFun Nat (TyFun [a1627953306] [a1627953306] -> Type)) data DropSym1 (l_a2mNP :: Nat) (l_a2mNO :: TyFun [a1627953306] [a1627953306]) type DropSym2 (t_a2mNK :: Nat) (t_a2mNL :: [a1627953306]) = Drop t_a2mNK t_a2mNL data SplitAtSym0 (l_a2mOM :: TyFun Nat (TyFun [a1627953305] ([a1627953305], [a1627953305]) -> Type)) data SplitAtSym1 (l_a2mOP :: Nat) (l_a2mOO :: TyFun [a1627953305] ([a1627953305], [a1627953305])) type SplitAtSym2 (t_a2mOK :: Nat) (t_a2mOL :: [a1627953305]) = SplitAt t_a2mOK t_a2mOL data TakeWhileSym0 (l_a2mUi :: TyFun (TyFun a1627953312 Bool -> Type) (TyFun [a1627953312] [a1627953312] -> Type)) data TakeWhileSym1 (l_a2mUl :: TyFun a1627953312 Bool -> Type) (l_a2mUk :: TyFun [a1627953312] [a1627953312]) type TakeWhileSym2 (t_a2mUg :: TyFun a1627953312 Bool -> Type) (t_a2mUh :: [a1627953312]) = TakeWhile t_a2mUg t_a2mUh data DropWhileSym0 (l_a2mTA :: TyFun (TyFun a1627953311 Bool -> Type) (TyFun [a1627953311] [a1627953311] -> Type)) data DropWhileSym1 (l_a2mTD :: TyFun a1627953311 Bool -> Type) (l_a2mTC :: TyFun [a1627953311] [a1627953311]) type DropWhileSym2 (t_a2mTy :: TyFun a1627953311 Bool -> Type) (t_a2mTz :: [a1627953311]) = DropWhile t_a2mTy t_a2mTz data DropWhileEndSym0 (l_a2nzn :: TyFun (TyFun a1627953310 Bool -> Type) (TyFun [a1627953310] [a1627953310] -> Type)) data DropWhileEndSym1 (l_a2nzq :: TyFun a1627953310 Bool -> Type) (l_a2nzp :: TyFun [a1627953310] [a1627953310]) type DropWhileEndSym2 (t_a2nzl :: TyFun a1627953310 Bool -> Type) (t_a2nzm :: [a1627953310]) = DropWhileEnd t_a2nzl t_a2nzm data SpanSym0 (l_a2mQE :: TyFun (TyFun a1627953309 Bool -> Type) (TyFun [a1627953309] ([a1627953309], [a1627953309]) -> Type)) data SpanSym1 (l_a2mQH :: TyFun a1627953309 Bool -> Type) (l_a2mQG :: TyFun [a1627953309] ([a1627953309], [a1627953309])) type SpanSym2 (t_a2mQC :: TyFun a1627953309 Bool -> Type) (t_a2mQD :: [a1627953309]) = Span t_a2mQC t_a2mQD data BreakSym0 (l_a2mOX :: TyFun (TyFun a1627953308 Bool -> Type) (TyFun [a1627953308] ([a1627953308], [a1627953308]) -> Type)) data BreakSym1 (l_a2mP0 :: TyFun a1627953308 Bool -> Type) (l_a2mOZ :: TyFun [a1627953308] ([a1627953308], [a1627953308])) type BreakSym2 (t_a2mOV :: TyFun a1627953308 Bool -> Type) (t_a2mOW :: [a1627953308]) = Break t_a2mOV t_a2mOW data StripPrefixSym0 (l_a3ClK :: TyFun [a1628251687] (TyFun [a1628251687] (Maybe [a1628251687]) -> Type)) data StripPrefixSym1 (l_a3ClN :: [a1628251687]) (l_a3ClM :: TyFun [a1628251687] (Maybe [a1628251687])) type StripPrefixSym2 (t_a3ClI :: [a1628251687]) (t_a3ClJ :: [a1628251687]) = StripPrefix t_a3ClI t_a3ClJ data MaximumSym0 (l_a2npn :: TyFun [a1627953303] a1627953303) type MaximumSym1 (t_a2npm :: [a1627953303]) = Maximum t_a2npm data MinimumSym0 (l_a2npB :: TyFun [a1627953302] a1627953302) type MinimumSym1 (t_a2npA :: [a1627953302]) = Minimum t_a2npA data GroupSym0 (l_a2mTu :: TyFun [a1627953304] [[a1627953304]]) type GroupSym1 (t_a2mTt :: [a1627953304]) = Group t_a2mTt data GroupBySym0 (l_a2mSl :: TyFun (TyFun a1627953299 (TyFun a1627953299 Bool -> Type) -> Type) (TyFun [a1627953299] [[a1627953299]] -> Type)) data GroupBySym1 (l_a2mSo :: TyFun a1627953299 (TyFun a1627953299 Bool -> Type) -> Type) (l_a2mSn :: TyFun [a1627953299] [[a1627953299]]) type GroupBySym2 (t_a2mSj :: TyFun a1627953299 (TyFun a1627953299 Bool -> Type) -> Type) (t_a2mSk :: [a1627953299]) = GroupBy t_a2mSj t_a2mSk data LookupSym0 (l_a2mNc :: TyFun a1627953297 (TyFun [(a1627953297, b1627953298)] (Maybe b1627953298) -> Type)) data LookupSym1 (l_a2mNf :: a1627953297) (l_a2mNe :: TyFun [(a1627953297, b1627953298)] (Maybe b1627953298)) type LookupSym2 (t_a2mNa :: a1627953297) (t_a2mNb :: [(a1627953297, b1627953298)]) = Lookup t_a2mNa t_a2mNb data FindSym0 (l_a2mVg :: TyFun (TyFun a1627953319 Bool -> Type) (TyFun [a1627953319] (Maybe a1627953319) -> Type)) data FindSym1 (l_a2mVj :: TyFun a1627953319 Bool -> Type) (l_a2mVi :: TyFun [a1627953319] (Maybe a1627953319)) type FindSym2 (t_a2mVe :: TyFun a1627953319 Bool -> Type) (t_a2mVf :: [a1627953319]) = Find t_a2mVe t_a2mVf data FilterSym0 (l_a2mUN :: TyFun (TyFun a1627953320 Bool -> Type) (TyFun [a1627953320] [a1627953320] -> Type)) data FilterSym1 (l_a2mUQ :: TyFun a1627953320 Bool -> Type) (l_a2mUP :: TyFun [a1627953320] [a1627953320]) type FilterSym2 (t_a2mUL :: TyFun a1627953320 Bool -> Type) (t_a2mUM :: [a1627953320]) = Filter t_a2mUL t_a2mUM data PartitionSym0 (l_a2mN1 :: TyFun (TyFun a1627953296 Bool -> Type) (TyFun [a1627953296] ([a1627953296], [a1627953296]) -> Type)) data PartitionSym1 (l_a2mN4 :: TyFun a1627953296 Bool -> Type) (l_a2mN3 :: TyFun [a1627953296] ([a1627953296], [a1627953296])) type PartitionSym2 (t_a2mMZ :: TyFun a1627953296 Bool -> Type) (t_a2mN0 :: [a1627953296]) = Partition t_a2mMZ t_a2mN0 data (:!!$) (l_a2mKB :: TyFun [a1627953289] (TyFun Nat a1627953289 -> Type)) data (:!!$$) (l_a2mKE :: [a1627953289]) (l_a2mKD :: TyFun Nat a1627953289) type (:!!$$$) (t_a2mKz :: [a1627953289]) (t_a2mKA :: Nat) = (:!!) t_a2mKz t_a2mKA data ElemIndexSym0 (l_a2nae :: TyFun a1627953318 (TyFun [a1627953318] (Maybe Nat) -> Type)) data ElemIndexSym1 (l_a2nah :: a1627953318) (l_a2nag :: TyFun [a1627953318] (Maybe Nat)) type ElemIndexSym2 (t_a2nac :: a1627953318) (t_a2nad :: [a1627953318]) = ElemIndex t_a2nac t_a2nad data ElemIndicesSym0 (l_a2n9O :: TyFun a1627953317 (TyFun [a1627953317] [Nat] -> Type)) data ElemIndicesSym1 (l_a2n9R :: a1627953317) (l_a2n9Q :: TyFun [a1627953317] [Nat]) type ElemIndicesSym2 (t_a2n9M :: a1627953317) (t_a2n9N :: [a1627953317]) = ElemIndices t_a2n9M t_a2n9N data FindIndexSym0 (l_a2na1 :: TyFun (TyFun a1627953316 Bool -> Type) (TyFun [a1627953316] (Maybe Nat) -> Type)) data FindIndexSym1 (l_a2na4 :: TyFun a1627953316 Bool -> Type) (l_a2na3 :: TyFun [a1627953316] (Maybe Nat)) type FindIndexSym2 (t_a2n9Z :: TyFun a1627953316 Bool -> Type) (t_a2na0 :: [a1627953316]) = FindIndex t_a2n9Z t_a2na0 data FindIndicesSym0 (l_a2n8N :: TyFun (TyFun a1627953315 Bool -> Type) (TyFun [a1627953315] [Nat] -> Type)) data FindIndicesSym1 (l_a2n8Q :: TyFun a1627953315 Bool -> Type) (l_a2n8P :: TyFun [a1627953315] [Nat]) type FindIndicesSym2 (t_a2n8L :: TyFun a1627953315 Bool -> Type) (t_a2n8M :: [a1627953315]) = FindIndices t_a2n8L t_a2n8M data Zip4Sym0 (l_a3Clm :: TyFun [a1628251683] (TyFun [b1628251684] (TyFun [c1628251685] (TyFun [d1628251686] [(a1628251683, b1628251684, c1628251685, d1628251686)] -> Type) -> Type) -> Type)) data Zip4Sym1 (l_a3Clp :: [a1628251683]) (l_a3Clo :: TyFun [b1628251684] (TyFun [c1628251685] (TyFun [d1628251686] [(a1628251683, b1628251684, c1628251685, d1628251686)] -> Type) -> Type)) data Zip4Sym2 (l_a3Cls :: [a1628251683]) (l_a3Clt :: [b1628251684]) (l_a3Clr :: TyFun [c1628251685] (TyFun [d1628251686] [(a1628251683, b1628251684, c1628251685, d1628251686)] -> Type)) data Zip4Sym3 (l_a3Clw :: [a1628251683]) (l_a3Clx :: [b1628251684]) (l_a3Cly :: [c1628251685]) (l_a3Clv :: TyFun [d1628251686] [(a1628251683, b1628251684, c1628251685, d1628251686)]) type Zip4Sym4 (t_a3Cli :: [a1628251683]) (t_a3Clj :: [b1628251684]) (t_a3Clk :: [c1628251685]) (t_a3Cll :: [d1628251686]) = Zip4 t_a3Cli t_a3Clj t_a3Clk t_a3Cll data Zip5Sym0 (l_a3CkG :: TyFun [a1628251678] (TyFun [b1628251679] (TyFun [c1628251680] (TyFun [d1628251681] (TyFun [e1628251682] [(a1628251678, b1628251679, c1628251680, d1628251681, e1628251682)] -> Type) -> Type) -> Type) -> Type)) data Zip5Sym1 (l_a3CkJ :: [a1628251678]) (l_a3CkI :: TyFun [b1628251679] (TyFun [c1628251680] (TyFun [d1628251681] (TyFun [e1628251682] [(a1628251678, b1628251679, c1628251680, d1628251681, e1628251682)] -> Type) -> Type) -> Type)) data Zip5Sym2 (l_a3CkM :: [a1628251678]) (l_a3CkN :: [b1628251679]) (l_a3CkL :: TyFun [c1628251680] (TyFun [d1628251681] (TyFun [e1628251682] [(a1628251678, b1628251679, c1628251680, d1628251681, e1628251682)] -> Type) -> Type)) data Zip5Sym3 (l_a3CkQ :: [a1628251678]) (l_a3CkR :: [b1628251679]) (l_a3CkS :: [c1628251680]) (l_a3CkP :: TyFun [d1628251681] (TyFun [e1628251682] [(a1628251678, b1628251679, c1628251680, d1628251681, e1628251682)] -> Type)) data Zip5Sym4 (l_a3CkV :: [a1628251678]) (l_a3CkW :: [b1628251679]) (l_a3CkX :: [c1628251680]) (l_a3CkY :: [d1628251681]) (l_a3CkU :: TyFun [e1628251682] [(a1628251678, b1628251679, c1628251680, d1628251681, e1628251682)]) type Zip5Sym5 (t_a3CkB :: [a1628251678]) (t_a3CkC :: [b1628251679]) (t_a3CkD :: [c1628251680]) (t_a3CkE :: [d1628251681]) (t_a3CkF :: [e1628251682]) = Zip5 t_a3CkB t_a3CkC t_a3CkD t_a3CkE t_a3CkF data Zip6Sym0 (l_a3CjO :: TyFun [a1628251672] (TyFun [b1628251673] (TyFun [c1628251674] (TyFun [d1628251675] (TyFun [e1628251676] (TyFun [f1628251677] [(a1628251672, b1628251673, c1628251674, d1628251675, e1628251676, f1628251677)] -> Type) -> Type) -> Type) -> Type) -> Type)) data Zip6Sym1 (l_a3CjR :: [a1628251672]) (l_a3CjQ :: TyFun [b1628251673] (TyFun [c1628251674] (TyFun [d1628251675] (TyFun [e1628251676] (TyFun [f1628251677] [(a1628251672, b1628251673, c1628251674, d1628251675, e1628251676, f1628251677)] -> Type) -> Type) -> Type) -> Type)) data Zip6Sym2 (l_a3CjU :: [a1628251672]) (l_a3CjV :: [b1628251673]) (l_a3CjT :: TyFun [c1628251674] (TyFun [d1628251675] (TyFun [e1628251676] (TyFun [f1628251677] [(a1628251672, b1628251673, c1628251674, d1628251675, e1628251676, f1628251677)] -> Type) -> Type) -> Type)) data Zip6Sym3 (l_a3CjY :: [a1628251672]) (l_a3CjZ :: [b1628251673]) (l_a3Ck0 :: [c1628251674]) (l_a3CjX :: TyFun [d1628251675] (TyFun [e1628251676] (TyFun [f1628251677] [(a1628251672, b1628251673, c1628251674, d1628251675, e1628251676, f1628251677)] -> Type) -> Type)) data Zip6Sym4 (l_a3Ck3 :: [a1628251672]) (l_a3Ck4 :: [b1628251673]) (l_a3Ck5 :: [c1628251674]) (l_a3Ck6 :: [d1628251675]) (l_a3Ck2 :: TyFun [e1628251676] (TyFun [f1628251677] [(a1628251672, b1628251673, c1628251674, d1628251675, e1628251676, f1628251677)] -> Type)) data Zip6Sym5 (l_a3Ck9 :: [a1628251672]) (l_a3Cka :: [b1628251673]) (l_a3Ckb :: [c1628251674]) (l_a3Ckc :: [d1628251675]) (l_a3Ckd :: [e1628251676]) (l_a3Ck8 :: TyFun [f1628251677] [(a1628251672, b1628251673, c1628251674, d1628251675, e1628251676, f1628251677)]) type Zip6Sym6 (t_a3CjI :: [a1628251672]) (t_a3CjJ :: [b1628251673]) (t_a3CjK :: [c1628251674]) (t_a3CjL :: [d1628251675]) (t_a3CjM :: [e1628251676]) (t_a3CjN :: [f1628251677]) = Zip6 t_a3CjI t_a3CjJ t_a3CjK t_a3CjL t_a3CjM t_a3CjN data Zip7Sym0 (l_a3CiJ :: TyFun [a1628251665] (TyFun [b1628251666] (TyFun [c1628251667] (TyFun [d1628251668] (TyFun [e1628251669] (TyFun [f1628251670] (TyFun [g1628251671] [(a1628251665, b1628251666, c1628251667, d1628251668, e1628251669, f1628251670, g1628251671)] -> Type) -> Type) -> Type) -> Type) -> Type) -> Type)) data Zip7Sym1 (l_a3CiM :: [a1628251665]) (l_a3CiL :: TyFun [b1628251666] (TyFun [c1628251667] (TyFun [d1628251668] (TyFun [e1628251669] (TyFun [f1628251670] (TyFun [g1628251671] [(a1628251665, b1628251666, c1628251667, d1628251668, e1628251669, f1628251670, g1628251671)] -> Type) -> Type) -> Type) -> Type) -> Type)) data Zip7Sym2 (l_a3CiP :: [a1628251665]) (l_a3CiQ :: [b1628251666]) (l_a3CiO :: TyFun [c1628251667] (TyFun [d1628251668] (TyFun [e1628251669] (TyFun [f1628251670] (TyFun [g1628251671] [(a1628251665, b1628251666, c1628251667, d1628251668, e1628251669, f1628251670, g1628251671)] -> Type) -> Type) -> Type) -> Type)) data Zip7Sym3 (l_a3CiT :: [a1628251665]) (l_a3CiU :: [b1628251666]) (l_a3CiV :: [c1628251667]) (l_a3CiS :: TyFun [d1628251668] (TyFun [e1628251669] (TyFun [f1628251670] (TyFun [g1628251671] [(a1628251665, b1628251666, c1628251667, d1628251668, e1628251669, f1628251670, g1628251671)] -> Type) -> Type) -> Type)) data Zip7Sym4 (l_a3CiY :: [a1628251665]) (l_a3CiZ :: [b1628251666]) (l_a3Cj0 :: [c1628251667]) (l_a3Cj1 :: [d1628251668]) (l_a3CiX :: TyFun [e1628251669] (TyFun [f1628251670] (TyFun [g1628251671] [(a1628251665, b1628251666, c1628251667, d1628251668, e1628251669, f1628251670, g1628251671)] -> Type) -> Type)) data Zip7Sym5 (l_a3Cj4 :: [a1628251665]) (l_a3Cj5 :: [b1628251666]) (l_a3Cj6 :: [c1628251667]) (l_a3Cj7 :: [d1628251668]) (l_a3Cj8 :: [e1628251669]) (l_a3Cj3 :: TyFun [f1628251670] (TyFun [g1628251671] [(a1628251665, b1628251666, c1628251667, d1628251668, e1628251669, f1628251670, g1628251671)] -> Type)) data Zip7Sym6 (l_a3Cjb :: [a1628251665]) (l_a3Cjc :: [b1628251666]) (l_a3Cjd :: [c1628251667]) (l_a3Cje :: [d1628251668]) (l_a3Cjf :: [e1628251669]) (l_a3Cjg :: [f1628251670]) (l_a3Cja :: TyFun [g1628251671] [(a1628251665, b1628251666, c1628251667, d1628251668, e1628251669, f1628251670, g1628251671)]) type Zip7Sym7 (t_a3CiC :: [a1628251665]) (t_a3CiD :: [b1628251666]) (t_a3CiE :: [c1628251667]) (t_a3CiF :: [d1628251668]) (t_a3CiG :: [e1628251669]) (t_a3CiH :: [f1628251670]) (t_a3CiI :: [g1628251671]) = Zip7 t_a3CiC t_a3CiD t_a3CiE t_a3CiF t_a3CiG t_a3CiH t_a3CiI data ZipWith4Sym0 (l_a3ChB :: TyFun (TyFun a1628251660 (TyFun b1628251661 (TyFun c1628251662 (TyFun d1628251663 e1628251664 -> Type) -> Type) -> Type) -> Type) (TyFun [a1628251660] (TyFun [b1628251661] (TyFun [c1628251662] (TyFun [d1628251663] [e1628251664] -> Type) -> Type) -> Type) -> Type)) data ZipWith4Sym1 (l_a3ChE :: TyFun a1628251660 (TyFun b1628251661 (TyFun c1628251662 (TyFun d1628251663 e1628251664 -> Type) -> Type) -> Type) -> Type) (l_a3ChD :: TyFun [a1628251660] (TyFun [b1628251661] (TyFun [c1628251662] (TyFun [d1628251663] [e1628251664] -> Type) -> Type) -> Type)) data ZipWith4Sym2 (l_a3ChH :: TyFun a1628251660 (TyFun b1628251661 (TyFun c1628251662 (TyFun d1628251663 e1628251664 -> Type) -> Type) -> Type) -> Type) (l_a3ChI :: [a1628251660]) (l_a3ChG :: TyFun [b1628251661] (TyFun [c1628251662] (TyFun [d1628251663] [e1628251664] -> Type) -> Type)) data ZipWith4Sym3 (l_a3ChL :: TyFun a1628251660 (TyFun b1628251661 (TyFun c1628251662 (TyFun d1628251663 e1628251664 -> Type) -> Type) -> Type) -> Type) (l_a3ChM :: [a1628251660]) (l_a3ChN :: [b1628251661]) (l_a3ChK :: TyFun [c1628251662] (TyFun [d1628251663] [e1628251664] -> Type)) data ZipWith4Sym4 (l_a3ChQ :: TyFun a1628251660 (TyFun b1628251661 (TyFun c1628251662 (TyFun d1628251663 e1628251664 -> Type) -> Type) -> Type) -> Type) (l_a3ChR :: [a1628251660]) (l_a3ChS :: [b1628251661]) (l_a3ChT :: [c1628251662]) (l_a3ChP :: TyFun [d1628251663] [e1628251664]) type ZipWith4Sym5 (t_a3Chw :: TyFun a1628251660 (TyFun b1628251661 (TyFun c1628251662 (TyFun d1628251663 e1628251664 -> Type) -> Type) -> Type) -> Type) (t_a3Chx :: [a1628251660]) (t_a3Chy :: [b1628251661]) (t_a3Chz :: [c1628251662]) (t_a3ChA :: [d1628251663]) = ZipWith4 t_a3Chw t_a3Chx t_a3Chy t_a3Chz t_a3ChA data ZipWith5Sym0 (l_a3Cgw :: TyFun (TyFun a1628251654 (TyFun b1628251655 (TyFun c1628251656 (TyFun d1628251657 (TyFun e1628251658 f1628251659 -> Type) -> Type) -> Type) -> Type) -> Type) (TyFun [a1628251654] (TyFun [b1628251655] (TyFun [c1628251656] (TyFun [d1628251657] (TyFun [e1628251658] [f1628251659] -> Type) -> Type) -> Type) -> Type) -> Type)) data ZipWith5Sym1 (l_a3Cgz :: TyFun a1628251654 (TyFun b1628251655 (TyFun c1628251656 (TyFun d1628251657 (TyFun e1628251658 f1628251659 -> Type) -> Type) -> Type) -> Type) -> Type) (l_a3Cgy :: TyFun [a1628251654] (TyFun [b1628251655] (TyFun [c1628251656] (TyFun [d1628251657] (TyFun [e1628251658] [f1628251659] -> Type) -> Type) -> Type) -> Type)) data ZipWith5Sym2 (l_a3CgC :: TyFun a1628251654 (TyFun b1628251655 (TyFun c1628251656 (TyFun d1628251657 (TyFun e1628251658 f1628251659 -> Type) -> Type) -> Type) -> Type) -> Type) (l_a3CgD :: [a1628251654]) (l_a3CgB :: TyFun [b1628251655] (TyFun [c1628251656] (TyFun [d1628251657] (TyFun [e1628251658] [f1628251659] -> Type) -> Type) -> Type)) data ZipWith5Sym3 (l_a3CgG :: TyFun a1628251654 (TyFun b1628251655 (TyFun c1628251656 (TyFun d1628251657 (TyFun e1628251658 f1628251659 -> Type) -> Type) -> Type) -> Type) -> Type) (l_a3CgH :: [a1628251654]) (l_a3CgI :: [b1628251655]) (l_a3CgF :: TyFun [c1628251656] (TyFun [d1628251657] (TyFun [e1628251658] [f1628251659] -> Type) -> Type)) data ZipWith5Sym4 (l_a3CgL :: TyFun a1628251654 (TyFun b1628251655 (TyFun c1628251656 (TyFun d1628251657 (TyFun e1628251658 f1628251659 -> Type) -> Type) -> Type) -> Type) -> Type) (l_a3CgM :: [a1628251654]) (l_a3CgN :: [b1628251655]) (l_a3CgO :: [c1628251656]) (l_a3CgK :: TyFun [d1628251657] (TyFun [e1628251658] [f1628251659] -> Type)) data ZipWith5Sym5 (l_a3CgR :: TyFun a1628251654 (TyFun b1628251655 (TyFun c1628251656 (TyFun d1628251657 (TyFun e1628251658 f1628251659 -> Type) -> Type) -> Type) -> Type) -> Type) (l_a3CgS :: [a1628251654]) (l_a3CgT :: [b1628251655]) (l_a3CgU :: [c1628251656]) (l_a3CgV :: [d1628251657]) (l_a3CgQ :: TyFun [e1628251658] [f1628251659]) type ZipWith5Sym6 (t_a3Cgq :: TyFun a1628251654 (TyFun b1628251655 (TyFun c1628251656 (TyFun d1628251657 (TyFun e1628251658 f1628251659 -> Type) -> Type) -> Type) -> Type) -> Type) (t_a3Cgr :: [a1628251654]) (t_a3Cgs :: [b1628251655]) (t_a3Cgt :: [c1628251656]) (t_a3Cgu :: [d1628251657]) (t_a3Cgv :: [e1628251658]) = ZipWith5 t_a3Cgq t_a3Cgr t_a3Cgs t_a3Cgt t_a3Cgu t_a3Cgv data ZipWith6Sym0 (l_a3Cfc :: TyFun (TyFun a1628251647 (TyFun b1628251648 (TyFun c1628251649 (TyFun d1628251650 (TyFun e1628251651 (TyFun f1628251652 g1628251653 -> Type) -> Type) -> Type) -> Type) -> Type) -> Type) (TyFun [a1628251647] (TyFun [b1628251648] (TyFun [c1628251649] (TyFun [d1628251650] (TyFun [e1628251651] (TyFun [f1628251652] [g1628251653] -> Type) -> Type) -> Type) -> Type) -> Type) -> Type)) data ZipWith6Sym1 (l_a3Cff :: TyFun a1628251647 (TyFun b1628251648 (TyFun c1628251649 (TyFun d1628251650 (TyFun e1628251651 (TyFun f1628251652 g1628251653 -> Type) -> Type) -> Type) -> Type) -> Type) -> Type) (l_a3Cfe :: TyFun [a1628251647] (TyFun [b1628251648] (TyFun [c1628251649] (TyFun [d1628251650] (TyFun [e1628251651] (TyFun [f1628251652] [g1628251653] -> Type) -> Type) -> Type) -> Type) -> Type)) data ZipWith6Sym2 (l_a3Cfi :: TyFun a1628251647 (TyFun b1628251648 (TyFun c1628251649 (TyFun d1628251650 (TyFun e1628251651 (TyFun f1628251652 g1628251653 -> Type) -> Type) -> Type) -> Type) -> Type) -> Type) (l_a3Cfj :: [a1628251647]) (l_a3Cfh :: TyFun [b1628251648] (TyFun [c1628251649] (TyFun [d1628251650] (TyFun [e1628251651] (TyFun [f1628251652] [g1628251653] -> Type) -> Type) -> Type) -> Type)) data ZipWith6Sym3 (l_a3Cfm :: TyFun a1628251647 (TyFun b1628251648 (TyFun c1628251649 (TyFun d1628251650 (TyFun e1628251651 (TyFun f1628251652 g1628251653 -> Type) -> Type) -> Type) -> Type) -> Type) -> Type) (l_a3Cfn :: [a1628251647]) (l_a3Cfo :: [b1628251648]) (l_a3Cfl :: TyFun [c1628251649] (TyFun [d1628251650] (TyFun [e1628251651] (TyFun [f1628251652] [g1628251653] -> Type) -> Type) -> Type)) data ZipWith6Sym4 (l_a3Cfr :: TyFun a1628251647 (TyFun b1628251648 (TyFun c1628251649 (TyFun d1628251650 (TyFun e1628251651 (TyFun f1628251652 g1628251653 -> Type) -> Type) -> Type) -> Type) -> Type) -> Type) (l_a3Cfs :: [a1628251647]) (l_a3Cft :: [b1628251648]) (l_a3Cfu :: [c1628251649]) (l_a3Cfq :: TyFun [d1628251650] (TyFun [e1628251651] (TyFun [f1628251652] [g1628251653] -> Type) -> Type)) data ZipWith6Sym5 (l_a3Cfx :: TyFun a1628251647 (TyFun b1628251648 (TyFun c1628251649 (TyFun d1628251650 (TyFun e1628251651 (TyFun f1628251652 g1628251653 -> Type) -> Type) -> Type) -> Type) -> Type) -> Type) (l_a3Cfy :: [a1628251647]) (l_a3Cfz :: [b1628251648]) (l_a3CfA :: [c1628251649]) (l_a3CfB :: [d1628251650]) (l_a3Cfw :: TyFun [e1628251651] (TyFun [f1628251652] [g1628251653] -> Type)) data ZipWith6Sym6 (l_a3CfE :: TyFun a1628251647 (TyFun b1628251648 (TyFun c1628251649 (TyFun d1628251650 (TyFun e1628251651 (TyFun f1628251652 g1628251653 -> Type) -> Type) -> Type) -> Type) -> Type) -> Type) (l_a3CfF :: [a1628251647]) (l_a3CfG :: [b1628251648]) (l_a3CfH :: [c1628251649]) (l_a3CfI :: [d1628251650]) (l_a3CfJ :: [e1628251651]) (l_a3CfD :: TyFun [f1628251652] [g1628251653]) type ZipWith6Sym7 (t_a3Cf5 :: TyFun a1628251647 (TyFun b1628251648 (TyFun c1628251649 (TyFun d1628251650 (TyFun e1628251651 (TyFun f1628251652 g1628251653 -> Type) -> Type) -> Type) -> Type) -> Type) -> Type) (t_a3Cf6 :: [a1628251647]) (t_a3Cf7 :: [b1628251648]) (t_a3Cf8 :: [c1628251649]) (t_a3Cf9 :: [d1628251650]) (t_a3Cfa :: [e1628251651]) (t_a3Cfb :: [f1628251652]) = ZipWith6 t_a3Cf5 t_a3Cf6 t_a3Cf7 t_a3Cf8 t_a3Cf9 t_a3Cfa t_a3Cfb data ZipWith7Sym0 (l_a3CdC :: TyFun (TyFun a1628251639 (TyFun b1628251640 (TyFun c1628251641 (TyFun d1628251642 (TyFun e1628251643 (TyFun f1628251644 (TyFun g1628251645 h1628251646 -> Type) -> Type) -> Type) -> Type) -> Type) -> Type) -> Type) (TyFun [a1628251639] (TyFun [b1628251640] (TyFun [c1628251641] (TyFun [d1628251642] (TyFun [e1628251643] (TyFun [f1628251644] (TyFun [g1628251645] [h1628251646] -> Type) -> Type) -> Type) -> Type) -> Type) -> Type) -> Type)) data ZipWith7Sym1 (l_a3CdF :: TyFun a1628251639 (TyFun b1628251640 (TyFun c1628251641 (TyFun d1628251642 (TyFun e1628251643 (TyFun f1628251644 (TyFun g1628251645 h1628251646 -> Type) -> Type) -> Type) -> Type) -> Type) -> Type) -> Type) (l_a3CdE :: TyFun [a1628251639] (TyFun [b1628251640] (TyFun [c1628251641] (TyFun [d1628251642] (TyFun [e1628251643] (TyFun [f1628251644] (TyFun [g1628251645] [h1628251646] -> Type) -> Type) -> Type) -> Type) -> Type) -> Type)) data ZipWith7Sym2 (l_a3CdI :: TyFun a1628251639 (TyFun b1628251640 (TyFun c1628251641 (TyFun d1628251642 (TyFun e1628251643 (TyFun f1628251644 (TyFun g1628251645 h1628251646 -> Type) -> Type) -> Type) -> Type) -> Type) -> Type) -> Type) (l_a3CdJ :: [a1628251639]) (l_a3CdH :: TyFun [b1628251640] (TyFun [c1628251641] (TyFun [d1628251642] (TyFun [e1628251643] (TyFun [f1628251644] (TyFun [g1628251645] [h1628251646] -> Type) -> Type) -> Type) -> Type) -> Type)) data ZipWith7Sym3 (l_a3CdM :: TyFun a1628251639 (TyFun b1628251640 (TyFun c1628251641 (TyFun d1628251642 (TyFun e1628251643 (TyFun f1628251644 (TyFun g1628251645 h1628251646 -> Type) -> Type) -> Type) -> Type) -> Type) -> Type) -> Type) (l_a3CdN :: [a1628251639]) (l_a3CdO :: [b1628251640]) (l_a3CdL :: TyFun [c1628251641] (TyFun [d1628251642] (TyFun [e1628251643] (TyFun [f1628251644] (TyFun [g1628251645] [h1628251646] -> Type) -> Type) -> Type) -> Type)) data ZipWith7Sym4 (l_a3CdR :: TyFun a1628251639 (TyFun b1628251640 (TyFun c1628251641 (TyFun d1628251642 (TyFun e1628251643 (TyFun f1628251644 (TyFun g1628251645 h1628251646 -> Type) -> Type) -> Type) -> Type) -> Type) -> Type) -> Type) (l_a3CdS :: [a1628251639]) (l_a3CdT :: [b1628251640]) (l_a3CdU :: [c1628251641]) (l_a3CdQ :: TyFun [d1628251642] (TyFun [e1628251643] (TyFun [f1628251644] (TyFun [g1628251645] [h1628251646] -> Type) -> Type) -> Type)) data ZipWith7Sym5 (l_a3CdX :: TyFun a1628251639 (TyFun b1628251640 (TyFun c1628251641 (TyFun d1628251642 (TyFun e1628251643 (TyFun f1628251644 (TyFun g1628251645 h1628251646 -> Type) -> Type) -> Type) -> Type) -> Type) -> Type) -> Type) (l_a3CdY :: [a1628251639]) (l_a3CdZ :: [b1628251640]) (l_a3Ce0 :: [c1628251641]) (l_a3Ce1 :: [d1628251642]) (l_a3CdW :: TyFun [e1628251643] (TyFun [f1628251644] (TyFun [g1628251645] [h1628251646] -> Type) -> Type)) data ZipWith7Sym6 (l_a3Ce4 :: TyFun a1628251639 (TyFun b1628251640 (TyFun c1628251641 (TyFun d1628251642 (TyFun e1628251643 (TyFun f1628251644 (TyFun g1628251645 h1628251646 -> Type) -> Type) -> Type) -> Type) -> Type) -> Type) -> Type) (l_a3Ce5 :: [a1628251639]) (l_a3Ce6 :: [b1628251640]) (l_a3Ce7 :: [c1628251641]) (l_a3Ce8 :: [d1628251642]) (l_a3Ce9 :: [e1628251643]) (l_a3Ce3 :: TyFun [f1628251644] (TyFun [g1628251645] [h1628251646] -> Type)) data ZipWith7Sym7 (l_a3Cec :: TyFun a1628251639 (TyFun b1628251640 (TyFun c1628251641 (TyFun d1628251642 (TyFun e1628251643 (TyFun f1628251644 (TyFun g1628251645 h1628251646 -> Type) -> Type) -> Type) -> Type) -> Type) -> Type) -> Type) (l_a3Ced :: [a1628251639]) (l_a3Cee :: [b1628251640]) (l_a3Cef :: [c1628251641]) (l_a3Ceg :: [d1628251642]) (l_a3Ceh :: [e1628251643]) (l_a3Cei :: [f1628251644]) (l_a3Ceb :: TyFun [g1628251645] [h1628251646]) type ZipWith7Sym8 (t_a3Cdu :: TyFun a1628251639 (TyFun b1628251640 (TyFun c1628251641 (TyFun d1628251642 (TyFun e1628251643 (TyFun f1628251644 (TyFun g1628251645 h1628251646 -> Type) -> Type) -> Type) -> Type) -> Type) -> Type) -> Type) (t_a3Cdv :: [a1628251639]) (t_a3Cdw :: [b1628251640]) (t_a3Cdx :: [c1628251641]) (t_a3Cdy :: [d1628251642]) (t_a3Cdz :: [e1628251643]) (t_a3CdA :: [f1628251644]) (t_a3CdB :: [g1628251645]) = ZipWith7 t_a3Cdu t_a3Cdv t_a3Cdw t_a3Cdx t_a3Cdy t_a3Cdz t_a3CdA t_a3CdB data NubSym0 (l_a2naU :: TyFun [a1627953288] [a1627953288]) type NubSym1 (t_a2naT :: [a1627953288]) = Nub t_a2naT data NubBySym0 (l_a2mJw :: TyFun (TyFun a1627953287 (TyFun a1627953287 Bool -> Type) -> Type) (TyFun [a1627953287] [a1627953287] -> Type)) data NubBySym1 (l_a2mJz :: TyFun a1627953287 (TyFun a1627953287 Bool -> Type) -> Type) (l_a2mJy :: TyFun [a1627953287] [a1627953287]) type NubBySym2 (t_a2mJu :: TyFun a1627953287 (TyFun a1627953287 Bool -> Type) -> Type) (t_a2mJv :: [a1627953287]) = NubBy t_a2mJu t_a2mJv data UnionSym0 (l_a2n0N :: TyFun [a1627953284] (TyFun [a1627953284] [a1627953284] -> Type)) data UnionSym1 (l_a2n0Q :: [a1627953284]) (l_a2n0P :: TyFun [a1627953284] [a1627953284]) type UnionSym2 (t_a2n0L :: [a1627953284]) (t_a2n0M :: [a1627953284]) = Union t_a2n0L t_a2n0M data UnionBySym0 (l_a2n0s :: TyFun (TyFun a1627953285 (TyFun a1627953285 Bool -> Type) -> Type) (TyFun [a1627953285] (TyFun [a1627953285] [a1627953285] -> Type) -> Type)) data UnionBySym1 (l_a2n0v :: TyFun a1627953285 (TyFun a1627953285 Bool -> Type) -> Type) (l_a2n0u :: TyFun [a1627953285] (TyFun [a1627953285] [a1627953285] -> Type)) data UnionBySym2 (l_a2n0y :: TyFun a1627953285 (TyFun a1627953285 Bool -> Type) -> Type) (l_a2n0z :: [a1627953285]) (l_a2n0x :: TyFun [a1627953285] [a1627953285]) type UnionBySym3 (t_a2n0p :: TyFun a1627953285 (TyFun a1627953285 Bool -> Type) -> Type) (t_a2n0q :: [a1627953285]) (t_a2n0r :: [a1627953285]) = UnionBy t_a2n0p t_a2n0q t_a2n0r data GenericLengthSym0 (l_a2mIY :: TyFun [a1627953283] i1627953282) type GenericLengthSym1 (t_a2mIX :: [a1627953283]) = GenericLength t_a2mIX data GenericTakeSym0 (l_a3Cdl :: TyFun i1628251637 (TyFun [a1628251638] [a1628251638] -> Type)) data GenericTakeSym1 (l_a3Cdo :: i1628251637) (l_a3Cdn :: TyFun [a1628251638] [a1628251638]) type GenericTakeSym2 (t_a3Cdj :: i1628251637) (t_a3Cdk :: [a1628251638]) = GenericTake t_a3Cdj t_a3Cdk data GenericDropSym0 (l_a3Cd6 :: TyFun i1628251635 (TyFun [a1628251636] [a1628251636] -> Type)) data GenericDropSym1 (l_a3Cd9 :: i1628251635) (l_a3Cd8 :: TyFun [a1628251636] [a1628251636]) type GenericDropSym2 (t_a3Cd4 :: i1628251635) (t_a3Cd5 :: [a1628251636]) = GenericDrop t_a3Cd4 t_a3Cd5 data GenericSplitAtSym0 (l_a3CcR :: TyFun i1628251633 (TyFun [a1628251634] ([a1628251634], [a1628251634]) -> Type)) data GenericSplitAtSym1 (l_a3CcU :: i1628251633) (l_a3CcT :: TyFun [a1628251634] ([a1628251634], [a1628251634])) type GenericSplitAtSym2 (t_a3CcP :: i1628251633) (t_a3CcQ :: [a1628251634]) = GenericSplitAt t_a3CcP t_a3CcQ data GenericIndexSym0 (l_a3CcC :: TyFun [a1628251632] (TyFun i1628251631 a1628251632 -> Type)) data GenericIndexSym1 (l_a3CcF :: [a1628251632]) (l_a3CcE :: TyFun i1628251631 a1628251632) type GenericIndexSym2 (t_a3CcA :: [a1628251632]) (t_a3CcB :: i1628251631) = GenericIndex t_a3CcA t_a3CcB data GenericReplicateSym0 (l_a3Ccn :: TyFun i1628251629 (TyFun a1628251630 [a1628251630] -> Type)) data GenericReplicateSym1 (l_a3Ccq :: i1628251629) (l_a3Ccp :: TyFun a1628251630 [a1628251630]) type GenericReplicateSym2 (t_a3Ccl :: i1628251629) (t_a3Ccm :: a1628251630) = GenericReplicate t_a3Ccl t_a3Ccm instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.GenericReplicateSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.GenericReplicateSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.GenericIndexSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.GenericIndexSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.GenericSplitAtSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.GenericSplitAtSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.GenericDropSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.GenericDropSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.GenericTakeSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.GenericTakeSym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith7Sym7 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith7Sym6 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith7Sym5 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith7Sym4 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith7Sym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith7Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith7Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith7Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith6Sym6 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith6Sym5 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith6Sym4 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith6Sym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith6Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith6Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith6Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith5Sym5 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith5Sym4 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith5Sym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith5Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith5Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith5Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith4Sym4 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith4Sym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith4Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith4Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.ZipWith4Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Zip7Sym6 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Zip7Sym5 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Zip7Sym4 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Zip7Sym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Zip7Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Zip7Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Zip7Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Zip6Sym5 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Zip6Sym4 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Zip6Sym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Zip6Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Zip6Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Zip6Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Zip5Sym4 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Zip5Sym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Zip5Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Zip5Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Zip5Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Zip4Sym3 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Zip4Sym2 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Zip4Sym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.Zip4Sym0 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.StripPrefixSym1 instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings Data.Promotion.Prelude.List.StripPrefixSym0 -- | Defines and exports promoted and singleton versions of definitions -- from GHC.Num. module Data.Promotion.Prelude.Num class kproxy_a1N9t ~ Proxy => PNum (kproxy_a1N9t :: Proxy a_a1N9p) where type (:+) (arg_a1N9u :: a_a1N9p) (arg_a1N9v :: a_a1N9p) :: a_a1N9p type (:-) (arg_a1N9D :: a_a1N9p) (arg_a1N9E :: a_a1N9p) :: a_a1N9p type (:*) (arg_a1N9M :: a_a1N9p) (arg_a1N9N :: a_a1N9p) :: a_a1N9p type Negate (arg_a1N9V :: a_a1N9p) :: a_a1N9p type Abs (arg_a1N9Z :: a_a1N9p) :: a_a1N9p type Signum (arg_a1Na3 :: a_a1N9p) :: a_a1N9p type FromInteger (arg_a1Na7 :: Nat) :: a_a1N9p type (:-) a_a1Nam a_a1Nan = Apply (Apply TFHelper_1627817280Sym0 a_a1Nam) a_a1Nan type Negate a_a1NaC = Apply Negate_1627817295Sym0 a_a1NaC where { type family (:+) (arg_a1N9u :: a_a1N9p) (arg_a1N9v :: a_a1N9p) :: a_a1N9p; type family (:-) (arg_a1N9D :: a_a1N9p) (arg_a1N9E :: a_a1N9p) :: a_a1N9p; type family (:*) (arg_a1N9M :: a_a1N9p) (arg_a1N9N :: a_a1N9p) :: a_a1N9p; type family Negate (arg_a1N9V :: a_a1N9p) :: a_a1N9p; type family Abs (arg_a1N9Z :: a_a1N9p) :: a_a1N9p; type family Signum (arg_a1Na3 :: a_a1N9p) :: a_a1N9p; type family FromInteger (arg_a1Na7 :: Nat) :: a_a1N9p; type (:-) a_a1Nam a_a1Nan = Apply (Apply TFHelper_1627817280Sym0 a_a1Nam) a_a1Nan; type Negate a_a1NaC = Apply Negate_1627817295Sym0 a_a1NaC; } data (:+$) (l_a1N9y :: TyFun a1627817219 (TyFun a1627817219 a1627817219 -> Type)) data (:+$$) (l_a1N9B :: a1627817219) (l_a1N9A :: TyFun a1627817219 a1627817219) type (:+$$$) (t_a1N9w :: a1627817219) (t_a1N9x :: a1627817219) = (:+) t_a1N9w t_a1N9x data (:-$) (l_a1N9H :: TyFun a1627817219 (TyFun a1627817219 a1627817219 -> Type)) data (:-$$) (l_a1N9K :: a1627817219) (l_a1N9J :: TyFun a1627817219 a1627817219) type (:-$$$) (t_a1N9F :: a1627817219) (t_a1N9G :: a1627817219) = (:-) t_a1N9F t_a1N9G data (:*$) (l_a1N9Q :: TyFun a1627817219 (TyFun a1627817219 a1627817219 -> Type)) data (:*$$) (l_a1N9T :: a1627817219) (l_a1N9S :: TyFun a1627817219 a1627817219) type (:*$$$) (t_a1N9O :: a1627817219) (t_a1N9P :: a1627817219) = (:*) t_a1N9O t_a1N9P data NegateSym0 (l_a1N9X :: TyFun a1627817219 a1627817219) type NegateSym1 (t_a1N9W :: a1627817219) = Negate t_a1N9W data AbsSym0 (l_a1Na1 :: TyFun a1627817219 a1627817219) type AbsSym1 (t_a1Na0 :: a1627817219) = Abs t_a1Na0 data SignumSym0 (l_a1Na5 :: TyFun a1627817219 a1627817219) type SignumSym1 (t_a1Na4 :: a1627817219) = Signum t_a1Na4 data FromIntegerSym0 (l_a1Na9 :: TyFun Nat a1627817219) type FromIntegerSym1 (t_a1Na8 :: Nat) = FromInteger t_a1Na8 data SubtractSym0 (l_a1NMq :: TyFun a1627819601 (TyFun a1627819601 a1627819601 -> Type)) data SubtractSym1 (l_a1NMt :: a1627819601) (l_a1NMs :: TyFun a1627819601 a1627819601) type SubtractSym2 (t_a1NMo :: a1627819601) (t_a1NMp :: a1627819601) = Subtract t_a1NMo t_a1NMp -- | 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_ :: forall b_a1V6b a_a1V6c. b_a1V6b -> (a_a1V6c -> b_a1V6b) -> Maybe a_a1V6c -> b_a1V6b either_ :: forall a_a1Qgk c_a1Qgl b_a1Qgm. (a_a1Qgk -> c_a1Qgl) -> (b_a1Qgm -> c_a1Qgl) -> Either a_a1Qgk b_a1Qgm -> c_a1Qgl -- | (Kind) This is the kind of type-level symbols. Declared here because -- class IP needs it data Symbol :: * -- | The promotion of error. This version is more poly-kinded for -- easier use. data ErrorSym0 (l_a1LFh :: TyFun k01627810588 k1627810590) any_ :: forall a_a2jNu. (a_a2jNu -> Bool) -> [a_a2jNu] -> Bool -- | A concrete, poly-kinded proxy type data Proxy k (t :: k) :: forall k. k -> * Proxy :: Proxy k type FalseSym0 = False type TrueSym0 = True data NotSym0 (l_a17OH :: TyFun Bool Bool) type NotSym1 (t_a17OG :: Bool) = Not t_a17OG data (:&&$) (l_a17OZ :: TyFun Bool (TyFun Bool Bool -> Type)) data (:&&$$) (l_a17P2 :: Bool) (l_a17P1 :: TyFun Bool Bool) type (:&&$$$) (t_a17OX :: Bool) (t_a17OY :: Bool) = (:&&) t_a17OX t_a17OY data (:||$) (l_a17OM :: TyFun Bool (TyFun Bool Bool -> Type)) data (:||$$) (l_a17OP :: Bool) (l_a17OO :: TyFun Bool Bool) type (:||$$$) (t_a17OK :: Bool) (t_a17OL :: Bool) = (:||) t_a17OK t_a17OL type OtherwiseSym0 = Otherwise type NothingSym0 = Nothing data JustSym0 (l_aUOv :: TyFun a822083586 (Maybe a822083586)) type JustSym1 (t_aUOu :: a822083586) = Just t_aUOu data Maybe_Sym0 (l_a1V6k :: TyFun b1627847771 (TyFun (TyFun a1627847772 b1627847771 -> Type) (TyFun (Maybe a1627847772) b1627847771 -> Type) -> Type)) data Maybe_Sym1 (l_a1V6n :: b1627847771) (l_a1V6m :: TyFun (TyFun a1627847772 b1627847771 -> Type) (TyFun (Maybe a1627847772) b1627847771 -> Type)) data Maybe_Sym2 (l_a1V6q :: b1627847771) (l_a1V6r :: TyFun a1627847772 b1627847771 -> Type) (l_a1V6p :: TyFun (Maybe a1627847772) b1627847771) type Maybe_Sym3 (t_a1V6h :: b1627847771) (t_a1V6i :: TyFun a1627847772 b1627847771 -> Type) (t_a1V6j :: Maybe a1627847772) = Maybe_ t_a1V6h t_a1V6i t_a1V6j data LeftSym0 (l_aUOW :: TyFun a1627437720 (Either a1627437720 b1627437721)) type LeftSym1 (t_aUOV :: a1627437720) = Left t_aUOV data RightSym0 (l_aUOZ :: TyFun b1627437721 (Either a1627437720 b1627437721)) type RightSym1 (t_aUOY :: b1627437721) = Right t_aUOY data Either_Sym0 (l_a1Qgv :: TyFun (TyFun a1627829180 c1627829181 -> Type) (TyFun (TyFun b1627829182 c1627829181 -> Type) (TyFun (Either a1627829180 b1627829182) c1627829181 -> Type) -> Type)) data Either_Sym1 (l_a1Qgy :: TyFun a1627829180 c1627829181 -> Type) (l_a1Qgx :: TyFun (TyFun b1627829182 c1627829181 -> Type) (TyFun (Either a1627829180 b1627829182) c1627829181 -> Type)) data Either_Sym2 (l_a1QgB :: TyFun a1627829180 c1627829181 -> Type) (l_a1QgC :: TyFun b1627829182 c1627829181 -> Type) (l_a1QgA :: TyFun (Either a1627829180 b1627829182) c1627829181) type Either_Sym3 (t_a1Qgs :: TyFun a1627829180 c1627829181 -> Type) (t_a1Qgt :: TyFun b1627829182 c1627829181 -> Type) (t_a1Qgu :: Either a1627829180 b1627829182) = Either_ t_a1Qgs t_a1Qgt t_a1Qgu type Tuple0Sym0 = '() data Tuple2Sym0 (l_aUPv :: TyFun a822083586 (TyFun b822083587 (a822083586, b822083587) -> Type)) data Tuple2Sym1 (l_aUPy :: a822083586) (l_aUPx :: TyFun b822083587 (a822083586, b822083587)) type Tuple2Sym2 (t_aUPt :: a822083586) (t_aUPu :: b822083587) = '(t_aUPt, t_aUPu) data Tuple3Sym0 (l_aUPP :: TyFun a822083586 (TyFun b822083587 (TyFun c822083588 (a822083586, b822083587, c822083588) -> Type) -> Type)) data Tuple3Sym1 (l_aUPS :: a822083586) (l_aUPR :: TyFun b822083587 (TyFun c822083588 (a822083586, b822083587, c822083588) -> Type)) data Tuple3Sym2 (l_aUPV :: a822083586) (l_aUPW :: b822083587) (l_aUPU :: TyFun c822083588 (a822083586, b822083587, c822083588)) type Tuple3Sym3 (t_aUPM :: a822083586) (t_aUPN :: b822083587) (t_aUPO :: c822083588) = '(t_aUPM, t_aUPN, t_aUPO) data Tuple4Sym0 (l_aUQj :: TyFun a822083586 (TyFun b822083587 (TyFun c822083588 (TyFun d822083589 (a822083586, b822083587, c822083588, d822083589) -> Type) -> Type) -> Type)) data Tuple4Sym1 (l_aUQm :: a822083586) (l_aUQl :: TyFun b822083587 (TyFun c822083588 (TyFun d822083589 (a822083586, b822083587, c822083588, d822083589) -> Type) -> Type)) data Tuple4Sym2 (l_aUQp :: a822083586) (l_aUQq :: b822083587) (l_aUQo :: TyFun c822083588 (TyFun d822083589 (a822083586, b822083587, c822083588, d822083589) -> Type)) data Tuple4Sym3 (l_aUQt :: a822083586) (l_aUQu :: b822083587) (l_aUQv :: c822083588) (l_aUQs :: TyFun d822083589 (a822083586, b822083587, c822083588, d822083589)) type Tuple4Sym4 (t_aUQf :: a822083586) (t_aUQg :: b822083587) (t_aUQh :: c822083588) (t_aUQi :: d822083589) = '(t_aUQf, t_aUQg, t_aUQh, t_aUQi) data Tuple5Sym0 (l_aUQY :: TyFun a822083586 (TyFun b822083587 (TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (a822083586, b822083587, c822083588, d822083589, e822083590) -> Type) -> Type) -> Type) -> Type)) data Tuple5Sym1 (l_aUR1 :: a822083586) (l_aUR0 :: TyFun b822083587 (TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (a822083586, b822083587, c822083588, d822083589, e822083590) -> Type) -> Type) -> Type)) data Tuple5Sym2 (l_aUR4 :: a822083586) (l_aUR5 :: b822083587) (l_aUR3 :: TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (a822083586, b822083587, c822083588, d822083589, e822083590) -> Type) -> Type)) data Tuple5Sym3 (l_aUR8 :: a822083586) (l_aUR9 :: b822083587) (l_aURa :: c822083588) (l_aUR7 :: TyFun d822083589 (TyFun e822083590 (a822083586, b822083587, c822083588, d822083589, e822083590) -> Type)) data Tuple5Sym4 (l_aURd :: a822083586) (l_aURe :: b822083587) (l_aURf :: c822083588) (l_aURg :: d822083589) (l_aURc :: TyFun e822083590 (a822083586, b822083587, c822083588, d822083589, e822083590)) type Tuple5Sym5 (t_aUQT :: a822083586) (t_aUQU :: b822083587) (t_aUQV :: c822083588) (t_aUQW :: d822083589) (t_aUQX :: e822083590) = '(t_aUQT, t_aUQU, t_aUQV, t_aUQW, t_aUQX) data Tuple6Sym0 (l_aURP :: TyFun a822083586 (TyFun b822083587 (TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (TyFun f822083591 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591) -> Type) -> Type) -> Type) -> Type) -> Type)) data Tuple6Sym1 (l_aURS :: a822083586) (l_aURR :: TyFun b822083587 (TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (TyFun f822083591 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591) -> Type) -> Type) -> Type) -> Type)) data Tuple6Sym2 (l_aURV :: a822083586) (l_aURW :: b822083587) (l_aURU :: TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (TyFun f822083591 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591) -> Type) -> Type) -> Type)) data Tuple6Sym3 (l_aURZ :: a822083586) (l_aUS0 :: b822083587) (l_aUS1 :: c822083588) (l_aURY :: TyFun d822083589 (TyFun e822083590 (TyFun f822083591 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591) -> Type) -> Type)) data Tuple6Sym4 (l_aUS4 :: a822083586) (l_aUS5 :: b822083587) (l_aUS6 :: c822083588) (l_aUS7 :: d822083589) (l_aUS3 :: TyFun e822083590 (TyFun f822083591 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591) -> Type)) data Tuple6Sym5 (l_aUSa :: a822083586) (l_aUSb :: b822083587) (l_aUSc :: c822083588) (l_aUSd :: d822083589) (l_aUSe :: e822083590) (l_aUS9 :: TyFun f822083591 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591)) type Tuple6Sym6 (t_aURJ :: a822083586) (t_aURK :: b822083587) (t_aURL :: c822083588) (t_aURM :: d822083589) (t_aURN :: e822083590) (t_aURO :: f822083591) = '(t_aURJ, t_aURK, t_aURL, t_aURM, t_aURN, t_aURO) data Tuple7Sym0 (l_aUST :: TyFun a822083586 (TyFun b822083587 (TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (TyFun f822083591 (TyFun g822083592 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591, g822083592) -> Type) -> Type) -> Type) -> Type) -> Type) -> Type)) data Tuple7Sym1 (l_aUSW :: a822083586) (l_aUSV :: TyFun b822083587 (TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (TyFun f822083591 (TyFun g822083592 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591, g822083592) -> Type) -> Type) -> Type) -> Type) -> Type)) data Tuple7Sym2 (l_aUSZ :: a822083586) (l_aUT0 :: b822083587) (l_aUSY :: TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (TyFun f822083591 (TyFun g822083592 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591, g822083592) -> Type) -> Type) -> Type) -> Type)) data Tuple7Sym3 (l_aUT3 :: a822083586) (l_aUT4 :: b822083587) (l_aUT5 :: c822083588) (l_aUT2 :: TyFun d822083589 (TyFun e822083590 (TyFun f822083591 (TyFun g822083592 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591, g822083592) -> Type) -> Type) -> Type)) data Tuple7Sym4 (l_aUT8 :: a822083586) (l_aUT9 :: b822083587) (l_aUTa :: c822083588) (l_aUTb :: d822083589) (l_aUT7 :: TyFun e822083590 (TyFun f822083591 (TyFun g822083592 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591, g822083592) -> Type) -> Type)) data Tuple7Sym5 (l_aUTe :: a822083586) (l_aUTf :: b822083587) (l_aUTg :: c822083588) (l_aUTh :: d822083589) (l_aUTi :: e822083590) (l_aUTd :: TyFun f822083591 (TyFun g822083592 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591, g822083592) -> Type)) data Tuple7Sym6 (l_aUTl :: a822083586) (l_aUTm :: b822083587) (l_aUTn :: c822083588) (l_aUTo :: d822083589) (l_aUTp :: e822083590) (l_aUTq :: f822083591) (l_aUTk :: TyFun g822083592 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591, g822083592)) type Tuple7Sym7 (t_aUSM :: a822083586) (t_aUSN :: b822083587) (t_aUSO :: c822083588) (t_aUSP :: d822083589) (t_aUSQ :: e822083590) (t_aUSR :: f822083591) (t_aUSS :: g822083592) = '(t_aUSM, t_aUSN, t_aUSO, t_aUSP, t_aUSQ, t_aUSR, t_aUSS) data FstSym0 (l_a1Tho :: TyFun (a1627840729, b1627840730) a1627840729) type FstSym1 (t_a1Thn :: (a1627840729, b1627840730)) = Fst t_a1Thn data SndSym0 (l_a1Thg :: TyFun (a1627840727, b1627840728) b1627840728) type SndSym1 (t_a1Thf :: (a1627840727, b1627840728)) = Snd t_a1Thf data CurrySym0 (l_a1Th0 :: TyFun (TyFun (a1627840724, b1627840725) c1627840726 -> Type) (TyFun a1627840724 (TyFun b1627840725 c1627840726 -> Type) -> Type)) data CurrySym1 (l_a1Th3 :: TyFun (a1627840724, b1627840725) c1627840726 -> Type) (l_a1Th2 :: TyFun a1627840724 (TyFun b1627840725 c1627840726 -> Type)) data CurrySym2 (l_a1Th6 :: TyFun (a1627840724, b1627840725) c1627840726 -> Type) (l_a1Th7 :: a1627840724) (l_a1Th5 :: TyFun b1627840725 c1627840726) type CurrySym3 (t_a1TgX :: TyFun (a1627840724, b1627840725) c1627840726 -> Type) (t_a1TgY :: a1627840724) (t_a1TgZ :: b1627840725) = Curry t_a1TgX t_a1TgY t_a1TgZ data UncurrySym0 (l_a1Thx :: TyFun (TyFun a1627840721 (TyFun b1627840722 c1627840723 -> Type) -> Type) (TyFun (a1627840721, b1627840722) c1627840723 -> Type)) data UncurrySym1 (l_a1ThA :: TyFun a1627840721 (TyFun b1627840722 c1627840723 -> Type) -> Type) (l_a1Thz :: TyFun (a1627840721, b1627840722) c1627840723) type UncurrySym2 (t_a1Thv :: TyFun a1627840721 (TyFun b1627840722 c1627840723 -> Type) -> Type) (t_a1Thw :: (a1627840721, b1627840722)) = Uncurry t_a1Thv t_a1Thw data (:^$) l_a1LHT data (:^$$) (l_a1LHW :: Nat) l_a1LHV data IdSym0 (l_a1HPV :: TyFun a1627796653 a1627796653) type IdSym1 (t_a1HPU :: a1627796653) = Id t_a1HPU data ConstSym0 (l_a1HPu :: TyFun a1627796651 (TyFun b1627796652 a1627796651 -> Type)) data ConstSym1 (l_a1HPx :: a1627796651) (l_a1HPw :: TyFun b1627796652 a1627796651) type ConstSym2 (t_a1HPs :: a1627796651) (t_a1HPt :: b1627796652) = Const t_a1HPs t_a1HPt data (:.$) (l_a1HOP :: TyFun (TyFun b1627796648 c1627796649 -> Type) (TyFun (TyFun a1627796650 b1627796648 -> Type) (TyFun a1627796650 c1627796649 -> Type) -> Type)) data (:.$$) (l_a1HOS :: TyFun b1627796648 c1627796649 -> Type) (l_a1HOR :: TyFun (TyFun a1627796650 b1627796648 -> Type) (TyFun a1627796650 c1627796649 -> Type)) data (:.$$$) (l_a1HOV :: TyFun b1627796648 c1627796649 -> Type) (l_a1HOW :: TyFun a1627796650 b1627796648 -> Type) (l_a1HOU :: TyFun a1627796650 c1627796649) 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_a1HOx :: TyFun (TyFun a1627796645 (TyFun b1627796646 c1627796647 -> Type) -> Type) (TyFun b1627796646 (TyFun a1627796645 c1627796647 -> Type) -> Type)) data FlipSym1 (l_a1HOA :: TyFun a1627796645 (TyFun b1627796646 c1627796647 -> Type) -> Type) (l_a1HOz :: TyFun b1627796646 (TyFun a1627796645 c1627796647 -> Type)) data FlipSym2 (l_a1HOD :: TyFun a1627796645 (TyFun b1627796646 c1627796647 -> Type) -> Type) (l_a1HOE :: b1627796646) (l_a1HOC :: TyFun a1627796645 c1627796647) data AsTypeOfSym0 (l_a1HPL :: TyFun a1627796644 (TyFun a1627796644 a1627796644 -> Type)) data AsTypeOfSym1 (l_a1HPO :: a1627796644) (l_a1HPN :: TyFun a1627796644 a1627796644) type AsTypeOfSym2 (t_a1HPJ :: a1627796644) (t_a1HPK :: a1627796644) = AsTypeOf t_a1HPJ t_a1HPK data SeqSym0 (l_a1HOj :: TyFun a1627796642 (TyFun b1627796643 b1627796643 -> Type)) data SeqSym1 (l_a1HOm :: a1627796642) (l_a1HOl :: TyFun b1627796643 b1627796643) type SeqSym2 (t_a1HOh :: a1627796642) (t_a1HOi :: b1627796643) = Seq t_a1HOh t_a1HOi data (:$) (l_aUOF :: TyFun a822083586 (TyFun [a822083586] [a822083586] -> Type)) data (:$$) (l_aUOI :: a822083586) (l_aUOH :: TyFun [a822083586] [a822083586]) type (:$$$) (t_aUOD :: a822083586) (t_aUOE :: [a822083586]) = (:) t_aUOD t_aUOE type NilSym0 = '[] data MapSym0 (l_a1HQe :: TyFun (TyFun a1627796655 b1627796656 -> Type) (TyFun [a1627796655] [b1627796656] -> Type)) data MapSym1 (l_a1HQh :: TyFun a1627796655 b1627796656 -> Type) (l_a1HQg :: TyFun [a1627796655] [b1627796656]) type MapSym2 (t_a1HQc :: TyFun a1627796655 b1627796656 -> Type) (t_a1HQd :: [a1627796655]) = Map t_a1HQc t_a1HQd data ReverseSym0 (l_a2nyD :: TyFun [a1627953404] [a1627953404]) type ReverseSym1 (t_a2nyC :: [a1627953404]) = Reverse t_a2nyC data (:++$$) (l_a1HQ4 :: [a1627796654]) (l_a1HQ3 :: TyFun [a1627796654] [a1627796654]) data (:++$) (l_a1HQ1 :: TyFun [a1627796654] (TyFun [a1627796654] [a1627796654] -> Type)) data HeadSym0 (l_a2nB8 :: TyFun [a1627953409] a1627953409) type HeadSym1 (t_a2nB7 :: [a1627953409]) = Head t_a2nB7 data LastSym0 (l_a2nAY :: TyFun [a1627953408] a1627953408) type LastSym1 (t_a2nAX :: [a1627953408]) = Last t_a2nAX data TailSym0 (l_a2nAQ :: TyFun [a1627953407] [a1627953407]) type TailSym1 (t_a2nAP :: [a1627953407]) = Tail t_a2nAP data InitSym0 (l_a2nAj :: TyFun [a1627953406] [a1627953406]) type InitSym1 (t_a2nAi :: [a1627953406]) = Init t_a2nAi data NullSym0 (l_a2nzc :: TyFun [a1627953405] Bool) type NullSym1 (t_a2nzb :: [a1627953405]) = Null t_a2nzb data FoldlSym0 (l_aXPg :: TyFun (TyFun b1627619913 (TyFun a1627619912 b1627619913 -> Type) -> Type) (TyFun b1627619913 (TyFun [a1627619912] b1627619913 -> Type) -> Type)) data FoldlSym1 (l_aXPj :: TyFun b1627619913 (TyFun a1627619912 b1627619913 -> Type) -> Type) (l_aXPi :: TyFun b1627619913 (TyFun [a1627619912] b1627619913 -> Type)) data FoldlSym2 (l_aXPm :: TyFun b1627619913 (TyFun a1627619912 b1627619913 -> Type) -> Type) (l_aXPn :: b1627619913) (l_aXPl :: TyFun [a1627619912] b1627619913) type FoldlSym3 (t_aXPd :: TyFun b1627619913 (TyFun a1627619912 b1627619913 -> Type) -> Type) (t_aXPe :: b1627619913) (t_aXPf :: [a1627619912]) = Foldl t_aXPd t_aXPe t_aXPf data Foldl1Sym0 (l_a2nml :: TyFun (TyFun a1627953395 (TyFun a1627953395 a1627953395 -> Type) -> Type) (TyFun [a1627953395] a1627953395 -> Type)) data Foldl1Sym1 (l_a2nmo :: TyFun a1627953395 (TyFun a1627953395 a1627953395 -> Type) -> Type) (l_a2nmn :: TyFun [a1627953395] a1627953395) type Foldl1Sym2 (t_a2nmj :: TyFun a1627953395 (TyFun a1627953395 a1627953395 -> Type) -> Type) (t_a2nmk :: [a1627953395]) = Foldl1 t_a2nmj t_a2nmk data FoldrSym0 (l_a1HQu :: TyFun (TyFun a1627796657 (TyFun b1627796658 b1627796658 -> Type) -> Type) (TyFun b1627796658 (TyFun [a1627796657] b1627796658 -> Type) -> Type)) data FoldrSym1 (l_a1HQx :: TyFun a1627796657 (TyFun b1627796658 b1627796658 -> Type) -> Type) (l_a1HQw :: TyFun b1627796658 (TyFun [a1627796657] b1627796658 -> Type)) data FoldrSym2 (l_a1HQA :: TyFun a1627796657 (TyFun b1627796658 b1627796658 -> Type) -> Type) (l_a1HQB :: b1627796658) (l_a1HQz :: TyFun [a1627796657] b1627796658) type FoldrSym3 (t_a1HQr :: TyFun a1627796657 (TyFun b1627796658 b1627796658 -> Type) -> Type) (t_a1HQs :: b1627796658) (t_a1HQt :: [a1627796657]) = Foldr t_a1HQr t_a1HQs t_a1HQt data Foldr1Sym0 (l_a2nlI :: TyFun (TyFun a1627953393 (TyFun a1627953393 a1627953393 -> Type) -> Type) (TyFun [a1627953393] a1627953393 -> Type)) data Foldr1Sym1 (l_a2nlL :: TyFun a1627953393 (TyFun a1627953393 a1627953393 -> Type) -> Type) (l_a2nlK :: TyFun [a1627953393] a1627953393) type Foldr1Sym2 (t_a2nlG :: TyFun a1627953393 (TyFun a1627953393 a1627953393 -> Type) -> Type) (t_a2nlH :: [a1627953393]) = Foldr1 t_a2nlG t_a2nlH data ConcatSym0 (l_a2nlC :: TyFun [[a1627953392]] [a1627953392]) type ConcatSym1 (t_a2nlB :: [[a1627953392]]) = Concat t_a2nlB data ConcatMapSym0 (l_a2nlo :: TyFun (TyFun a1627953390 [b1627953391] -> Type) (TyFun [a1627953390] [b1627953391] -> Type)) data ConcatMapSym1 (l_a2nlr :: TyFun a1627953390 [b1627953391] -> Type) (l_a2nlq :: TyFun [a1627953390] [b1627953391]) type ConcatMapSym2 (t_a2nlm :: TyFun a1627953390 [b1627953391] -> Type) (t_a2nln :: [a1627953390]) = ConcatMap t_a2nlm t_a2nln data MaximumBySym0 (l_a2nmA :: TyFun (TyFun a1627953322 (TyFun a1627953322 Ordering -> Type) -> Type) (TyFun [a1627953322] a1627953322 -> Type)) data MaximumBySym1 (l_a2nmD :: TyFun a1627953322 (TyFun a1627953322 Ordering -> Type) -> Type) (l_a2nmC :: TyFun [a1627953322] a1627953322) type MaximumBySym2 (t_a2nmy :: TyFun a1627953322 (TyFun a1627953322 Ordering -> Type) -> Type) (t_a2nmz :: [a1627953322]) = MaximumBy t_a2nmy t_a2nmz data MinimumBySym0 (l_a2nnZ :: TyFun (TyFun a1627953321 (TyFun a1627953321 Ordering -> Type) -> Type) (TyFun [a1627953321] a1627953321 -> Type)) data MinimumBySym1 (l_a2no2 :: TyFun a1627953321 (TyFun a1627953321 Ordering -> Type) -> Type) (l_a2no1 :: TyFun [a1627953321] a1627953321) type MinimumBySym2 (t_a2nnX :: TyFun a1627953321 (TyFun a1627953321 Ordering -> Type) -> Type) (t_a2nnY :: [a1627953321]) = MinimumBy t_a2nnX t_a2nnY data AndSym0 (l_a2nlh :: TyFun [Bool] Bool) type AndSym1 (t_a2nlg :: [Bool]) = And t_a2nlg data OrSym0 (l_a2nlb :: TyFun [Bool] Bool) type OrSym1 (t_a2nla :: [Bool]) = Or t_a2nla data Any_Sym0 (l_a2jNB :: TyFun (TyFun a1627942712 Bool -> Type) (TyFun [a1627942712] Bool -> Type)) data Any_Sym1 (l_a2jNE :: TyFun a1627942712 Bool -> Type) (l_a2jND :: TyFun [a1627942712] Bool) type Any_Sym2 (t_a2jNz :: TyFun a1627942712 Bool -> Type) (t_a2jNA :: [a1627942712]) = Any_ t_a2jNz t_a2jNA data AllSym0 (l_a2nkX :: TyFun (TyFun a1627953389 Bool -> Type) (TyFun [a1627953389] Bool -> Type)) data AllSym1 (l_a2nl0 :: TyFun a1627953389 Bool -> Type) (l_a2nkZ :: TyFun [a1627953389] Bool) type AllSym2 (t_a2nkV :: TyFun a1627953389 Bool -> Type) (t_a2nkW :: [a1627953389]) = All t_a2nkV t_a2nkW data ScanlSym0 (l_a2nkm :: TyFun (TyFun b1627953387 (TyFun a1627953388 b1627953387 -> Type) -> Type) (TyFun b1627953387 (TyFun [a1627953388] [b1627953387] -> Type) -> Type)) data ScanlSym1 (l_a2nkp :: TyFun b1627953387 (TyFun a1627953388 b1627953387 -> Type) -> Type) (l_a2nko :: TyFun b1627953387 (TyFun [a1627953388] [b1627953387] -> Type)) data ScanlSym2 (l_a2nks :: TyFun b1627953387 (TyFun a1627953388 b1627953387 -> Type) -> Type) (l_a2nkt :: b1627953387) (l_a2nkr :: TyFun [a1627953388] [b1627953387]) type ScanlSym3 (t_a2nkj :: TyFun b1627953387 (TyFun a1627953388 b1627953387 -> Type) -> Type) (t_a2nkk :: b1627953387) (t_a2nkl :: [a1627953388]) = Scanl t_a2nkj t_a2nkk t_a2nkl data Scanl1Sym0 (l_a2nkI :: TyFun (TyFun a1627953386 (TyFun a1627953386 a1627953386 -> Type) -> Type) (TyFun [a1627953386] [a1627953386] -> Type)) data Scanl1Sym1 (l_a2nkL :: TyFun a1627953386 (TyFun a1627953386 a1627953386 -> Type) -> Type) (l_a2nkK :: TyFun [a1627953386] [a1627953386]) type Scanl1Sym2 (t_a2nkG :: TyFun a1627953386 (TyFun a1627953386 a1627953386 -> Type) -> Type) (t_a2nkH :: [a1627953386]) = Scanl1 t_a2nkG t_a2nkH data ScanrSym0 (l_a2njB :: TyFun (TyFun a1627953384 (TyFun b1627953385 b1627953385 -> Type) -> Type) (TyFun b1627953385 (TyFun [a1627953384] [b1627953385] -> Type) -> Type)) data ScanrSym1 (l_a2njE :: TyFun a1627953384 (TyFun b1627953385 b1627953385 -> Type) -> Type) (l_a2njD :: TyFun b1627953385 (TyFun [a1627953384] [b1627953385] -> Type)) data ScanrSym2 (l_a2njH :: TyFun a1627953384 (TyFun b1627953385 b1627953385 -> Type) -> Type) (l_a2njI :: b1627953385) (l_a2njG :: TyFun [a1627953384] [b1627953385]) type ScanrSym3 (t_a2njy :: TyFun a1627953384 (TyFun b1627953385 b1627953385 -> Type) -> Type) (t_a2njz :: b1627953385) (t_a2njA :: [a1627953384]) = Scanr t_a2njy t_a2njz t_a2njA data Scanr1Sym0 (l_a2niz :: TyFun (TyFun a1627953383 (TyFun a1627953383 a1627953383 -> Type) -> Type) (TyFun [a1627953383] [a1627953383] -> Type)) data Scanr1Sym1 (l_a2niC :: TyFun a1627953383 (TyFun a1627953383 a1627953383 -> Type) -> Type) (l_a2niB :: TyFun [a1627953383] [a1627953383]) type Scanr1Sym2 (t_a2nix :: TyFun a1627953383 (TyFun a1627953383 a1627953383 -> Type) -> Type) (t_a2niy :: [a1627953383]) = Scanr1 t_a2nix t_a2niy data ElemSym0 (l_a2naG :: TyFun a1627953369 (TyFun [a1627953369] Bool -> Type)) data ElemSym1 (l_a2naJ :: a1627953369) (l_a2naI :: TyFun [a1627953369] Bool) type ElemSym2 (t_a2naE :: a1627953369) (t_a2naF :: [a1627953369]) = Elem t_a2naE t_a2naF data NotElemSym0 (l_a2nar :: TyFun a1627953368 (TyFun [a1627953368] Bool -> Type)) data NotElemSym1 (l_a2nau :: a1627953368) (l_a2nat :: TyFun [a1627953368] Bool) type NotElemSym2 (t_a2nap :: a1627953368) (t_a2naq :: [a1627953368]) = NotElem t_a2nap t_a2naq data ZipSym0 (l_a2n8o :: TyFun [a1627953366] (TyFun [b1627953367] [(a1627953366, b1627953367)] -> Type)) data ZipSym1 (l_a2n8r :: [a1627953366]) (l_a2n8q :: TyFun [b1627953367] [(a1627953366, b1627953367)]) type ZipSym2 (t_a2n8m :: [a1627953366]) (t_a2n8n :: [b1627953367]) = Zip t_a2n8m t_a2n8n data Zip3Sym0 (l_a2n7c :: TyFun [a1627953363] (TyFun [b1627953364] (TyFun [c1627953365] [(a1627953363, b1627953364, c1627953365)] -> Type) -> Type)) data Zip3Sym1 (l_a2n7f :: [a1627953363]) (l_a2n7e :: TyFun [b1627953364] (TyFun [c1627953365] [(a1627953363, b1627953364, c1627953365)] -> Type)) data Zip3Sym2 (l_a2n7i :: [a1627953363]) (l_a2n7j :: [b1627953364]) (l_a2n7h :: TyFun [c1627953365] [(a1627953363, b1627953364, c1627953365)]) type Zip3Sym3 (t_a2n79 :: [a1627953363]) (t_a2n7a :: [b1627953364]) (t_a2n7b :: [c1627953365]) = Zip3 t_a2n79 t_a2n7a t_a2n7b data ZipWithSym0 (l_a2n6x :: TyFun (TyFun a1627953360 (TyFun b1627953361 c1627953362 -> Type) -> Type) (TyFun [a1627953360] (TyFun [b1627953361] [c1627953362] -> Type) -> Type)) data ZipWithSym1 (l_a2n6A :: TyFun a1627953360 (TyFun b1627953361 c1627953362 -> Type) -> Type) (l_a2n6z :: TyFun [a1627953360] (TyFun [b1627953361] [c1627953362] -> Type)) data ZipWithSym2 (l_a2n6D :: TyFun a1627953360 (TyFun b1627953361 c1627953362 -> Type) -> Type) (l_a2n6E :: [a1627953360]) (l_a2n6C :: TyFun [b1627953361] [c1627953362]) type ZipWithSym3 (t_a2n6u :: TyFun a1627953360 (TyFun b1627953361 c1627953362 -> Type) -> Type) (t_a2n6v :: [a1627953360]) (t_a2n6w :: [b1627953361]) = ZipWith t_a2n6u t_a2n6v t_a2n6w data ZipWith3Sym0 (l_a2n4S :: TyFun (TyFun a1627953356 (TyFun b1627953357 (TyFun c1627953358 d1627953359 -> Type) -> Type) -> Type) (TyFun [a1627953356] (TyFun [b1627953357] (TyFun [c1627953358] [d1627953359] -> Type) -> Type) -> Type)) data ZipWith3Sym1 (l_a2n4V :: TyFun a1627953356 (TyFun b1627953357 (TyFun c1627953358 d1627953359 -> Type) -> Type) -> Type) (l_a2n4U :: TyFun [a1627953356] (TyFun [b1627953357] (TyFun [c1627953358] [d1627953359] -> Type) -> Type)) data ZipWith3Sym2 (l_a2n4Y :: TyFun a1627953356 (TyFun b1627953357 (TyFun c1627953358 d1627953359 -> Type) -> Type) -> Type) (l_a2n4Z :: [a1627953356]) (l_a2n4X :: TyFun [b1627953357] (TyFun [c1627953358] [d1627953359] -> Type)) data ZipWith3Sym3 (l_a2n52 :: TyFun a1627953356 (TyFun b1627953357 (TyFun c1627953358 d1627953359 -> Type) -> Type) -> Type) (l_a2n53 :: [a1627953356]) (l_a2n54 :: [b1627953357]) (l_a2n51 :: TyFun [c1627953358] [d1627953359]) data UnzipSym0 (l_a2n4l :: TyFun [(a1627953354, b1627953355)] ([a1627953354], [b1627953355])) type UnzipSym1 (t_a2n4k :: [(a1627953354, b1627953355)]) = Unzip t_a2n4k data UntilSym0 (l_a1Uva :: TyFun (TyFun a1627845465 Bool -> Type) (TyFun (TyFun a1627845465 a1627845465 -> Type) (TyFun a1627845465 a1627845465 -> Type) -> Type)) data UntilSym1 (l_a1Uvd :: TyFun a1627845465 Bool -> Type) (l_a1Uvc :: TyFun (TyFun a1627845465 a1627845465 -> Type) (TyFun a1627845465 a1627845465 -> Type)) data UntilSym2 (l_a1Uvg :: TyFun a1627845465 Bool -> Type) (l_a1Uvh :: TyFun a1627845465 a1627845465 -> Type) (l_a1Uvf :: TyFun a1627845465 a1627845465) type UntilSym3 (t_a1Uv7 :: TyFun a1627845465 Bool -> Type) (t_a1Uv8 :: TyFun a1627845465 a1627845465 -> Type) (t_a1Uv9 :: a1627845465) = Until t_a1Uv7 t_a1Uv8 t_a1Uv9 data LengthSym0 (l_a2mLr :: TyFun [a1627953292] Nat) type LengthSym1 (t_a2mLq :: [a1627953292]) = Length t_a2mLq data SumSym0 (l_a2mLX :: TyFun [a1627953294] a1627953294) type SumSym1 (t_a2mLW :: [a1627953294]) = Sum t_a2mLW data ProductSym0 (l_a2mLz :: TyFun [a1627953293] a1627953293) type ProductSym1 (t_a2mLy :: [a1627953293]) = Product t_a2mLy data ReplicateSym0 (l_a2mL6 :: TyFun Nat (TyFun a1627953291 [a1627953291] -> Type)) data ReplicateSym1 (l_a2mL9 :: Nat) (l_a2mL8 :: TyFun a1627953291 [a1627953291]) type ReplicateSym2 (t_a2mL4 :: Nat) (t_a2mL5 :: a1627953291) = Replicate t_a2mL4 t_a2mL5 data TakeSym0 (l_a2mOh :: TyFun Nat (TyFun [a1627953307] [a1627953307] -> Type)) data TakeSym1 (l_a2mOk :: Nat) (l_a2mOj :: TyFun [a1627953307] [a1627953307]) type TakeSym2 (t_a2mOf :: Nat) (t_a2mOg :: [a1627953307]) = Take t_a2mOf t_a2mOg data DropSym0 (l_a2mNM :: TyFun Nat (TyFun [a1627953306] [a1627953306] -> Type)) data DropSym1 (l_a2mNP :: Nat) (l_a2mNO :: TyFun [a1627953306] [a1627953306]) type DropSym2 (t_a2mNK :: Nat) (t_a2mNL :: [a1627953306]) = Drop t_a2mNK t_a2mNL data SplitAtSym0 (l_a2mOM :: TyFun Nat (TyFun [a1627953305] ([a1627953305], [a1627953305]) -> Type)) data SplitAtSym1 (l_a2mOP :: Nat) (l_a2mOO :: TyFun [a1627953305] ([a1627953305], [a1627953305])) type SplitAtSym2 (t_a2mOK :: Nat) (t_a2mOL :: [a1627953305]) = SplitAt t_a2mOK t_a2mOL data TakeWhileSym0 (l_a2mUi :: TyFun (TyFun a1627953312 Bool -> Type) (TyFun [a1627953312] [a1627953312] -> Type)) data TakeWhileSym1 (l_a2mUl :: TyFun a1627953312 Bool -> Type) (l_a2mUk :: TyFun [a1627953312] [a1627953312]) type TakeWhileSym2 (t_a2mUg :: TyFun a1627953312 Bool -> Type) (t_a2mUh :: [a1627953312]) = TakeWhile t_a2mUg t_a2mUh data DropWhileSym0 (l_a2mTA :: TyFun (TyFun a1627953311 Bool -> Type) (TyFun [a1627953311] [a1627953311] -> Type)) data DropWhileSym1 (l_a2mTD :: TyFun a1627953311 Bool -> Type) (l_a2mTC :: TyFun [a1627953311] [a1627953311]) type DropWhileSym2 (t_a2mTy :: TyFun a1627953311 Bool -> Type) (t_a2mTz :: [a1627953311]) = DropWhile t_a2mTy t_a2mTz data SpanSym0 (l_a2mQE :: TyFun (TyFun a1627953309 Bool -> Type) (TyFun [a1627953309] ([a1627953309], [a1627953309]) -> Type)) data SpanSym1 (l_a2mQH :: TyFun a1627953309 Bool -> Type) (l_a2mQG :: TyFun [a1627953309] ([a1627953309], [a1627953309])) type SpanSym2 (t_a2mQC :: TyFun a1627953309 Bool -> Type) (t_a2mQD :: [a1627953309]) = Span t_a2mQC t_a2mQD data BreakSym0 (l_a2mOX :: TyFun (TyFun a1627953308 Bool -> Type) (TyFun [a1627953308] ([a1627953308], [a1627953308]) -> Type)) data BreakSym1 (l_a2mP0 :: TyFun a1627953308 Bool -> Type) (l_a2mOZ :: TyFun [a1627953308] ([a1627953308], [a1627953308])) type BreakSym2 (t_a2mOV :: TyFun a1627953308 Bool -> Type) (t_a2mOW :: [a1627953308]) = Break t_a2mOV t_a2mOW data LookupSym0 (l_a2mNc :: TyFun a1627953297 (TyFun [(a1627953297, b1627953298)] (Maybe b1627953298) -> Type)) data LookupSym1 (l_a2mNf :: a1627953297) (l_a2mNe :: TyFun [(a1627953297, b1627953298)] (Maybe b1627953298)) type LookupSym2 (t_a2mNa :: a1627953297) (t_a2mNb :: [(a1627953297, b1627953298)]) = Lookup t_a2mNa t_a2mNb data FilterSym0 (l_a2mUN :: TyFun (TyFun a1627953320 Bool -> Type) (TyFun [a1627953320] [a1627953320] -> Type)) data FilterSym1 (l_a2mUQ :: TyFun a1627953320 Bool -> Type) (l_a2mUP :: TyFun [a1627953320] [a1627953320]) type FilterSym2 (t_a2mUL :: TyFun a1627953320 Bool -> Type) (t_a2mUM :: [a1627953320]) = Filter t_a2mUL t_a2mUM data (:!!$) (l_a2mKB :: TyFun [a1627953289] (TyFun Nat a1627953289 -> Type)) data (:!!$$) (l_a2mKE :: [a1627953289]) (l_a2mKD :: TyFun Nat a1627953289) type (:!!$$$) (t_a2mKz :: [a1627953289]) (t_a2mKA :: Nat) = (:!!) t_a2mKz t_a2mKA -- | 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 ~ Proxy => PEq (kproxy :: Proxy a) where type (:==) (x :: a) (y :: a) :: Bool type (:/=) (x :: a) (y :: a) :: Bool type (:==) (x :: a) (y :: a) = x == y type (:/=) (x :: a) (y :: a) = Not (x :== y) where { type family (:==) (x :: a) (y :: a) :: Bool; type family (:/=) (x :: a) (y :: a) :: Bool; type (:==) (x :: a) (y :: a) = x == y; type (:/=) (x :: a) (y :: a) = Not (x :== y); } -- | Type-level If. If True a b ==> a; If -- False a b ==> b class (PEq (Proxy :: Proxy a_a1e21), kproxy_a1ed9 ~ Proxy) => POrd (kproxy_a1ed9 :: Proxy a_a1e21) where type Compare (arg_a1eda :: a_a1e21) (arg_a1edb :: a_a1e21) :: Ordering type (:<) (arg_a1edj :: a_a1e21) (arg_a1edk :: a_a1e21) :: Bool type (:<=) (arg_a1eds :: a_a1e21) (arg_a1edt :: a_a1e21) :: Bool type (:>) (arg_a1edB :: a_a1e21) (arg_a1edC :: a_a1e21) :: Bool type (:>=) (arg_a1edK :: a_a1e21) (arg_a1edL :: a_a1e21) :: Bool type Max (arg_a1edT :: a_a1e21) (arg_a1edU :: a_a1e21) :: a_a1e21 type Min (arg_a1ee2 :: a_a1e21) (arg_a1ee3 :: a_a1e21) :: a_a1e21 type Compare a_a1eeI a_a1eeJ = Apply (Apply Compare_1627683010Sym0 a_a1eeI) a_a1eeJ type (:<) a_a1eff a_a1efg = Apply (Apply TFHelper_1627683043Sym0 a_a1eff) a_a1efg type (:<=) a_a1efM a_a1efN = Apply (Apply TFHelper_1627683076Sym0 a_a1efM) a_a1efN type (:>) a_a1egj a_a1egk = Apply (Apply TFHelper_1627683109Sym0 a_a1egj) a_a1egk type (:>=) a_a1egQ a_a1egR = Apply (Apply TFHelper_1627683142Sym0 a_a1egQ) a_a1egR type Max a_a1ehn a_a1eho = Apply (Apply Max_1627683175Sym0 a_a1ehn) a_a1eho type Min a_a1ehU a_a1ehV = Apply (Apply Min_1627683208Sym0 a_a1ehU) a_a1ehV where { type family Compare (arg_a1eda :: a_a1e21) (arg_a1edb :: a_a1e21) :: Ordering; type family (:<) (arg_a1edj :: a_a1e21) (arg_a1edk :: a_a1e21) :: Bool; type family (:<=) (arg_a1eds :: a_a1e21) (arg_a1edt :: a_a1e21) :: Bool; type family (:>) (arg_a1edB :: a_a1e21) (arg_a1edC :: a_a1e21) :: Bool; type family (:>=) (arg_a1edK :: a_a1e21) (arg_a1edL :: a_a1e21) :: Bool; type family Max (arg_a1edT :: a_a1e21) (arg_a1edU :: a_a1e21) :: a_a1e21; type family Min (arg_a1ee2 :: a_a1e21) (arg_a1ee3 :: a_a1e21) :: a_a1e21; type Compare a_a1eeI a_a1eeJ = Apply (Apply Compare_1627683010Sym0 a_a1eeI) a_a1eeJ; type (:<) a_a1eff a_a1efg = Apply (Apply TFHelper_1627683043Sym0 a_a1eff) a_a1efg; type (:<=) a_a1efM a_a1efN = Apply (Apply TFHelper_1627683076Sym0 a_a1efM) a_a1efN; type (:>) a_a1egj a_a1egk = Apply (Apply TFHelper_1627683109Sym0 a_a1egj) a_a1egk; type (:>=) a_a1egQ a_a1egR = Apply (Apply TFHelper_1627683142Sym0 a_a1egQ) a_a1egR; type Max a_a1ehn a_a1eho = Apply (Apply Max_1627683175Sym0 a_a1ehn) a_a1eho; type Min a_a1ehU a_a1ehV = Apply (Apply Min_1627683208Sym0 a_a1ehU) a_a1ehV; } -- | 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 k (t :: k) :: forall k. k -> * Proxy :: Proxy k -- | The promotion of error. This version is more poly-kinded for -- easier use. data ErrorSym0 (l_a1LFh :: TyFun k01627810588 k1627810590) type TrueSym0 = True type FalseSym0 = False type LTSym0 = LT type EQSym0 = EQ type GTSym0 = GT type Tuple0Sym0 = '() data Tuple2Sym0 (l_aUPv :: TyFun a822083586 (TyFun b822083587 (a822083586, b822083587) -> Type)) data Tuple2Sym1 (l_aUPy :: a822083586) (l_aUPx :: TyFun b822083587 (a822083586, b822083587)) type Tuple2Sym2 (t_aUPt :: a822083586) (t_aUPu :: b822083587) = '(t_aUPt, t_aUPu) data Tuple3Sym0 (l_aUPP :: TyFun a822083586 (TyFun b822083587 (TyFun c822083588 (a822083586, b822083587, c822083588) -> Type) -> Type)) data Tuple3Sym1 (l_aUPS :: a822083586) (l_aUPR :: TyFun b822083587 (TyFun c822083588 (a822083586, b822083587, c822083588) -> Type)) data Tuple3Sym2 (l_aUPV :: a822083586) (l_aUPW :: b822083587) (l_aUPU :: TyFun c822083588 (a822083586, b822083587, c822083588)) type Tuple3Sym3 (t_aUPM :: a822083586) (t_aUPN :: b822083587) (t_aUPO :: c822083588) = '(t_aUPM, t_aUPN, t_aUPO) data Tuple4Sym0 (l_aUQj :: TyFun a822083586 (TyFun b822083587 (TyFun c822083588 (TyFun d822083589 (a822083586, b822083587, c822083588, d822083589) -> Type) -> Type) -> Type)) data Tuple4Sym1 (l_aUQm :: a822083586) (l_aUQl :: TyFun b822083587 (TyFun c822083588 (TyFun d822083589 (a822083586, b822083587, c822083588, d822083589) -> Type) -> Type)) data Tuple4Sym2 (l_aUQp :: a822083586) (l_aUQq :: b822083587) (l_aUQo :: TyFun c822083588 (TyFun d822083589 (a822083586, b822083587, c822083588, d822083589) -> Type)) data Tuple4Sym3 (l_aUQt :: a822083586) (l_aUQu :: b822083587) (l_aUQv :: c822083588) (l_aUQs :: TyFun d822083589 (a822083586, b822083587, c822083588, d822083589)) type Tuple4Sym4 (t_aUQf :: a822083586) (t_aUQg :: b822083587) (t_aUQh :: c822083588) (t_aUQi :: d822083589) = '(t_aUQf, t_aUQg, t_aUQh, t_aUQi) data Tuple5Sym0 (l_aUQY :: TyFun a822083586 (TyFun b822083587 (TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (a822083586, b822083587, c822083588, d822083589, e822083590) -> Type) -> Type) -> Type) -> Type)) data Tuple5Sym1 (l_aUR1 :: a822083586) (l_aUR0 :: TyFun b822083587 (TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (a822083586, b822083587, c822083588, d822083589, e822083590) -> Type) -> Type) -> Type)) data Tuple5Sym2 (l_aUR4 :: a822083586) (l_aUR5 :: b822083587) (l_aUR3 :: TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (a822083586, b822083587, c822083588, d822083589, e822083590) -> Type) -> Type)) data Tuple5Sym3 (l_aUR8 :: a822083586) (l_aUR9 :: b822083587) (l_aURa :: c822083588) (l_aUR7 :: TyFun d822083589 (TyFun e822083590 (a822083586, b822083587, c822083588, d822083589, e822083590) -> Type)) data Tuple5Sym4 (l_aURd :: a822083586) (l_aURe :: b822083587) (l_aURf :: c822083588) (l_aURg :: d822083589) (l_aURc :: TyFun e822083590 (a822083586, b822083587, c822083588, d822083589, e822083590)) type Tuple5Sym5 (t_aUQT :: a822083586) (t_aUQU :: b822083587) (t_aUQV :: c822083588) (t_aUQW :: d822083589) (t_aUQX :: e822083590) = '(t_aUQT, t_aUQU, t_aUQV, t_aUQW, t_aUQX) data Tuple6Sym0 (l_aURP :: TyFun a822083586 (TyFun b822083587 (TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (TyFun f822083591 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591) -> Type) -> Type) -> Type) -> Type) -> Type)) data Tuple6Sym1 (l_aURS :: a822083586) (l_aURR :: TyFun b822083587 (TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (TyFun f822083591 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591) -> Type) -> Type) -> Type) -> Type)) data Tuple6Sym2 (l_aURV :: a822083586) (l_aURW :: b822083587) (l_aURU :: TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (TyFun f822083591 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591) -> Type) -> Type) -> Type)) data Tuple6Sym3 (l_aURZ :: a822083586) (l_aUS0 :: b822083587) (l_aUS1 :: c822083588) (l_aURY :: TyFun d822083589 (TyFun e822083590 (TyFun f822083591 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591) -> Type) -> Type)) data Tuple6Sym4 (l_aUS4 :: a822083586) (l_aUS5 :: b822083587) (l_aUS6 :: c822083588) (l_aUS7 :: d822083589) (l_aUS3 :: TyFun e822083590 (TyFun f822083591 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591) -> Type)) data Tuple6Sym5 (l_aUSa :: a822083586) (l_aUSb :: b822083587) (l_aUSc :: c822083588) (l_aUSd :: d822083589) (l_aUSe :: e822083590) (l_aUS9 :: TyFun f822083591 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591)) type Tuple6Sym6 (t_aURJ :: a822083586) (t_aURK :: b822083587) (t_aURL :: c822083588) (t_aURM :: d822083589) (t_aURN :: e822083590) (t_aURO :: f822083591) = '(t_aURJ, t_aURK, t_aURL, t_aURM, t_aURN, t_aURO) data Tuple7Sym0 (l_aUST :: TyFun a822083586 (TyFun b822083587 (TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (TyFun f822083591 (TyFun g822083592 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591, g822083592) -> Type) -> Type) -> Type) -> Type) -> Type) -> Type)) data Tuple7Sym1 (l_aUSW :: a822083586) (l_aUSV :: TyFun b822083587 (TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (TyFun f822083591 (TyFun g822083592 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591, g822083592) -> Type) -> Type) -> Type) -> Type) -> Type)) data Tuple7Sym2 (l_aUSZ :: a822083586) (l_aUT0 :: b822083587) (l_aUSY :: TyFun c822083588 (TyFun d822083589 (TyFun e822083590 (TyFun f822083591 (TyFun g822083592 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591, g822083592) -> Type) -> Type) -> Type) -> Type)) data Tuple7Sym3 (l_aUT3 :: a822083586) (l_aUT4 :: b822083587) (l_aUT5 :: c822083588) (l_aUT2 :: TyFun d822083589 (TyFun e822083590 (TyFun f822083591 (TyFun g822083592 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591, g822083592) -> Type) -> Type) -> Type)) data Tuple7Sym4 (l_aUT8 :: a822083586) (l_aUT9 :: b822083587) (l_aUTa :: c822083588) (l_aUTb :: d822083589) (l_aUT7 :: TyFun e822083590 (TyFun f822083591 (TyFun g822083592 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591, g822083592) -> Type) -> Type)) data Tuple7Sym5 (l_aUTe :: a822083586) (l_aUTf :: b822083587) (l_aUTg :: c822083588) (l_aUTh :: d822083589) (l_aUTi :: e822083590) (l_aUTd :: TyFun f822083591 (TyFun g822083592 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591, g822083592) -> Type)) data Tuple7Sym6 (l_aUTl :: a822083586) (l_aUTm :: b822083587) (l_aUTn :: c822083588) (l_aUTo :: d822083589) (l_aUTp :: e822083590) (l_aUTq :: f822083591) (l_aUTk :: TyFun g822083592 (a822083586, b822083587, c822083588, d822083589, e822083590, f822083591, g822083592)) type Tuple7Sym7 (t_aUSM :: a822083586) (t_aUSN :: b822083587) (t_aUSO :: c822083588) (t_aUSP :: d822083589) (t_aUSQ :: e822083590) (t_aUSR :: f822083591) (t_aUSS :: g822083592) = '(t_aUSM, t_aUSN, t_aUSO, t_aUSP, t_aUSQ, t_aUSR, t_aUSS) data ThenCmpSym0 (l_a1g6A :: TyFun Ordering (TyFun Ordering Ordering -> Type)) data FoldlSym0 (l_aXPg :: TyFun (TyFun b1627619913 (TyFun a1627619912 b1627619913 -> Type) -> Type) (TyFun b1627619913 (TyFun [a1627619912] b1627619913 -> Type) -> Type)) -- | 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 -> ()