I wanted to give you more background on our use case. We have basically five categories of users: 1) CMS users from Nebraska (a strict subset of 2). 100 additional guaranteed slots. 2) CMS users from the US (a strict subset of 3). No additional guaranteed slots. 3) CMS users. 500 slots. 4) CMS production. 500 slots. 5) Everyone else. 10% of the cluster. When there is surplus (and there is, as the cluster is about 2000 cores), we want it allocated in priority order. I.e., a slot should go to a Nebraska user before a US user, a US user before a generic CMS user, etc. The only way I could figure out how to implement this was with mixing static and dynamic groups, as the static group will stay the same and the dynamic group will expand. Even this is an approximation because I don't think I have handled the USCMS-as-a-subset-of-CMS situation handled correctly. I've been thinking lately that maybe there's something clever possible by assigning jobs to non-leaf nodes in the hierarchy, but haven't been able to solve it.