remove unnecessary self, changed validation