In my application users can join groups, and the admin of those groups can give each user different types of permissions. Users can join as many groups as they want. How would I