import Constants
import FastString
import SMRep
-import FiniteMap
import Outputable
import Control.Monad ( foldM )
import Data.Array.Base ( UArray(..) )
import Data.Array.ST ( castSTUArray )
import Foreign
-import Data.Bits
-import Data.Int ( Int64 )
import Data.Char ( ord )
import GHC.Base ( ByteArray#, MutableByteArray#, RealWorld )
-import GHC.IOBase ( IO(..) )
-import GHC.Ptr ( Ptr(..) )
-- -----------------------------------------------------------------------------
-- Unlinked BCOs