content: {-# 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.Integer.Show where
  
  import Data.Text qualified
  import MAlonzo.Code.Agda.Builtin.String qualified
  import MAlonzo.Code.Data.Nat.Show qualified
  import MAlonzo.Code.Data.String.Base qualified
  import MAlonzo.RTE (AgdaAny, add64, addInt, coe, eq64, eqInt, erased, geqInt, lt64, ltInt, mul64,
                      mulInt, quot64, quotInt, rem64, remInt, sub64, subInt, word64FromNat,
                      word64ToNat)
  import MAlonzo.RTE qualified
  
  -- Data.Integer.Show.show
  d_show_6 :: Integer -> MAlonzo.Code.Agda.Builtin.String.T_String_6
  d_show_6 v0
    = case coe v0 of
        _ | coe geqInt (coe v0) (coe (0 :: Integer)) ->
            coe MAlonzo.Code.Data.Nat.Show.d_show_56 v0
        _ -> coe
               MAlonzo.Code.Data.String.Base.d__'43''43'__20
               ("-" :: Data.Text.Text)
               (coe
                  MAlonzo.Code.Data.Nat.Show.d_show_56
                  (subInt (coe (0 :: Integer)) (coe v0)))
  