classmethod decorator