module CompoundTypes.Private.Lazy.Product where
data Product2 v1 v2 =
Product2 v1 v2
data Product3 v1 v2 v3 =
Product3 v1 v2 v3
data Product4 v1 v2 v3 v4 =
Product4 v1 v2 v3 v4
data Product5 v1 v2 v3 v4 v5 =
Product5 v1 v2 v3 v4 v5
data Product6 v1 v2 v3 v4 v5 v6 =
Product6 v1 v2 v3 v4 v5 v6
data Product7 v1 v2 v3 v4 v5 v6 v7 =
Product7 v1 v2 v3 v4 v5 v6 v7
type family (*) a b where
Product6 v1 v2 v3 v4 v5 v6 * v7 =
Product7 v1 v2 v3 v4 v5 v6 v7
Product5 v1 v2 v3 v4 v5 * Product2 v6 v7 =
Product7 v1 v2 v3 v4 v5 v6 v7
Product5 v1 v2 v3 v4 v5 * v6 =
Product6 v1 v2 v3 v4 v5 v6
Product4 v1 v2 v3 v4 * Product3 v5 v6 v7 =
Product7 v1 v2 v3 v4 v5 v6 v7
Product4 v1 v2 v3 v4 * Product2 v5 v6 =
Product6 v1 v2 v3 v4 v5 v6
Product4 v1 v2 v3 v4 * v5 =
Product5 v1 v2 v3 v4 v5
Product3 v1 v2 v3 * Product4 v4 v5 v6 v7 =
Product7 v1 v2 v3 v4 v5 v6 v7
Product3 v1 v2 v3 * Product3 v4 v5 v6 =
Product6 v1 v2 v3 v4 v5 v6
Product3 v1 v2 v3 * Product2 v4 v5 =
Product5 v1 v2 v3 v4 v5
Product3 v1 v2 v3 * v4 =
Product4 v1 v2 v3 v4
Product2 v1 v2 * Product5 v3 v4 v5 v6 v7 =
Product7 v1 v2 v3 v4 v5 v6 v7
Product2 v1 v2 * Product4 v3 v4 v5 v6 =
Product6 v1 v2 v3 v4 v5 v6
Product2 v1 v2 * Product3 v3 v4 v5 =
Product5 v1 v2 v3 v4 v5
Product2 v1 v2 * Product2 v3 v4 =
Product4 v1 v2 v3 v4
Product2 v1 v2 * v3 =
Product3 v1 v2 v3
v1 * Product6 v2 v3 v4 v5 v6 v7 =
Product7 v1 v2 v3 v4 v5 v6 v7
v1 * Product5 v2 v3 v4 v5 v6 =
Product6 v1 v2 v3 v4 v5 v6
v1 * Product4 v2 v3 v4 v5 =
Product5 v1 v2 v3 v4 v5
v1 * Product3 v2 v3 v4 =
Product4 v1 v2 v3 v4
v1 * Product2 v2 v3 =
Product3 v1 v2 v3
v1 * v2 =
Product2 v1 v2
infixl 1 *