Updated to "instancetype" type