static O getOptDyn(DynamicObject o, S field) { O val = o.fieldValues.get(field); ret val != null ? val : getOpt(o, field); } static O getOptDyn(O o, S field) { ret o instanceof DynamicObject ? getOptDyn((DynamicObject) o, field) : getOpt(o, field); }