-- | This tool generates valid and invalid Cardano headers.
module Main (main) where

import           Cardano.Crypto.Init (cryptoInit)
import           Cardano.Tools.Headers (run)
import           GenHeader.Parsers (parseOptions)
import           Main.Utf8 (withUtf8)

main :: IO ()
IO ()
main = IO () -> IO ()
forall (m :: * -> *) r. (MonadIO m, MonadMask m) => m r -> m r
withUtf8 (IO () -> IO ()) -> IO () -> IO ()
forall a b. (a -> b) -> a -> b
$ do
    IO ()
cryptoInit
    IO Options
parseOptions IO Options -> (Options -> IO ()) -> IO ()
forall a b. IO a -> (a -> IO b) -> IO b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= Options -> IO ()
run