why do we keep calling init() when the error overlay is shown/hidden? I don't understand why you'd need to run that code more than once, and in fact it looks like init() bails if `this.initialized`.