code: function( aSuccessHandler, aFaultHandler, aOptSysex )
          {
              if ( !zMIDI.isSupported() ) {
                  aFaultHandler( "zMIDI not supported by browser" );
                  return;
              }
  
              var options = void 0;
  
              if ( aOptSysex ) {
                  options = { "sysex" : true };
              }
  
              navigator.requestMIDIAccess( /** @type {MIDIOptions} */ ( options )).then( function( midiAccess )
              {
                  zMIDI._interface = /** @type {MIDIAccess} */ ( midiAccess );
                  aSuccessHandler();
              },
              aFaultHandler );
          }
docs: /* public methods 
  creates a connection to the MIDI interface
  
  @public
  
  @param {!Function} aSuccessHandler invoked when connection has been established
  @param {!Function} aFaultHandler invoked when MIDI is not available, will receive
  error message argument
  @param {boolean=} aOptSysex optional, whether to also provide an interface to
  send and receive system exclusive messages