ntLooksZero :: Amount -> Bool
amountLooksZero = testAmountAndTotalPrice looksZero
  where
    looksZero Amount{aquantity=Decimal e q, astyle=AmountStyle{asprecision=p}} = case p of
        Precision d      -> if e > d then abs q <= 5*10^(e-d-1) else q == 0
        NaturalPrecision -> q == 0

-- | Is this Amount (and its total price, if it has one) exactly zero, ignoring its display precision ?
amo
amountLooksZero :: Amount -> Bool
amountLooksZero = testAmountAndTotalPrice looksZero
  where
    looksZero Amount{aquantity=Decimal e q, astyle=AmountStyle{asprecision=p}} = case p of
        Precision d      -> if e > d then abs q <= 5*10^(e-d-1) else q == 0
        NaturalPrecision -> q == 0

-- | Is this Amount (and its total price, if it has one) exactly zero, ignoring its display precision ?
amountLooksZero = testAmountAndTotalPrice looksZero
  where
    looksZero Amount{aquantity=Decimal e q, astyle=AmountStyle{asprecision=p}} = case p of
        Precision d      -> if e > d then abs q <= 5*10^(e-d-1) else q == 0
        NaturalPrecision -> q == 0

-- | Is this Amount (and its total price, if it has one) exactly zero, ignoring its display precision ?