I personally find forms like ```(!foo && !bar)``` more readable as ```!(foo || bar)```, since it is more natural (in English at least) to say "not foo or bar" than to say "not foo and not bar". Either way its excessive length makes it harder to read than it has to be. A temporary variable for ```getWorkspaceRestrictions()``` could shorten it so that most of the characters are the bits we care about.