def cdn.fall
cswap-bend-cli@0.1.0.0 · policy/pick.bend:137
import cswap-bend-cli@0.1.0.0/policy/pick.bend as Pick
import Base
import cswap-bend-cli@0.1.0.0/policy/rank.bend as R
137def cdn.fall(+h: Nat, +rc: Maybe<&2, Nat>, +rk: Rk) -> Maybe<&2, RH>:
138 match rk:
139 case Rk{t, cf, rm, ah0, best, ar, ars, thr, s}:
140 match s:
141 case R.Sel{active, bar, need, us, now, ms}:
142 rh.if(Bool.not(by_recovery(rc, ar, ah0, best, now)) && Nat.is_lt(h, Nat.mul(2n, ah0)) && Nat.is_le(ah0, 300n) && Nat.is_ge(h, ah0) && R.rec.lt_minus(rc, ar), rc, h)