avoid using class << self and use self.method instead