// o can be a class, then we search for a static method called "html". static O callExtendedHtmlMethod(Object o, S uri) { ret callExtendedHtmlMethod(o, uri, null); } static O callExtendedHtmlMethod(Object o, S uri, Map params) { O s = callOpt(o, "html", uri, params); if (s == null) s = callOpt(o, "html", uri); if (s == null) s = callOpt(o, "html"); ret s; }