// returns minimal time needed static long benchFor1Second(S desc, Runnable r) { ret benchForNSeconds(desc, r, 1); } static long benchFor1Second(Runnable r) { ret benchFor1Second(str(r), r); } // returns result of function static A benchFor1Second(S desc default str(f), IF0 f) { benchFor1Second(r { f! }); ret f!; }