100000000
21000000 * coin
newtype IVK = IVK {ivkText :: Text}
makePrisms ''IVK
newtype Address = Address {zaddrText :: Text}
makePrisms ''Address
newtype Zatoshi = Zatoshi Word64
deriving stock (Eq, Ord, Show)
makePrisms ''Zatoshi
if amt > maxMoney then Nothing else Just (Zatoshi amt)
(Zatoshi a) <> (Zatoshi b) = Zatoshi (a + b)
mempty = Zatoshi 0
Just . Zatoshi $ (a - b)
zsub _ _ = Nothing
data ZAddrType
= Sprout
| Sapling
\case
"sprout" -> Just Sprout
"sapling" -> Just Sapling
_ -> Nothing
newtype Memo = Memo ByteString