modified function / functionRole structure