add more classes & subclasses for further capability