I'd prefer to move the TransactionMode into a separate file, if possible.