use subclass