Do we still need this ```if (self)``` block here?