use an unmodifiable set to avoid creating hashsets constantly to check
if a role is a repository role or not
Add the incorrect role to the error message for debugging
use else statement to emphasise how we are using the upstream unmap
implementation, rather than just an if with a return