{-# LANGUAGE BangPatterns #-}
{-# LANGUAGE EmptyCase #-}
{-# LANGUAGE EmptyDataDecls #-}
{-# LANGUAGE ExistentialQuantification #-}
{-# LANGUAGE NoMonomorphismRestriction #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE RankNTypes #-}
{-# LANGUAGE ScopedTypeVariables #-}

{-# OPTIONS_GHC -Wno-overlapping-patterns #-}

module MAlonzo.Code.Data.Sign.Base where

import MAlonzo.RTE (coe, erased, AgdaAny, addInt, subInt, mulInt,
                    quotInt, remInt, geqInt, ltInt, eqInt, add64, sub64, mul64, quot64,
                    rem64, lt64, eq64, word64FromNat, word64ToNat)
import qualified MAlonzo.RTE
import qualified Data.Text
import qualified MAlonzo.Code.Algebra.Bundles.Raw

-- Data.Sign.Base.Sign
d_Sign_6 :: ()
d_Sign_6 = ()
data T_Sign_6 = C_'45'_8 | C_'43'_10
-- Data.Sign.Base.opposite
d_opposite_12 :: T_Sign_6 -> T_Sign_6
d_opposite_12 :: T_Sign_6 -> T_Sign_6
d_opposite_12 T_Sign_6
v0
  = case T_Sign_6 -> T_Sign_6
forall a b. a -> b
coe T_Sign_6
v0 of
      T_Sign_6
C_'45'_8 -> T_Sign_6 -> T_Sign_6
forall a b. a -> b
coe T_Sign_6
C_'43'_10
      T_Sign_6
C_'43'_10 -> T_Sign_6 -> T_Sign_6
forall a b. a -> b
coe T_Sign_6
C_'45'_8
      T_Sign_6
_ -> T_Sign_6
forall a. a
MAlonzo.RTE.mazUnreachableError
-- Data.Sign.Base._*_
d__'42'__14 :: T_Sign_6 -> T_Sign_6 -> T_Sign_6
d__'42'__14 :: T_Sign_6 -> T_Sign_6 -> T_Sign_6
d__'42'__14 T_Sign_6
v0 T_Sign_6
v1
  = case T_Sign_6 -> T_Sign_6
forall a b. a -> b
coe T_Sign_6
v0 of
      T_Sign_6
C_'45'_8 -> (T_Sign_6 -> T_Sign_6) -> Any -> T_Sign_6
forall a b. a -> b
coe T_Sign_6 -> T_Sign_6
d_opposite_12 (T_Sign_6 -> Any
forall a b. a -> b
coe T_Sign_6
v1)
      T_Sign_6
C_'43'_10 -> T_Sign_6 -> T_Sign_6
forall a b. a -> b
coe T_Sign_6
v1
      T_Sign_6
_ -> T_Sign_6
forall a. a
MAlonzo.RTE.mazUnreachableError
-- Data.Sign.Base.*-rawMagma
d_'42''45'rawMagma_20 ::
  MAlonzo.Code.Algebra.Bundles.Raw.T_RawMagma_36
d_'42''45'rawMagma_20 :: T_RawMagma_36
d_'42''45'rawMagma_20
  = ((Any -> Any -> Any) -> T_RawMagma_36)
-> (T_Sign_6 -> T_Sign_6 -> T_Sign_6) -> T_RawMagma_36
forall a b. a -> b
coe
      (Any -> Any -> Any) -> T_RawMagma_36
MAlonzo.Code.Algebra.Bundles.Raw.C_RawMagma'46'constructor_341
      T_Sign_6 -> T_Sign_6 -> T_Sign_6
d__'42'__14
-- Data.Sign.Base.*-1-rawMonoid
d_'42''45'1'45'rawMonoid_22 ::
  MAlonzo.Code.Algebra.Bundles.Raw.T_RawMonoid_64
d_'42''45'1'45'rawMonoid_22 :: T_RawMonoid_64
d_'42''45'1'45'rawMonoid_22
  = ((Any -> Any -> Any) -> Any -> T_RawMonoid_64)
-> (T_Sign_6 -> T_Sign_6 -> T_Sign_6) -> Any -> T_RawMonoid_64
forall a b. a -> b
coe
      (Any -> Any -> Any) -> Any -> T_RawMonoid_64
MAlonzo.Code.Algebra.Bundles.Raw.C_RawMonoid'46'constructor_745
      T_Sign_6 -> T_Sign_6 -> T_Sign_6
d__'42'__14 (T_Sign_6 -> Any
forall a b. a -> b
coe T_Sign_6
C_'43'_10)
-- Data.Sign.Base.*-1-rawGroup
d_'42''45'1'45'rawGroup_24 ::
  MAlonzo.Code.Algebra.Bundles.Raw.T_RawGroup_96
d_'42''45'1'45'rawGroup_24 :: T_RawGroup_96
d_'42''45'1'45'rawGroup_24
  = ((Any -> Any -> Any) -> Any -> (Any -> Any) -> T_RawGroup_96)
-> (T_Sign_6 -> T_Sign_6 -> T_Sign_6)
-> Any
-> (T_Sign_6 -> T_Sign_6)
-> T_RawGroup_96
forall a b. a -> b
coe
      (Any -> Any -> Any) -> Any -> (Any -> Any) -> T_RawGroup_96
MAlonzo.Code.Algebra.Bundles.Raw.C_RawGroup'46'constructor_1207
      T_Sign_6 -> T_Sign_6 -> T_Sign_6
d__'42'__14 (T_Sign_6 -> Any
forall a b. a -> b
coe T_Sign_6
C_'43'_10) T_Sign_6 -> T_Sign_6
d_opposite_12