further, instead of the stackade, why not just do 
```python
parser = engines.get(..a..) or \
         engines.get(..b..)

return parser # will end up with None if both gets don't return stuff
```