should inherit from `object`