code: function Connection(log, firstStreamId, settings) {
    // * initializing the base class
    Flow.call(this, 0);
  
    // * logging: every method uses the common logger object
    this._log = log.child({ component: 'connection' });
  
    // * stream management
    this._initializeStreamManagement(firstStreamId);
  
    // * lifecycle management
    this._initializeLifecycleManagement();
  
    // * flow control
    this._initializeFlowControl();
  
    // * settings management
    this._initializeSettingsManagement(settings);
  
    this._initializeConnectionFlowControl();
  
    // * multiplexing
    this._initializeMultiplexing();
  }
docs: Constructor ----------- The main aspects of managing the connection are: