{-# OPTIONS_GHC -Wno-overlapping-patterns -Wno-incomplete-patterns -Wno-incomplete-uni-patterns -fno-opt-coercion #-}
{-# LANGUAGE DataKinds #-}
{-# LANGUAGE FlexibleContexts #-}
{-# LANGUAGE ScopedTypeVariables #-}
{-# LANGUAGE TypeFamilies #-}
{-# LANGUAGE TypeOperators #-}
module Debug.RecoverRTTI.Tuple.Recursive (
Tuple
, cons
, uncons
) where
import Data.SOP
import Debug.RecoverRTTI.Tuple.Size
import Debug.RecoverRTTI.Util.TypeLevel
type family Tuple xs where
Tuple '[] =
()
Tuple '[x1] =
(x1)
Tuple '[x1, x2] =
(x1, x2)
Tuple '[x1, x2, x3] =
(x1, x2, x3)
Tuple '[x1, x2, x3, x4] =
(x1, x2, x3, x4)
Tuple '[x1, x2, x3, x4, x5] =
(x1, x2, x3, x4, x5)
Tuple '[x1, x2, x3, x4, x5, x6] =
(x1, x2, x3, x4, x5, x6)
Tuple '[x1, x2, x3, x4, x5, x6, x7] =
(x1, x2, x3, x4, x5, x6, x7)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8] =
(x1, x2, x3, x4, x5, x6, x7, x8)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47, x48] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47, x48)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47, x48, x49] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47, x48, x49)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47, x48, x49, x50] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47, x48, x49, x50)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47, x48, x49, x50, x51] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47, x48, x49, x50, x51)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47, x48, x49, x50, x51, x52] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47, x48, x49, x50, x51, x52)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47, x48, x49, x50, x51, x52, x53] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47, x48, x49, x50, x51, x52, x53)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47, x48, x49, x50, x51, x52, x53, x54] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47, x48, x49, x50, x51, x52, x53, x54)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47, x48, x49, x50, x51, x52, x53, x54, x55] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47, x48, x49, x50, x51, x52, x53, x54, x55)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47, x48, x49, x50, x51, x52, x53, x54, x55, x56] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47, x48, x49, x50, x51, x52, x53, x54, x55, x56)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47, x48, x49, x50, x51, x52, x53, x54, x55, x56, x57] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47, x48, x49, x50, x51, x52, x53, x54, x55, x56, x57)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47, x48, x49, x50, x51, x52, x53, x54, x55, x56, x57, x58] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47, x48, x49, x50, x51, x52, x53, x54, x55, x56, x57, x58)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47, x48, x49, x50, x51, x52, x53, x54, x55, x56, x57, x58, x59] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47, x48, x49, x50, x51, x52, x53, x54, x55, x56, x57, x58, x59)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47, x48, x49, x50, x51, x52, x53, x54, x55, x56, x57, x58, x59, x60] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47, x48, x49, x50, x51, x52, x53, x54, x55, x56, x57, x58, x59, x60)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47, x48, x49, x50, x51, x52, x53, x54, x55, x56, x57, x58, x59, x60, x61] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47, x48, x49, x50, x51, x52, x53, x54, x55, x56, x57, x58, x59, x60, x61)
Tuple '[x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47, x48, x49, x50, x51, x52, x53, x54, x55, x56, x57, x58, x59, x60, x61, x62] =
(x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30, x31, x32, x33, x34, x35, x36, x37, x38, x39, x40, x41, x42, x43, x44, x45, x46, x47, x48, x49, x50, x51, x52, x53, x54, x55, x56, x57, x58, x59, x60, x61, x62)
cons :: forall x xs. SListI xs
=> Proxy xs
-> ValidSize (Length (x ': xs))
-> (x, Tuple xs) -> Tuple (x ': xs)
cons :: Proxy xs
-> ValidSize (Length (x : xs)) -> (x, Tuple xs) -> Tuple (x : xs)
cons Proxy xs
_ (ValidSize Sing (Length (x : xs))
_n forall r. TooBig (Length (x : xs)) -> r
notTooBig) = Shape xs -> (x, Tuple xs) -> Tuple (x : xs)
go Shape xs
forall k (xs :: [k]). SListI xs => Shape xs
shape
where
go :: Shape xs -> (x, Tuple xs) -> Tuple (x ': xs)
go :: Shape xs -> (x, Tuple xs) -> Tuple (x : xs)
go Shape xs
ShapeNil (x
x1, ()) =
(x
Tuple (x : xs)
x1)
go (ShapeCons Shape xs
ShapeNil) (x
x1, (Tuple xs
x2)) =
(x
x1, x
Tuple xs
x2)
go (ShapeCons (ShapeCons Shape xs
ShapeNil)) (x
x1, (x2, x3)) =
(x
x1, x
x2, x
x3)
go (ShapeCons (ShapeCons (ShapeCons Shape xs
ShapeNil))) (x
x1, (x2, x3, x4)) =
(x
x1, x
x2, x
x3, x
x4)
go (ShapeCons (ShapeCons (ShapeCons (ShapeCons Shape xs
ShapeNil)))) (x
x1, (x2, x3, x4, x5)) =
(x
x1, x
x2, x
x3, x
x4, x
x5)
go (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons Shape xs
ShapeNil))))) (x
x1, (x2, x3, x4, x5, x6)) =
(x
x1, x
x2, x
x3, x
x4, x
x5, x
x6)
go (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons Shape xs
ShapeNil)))))) (x
x1, (x2, x3, x4, x5, x6, x7)) =
(x
x1, x
x2, x
x3, x
x4, x
x5, x
x6, x
x7)
go (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons Shape xs
ShapeNil))))))) (x
x1, (x2, x3, x4, x5, x6, x7, x8)) =
(x
x1, x
x2, x
x3, x
x4, x
x5, x
x6, x
x7, x
x8)
go (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons Shape xs
ShapeNil)))))))) (x
x1, (x2, x3, x4, x5, x6, x7, x8, x9)) =
(x
x1, x
x2, x
x3, x
x4, x
x5, x
x6, x
x7, x
x8, x
x9)
go (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons Shape xs
ShapeNil))))))))) (x
x1, (x2, x3, x4, x5, x6, x7, x8, x9, x10)) =
(x
x1, x
x2, x
x3, x
x4, x
x5, x
x6, x
x7, x
x8, x
x9, x
x10)
go (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons Shape xs
ShapeNil)))))))))) (x
x1, (x2, x3, x4, x5, x6, x7, x8, x9, x10, x11)) =
(x
x1, x
x2, x
x3, x
x4, x
x5, x
x6, x
x7, x
x8, x
x9, x
x10, x
x11)
go (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons Shape xs
ShapeNil))))))))))) (x
x1, (x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12)) =
(x
x1, x
x2, x
x3, x
x4, x
x5, x
x6, x
x7, x
x8, x
x9, x
x10, x
x11, x
x12)
go (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons Shape xs
ShapeNil)))))))))))) (x
x1, (x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13)) =
(x
x1, x
x2, x
x3, x
x4, x
x5, x
x6, x
x7, x
x8, x
x9, x
x10, x
x11, x
x12, x
x13)
go (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons Shape xs
ShapeNil))))))))))))) (x
x1, (x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14)) =
(x
x1, x
x2, x
x3, x
x4, x
x5, x
x6, x
x7, x
x8, x
x9, x
x10, x
x11, x
x12, x
x13, x
x14)
go (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons Shape xs
ShapeNil)))))))))))))) (x
x1, (x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15)) =
(x
x1, x
x2, x
x3, x
x4, x
x5, x
x6, x
x7, x
x8, x
x9, x
x10, x
x11, x
x12, x
x13, x
x14, x
x15)
go (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons Shape xs
ShapeNil))))))))))))))) (x
x1, (x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16)) =
(x
x1, x
x2, x
x3, x
x4, x
x5, x
x6, x
x7, x
x8, x
x9, x
x10, x
x11, x
x12, x
x13, x
x14, x
x15, x
x16)
go (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons Shape xs
ShapeNil)))))))))))))))) (x
x1, (x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17)) =
(x
x1, x
x2, x
x3, x
x4, x
x5, x
x6, x
x7, x
x8, x
x9, x
x10, x
x11, x
x12, x
x13, x
x14, x
x15, x
x16, x
x17)
go (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons Shape xs
ShapeNil))))))))))))))))) (x
x1, (x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18)) =
(x
x1, x
x2, x
x3, x
x4, x
x5, x
x6, x
x7, x
x8, x
x9, x
x10, x
x11, x
x12, x
x13, x
x14, x
x15, x
x16, x
x17, x
x18)
go (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons Shape xs
ShapeNil)))))))))))))))))) (x
x1, (x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19)) =
(x
x1, x
x2, x
x3, x
x4, x
x5, x
x6, x
x7, x
x8, x
x9, x
x10, x
x11, x
x12, x
x13, x
x14, x
x15, x
x16, x
x17, x
x18, x
x19)
go (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons Shape xs
ShapeNil))))))))))))))))))) (x
x1, (x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20)) =
(x
x1, x
x2, x
x3, x
x4, x
x5, x
x6, x
x7, x
x8, x
x9, x
x10, x
x11, x
x12, x
x13, x
x14, x
x15, x
x16, x
x17, x
x18, x
x19, x
x20)
go (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons Shape xs
ShapeNil)))))))))))))))))))) (x
x1, (x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21)) =
(x
x1, x
x2, x
x3, x
x4, x
x5, x
x6, x
x7, x
x8, x
x9, x
x10, x
x11, x
x12, x
x13, x
x14, x
x15, x
x16, x
x17, x
x18, x
x19, x
x20, x
x21)
go (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons Shape xs
ShapeNil))))))))))))))))))))) (x
x1, (x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22)) =
(x
x1, x
x2, x
x3, x
x4, x
x5, x
x6, x
x7, x
x8, x
x9, x
x10, x
x11, x
x12, x
x13, x
x14, x
x15, x
x16, x
x17, x
x18, x
x19, x
x20, x
x21, x
x22)
go (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons Shape xs
ShapeNil)))))))))))))))))))))) (x
x1, (x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23)) =
(x
x1, x
x2, x
x3, x
x4, x
x5, x
x6, x
x7, x
x8, x
x9, x
x10, x
x11, x
x12, x
x13, x
x14, x
x15, x
x16, x
x17, x
x18, x
x19, x
x20, x
x21, x
x22, x
x23)
go (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons Shape xs
ShapeNil))))))))))))))))))))))) (x
x1, (x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24)) =
(x
x1, x
x2, x
x3, x
x4, x
x5, x
x6, x
x7, x
x8, x
x9, x
x10, x
x11, x
x12, x
x13, x
x14, x
x15, x
x16, x
x17, x
x18, x
x19, x
x20, x
x21, x
x22, x
x23, x
x24)
go (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons Shape xs
ShapeNil)))))))))))))))))))))))) (x
x1, (x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25)) =
(x
x1, x
x2, x
x3, x
x4, x
x5, x
x6, x
x7, x
x8, x
x9, x
x10, x
x11, x
x12, x
x13, x
x14, x
x15, x
x16, x
x17, x
x18, x
x19, x
x20, x
x21, x
x22, x
x23, x
x24, x
x25)
go (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons Shape xs
ShapeNil))))))))))))))))))))))))) (x
x1, (x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26)) =
(x
x1, x
x2, x
x3, x
x4, x
x5, x
x6, x
x7, x
x8, x
x9, x
x10, x
x11, x
x12, x
x13, x
x14, x
x15, x
x16, x
x17, x
x18, x
x19, x
x20, x
x21, x
x22, x
x23, x
x24, x
x25, x
x26)
go (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons Shape xs
ShapeNil)))))))))))))))))))))))))) (x
x1, (x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27)) =
(x
x1, x
x2, x
x3, x
x4, x
x5, x
x6, x
x7, x
x8, x
x9, x
x10, x
x11, x
x12, x
x13, x
x14, x
x15, x
x16, x
x17, x
x18, x
x19, x
x20, x
x21, x
x22, x
x23, x
x24, x
x25, x
x26, x
x27)
go (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons Shape xs
ShapeNil))))))))))))))))))))))))))) (x
x1, (x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28)) =
(x
x1, x
x2, x
x3, x
x4, x
x5, x
x6, x
x7, x
x8, x
x9, x
x10, x
x11, x
x12, x
x13, x
x14, x
x15, x
x16, x
x17, x
x18, x
x19, x
x20, x
x21, x
x22, x
x23, x
x24, x
x25, x
x26, x
x27, x
x28)
go (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons Shape xs
ShapeNil)))))))))))))))))))))))))))) (x
x1, (x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29)) =
(x
x1, x
x2, x
x3, x
x4, x
x5, x
x6, x
x7, x
x8, x
x9, x
x10, x
x11, x
x12, x
x13, x
x14, x
x15, x
x16, x
x17, x
x18, x
x19, x
x20, x
x21, x
x22, x
x23, x
x24, x
x25, x
x26, x
x27, x
x28, x
x29)
go (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons Shape xs
ShapeNil))))))))))))))))))))))))))))) (x
x1, (x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20, x21, x22, x23, x24, x25, x26, x27, x28, x29, x30)) =
(x
x1, x
x2, x
x3, x
x4, x
x5, x
x6, x
x7, x
x8, x
x9, x
x10, x
x11, x
x12, x
x13, x
x14, x
x15, x
x16, x
x17, x
x18, x
x19, x
x20, x
x21, x
x22, x
x23, x
x24, x
x25, x
x26, x
x27, x
x28, x
x29, x
x30)
go (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons (ShapeCons Shape xs
ShapeNil)))))))))))))))))))))))))))))) (x
x1, (x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17,