add role::base class