use self.version