PLD: use issubset
PLD: make role list DRY