these two lines still need to be `self.class`