def Decimal.rescale.if
import bend-kit-bignum@0.1.0.0/decimal.bend as Decimalimport Base
import bend-kit-bignum@0.1.0.0/bigint.bend as Big
195def Decimal.rescale.if(up: Bool, u: Big.BigInt, +s: Nat, +t: Nat) ->
196 Maybe<&2, Decimal>:
197 match up:
198 case True{}:
199 Some{Decimal{Decimal.up(u, Nat.sub(t, s)), t}}
200 case False{}:
201 Decimal.rescale.cut(t, Big.BigInt.divmod(u, Decimal.pow10(Nat.sub(s, t))))