MarshalBridge refactored <- still dirty
new exception handling pattern