added base for type checking