s/this/self/ because otherwise error dispatching doesn't work.