extract out methods to roles