public Ret Match<Ret>(Func<SUCCESS, Ret> Succ, Func<Seq<FAIL>, Ret> Fail) => Check.NullReturn(MatchUnsafe(Succ, Fail));