code: function TChannelOutResponse(id, options) {
      options = options || {};
      var self = this;
      EventEmitter.call(self);
      self.errorEvent = self.defineEvent('error');
      self.spanEvent = self.defineEvent('span');
      self.finishEvent = self.defineEvent('finish');
  
      self.channel = options.channel;
      self.inreq = options.inreq;
      self.logger = options.logger;
      self.random = options.random;
      self.timers = options.timers;
  
      self.start = 0;
      self.end = 0;
      self.state = States.Initial;
      self.id = id || 0;
      self.code = options.code || 0;
      self.tracing = options.tracing || null;
      self.headers = options.headers || {};
      self.checksumType = options.checksumType || 0;
      self.checksum = options.checksum || null;
      self.ok = self.code === 0;
      self.span = options.span || null;
      self.streamed = false;
      self._argstream = null;
      self.arg1 = null;
      self.arg2 = null;
      self.arg3 = null;
  
      self.codeString = null;
      self.message = null;
  
      self.error = null;
  }
docs: /*eslint max-statements: [2, 40]