what is the reason for changing from @staticmethod if it's still not using `self`?