Singletons/Tuples.hs:0:0: Splicing declarations genSingletons [''(), ''(,), ''(,,), ''(,,,), ''(,,,,), ''(,,,,,), ''(,,,,,,)] ======> Singletons/Tuples.hs:(0,0)-(0,0) type TupleTyCtor0 = GHC.Tuple.() type TupleTyCtor0Sym0 = TupleTyCtor0 type Tuple0Sym0 = GHC.Tuple.() data instance Sing (z :: GHC.Tuple.()) = z ~ GHC.Tuple.() => STuple0 type STuple0 (z :: GHC.Tuple.()) = Sing z instance SingKind (KProxy :: KProxy GHC.Tuple.()) where type instance DemoteRep (KProxy :: KProxy GHC.Tuple.()) = GHC.Tuple.() fromSing STuple0 = GHC.Tuple.() toSing GHC.Tuple.() = SomeSing STuple0 instance SingI GHC.Tuple.() where sing = STuple0 type TupleTyCtor2 = GHC.Tuple.(,) data TupleTyCtor2Sym1 (l :: *) (l :: TyFun * *) data TupleTyCtor2Sym0 (k :: TyFun * (TyFun * * -> *)) type instance Apply (TupleTyCtor2Sym1 a) a = TupleTyCtor2 a a type instance Apply TupleTyCtor2Sym0 a = TupleTyCtor2Sym1 a data Tuple2Sym1 (l :: a) (l :: TyFun b (GHC.Tuple.(,) a b)) data Tuple2Sym0 (k :: TyFun a (TyFun b (GHC.Tuple.(,) a b) -> *)) type instance Apply (Tuple2Sym1 a) a = GHC.Tuple.(,) a a type instance Apply Tuple2Sym0 a = Tuple2Sym1 a data instance Sing (z :: GHC.Tuple.(,) a b) = forall (n :: a) (n :: b). z ~ GHC.Tuple.(,) n n => STuple2 (Sing n) (Sing n) type STuple2 (z :: GHC.Tuple.(,) a b) = Sing z instance (SingKind (KProxy :: KProxy a), SingKind (KProxy :: KProxy b)) => SingKind (KProxy :: KProxy (GHC.Tuple.(,) a b)) where type instance DemoteRep (KProxy :: KProxy (GHC.Tuple.(,) a b)) = GHC.Tuple.(,) (DemoteRep (KProxy :: KProxy a)) (DemoteRep (KProxy :: KProxy b)) fromSing (STuple2 b b) = GHC.Tuple.(,) (fromSing b) (fromSing b) toSing (GHC.Tuple.(,) b b) = case (toSing b :: SomeSing (KProxy :: KProxy a), toSing b :: SomeSing (KProxy :: KProxy b)) of { (SomeSing c, SomeSing c) -> SomeSing (STuple2 c c) } instance (SingI n, SingI n) => SingI (GHC.Tuple.(,) (n :: a) (n :: b)) where sing = STuple2 sing sing type TupleTyCtor3 = GHC.Tuple.(,,) data TupleTyCtor3Sym2 (l :: *) (l :: *) (l :: TyFun * *) data TupleTyCtor3Sym1 (l :: *) (l :: TyFun * (TyFun * * -> *)) data TupleTyCtor3Sym0 (k :: TyFun * (TyFun * (TyFun * * -> *) -> *)) type instance Apply (TupleTyCtor3Sym2 a a) a = TupleTyCtor3 a a a type instance Apply (TupleTyCtor3Sym1 a) a = TupleTyCtor3Sym2 a a type instance Apply TupleTyCtor3Sym0 a = TupleTyCtor3Sym1 a data Tuple3Sym2 (l :: a) (l :: b) (l :: TyFun c (GHC.Tuple.(,,) a b c)) data Tuple3Sym1 (l :: a) (l :: TyFun b (TyFun c (GHC.Tuple.(,,) a b c) -> *)) data Tuple3Sym0 (k :: TyFun a (TyFun b (TyFun c (GHC.Tuple.(,,) a b c) -> *) -> *)) type instance Apply (Tuple3Sym2 a a) a = GHC.Tuple.(,,) a a a type instance Apply (Tuple3Sym1 a) a = Tuple3Sym2 a a type instance Apply Tuple3Sym0 a = Tuple3Sym1 a data instance Sing (z :: GHC.Tuple.(,,) a b c) = forall (n :: a) (n :: b) (n :: c). z ~ GHC.Tuple.(,,) n n n => STuple3 (Sing n) (Sing n) (Sing n) type STuple3 (z :: GHC.Tuple.(,,) a b c) = Sing z instance (SingKind (KProxy :: KProxy a), SingKind (KProxy :: KProxy b), SingKind (KProxy :: KProxy c)) => SingKind (KProxy :: KProxy (GHC.Tuple.(,,) a b c)) where type instance DemoteRep (KProxy :: KProxy (GHC.Tuple.(,,) a b c)) = GHC.Tuple.(,,) (DemoteRep (KProxy :: KProxy a)) (DemoteRep (KProxy :: KProxy b)) (DemoteRep (KProxy :: KProxy c)) fromSing (STuple3 b b b) = GHC.Tuple.(,,) (fromSing b) (fromSing b) (fromSing b) toSing (GHC.Tuple.(,,) b b b) = case (toSing b :: SomeSing (KProxy :: KProxy a), toSing b :: SomeSing (KProxy :: KProxy b), toSing b :: SomeSing (KProxy :: KProxy c)) of { (SomeSing c, SomeSing c, SomeSing c) -> SomeSing (STuple3 c c c) } instance (SingI n, SingI n, SingI n) => SingI (GHC.Tuple.(,,) (n :: a) (n :: b) (n :: c)) where sing = STuple3 sing sing sing type TupleTyCtor4 = GHC.Tuple.(,,,) data TupleTyCtor4Sym3 (l :: *) (l :: *) (l :: *) (l :: TyFun * *) data TupleTyCtor4Sym2 (l :: *) (l :: *) (l :: TyFun * (TyFun * * -> *)) data TupleTyCtor4Sym1 (l :: *) (l :: TyFun * (TyFun * (TyFun * * -> *) -> *)) data TupleTyCtor4Sym0 (k :: TyFun * (TyFun * (TyFun * (TyFun * * -> *) -> *) -> *)) type instance Apply (TupleTyCtor4Sym3 a a a) a = TupleTyCtor4 a a a a type instance Apply (TupleTyCtor4Sym2 a a) a = TupleTyCtor4Sym3 a a a type instance Apply (TupleTyCtor4Sym1 a) a = TupleTyCtor4Sym2 a a type instance Apply TupleTyCtor4Sym0 a = TupleTyCtor4Sym1 a data Tuple4Sym3 (l :: a) (l :: b) (l :: c) (l :: TyFun d (GHC.Tuple.(,,,) a b c d)) data Tuple4Sym2 (l :: a) (l :: b) (l :: TyFun c (TyFun d (GHC.Tuple.(,,,) a b c d) -> *)) data Tuple4Sym1 (l :: a) (l :: TyFun b (TyFun c (TyFun d (GHC.Tuple.(,,,) a b c d) -> *) -> *)) data Tuple4Sym0 (k :: TyFun a (TyFun b (TyFun c (TyFun d (GHC.Tuple.(,,,) a b c d) -> *) -> *) -> *)) type instance Apply (Tuple4Sym3 a a a) a = GHC.Tuple.(,,,) a a a a type instance Apply (Tuple4Sym2 a a) a = Tuple4Sym3 a a a type instance Apply (Tuple4Sym1 a) a = Tuple4Sym2 a a type instance Apply Tuple4Sym0 a = Tuple4Sym1 a data instance Sing (z :: GHC.Tuple.(,,,) a b c d) = forall (n :: a) (n :: b) (n :: c) (n :: d). z ~ GHC.Tuple.(,,,) n n n n => STuple4 (Sing n) (Sing n) (Sing n) (Sing n) type STuple4 (z :: GHC.Tuple.(,,,) a b c d) = Sing z instance (SingKind (KProxy :: KProxy a), SingKind (KProxy :: KProxy b), SingKind (KProxy :: KProxy c), SingKind (KProxy :: KProxy d)) => SingKind (KProxy :: KProxy (GHC.Tuple.(,,,) a b c d)) where type instance DemoteRep (KProxy :: KProxy (GHC.Tuple.(,,,) a b c d)) = GHC.Tuple.(,,,) (DemoteRep (KProxy :: KProxy a)) (DemoteRep (KProxy :: KProxy b)) (DemoteRep (KProxy :: KProxy c)) (DemoteRep (KProxy :: KProxy d)) fromSing (STuple4 b b b b) = GHC.Tuple.(,,,) (fromSing b) (fromSing b) (fromSing b) (fromSing b) toSing (GHC.Tuple.(,,,) b b b b) = case (toSing b :: SomeSing (KProxy :: KProxy a), toSing b :: SomeSing (KProxy :: KProxy b), toSing b :: SomeSing (KProxy :: KProxy c), toSing b :: SomeSing (KProxy :: KProxy d)) of { (SomeSing c, SomeSing c, SomeSing c, SomeSing c) -> SomeSing (STuple4 c c c c) } instance (SingI n, SingI n, SingI n, SingI n) => SingI (GHC.Tuple.(,,,) (n :: a) (n :: b) (n :: c) (n :: d)) where sing = STuple4 sing sing sing sing type TupleTyCtor5 = GHC.Tuple.(,,,,) data TupleTyCtor5Sym4 (l :: *) (l :: *) (l :: *) (l :: *) (l :: TyFun * *) data TupleTyCtor5Sym3 (l :: *) (l :: *) (l :: *) (l :: TyFun * (TyFun * * -> *)) data TupleTyCtor5Sym2 (l :: *) (l :: *) (l :: TyFun * (TyFun * (TyFun * * -> *) -> *)) data TupleTyCtor5Sym1 (l :: *) (l :: TyFun * (TyFun * (TyFun * (TyFun * * -> *) -> *) -> *)) data TupleTyCtor5Sym0 (k :: TyFun * (TyFun * (TyFun * (TyFun * (TyFun * * -> *) -> *) -> *) -> *)) type instance Apply (TupleTyCtor5Sym4 a a a a) a = TupleTyCtor5 a a a a a type instance Apply (TupleTyCtor5Sym3 a a a) a = TupleTyCtor5Sym4 a a a a type instance Apply (TupleTyCtor5Sym2 a a) a = TupleTyCtor5Sym3 a a a type instance Apply (TupleTyCtor5Sym1 a) a = TupleTyCtor5Sym2 a a type instance Apply TupleTyCtor5Sym0 a = TupleTyCtor5Sym1 a data Tuple5Sym4 (l :: a) (l :: b) (l :: c) (l :: d) (l :: TyFun e (GHC.Tuple.(,,,,) a b c d e)) data Tuple5Sym3 (l :: a) (l :: b) (l :: c) (l :: TyFun d (TyFun e (GHC.Tuple.(,,,,) a b c d e) -> *)) data Tuple5Sym2 (l :: a) (l :: b) (l :: TyFun c (TyFun d (TyFun e (GHC.Tuple.(,,,,) a b c d e) -> *) -> *)) data Tuple5Sym1 (l :: a) (l :: TyFun b (TyFun c (TyFun d (TyFun e (GHC.Tuple.(,,,,) a b c d e) -> *) -> *) -> *)) data Tuple5Sym0 (k :: TyFun a (TyFun b (TyFun c (TyFun d (TyFun e (GHC.Tuple.(,,,,) a b c d e) -> *) -> *) -> *) -> *)) type instance Apply (Tuple5Sym4 a a a a) a = GHC.Tuple.(,,,,) a a a a a type instance Apply (Tuple5Sym3 a a a) a = Tuple5Sym4 a a a a type instance Apply (Tuple5Sym2 a a) a = Tuple5Sym3 a a a type instance Apply (Tuple5Sym1 a) a = Tuple5Sym2 a a type instance Apply Tuple5Sym0 a = Tuple5Sym1 a data instance Sing (z :: GHC.Tuple.(,,,,) a b c d e) = forall (n :: a) (n :: b) (n :: c) (n :: d) (n :: e). z ~ GHC.Tuple.(,,,,) n n n n n => STuple5 (Sing n) (Sing n) (Sing n) (Sing n) (Sing n) type STuple5 (z :: GHC.Tuple.(,,,,) a b c d e) = Sing z instance (SingKind (KProxy :: KProxy a), SingKind (KProxy :: KProxy b), SingKind (KProxy :: KProxy c), SingKind (KProxy :: KProxy d), SingKind (KProxy :: KProxy e)) => SingKind (KProxy :: KProxy (GHC.Tuple.(,,,,) a b c d e)) where type instance DemoteRep (KProxy :: KProxy (GHC.Tuple.(,,,,) a b c d e)) = GHC.Tuple.(,,,,) (DemoteRep (KProxy :: KProxy a)) (DemoteRep (KProxy :: KProxy b)) (DemoteRep (KProxy :: KProxy c)) (DemoteRep (KProxy :: KProxy d)) (DemoteRep (KProxy :: KProxy e)) fromSing (STuple5 b b b b b) = GHC.Tuple.(,,,,) (fromSing b) (fromSing b) (fromSing b) (fromSing b) (fromSing b) toSing (GHC.Tuple.(,,,,) b b b b b) = case (toSing b :: SomeSing (KProxy :: KProxy a), toSing b :: SomeSing (KProxy :: KProxy b), toSing b :: SomeSing (KProxy :: KProxy c), toSing b :: SomeSing (KProxy :: KProxy d), toSing b :: SomeSing (KProxy :: KProxy e)) of { (SomeSing c, SomeSing c, SomeSing c, SomeSing c, SomeSing c) -> SomeSing (STuple5 c c c c c) } instance (SingI n, SingI n, SingI n, SingI n, SingI n) => SingI (GHC.Tuple.(,,,,) (n :: a) (n :: b) (n :: c) (n :: d) (n :: e)) where sing = STuple5 sing sing sing sing sing type TupleTyCtor6 = GHC.Tuple.(,,,,,) data TupleTyCtor6Sym5 (l :: *) (l :: *) (l :: *) (l :: *) (l :: *) (l :: TyFun * *) data TupleTyCtor6Sym4 (l :: *) (l :: *) (l :: *) (l :: *) (l :: TyFun * (TyFun * * -> *)) data TupleTyCtor6Sym3 (l :: *) (l :: *) (l :: *) (l :: TyFun * (TyFun * (TyFun * * -> *) -> *)) data TupleTyCtor6Sym2 (l :: *) (l :: *) (l :: TyFun * (TyFun * (TyFun * (TyFun * * -> *) -> *) -> *)) data TupleTyCtor6Sym1 (l :: *) (l :: TyFun * (TyFun * (TyFun * (TyFun * (TyFun * * -> *) -> *) -> *) -> *)) data TupleTyCtor6Sym0 (k :: TyFun * (TyFun * (TyFun * (TyFun * (TyFun * (TyFun * * -> *) -> *) -> *) -> *) -> *)) type instance Apply (TupleTyCtor6Sym5 a a a a a) a = TupleTyCtor6 a a a a a a type instance Apply (TupleTyCtor6Sym4 a a a a) a = TupleTyCtor6Sym5 a a a a a type instance Apply (TupleTyCtor6Sym3 a a a) a = TupleTyCtor6Sym4 a a a a type instance Apply (TupleTyCtor6Sym2 a a) a = TupleTyCtor6Sym3 a a a type instance Apply (TupleTyCtor6Sym1 a) a = TupleTyCtor6Sym2 a a type instance Apply TupleTyCtor6Sym0 a = TupleTyCtor6Sym1 a data Tuple6Sym5 (l :: a) (l :: b) (l :: c) (l :: d) (l :: e) (l :: TyFun f (GHC.Tuple.(,,,,,) a b c d e f)) data Tuple6Sym4 (l :: a) (l :: b) (l :: c) (l :: d) (l :: TyFun e (TyFun f (GHC.Tuple.(,,,,,) a b c d e f) -> *)) data Tuple6Sym3 (l :: a) (l :: b) (l :: c) (l :: TyFun d (TyFun e (TyFun f (GHC.Tuple.(,,,,,) a b c d e f) -> *) -> *)) data Tuple6Sym2 (l :: a) (l :: b) (l :: TyFun c (TyFun d (TyFun e (TyFun f (GHC.Tuple.(,,,,,) a b c d e f) -> *) -> *) -> *)) data Tuple6Sym1 (l :: a) (l :: TyFun b (TyFun c (TyFun d (TyFun e (TyFun f (GHC.Tuple.(,,,,,) a b c d e f) -> *) -> *) -> *) -> *)) data Tuple6Sym0 (k :: TyFun a (TyFun b (TyFun c (TyFun d (TyFun e (TyFun f (GHC.Tuple.(,,,,,) a b c d e f) -> *) -> *) -> *) -> *) -> *)) type instance Apply (Tuple6Sym5 a a a a a) a = GHC.Tuple.(,,,,,) a a a a a a type instance Apply (Tuple6Sym4 a a a a) a = Tuple6Sym5 a a a a a type instance Apply (Tuple6Sym3 a a a) a = Tuple6Sym4 a a a a type instance Apply (Tuple6Sym2 a a) a = Tuple6Sym3 a a a type instance Apply (Tuple6Sym1 a) a = Tuple6Sym2 a a type instance Apply Tuple6Sym0 a = Tuple6Sym1 a data instance Sing (z :: GHC.Tuple.(,,,,,) a b c d e f) = forall (n :: a) (n :: b) (n :: c) (n :: d) (n :: e) (n :: f). z ~ GHC.Tuple.(,,,,,) n n n n n n => STuple6 (Sing n) (Sing n) (Sing n) (Sing n) (Sing n) (Sing n) type STuple6 (z :: GHC.Tuple.(,,,,,) a b c d e f) = Sing z instance (SingKind (KProxy :: KProxy a), SingKind (KProxy :: KProxy b), SingKind (KProxy :: KProxy c), SingKind (KProxy :: KProxy d), SingKind (KProxy :: KProxy e), SingKind (KProxy :: KProxy f)) => SingKind (KProxy :: KProxy (GHC.Tuple.(,,,,,) a b c d e f)) where type instance DemoteRep (KProxy :: KProxy (GHC.Tuple.(,,,,,) a b c d e f)) = GHC.Tuple.(,,,,,) (DemoteRep (KProxy :: KProxy a)) (DemoteRep (KProxy :: KProxy b)) (DemoteRep (KProxy :: KProxy c)) (DemoteRep (KProxy :: KProxy d)) (DemoteRep (KProxy :: KProxy e)) (DemoteRep (KProxy :: KProxy f)) fromSing (STuple6 b b b b b b) = GHC.Tuple.(,,,,,) (fromSing b) (fromSing b) (fromSing b) (fromSing b) (fromSing b) (fromSing b) toSing (GHC.Tuple.(,,,,,) b b b b b b) = case (toSing b :: SomeSing (KProxy :: KProxy a), toSing b :: SomeSing (KProxy :: KProxy b), toSing b :: SomeSing (KProxy :: KProxy c), toSing b :: SomeSing (KProxy :: KProxy d), toSing b :: SomeSing (KProxy :: KProxy e), toSing b :: SomeSing (KProxy :: KProxy f)) of { (SomeSing c, SomeSing c, SomeSing c, SomeSing c, SomeSing c, SomeSing c) -> SomeSing (STuple6 c c c c c c) } instance (SingI n, SingI n, SingI n, SingI n, SingI n, SingI n) => SingI (GHC.Tuple.(,,,,,) (n :: a) (n :: b) (n :: c) (n :: d) (n :: e) (n :: f)) where sing = STuple6 sing sing sing sing sing sing type TupleTyCtor7 = GHC.Tuple.(,,,,,,) data TupleTyCtor7Sym6 (l :: *) (l :: *) (l :: *) (l :: *) (l :: *) (l :: *) (l :: TyFun * *) data TupleTyCtor7Sym5 (l :: *) (l :: *) (l :: *) (l :: *) (l :: *) (l :: TyFun * (TyFun * * -> *)) data TupleTyCtor7Sym4 (l :: *) (l :: *) (l :: *) (l :: *) (l :: TyFun * (TyFun * (TyFun * * -> *) -> *)) data TupleTyCtor7Sym3 (l :: *) (l :: *) (l :: *) (l :: TyFun * (TyFun * (TyFun * (TyFun * * -> *) -> *) -> *)) data TupleTyCtor7Sym2 (l :: *) (l :: *) (l :: TyFun * (TyFun * (TyFun * (TyFun * (TyFun * * -> *) -> *) -> *) -> *)) data TupleTyCtor7Sym1 (l :: *) (l :: TyFun * (TyFun * (TyFun * (TyFun * (TyFun * (TyFun * * -> *) -> *) -> *) -> *) -> *)) data TupleTyCtor7Sym0 (k :: TyFun * (TyFun * (TyFun * (TyFun * (TyFun * (TyFun * (TyFun * * -> *) -> *) -> *) -> *) -> *) -> *)) type instance Apply (TupleTyCtor7Sym6 a a a a a a) a = TupleTyCtor7 a a a a a a a type instance Apply (TupleTyCtor7Sym5 a a a a a) a = TupleTyCtor7Sym6 a a a a a a type instance Apply (TupleTyCtor7Sym4 a a a a) a = TupleTyCtor7Sym5 a a a a a type instance Apply (TupleTyCtor7Sym3 a a a) a = TupleTyCtor7Sym4 a a a a type instance Apply (TupleTyCtor7Sym2 a a) a = TupleTyCtor7Sym3 a a a type instance Apply (TupleTyCtor7Sym1 a) a = TupleTyCtor7Sym2 a a type instance Apply TupleTyCtor7Sym0 a = TupleTyCtor7Sym1 a data Tuple7Sym6 (l :: a) (l :: b) (l :: c) (l :: d) (l :: e) (l :: f) (l :: TyFun g (GHC.Tuple.(,,,,,,) a b c d e f g)) data Tuple7Sym5 (l :: a) (l :: b) (l :: c) (l :: d) (l :: e) (l :: TyFun f (TyFun g (GHC.Tuple.(,,,,,,) a b c d e f g) -> *)) data Tuple7Sym4 (l :: a) (l :: b) (l :: c) (l :: d) (l :: TyFun e (TyFun f (TyFun g (GHC.Tuple.(,,,,,,) a b c d e f g) -> *) -> *)) data Tuple7Sym3 (l :: a) (l :: b) (l :: c) (l :: TyFun d (TyFun e (TyFun f (TyFun g (GHC.Tuple.(,,,,,,) a b c d e f g) -> *) -> *) -> *)) data Tuple7Sym2 (l :: a) (l :: b) (l :: TyFun c (TyFun d (TyFun e (TyFun f (TyFun g (GHC.Tuple.(,,,,,,) a b c d e f g) -> *) -> *) -> *) -> *)) data Tuple7Sym1 (l :: a) (l :: TyFun b (TyFun c (TyFun d (TyFun e (TyFun f (TyFun g (GHC.Tuple.(,,,,,,) a b c d e f g) -> *) -> *) -> *) -> *) -> *)) data Tuple7Sym0 (k :: TyFun a (TyFun b (TyFun c (TyFun d (TyFun e (TyFun f (TyFun g (GHC.Tuple.(,,,,,,) a b c d e f g) -> *) -> *) -> *) -> *) -> *) -> *)) type instance Apply (Tuple7Sym6 a a a a a a) a = GHC.Tuple.(,,,,,,) a a a a a a a type instance Apply (Tuple7Sym5 a a a a a) a = Tuple7Sym6 a a a a a a type instance Apply (Tuple7Sym4 a a a a) a = Tuple7Sym5 a a a a a type instance Apply (Tuple7Sym3 a a a) a = Tuple7Sym4 a a a a type instance Apply (Tuple7Sym2 a a) a = Tuple7Sym3 a a a type instance Apply (Tuple7Sym1 a) a = Tuple7Sym2 a a type instance Apply Tuple7Sym0 a = Tuple7Sym1 a data instance Sing (z :: GHC.Tuple.(,,,,,,) a b c d e f g) = forall (n :: a) (n :: b) (n :: c) (n :: d) (n :: e) (n :: f) (n :: g). z ~ GHC.Tuple.(,,,,,,) n n n n n n n => STuple7 (Sing n) (Sing n) (Sing n) (Sing n) (Sing n) (Sing n) (Sing n) type STuple7 (z :: GHC.Tuple.(,,,,,,) a b c d e f g) = Sing z instance (SingKind (KProxy :: KProxy a), SingKind (KProxy :: KProxy b), SingKind (KProxy :: KProxy c), SingKind (KProxy :: KProxy d), SingKind (KProxy :: KProxy e), SingKind (KProxy :: KProxy f), SingKind (KProxy :: KProxy g)) => SingKind (KProxy :: KProxy (GHC.Tuple.(,,,,,,) a b c d e f g)) where type instance DemoteRep (KProxy :: KProxy (GHC.Tuple.(,,,,,,) a b c d e f g)) = GHC.Tuple.(,,,,,,) (DemoteRep (KProxy :: KProxy a)) (DemoteRep (KProxy :: KProxy b)) (DemoteRep (KProxy :: KProxy c)) (DemoteRep (KProxy :: KProxy d)) (DemoteRep (KProxy :: KProxy e)) (DemoteRep (KProxy :: KProxy f)) (DemoteRep (KProxy :: KProxy g)) fromSing (STuple7 b b b b b b b) = GHC.Tuple.(,,,,,,) (fromSing b) (fromSing b) (fromSing b) (fromSing b) (fromSing b) (fromSing b) (fromSing b) toSing (GHC.Tuple.(,,,,,,) b b b b b b b) = case (toSing b :: SomeSing (KProxy :: KProxy a), toSing b :: SomeSing (KProxy :: KProxy b), toSing b :: SomeSing (KProxy :: KProxy c), toSing b :: SomeSing (KProxy :: KProxy d), toSing b :: SomeSing (KProxy :: KProxy e), toSing b :: SomeSing (KProxy :: KProxy f), toSing b :: SomeSing (KProxy :: KProxy g)) of { (SomeSing c, SomeSing c, SomeSing c, SomeSing c, SomeSing c, SomeSing c, SomeSing c) -> SomeSing (STuple7 c c c c c c c) } instance (SingI n, SingI n, SingI n, SingI n, SingI n, SingI n, SingI n) => SingI (GHC.Tuple.(,,,,,,) (n :: a) (n :: b) (n :: c) (n :: d) (n :: e) (n :: f) (n :: g)) where sing = STuple7 sing sing sing sing sing sing sing