{-# LANGUAGE MagicHash #-} {-# LANGUAGE TypeApplications #-} module Data.ByteString.Base32.Internal.Tables ( stdDecodeTable , hexDecodeTable ) where import Data.ByteString.Base32.Internal.Utils import Foreign.ForeignPtr import GHC.Word stdDecodeTable :: ForeignPtr Word8 stdDecodeTable :: ForeignPtr Word8 stdDecodeTable = Int -> [Word8] -> ForeignPtr Word8 forall a b. (Storable a, Storable b) => Int -> [a] -> ForeignPtr b writeNPlainForeignPtrBytes @Word8 Int 256 [ Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff , Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff , Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff , Word8 0xff,Word8 0xff,Word8 0x1a,Word8 0x1b,Word8 0x1c,Word8 0x1d,Word8 0x1e,Word8 0x1f,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0x63,Word8 0xff,Word8 0xff , Word8 0xff,Word8 0x00,Word8 0x01,Word8 0x02,Word8 0x03,Word8 0x04,Word8 0x05,Word8 0x06,Word8 0x07,Word8 0x08,Word8 0x09,Word8 0x0a,Word8 0x0b,Word8 0x0c,Word8 0x0d,Word8 0x0e , Word8 0x0f,Word8 0x10,Word8 0x11,Word8 0x12,Word8 0x13,Word8 0x14,Word8 0x15,Word8 0x16,Word8 0x17,Word8 0x18,Word8 0x19,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff , Word8 0xff,Word8 0x00,Word8 0x01,Word8 0x02,Word8 0x03,Word8 0x04,Word8 0x05,Word8 0x06,Word8 0x07,Word8 0x08,Word8 0x09,Word8 0x0a,Word8 0x0b,Word8 0x0c,Word8 0x0d,Word8 0x0e , Word8 0x0f,Word8 0x10,Word8 0x11,Word8 0x12,Word8 0x13,Word8 0x14,Word8 0x15,Word8 0x16,Word8 0x17,Word8 0x18,Word8 0x19,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff , Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff , Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff , Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff , Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff , Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff , Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff , Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff , Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff ] {-# NOINLINE stdDecodeTable #-} hexDecodeTable :: ForeignPtr Word8 hexDecodeTable :: ForeignPtr Word8 hexDecodeTable = Int -> [Word8] -> ForeignPtr Word8 forall a b. (Storable a, Storable b) => Int -> [a] -> ForeignPtr b writeNPlainForeignPtrBytes @Word8 Int 256 [ Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff , Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff , Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff , Word8 0x00,Word8 0x01,Word8 0x02,Word8 0x03,Word8 0x04,Word8 0x05,Word8 0x06,Word8 0x07,Word8 0x08,Word8 0x09,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0x63,Word8 0xff,Word8 0xff , Word8 0xff,Word8 0x0a,Word8 0x0b,Word8 0x0c,Word8 0x0d,Word8 0x0e,Word8 0x0f,Word8 0x10,Word8 0x11,Word8 0x12,Word8 0x13,Word8 0x14,Word8 0x15,Word8 0x16,Word8 0x17,Word8 0x18 , Word8 0x19,Word8 0x1a,Word8 0x1b,Word8 0x1c,Word8 0x1d,Word8 0x1e,Word8 0x1f,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff , Word8 0xff,Word8 0x0a,Word8 0x0b,Word8 0x0c,Word8 0x0d,Word8 0x0e,Word8 0x0f,Word8 0x10,Word8 0x11,Word8 0x12,Word8 0x13,Word8 0x14,Word8 0x15,Word8 0x16,Word8 0x17,Word8 0x18 , Word8 0x19,Word8 0x1a,Word8 0x1b,Word8 0x1c,Word8 0x1d,Word8 0x1e,Word8 0x1f,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff , Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff , Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff , Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff , Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff , Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff , Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff , Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff , Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff,Word8 0xff ] {-# NOINLINE hexDecodeTable #-}