for (int i = 0; i < MAX_REPAIR_ATTEMPTS; i++) {
try {
normaliseImplThrow();
return getImplNodelet();
} catch (HtmlMissing e) {
repairer.handle(e);
} catch (RuntimeException e) {
// Safe to catch runtime exception - no stateful code should be affected,
// just browser DOM has been munged which we repair
repairer.revert(Point.before(getRenderedContentView(), this), null);
}