modefied self.get