Everything looks great, but when is this method called? I'm not familiar with `instancetype`