Obverser pattern for errorpopup (see TODOs for details); in progress