static A optPar(ThreadLocal tl, A defaultValue) { A a = tl.get(); if (a != null) { tl.set(null); ret a; } ret defaultValue; } static A optPar(ThreadLocal tl) { ret optPar(tl, null); } static A optPar(O[] params, S name) { ret optParam(params, name); } static A optPar(O[] params, S name, A defaultValue) { ret optParam(params, name, defaultValue); }