Moved the mutually exclusive functionality

Out of the parser