Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Test runner hangs with RangeError: Maximum call stack size exceeded #4346

Closed
souphan-adsk opened this issue May 30, 2019 · 21 comments

Comments

8 participants
@souphan-adsk
Copy link

commented May 30, 2019

Current behavior:

The following can be experienced when running cypress headlessly on a particular error.

RangeError: Maximum call stack size exceeded
    at _hasBinary (/root/.cache/Cypress/3.3.1/Cypress/resources/app/packages/socket/node_modules/has-binary/index.js:25:22)
    at _hasBinary (/root/.cache/Cypress/3.3.1/Cypress/resources/app/packages/socket/node_modules/has-binary/index.js:49:63)
    at _hasBinary (/root/.cache/Cypress/3.3.1/Cypress/resources/app/packages/socket/node_modules/has-binary/index.js:49:63)
    ...
    at hasBinary (/root/.cache/Cypress/3.3.1/Cypress/resources/app/packages/socket/node_modules/has-binary/index.js:58:10)
    at /root/.cache/Cypress/3.3.1/Cypress/resources/app/packages/socket/node_modules/socket.io/lib/socket.js:373:16
    at /root/.cache/Cypress/3.3.1/Cypress/resources/app/packages/server/lib/socket.js:312:22
    at tryCatcher (/root/.cache/Cypress/3.3.1/Cypress/resources/app/packages/server/node_modules/bluebird/js/release/util.js:16:23)
    at Promise._settlePromiseFromHandler (/root/.cache/Cypress/3.3.1/Cypress/resources/app/packages/server/node_modules/bluebird/js/release/promise.js:510:31)
    at Promise._settlePromise (/root/.cache/Cypress/3.3.1/Cypress/resources/app/packages/server/node_modules/bluebird/js/release/promise.js:567:18)
    at Promise._settlePromise0 (/root/.cache/Cypress/3.3.1/Cypress/resources/app/packages/server/node_modules/bluebird/js/release/promise.js:612:10)
    at Promise._settlePromises (/root/.cache/Cypress/3.3.1/Cypress/resources/app/packages/server/node_modules/bluebird/js/release/promise.js:687:18)
    at Async._drainQueue (/root/.cache/Cypress/3.3.1/Cypress/resources/app/packages/server/node_modules/bluebird/js/release/async.js:133:16)
    at Async._drainQueues (/root/.cache/Cypress/3.3.1/Cypress/resources/app/packages/server/node_modules/bluebird/js/release/async.js:143:10)
    at Immediate.Async.drainQueues (/root/.cache/Cypress/3.3.1/Cypress/resources/app/packages/server/node_modules/bluebird/js/release/async.js:17:14)
    at runCallback (timers.js:789:20)
    at tryOnImmediate (timers.js:751:5)
    at processImmediate [as _immediateCallback] (timers.js:722:5)

This effectively hangs the process.

Desired behavior:

This should not happen.

Steps to reproduce: (app code and test code)

It is consistent in our test suite, but it seems that giving a minimally reproducible case is not easy, as merely changing the order of tests will not yield this error.

That said, tracing back the issue, here is what has been found:

The library request-promise-core on error throws the following Error object on a particular error (in our case ECONNREFUSED).

    { 
       name: 'RequestError',
       stack: 'RequestError: Error: connect ECONNREFUSED 0.0.0.0:443\n\
           at new RequestError (/root/.cache/Cypress/3.3.1/Cypress/resources/app/packages/server/node_modules/request-promise-core/lib/errors.js:14:15)\n\
           at Request.plumbing.callback (/root/.cache/Cypress/3.3.1/Cypress/resources/app/packages/server/node_modules/request-promise-core/lib/plumbing.js:87:29)\n\
           at Request.RP$callback [as _callback] (/root/.cache/Cypress/3.3.1/Cypress/resources/app/packages/server/node_modules/request-promise-core/lib/plumbing.js:46:31)\n\
           at self.callback (/root/.cache/Cypress/3.3.1/Cypress/resources/app/packages/server/node_modules/request/request.js:185:22)\n\
           at emitOne (events.js:116:13)\n\
           at Request.emit (events.js:211:7)\n\
           at Request.onRequestError (/root/.cache/Cypress/3.3.1/Cypress/resources/app/packages/server/node_modules/request/request.js:884:8)\n\
           at emitOne (events.js:121:20)\n\
           at ClientRequest.emit (events.js:211:7)\n\
           at TLSSocket.socketErrorListener (_http_client.js:387:9)\n\
           at emitOne (events.js:116:13)\n\
           at TLSSocket.emit (events.js:211:7)\n\
           at emitErrorNT (internal/streams/destroy.js:64:8)\n\
           at _combinedTickCallback (internal/process/next_tick.js:138:11)\n\
           at process._tickCallback (internal/process/next_tick.js:180:9)\n\
           ',
       message: 'Error: connect ECONNREFUSED 0.0.0.0:443',
       cause:
        { Error: connect ECONNREFUSED 0.0.0.0:443
    at Object._errnoException (util.js:1024:11)
    at _exceptionWithHostPort (util.js:1046:20)
    at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1182:14)

          code: 'ECONNREFUSED',
          errno: 'ECONNREFUSED',
          syscall: 'connect',
          address: '0.0.0.0',
          port: 443 },
       error:
        { Error: connect ECONNREFUSED 0.0.0.0:443
    at Object._errnoException (util.js:1024:11)
    at _exceptionWithHostPort (util.js:1046:20)
    at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1182:14)

          code: 'ECONNREFUSED',
          errno: 'ECONNREFUSED',
          syscall: 'connect',
          address: '0.0.0.0',
          port: 443 },
       options:
        { timeout: 90000,
          agent:
           CombinedAgent {
             familyCache: { 'localhost': 4 },
             httpAgent:
              HttpAgent {
                domain: null,
                _events: { free: [Function] },
                _eventsCount: 1,
                _maxListeners: undefined,
                defaultPort: 80,
                protocol: 'http:',
                options: { keepAlive: true, path: null },
                requests: {},
                sockets: {},
                freeSockets: {},
                keepAliveMsecs: 1000,
                keepAlive: true,
                maxSockets: Infinity,
                maxFreeSockets: 256,
                httpsAgent:
                 Agent {
                   domain: null,
                   _events: { free: [Function] },
                   _eventsCount: 1,
                   _maxListeners: undefined,
                   defaultPort: 443,
                   protocol: 'https:',
                   options: { keepAlive: true, path: null },
                   requests: {},
                   sockets: {},
                   freeSockets: {},
                   keepAliveMsecs: 1000,
                   keepAlive: true,
                   maxSockets: Infinity,
                   maxFreeSockets: 256,
                   maxCachedSessions: 100,
                   _sessionCache: { map: {}, list: [] } } },
             httpsAgent:
              HttpsAgent {
                domain: null,
                _events: { free: [Function] },
                _eventsCount: 1,
                _maxListeners: undefined,
                defaultPort: 443,
                protocol: 'https:',
                options: { keepAlive: true, path: null },
                requests: {},
                sockets: {},
                freeSockets:
                 { 'localhost:443::4::::::false::':
                    [ TLSSocket {
                        _tlsOptions:
                         { pipe: false,
                           secureContext: SecureContext { context: SecureContext {} },
                           isServer: false,
                           requestCert: true,
                           rejectUnauthorized: false,
                           session: undefined,
                           NPNProtocols: undefined,
                           ALPNProtocols: undefined,
                           requestOCSP: undefined },
                        _secureEstablished: true,
                        _securePending: false,
                        _newSessionPending: false,
                        _controlReleased: true,
                        _SNICallback: null,
                        servername: null,
                        npnProtocol: false,
                        alpnProtocol: false,
                        authorized: true,
                        authorizationError: null,
                        encrypted: true,
                        _events:
                         { close:
                            [ [Function],
                              { [Function: bound onceWrapper] listener: [Function] },
                              [Function: onClose] ],
                           end: { [Function: bound onceWrapper] listener: [Function: onend] },
                           finish: [Function: onSocketFinish],
                           _socketEnd: [Function: onSocketEnd],
                           secure: [Function],
                           free: [Function: onFree],
                           agentRemove: [Function: onRemove],
                           drain: [Function: ondrain],
                           error: { [Function: bound onceWrapper] listener: [Function: freeSocketErrorListener] } },
                        _eventsCount: 9,
                        connecting: false,
                        _hadError: false,
                        _handle:
                         TLSWrap {
                           _parent:
                            TCP {
                              reading: [Getter/Setter],
                              owner: [Circular],
                              onread: null,
                              onconnection: null,
                              writeQueueSize: 0 },
                           _parentWrap: undefined,
                           _secureContext: SecureContext { context: SecureContext {} },
                           reading: true,
                           owner: [Circular],
                           onread: [Function: onread],
                           writeQueueSize: 0,
                           onhandshakestart: [Function],
                           onhandshakedone: [Function],
                           onocspresponse: [Function],
                           onerror: [Function] },
                        _parent: null,
                        _host: 'localhost',
                        _readableState:
                         ReadableState {
                           objectMode: false,
                           highWaterMark: 16384,
                           buffer: BufferList { head: null, tail: null, length: 0 },
                           length: 0,
                           pipes: null,
                           pipesCount: 0,
                           flowing: true,
                           ended: false,
                           endEmitted: false,
                           reading: true,
                           sync: false,
                           needReadable: true,
                           emittedReadable: false,
                           readableListening: false,
                           resumeScheduled: false,
                           destroyed: false,
                           defaultEncoding: 'utf8',
                           awaitDrain: 0,
                           readingMore: false,
                           decoder: null,
                           encoding: null },
                        readable: true,
                        domain: null,
                        _maxListeners: undefined,
                        _writableState:
                         WritableState {
                           objectMode: false,
                           highWaterMark: 16384,
                           finalCalled: false,
                           needDrain: false,
                           ending: false,
                           ended: false,
                           finished: false,
                           destroyed: false,
                           decodeStrings: false,
                           defaultEncoding: 'utf8',
                           length: 0,
                           writing: false,
                           corked: 0,
                           sync: false,
                           bufferProcessing: false,
                           onwrite: [Function: bound onwrite],
                           writecb: null,
                           writelen: 0,
                           bufferedRequest: null,
                           lastBufferedRequest: null,
                           pendingcb: 0,
                           prefinished: false,
                           errorEmitted: false,
                           bufferedRequestCount: 0,
                           corkedRequestsFree:
                            { next: null,
                              entry: null,
                              finish: [Function: bound onCorkedFinish] } },
                        writable: true,
                        allowHalfOpen: false,
                        _bytesDispatched: 348,
                        _sockname: null,
                        _pendingData: null,
                        _pendingEncoding: '',
                        server: undefined,
                        _server: null,
                        ssl:
                         TLSWrap {
                           _parent:
                            TCP {
                              reading: [Getter/Setter],
                              owner: [Circular],
                              onread: null,
                              onconnection: null,
                              writeQueueSize: 0 },
                           _parentWrap: undefined,
                           _secureContext: SecureContext { context: SecureContext {} },
                           reading: true,
                           owner: [Circular],
                           onread: [Function: onread],
                           writeQueueSize: 0,
                           onhandshakestart: [Function],
                           onhandshakedone: [Function],
                           onocspresponse: [Function],
                           onerror: [Function] },
                        _requestCert: true,
                        _rejectUnauthorized: false,
                        parser: null,
                        _httpMessage: null,
                        read: [Function],
                        _consuming: true,
                        _idleTimeout: -1,
                        _idleNext: null,
                        _idlePrev: null,
                        _idleStart: 41856,
                        _destroyed: false,
                        [Symbol(asyncId)]: -1,
                        [Symbol(bytesRead)]: 0,
                        [Symbol(asyncId)]: 3173,
                        [Symbol(triggerAsyncId)]: 3163 } ] },
                keepAliveMsecs: 1000,
                keepAlive: true,
                maxSockets: Infinity,
                maxFreeSockets: 256,
                maxCachedSessions: 100,
                _sessionCache:
                 { map:
                    { 'localhost:443::4::::::false::': <Buffer 30 82 08 3c 02 01 01 02 02 03 03 04 02 c0 2f 04 20 e7 f6 ff ce 61 67 f3 90 b7 4f 56 d1 a5 0f 5f 09 65 50 61 20 74 54 db d8 bb c9 59 f6 d7 c4 e4 46 04 ... > },
                   list:
                    [ 'localhost:443::4::::::false::' ] } } },
          headers:
           { Connection: 'keep-alive',
             'user-agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Cypress/3.3.1 Chrome/61.0.3163.100 Electron/2.0.18 Safari/537.36',
             accept: '*/*' },
          proxy: null,
          url: 'https://localhost/',
          method: 'GET',
          gzip: true,
          followRedirect: [Function],
          failOnStatusCode: false,
          retryOnNetworkFailure: true,
          retryOnStatusCodeFailure: false,
          jar:
           { _jar: CookieJar { enableLooseMode: true, store: { idx: {} } },
             toJSON: [Function: toJSON],
             setCookie: [Function: setCookie],
             getCookieString: [Function: getCookieString],
             getCookies: [Function: getCookies] },
          cookies: true,
          strictSSL: false,
          simple: false,
          resolveWithFullResponse: true,
          followAllRedirects: true,
          requestId: 'request3',
          retryIntervals: [ 0, 1000, 2000, 2000 ],
          delaysRemaining: [],
          callback: [Function: RP$callback],
          transform: undefined,
          transform2xxOnly: false },
       response: undefined
    }

The important part is that this object contains circular references:

    owner: [Circular],

On request error, this object is sent to socket.io's callback function
https://github.com/cypress-io/cypress/blob/develop/packages/server/lib/socket.coffee#L315-L319

This is a problem because Socket.io scans arguments for binary data that doesn't deal with circular reference.
https://github.com/socketio/socket.io/blob/master/lib/socket.js#L374-L391
https://github.com/expanse-org/socketio-app/blob/master/node_modules/has-binary2/index.js

There is already some filtering done to errors captured and raised back to the execution flow.
https://github.com/cypress-io/cypress/blob/develop/packages/server/lib/errors.coffee#L808-L828

An additional operation to would be to make sure that it doesn't contain circular reference.
I'd suggest using a library like fclone for this.
https://github.com/soyuka/fclone

Versions

  • Cypress 3.3.1
  • Electron 61 (headless)
  • CentOS 7

Note: OSX with electron or chrome did not reproduce the issue.

@sahasayan

This comment has been minimized.

Copy link

commented Jun 1, 2019

any update on this, I am also facing this.

@jennifer-shehane

This comment has been minimized.

Copy link
Member

commented Jun 3, 2019

I was able to reproduce this issue within the example-kitchen-sink application with the code below running in cypress run and cypress open

I recreated it like 10 times and now the test just passes when I run it.

Why? What changed?

My internet source changed? But I can't recreate even going back to older internet source and it seems unlikely that's it anyway. I'm confused, ugh.

Plugins file

module.exports = (on, config) => {
  on('before:browser:launch', (browser = {}, args) => {

    if (browser.name === 'chrome' || browser.name === 'chromium' || browser.name === 'canary') {
      args.push('--auto-open-devtools-for-tabs')

      return args
    }

    if (browser.name === 'electron') {
      console.log('WEBPREFERENCES', args['webPreferences'])
      args['webPreferences']['devTools'] = true

      return args
    }
  })
}

Spec file that was failing.

/// <reference types="Cypress" />

/// JSON fixture file can be loaded directly using
// the built-in JavaScript bundler
// @ts-ignore
const requiredExample = require('../fixtures/example')

context('Files', () => {
  beforeEach(() => {
    cy.visit('http://localhost:8080/commands/files')
  })

  beforeEach(() => {
    // load example.json fixture file and store
    // in the test context object
    cy.fixture('example.json').as('example')
  })

  it('cy.fixture() - load a fixture', () => {
    // https://on.cypress.io/fixture

    // Instead of writing a response inline you can
    // use a fixture file's content.

    cy.server()
    cy.fixture('example.json').as('comment')
    // when application makes an Ajax request matching "GET comments/*"
    // Cypress will intercept it and reply with object
    // from the "comment" alias
    cy.route('GET', 'comments/*', '@comment').as('getComment')

    // we have code that gets a comment when
    // the button is clicked in scripts.js
    cy.get('.fixture-btn').click()

    cy.wait('@getComment').its('responseBody')
      .should('have.property', 'name')
      .and('include', 'Using fixtures to represent data')

    // you can also just write the fixture in the route
    cy.route('GET', 'comments/*', 'fixture:example.json').as('getComment')

    // we have code that gets a comment when
    // the button is clicked in scripts.js
    cy.get('.fixture-btn').click()

    cy.wait('@getComment').its('responseBody')
      .should('have.property', 'name')
      .and('include', 'Using fixtures to represent data')

    // or write fx to represent fixture
    // by default it assumes it's .json
    cy.route('GET', 'comments/*', 'fx:example').as('getComment')

    // we have code that gets a comment when
    // the button is clicked in scripts.js
    cy.get('.fixture-btn').click()

    cy.wait('@getComment').its('responseBody')
      .should('have.property', 'name')
      .and('include', 'Using fixtures to represent data')
  })

  it('cy.fixture() or require - load a fixture', function () {
    // we are inside the "function () { ... }"
    // callback and can use test context object "this"
    // "this.example" was loaded in "beforeEach" function callback
    expect(this.example, 'fixture in the test context')
      .to.deep.equal(requiredExample)

    // or use "cy.wrap" and "should('deep.equal', ...)" assertion
    // @ts-ignore
    cy.wrap(this.example, 'fixture vs require')
      .should('deep.equal', requiredExample)
  })

  it('cy.readFile() - read a files contents', () => {
    // https://on.cypress.io/readfile

    // You can read a file and yield its contents
    // The filePath is relative to your project's root.
    cy.readFile('cypress.json').then((json) => {
      expect(json).to.be.an('object')
    })
  })

  it.only('cy.writeFile() - write to a file', () => {
    // https://on.cypress.io/writefile

    // You can write to a file

    // Use a response from a request to automatically
    // generate a fixture file for use later
    cy.request('https://jsonplaceholder.cypress.io/users')
      .then((response) => {
        cy.writeFile('cypress/fixtures/users.json', response.body)
      })
    cy.fixture('users').should((users) => {
      expect(users[0].name).to.exist
    })

    // JavaScript arrays and objects are stringified
    // and formatted into text.
    cy.writeFile('cypress/fixtures/profile.json', {
      id: 8739,
      name: 'Jane',
      email: 'jane@example.com',
    })

    cy.fixture('profile').should((profile) => {
      expect(profile.name).to.eq('Jane')
    })
  })
})

Log:

 DEBUG=cypress:* cypress run
  cypress:cli cli starts with arguments ["/Users/jennifer/.nvm/versions/node/v8.11.2/bin/node","/Users/jennifer/Dev/cypress-example-kitchensink/node_modules/.bin/cypress","run"] +0ms
  cypress:cli NODE_OPTIONS is not set +0ms
  cypress:cli program parsing arguments +2ms
  cypress:cli running Cypress +1ms
  cypress:cli parsed cli options {} +95ms
  cypress:cli verifying Cypress app +0ms
  cypress:cli checking environment variables +0ms
  cypress:cli checking if executable exists /Users/jennifer/Library/Caches/Cypress/3.3.1/Cypress.app/Contents/MacOS/Cypress +14ms
  cypress:cli Binary is executable? : true +1ms
  cypress:cli binaryDir is  /Users/jennifer/Library/Caches/Cypress/3.3.1/Cypress.app +1ms
  cypress:cli Reading binary package.json from: /Users/jennifer/Library/Caches/Cypress/3.3.1/Cypress.app/Contents/Resources/app/package.json +0ms
  cypress:cli Found binary version 3.3.1 installed in: /Users/jennifer/Library/Caches/Cypress/3.3.1/Cypress.app +2ms
  cypress:cli { verified: true } +3ms
  cypress:cli is Verified ? true +2ms
  cypress:cli processing run options +0ms
  cypress:cli --key is not set, looking up environment variable CYPRESS_RECORD_KEY +0ms
  cypress:cli run to spawn.start args ["--run-project","/Users/jennifer/Dev/cypress-example-kitchensink"] +0ms
  cypress:cli needs to start own Xvfb? false +0ms
  cypress:cli spawning, should retry on display problem? false +1ms
  cypress:cli spawning Cypress with executable: /Users/jennifer/Library/Caches/Cypress/3.3.1/Cypress.app/Contents/MacOS/Cypress +3ms
  cypress:cli spawn args [ '--run-project', '/Users/jennifer/Dev/cypress-example-kitchensink', '--cwd', '/Users/jennifer/Dev/cypress-example-kitchensink' ] { detached: false, stdio: [ 'inherit', 'inherit', 'pipe' ] } +0ms
  cypress:ts Running without ts-node hook in environment "production" +0ms
  cypress:server:cypress starting cypress with argv [ '/Users/jennifer/Library/Caches/Cypress/3.3.1/Cypress.app/Contents/MacOS/Cypress', '--run-project', '/Users/jennifer/Dev/cypress-example-kitchensink', '--cwd', '/Users/jennifer/Dev/cypress-example-kitchensink' ] +0ms
  cypress:server:args argv array: [ '/Users/jennifer/Library/Caches/Cypress/3.3.1/Cypress.app/Contents/MacOS/Cypress', '--run-project', '/Users/jennifer/Dev/cypress-example-kitchensink', '--cwd', '/Users/jennifer/Dev/cypress-example-kitchensink' ] +0ms
  cypress:server:args argv parsed: { _: [ '/Users/jennifer/Library/Caches/Cypress/3.3.1/Cypress.app/Contents/MacOS/Cypress' ], runProject: '/Users/jennifer/Dev/cypress-example-kitchensink', cwd: '/Users/jennifer/Dev/cypress-example-kitchensink' } +3ms
  cypress:server:args options { _: [ '/Users/jennifer/Library/Caches/Cypress/3.3.1/Cypress.app/Contents/MacOS/Cypress' ], runProject: '/Users/jennifer/Dev/cypress-example-kitchensink', cwd: '/Users/jennifer/Dev/cypress-example-kitchensink', config: {} } +0ms
  cypress:server:args argv options: { _: [ '/Users/jennifer/Library/Caches/Cypress/3.3.1/Cypress.app/Contents/MacOS/Cypress' ], runProject: '/Users/jennifer/Dev/cypress-example-kitchensink', cwd: '/Users/jennifer/Dev/cypress-example-kitchensink', config: {}, projectRoot: '/Users/jennifer/Dev/cypress-example-kitchensink', run: true } +0ms
  cypress:server:appdata path: /Users/jennifer/Library/Application Support/Cypress/cy/production +0ms
  cypress:server:cypress starting in mode run +434ms
  cypress:server:appdata path: /Users/jennifer/Library/Application Support/Cypress/cy/production +763ms
  cypress:server:appdata path: /Users/jennifer/Library/Application Support/Cypress/cy/production/cache +119ms
  cypress:server:appdata path: /Users/jennifer/Library/Application Support/Cypress/cy/production/browsers +2s
  cypress:server:timers queuing timer id 1 after 500 ms +0ms
  cypress:server:timers child received timer id 1 +0ms
  cypress:server:timers child sending timer id 1 +504ms
  cypress:server:timers clearing timer id 1 from queue { '1': { args: [], ms: 500, cb: [Function] } } +508ms
  cypress:server:run run mode ready with options { _: [ '/Users/jennifer/Library/Caches/Cypress/3.3.1/Cypress.app/Contents/MacOS/Cypress' ], runProject: '/Users/jennifer/Dev/cypress-example-kitchensink', cwd: '/Users/jennifer/Dev/cypress-example-kitchensink', config: {}, projectRoot: '/Users/jennifer/Dev/cypress-example-kitchensink', run: true } +0ms
  cypress:server:project Project created /Users/jennifer/Dev/cypress-example-kitchensink +0ms
  cypress:server:openproject opening project /Users/jennifer/Dev/cypress-example-kitchensink +0ms
  cypress:server:project opening project instance /Users/jennifer/Dev/cypress-example-kitchensink +0ms
  cypress:server:config setting support file /Users/jennifer/Dev/cypress-example-kitchensink/cypress/support +0ms
  cypress:server:config for project root /Users/jennifer/Dev/cypress-example-kitchensink +0ms
  cypress:server:config set support folder /Users/jennifer/Dev/cypress-example-kitchensink/cypress/support +1ms
  cypress:server:config setting plugins file /Users/jennifer/Dev/cypress-example-kitchensink/cypress/plugins +0ms
  cypress:server:config for project root /Users/jennifer/Dev/cypress-example-kitchensink +0ms
  cypress:server:config set pluginsFile to /Users/jennifer/Dev/cypress-example-kitchensink/cypress/plugins/index.js +1ms
  cypress:server:config set scaffold paths +0ms
  cypress:server:scaffold scaffolded files ["cypress/integration/examples/actions.spec.js","cypress/integration/examples/aliasing.spec.js","cypress/integration/examples/assertions.spec.js","cypress/integration/examples/connectors.spec.js","cypress/integration/examples/cookies.spec.js","cypress/integration/examples/cypress_api.spec.js","cypress/integration/examples/files.spec.js","cypress/integration/examples/local_storage.spec.js","cypress/integration/examples/location.spec.js","cypress/integration/examples/misc.spec.js","cypress/integration/examples/navigation.spec.js","cypress/integration/examples/network_requests.spec.js","cypress/integration/examples/querying.spec.js","cypress/integration/examples/spies_stubs_clocks.spec.js","cypress/integration/examples/traversal.spec.js","cypress/integration/examples/utilities.spec.js","cypress/integration/examples/viewport.spec.js","cypress/integration/examples/waiting.spec.js","cypress/integration/examples/window.spec.js","cypress/fixtures/example.json","cypress/support/commands.js","cypress/support/index.js","cypress/plugins/index.js"] +0ms
  cypress:server:config got file tree +3ms
  cypress:server:project get saved state +13ms
  cypress:server:saved_state noop saved state +0ms
  cypress:server:scaffold plugins folder /Users/jennifer/Dev/cypress-example-kitchensink/cypress/plugins +2ms
  cypress:server:scaffold verify scaffolding in /Users/jennifer/Dev/cypress-example-kitchensink/cypress/plugins +1ms
  cypress:server:scaffold folder /Users/jennifer/Dev/cypress-example-kitchensink/cypress/plugins already exists +0ms
  cypress:server:plugins plugins.init /Users/jennifer/Dev/cypress-example-kitchensink/cypress/plugins/index.js +0ms
  cypress:server:plugins:child pluginsFile: /Users/jennifer/Dev/cypress-example-kitchensink/cypress/plugins/index.js +0ms
  cypress:server:plugins:child require pluginsFile +1ms
  cypress:server:plugins:child run plugins function +1ms
  cypress:server:plugins:child register event _get:task:body with id 0 +0ms
  cypress:server:plugins:child register event _get:task:keys with id 1 +1ms
  cypress:server:plugins:child register event before:browser:launch with id 2 +0ms
  cypress:server:plugins register plugins process event _get:task:body with id 0 +212ms
  cypress:server:plugins register event '_get:task:body' +0ms
  cypress:server:plugins register plugins process event _get:task:keys with id 1 +0ms
  cypress:server:plugins register event '_get:task:keys' +0ms
  cypress:server:plugins register plugins process event before:browser:launch with id 2 +0ms
  cypress:server:plugins register event 'before:browser:launch' +0ms
  cypress:server:project plugin config yielded: null +214ms
  cypress:server:buffers resetting buffers +0ms
  cypress:server:server Server listening on  { address: '127.0.0.1', family: 'IPv4', port: 56151 } +0ms
  cypress:server:appdata path: /Users/jennifer/Library/Application Support/Cypress/cy/production/proxy +884ms
  cypress:https-proxy Created SNI HTTPS Proxy on port 56153 +0ms
  cypress:server:server Setting remoteAuth undefined +24ms
  cypress:server:server Setting remoteOrigin http://localhost:56151 +0ms
  cypress:server:server Setting remoteStrategy file +0ms
  cypress:server:server Setting remoteHostAndPort null +0ms
  cypress:server:server Setting remoteDocDomain localhost +0ms
  cypress:server:server Setting remoteFileServer http://localhost:56152 +0ms
  cypress:server:server Getting remote state: { auth: undefined, props: null, origin: 'http://localhost:56151', strategy: 'file', visiting: undefined, domainName: 'localhost', fileServer: 'http://localhost:56152' } +0ms
  cypress:server:project project config: { projectId: '4b7344', projectRoot: '/Users/jennifer/Dev/cypress-example-kitchensink', projectName: 'cypress-example-kitchensink', morgan: false, isTextTerminal: true, socketId: 'xinsd', report: true, port: 56151, hosts: null, baseUrl: null, userAgent: null, reporter: 'spec', reporterOptions: null, blacklistHosts: null, clientRoute: '/__/', xhrRoute: '/xhrs/', socketIoRoute: '/__socket.io', socketIoCookie: '__socket.io', reporterRoute: '/__cypress/reporter', ignoreTestFiles: '*.hot-update.js', testFiles: '**/*.*', defaultCommandTimeout: 4000, requestTimeout: 5000, responseTimeout: 30000, pageLoadTimeout: 60000, execTimeout: 60000, taskTimeout: 60000, video: true, videoCompression: 32, videoUploadOnPasses: true, modifyObstructiveCode: true, chromeWebSecurity: true, waitForAnimations: true, animationDistanceThreshold: 5, numTestsKeptInMemory: 0, watchForFileChanges: false, trashAssetsBeforeRuns: true, autoOpen: false, viewportWidth: 1000, viewportHeight: 660, fileServerFolder: '/Users/jennifer/Dev/cypress-example-kitchensink', videosFolder: '/Users/jennifer/Dev/cypress-example-kitchensink/cypress/videos', supportFile: '/Users/jennifer/Dev/cypress-example-kitchensink/cypress/support/index.js', fixturesFolder: '/Users/jennifer/Dev/cypress-example-kitchensink/cypress/fixtures', integrationFolder: '/Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration', screenshotsFolder: '/Users/jennifer/Dev/cypress-example-kitchensink/cypress/screenshots', namespace: '__cypress', pluginsFile: '/Users/jennifer/Dev/cypress-example-kitchensink/cypress/plugins/index.js', javascripts: [], env: {}, cypressEnv: 'production', parentTestsFolder: '/Users/jennifer/Dev/cypress-example-kitchensink/cypress', parentTestsFolderDisplay: 'cypress-example-kitchensink/cypress', supportFolder: '/Users/jennifer/Dev/cypress-example-kitchensink/cypress/support', integrationExampleName: 'examples', integrationExamplePath: '/Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration/examples', scaffoldedFiles: [ { name: 'cypress', children: [Array] } ], state: {}, proxyUrl: 'http://localhost:56151', browserUrl: 'http://localhost:56151/__/', reporterUrl: 'http://localhost:56151/__cypress/reporter', xhrUrl: '__cypress/xhrs/' } +74ms
  cypress:server:reporter trying to load reporter: spec +0ms
  cypress:server:reporter spec is Mocha reporter +0ms
  cypress:server:project scaffolding project /Users/jennifer/Dev/cypress-example-kitchensink +3ms
  cypress:server:scaffold support folder /Users/jennifer/Dev/cypress-example-kitchensink/cypress/support, support file /Users/jennifer/Dev/cypress-example-kitchensink/cypress/support/index.js +290ms
  cypress:server:scaffold verify scaffolding in /Users/jennifer/Dev/cypress-example-kitchensink/cypress/support +0ms
  cypress:server:scaffold folder /Users/jennifer/Dev/cypress-example-kitchensink/cypress/support already exists +0ms
  cypress:server:project attempt watch plugins file: /Users/jennifer/Dev/cypress-example-kitchensink/cypress/plugins/index.js +1ms
  cypress:server:project plugins file found? true +1ms
  cypress:server:project watch plugins file +0ms
  cypress:server:timers queuing timer id 2 after 0 ms +328ms
  cypress:server:timers child received timer id 2 +330ms
  cypress:server:timers child sending timer id 2 +1ms
  cypress:server:specs looking for test specs in the folder: /Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration +0ms
  cypress:launcher checking one browser chrome +0ms
  cypress:launcher looking up chrome on darwin platform +1ms
  cypress:launcher looking for app Contents/MacOS/Google Chrome id com.google.Chrome +0ms
  cypress:launcher looking for bundle id com.google.Chrome using command: mdfind 'kMDItemCFBundleIdentifier=="com.google.Chrome"' | head -1 +0ms
  cypress:launcher checking one browser chrome +7ms
  cypress:launcher looking up chrome on darwin platform +0ms
  cypress:launcher looking for app Contents/MacOS/Google Chrome id com.google.Chrome +0ms
  cypress:launcher looking for bundle id com.google.Chrome using command: mdfind 'kMDItemCFBundleIdentifier=="com.google.Chrome"' | head -1 +0ms
  cypress:launcher checking one browser chrome +5ms
  cypress:launcher looking up chrome on darwin platform +0ms
  cypress:launcher looking for app Contents/MacOS/Google Chrome id com.google.Chrome +0ms
  cypress:launcher looking for bundle id com.google.Chrome using command: mdfind 'kMDItemCFBundleIdentifier=="com.google.Chrome"' | head -1 +0ms
  cypress:server:profilecleaner found 1 profile folders: [ '/Users/jennifer/Library/Application Support/Cypress/Partitions/run-94053' ] +0ms
  cypress:server:profilecleaner finding process by pid: 94053 +1ms
  cypress:server:timers clearing timer id 2 from queue { '2': { args: [], ms: 0, cb: [Function: clear] } } +36ms
  cypress:server:timers clearing timer id 2 from queue {} +0ms
  cypress:server:profilecleaner found 0 root level profile matches: [] +29ms
  cypress:server:profilecleaner found 0 profile folders: [] +1ms
  cypress:server:specs found spec file /Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration/aaa.js +75ms
  cypress:server:specs found spec file /Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration/examples/actions.spec.js +0ms
  cypress:server:specs found spec file /Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration/examples/aliasing.spec.js +0ms
  cypress:server:specs found spec file /Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration/examples/assertions.spec.js +0ms
  cypress:server:specs found spec file /Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration/examples/connectors.spec.js +0ms
  cypress:server:specs found spec file /Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration/examples/cookies.spec.js +0ms
  cypress:server:specs found spec file /Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration/examples/cypress_api.spec.js +1ms
  cypress:server:specs found spec file /Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration/examples/files.spec.js +0ms
  cypress:server:specs found spec file /Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration/examples/local_storage.spec.js +0ms
  cypress:server:specs found spec file /Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration/examples/location.spec.js +0ms
  cypress:server:specs found spec file /Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration/examples/misc.spec.js +0ms
  cypress:server:specs found spec file /Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration/examples/navigation.spec.js +0ms
  cypress:server:specs found spec file /Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration/examples/network_requests.spec.js +0ms
  cypress:server:specs found spec file /Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration/examples/querying.spec.js +0ms
  cypress:server:specs found spec file /Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration/examples/spies_stubs_clocks.spec.js +0ms
  cypress:server:specs found spec file /Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration/examples/traversal.spec.js +0ms
  cypress:server:specs found spec file /Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration/examples/utilities.spec.js +1ms
  cypress:server:specs found spec file /Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration/examples/viewport.spec.js +0ms
  cypress:server:specs found spec file /Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration/examples/waiting.spec.js +0ms
  cypress:server:specs found spec file /Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration/examples/window.spec.js +0ms
  cypress:server:specs found 20 spec files: [ { name: 'aaa.js', relative: 'cypress/integration/aaa.js', absolute: '/Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration/aaa.js' }, { name: 'examples/actions.spec.js', relative: 'cypress/integration/examples/actions.spec.js', absolute: '/Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration/examples/actions.spec.js' }, { name: 'examples/aliasing.spec.js', relative: 'cypress/integration/examples/aliasing.spec.js', absolute: '/Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration/examples/aliasing.spec.js' }, { name: 'examples/assertions.spec.js', relative: 'cypress/integration/examples/assertions.spec.js', absolute: '/Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration/examples/assertions.spec.js' }, { name: 'examples/connectors.spec.js', relative: 'cypress/integration/examples/connectors.spec.js', absolute: '/Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration/examples/connectors.spec.js' }, { name: 'examples/cookies.spec.js', relative: 'cypress/integration/examples/cookies.spec.js', absolute: '/Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration/examples/cookies.spec.js' }, { name: 'examples/cypress_api.spec.js', relative: 'cypress/integration/examples/cypress_api.spec.js', absolute: '/Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration/examples/cypress_api.spec.js' }, { name: 'examples/files.spec.js', relative: 'cypress/integration/examples/files.spec.js', absolute: '/Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration/examples/files.spec.js' }, { name: 'examples/local_storage.spec.js', relative: 'cypress/integration/examples/local_storage.spec.js', absolute: '/Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration/examples/local_storage.spec.js' }, { name: 'examples/location.spec.js', relative: 'cypress/integration/examples/location.spec.js', absolute: '/Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration/examples/location.spec.js' }, { name: 'examples/misc.spec.js', relative: 'cypress/integration/examples/misc.spec.js', absolute: '/Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration/examples/misc.spec.js' }, { name: 'examples/navigation.spec.js', relative: 'cypress/integration/examples/navigation.spec.js', absolute: '/Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration/examples/navigation.spec.js' }, { name: 'examples/network_requests.spec.js', relative: 'cypress/integration/examples/network_requests.spec.js', absolute: '/Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration/examples/network_requests.spec.js' }, { name: 'examples/querying.spec.js', relative: 'cypress/integration/examples/querying.spec.js', absolute: '/Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration/examples/querying.spec.js' }, { name: 'examples/spies_stubs_clocks.spec.js', relative: 'cypress/integration/examples/spies_stubs_clocks.spec.js', absolute: '/Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration/examples/spies_stubs_clocks.spec.js' }, { name: 'examples/traversal.spec.js', relative: 'cypress/integration/examples/traversal.spec.js', absolute: '/Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration/examples/traversal.spec.js' }, { name: 'examples/utilities.spec.js', relative: 'cypress/integration/examples/utilities.spec.js', absolute: '/Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration/examples/utilities.spec.js' }, { name: 'examples/viewport.spec.js', relative: 'cypress/integration/examples/viewport.spec.js', absolute: '/Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration/examples/viewport.spec.js' }, { name: 'examples/waiting.spec.js', relative: 'cypress/integration/examples/waiting.spec.js', absolute: '/Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration/examples/waiting.spec.js' }, { name: 'examples/window.spec.js', relative: 'cypress/integration/examples/window.spec.js', absolute: '/Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration/examples/window.spec.js' } ] +0ms
  cypress:server:run found '20' specs using spec pattern 'null': [ 'aaa.js', 'examples/actions.spec.js', 'examples/aliasing.spec.js', 'examples/assertions.spec.js', 'examples/connectors.spec.js', 'examples/cookies.spec.js', 'examples/cypress_api.spec.js', 'examples/files.spec.js', 'examples/local_storage.spec.js', 'examples/location.spec.js', 'examples/misc.spec.js', 'examples/navigation.spec.js', 'examples/network_requests.spec.js', 'examples/querying.spec.js', 'examples/spies_stubs_clocks.spec.js', 'examples/traversal.spec.js', 'examples/utilities.spec.js', 'examples/viewport.spec.js', 'examples/waiting.spec.js', 'examples/window.spec.js' ] +408ms
  cypress:launcher found com.google.Chrome at /Applications/Google Chrome.app +60ms
  cypress:launcher reading property file "/Applications/Google Chrome.app/Contents/Info.plist" +1ms
  cypress:launcher found com.google.Chrome at /Applications/Google Chrome.app +2ms
  cypress:launcher reading property file "/Applications/Google Chrome.app/Contents/Info.plist" +0ms
  cypress:server:profilecleaner removing old profile { pid: 94053, folder: '/Users/jennifer/Library/Application Support/Cypress/Partitions/run-94053' } +25ms
  cypress:launcher found com.google.Chrome at /Applications/Google Chrome.app +2ms
  cypress:launcher reading property file "/Applications/Google Chrome.app/Contents/Info.plist" +0ms
  cypress:launcher setting major version for {"name":"chrome","family":"chrome","displayName":"Chrome","version":"74.0.3729.169","path":"/Applications/Google Chrome.app/Contents/MacOS/Google Chrome"} +12ms
  cypress:launcher browser chrome version 74.0.3729.169 major version 74 +0ms
  cypress:launcher setting major version for {"name":"chrome","family":"chrome","displayName":"Chrome","version":"74.0.3729.169","path":"/Applications/Google Chrome.app/Contents/MacOS/Google Chrome"} +8ms
  cypress:launcher browser chrome version 74.0.3729.169 major version 74 +0ms
  cypress:launcher setting major version for {"name":"chrome","family":"chrome","displayName":"Chrome","version":"74.0.3729.169","path":"/Applications/Google Chrome.app/Contents/MacOS/Google Chrome"} +10ms
  cypress:launcher browser chrome version 74.0.3729.169 major version 74 +0ms
  cypress:launcher checking one browser chromium +1ms
  cypress:launcher looking up chromium on darwin platform +0ms
  cypress:launcher looking for app Contents/MacOS/Chromium id org.chromium.Chromium +0ms
  cypress:launcher looking for bundle id org.chromium.Chromium using command: mdfind 'kMDItemCFBundleIdentifier=="org.chromium.Chromium"' | head -1 +0ms
  cypress:launcher checking one browser chromium +6ms
  cypress:launcher looking up chromium on darwin platform +0ms
  cypress:launcher looking for app Contents/MacOS/Chromium id org.chromium.Chromium +0ms
  cypress:launcher looking for bundle id org.chromium.Chromium using command: mdfind 'kMDItemCFBundleIdentifier=="org.chromium.Chromium"' | head -1 +0ms
  cypress:launcher found org.chromium.Chromium at /Applications/Chromium.app +42ms
  cypress:launcher reading property file "/Applications/Chromium.app/Contents/Info.plist" +0ms
  cypress:launcher setting major version for {"name":"chromium","family":"chrome","displayName":"Chromium","version":"73.0.3683.0","path":"/Applications/Chromium.app/Contents/MacOS/Chromium"} +8ms
  cypress:launcher browser chromium version 73.0.3683.0 major version 73 +0ms
  cypress:launcher found org.chromium.Chromium at /Applications/Chromium.app +2ms
  cypress:launcher reading property file "/Applications/Chromium.app/Contents/Info.plist" +0ms
  cypress:launcher setting major version for {"name":"chromium","family":"chrome","displayName":"Chromium","version":"73.0.3683.0","path":"/Applications/Chromium.app/Contents/MacOS/Chromium"} +8ms
  cypress:launcher browser chromium version 73.0.3683.0 major version 73 +0ms
  cypress:launcher checking one browser canary +0ms
  cypress:launcher looking up canary on darwin platform +0ms
  cypress:launcher looking for app Contents/MacOS/Google Chrome Canary id com.google.Chrome.canary +0ms
  cypress:launcher looking for bundle id com.google.Chrome.canary using command: mdfind 'kMDItemCFBundleIdentifier=="com.google.Chrome.canary"' | head -1 +0ms
  cypress:launcher found com.google.Chrome.canary at /Applications/Google Chrome Canary.app +44ms
  cypress:launcher reading property file "/Applications/Google Chrome Canary.app/Contents/Info.plist" +0ms
  cypress:launcher setting major version for {"name":"canary","family":"chrome","displayName":"Canary","version":"76.0.3809.4","path":"/Applications/Google Chrome Canary.app/Contents/MacOS/Google Chrome Canary"} +14ms
  cypress:launcher browser canary version 76.0.3809.4 major version 76 +0ms

====================================================================================================

  (Run Starting)

  ┌────────────────────────────────────────────────────────────────────────────────────────────────┐
  │ Cypress:    3.3.1                                                                              │
  │ Browser:    Electron 61 (headless)                                                             │
  │ Specs:      20 found (aaa.js, examples/actions.spec.js, examples/aliasing.spec.js, examples/a… │
  └────────────────────────────────────────────────────────────────────────────────────────────────┘


────────────────────────────────────────────────────────────────────────────────────────────────────

  Running: aaa.js...                                                                      (1 of 20)
  cypress:server:run about to run spec { spec: { name: 'aaa.js', relative: 'cypress/integration/aaa.js', absolute: '/Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration/aaa.js' }, isHeadless: true, browser: { name: 'electron', family: 'electron', displayName: 'Electron', version: '61.0.3163.100', path: '', majorVersion: '61', info: 'Electron is the default browser that comes with Cypress. This is the browser that runs in headless mode. Selecting this browser is useful when debugging. The version number indicates the underlying Chromium version that Electron uses.', isHeadless: true, isHeaded: false } } +184ms
  cypress:server:video capture started { command: 'ffmpeg -n 20 /Users/jennifer/Library/Caches/Cypress/3.3.1/Cypress.app/Contents/Resources/app/packages/server/node_modules/@ffmpeg-installer/darwin-x64/ffmpeg -f image2pipe -use_wallclock_as_timestamps 1 -i pipe:0 -y -vcodec libx264 -preset ultrafast /Users/jennifer/Dev/cypress-example-kitchensink/cypress/videos/aaa.js.mp4' } +0ms
  cypress:server:run waiting for socket connection... { id: 'xinsd' } +71ms
  cypress:server:openproject resetting project state, preparing to launch browser +661ms
  cypress:server:project resetting project instance /Users/jennifer/Dev/cypress-example-kitchensink +355ms
  cypress:server:buffers resetting buffers +432ms
  cypress:server:server Setting remoteAuth undefined +361ms
  cypress:server:server Setting remoteOrigin http://localhost:56151 +0ms
  cypress:server:server Setting remoteStrategy file +1ms
  cypress:server:server Setting remoteHostAndPort null +0ms
  cypress:server:server Setting remoteDocDomain localhost +0ms
  cypress:server:server Setting remoteFileServer http://localhost:56152 +0ms
  cypress:server:server Getting remote state: { auth: undefined, props: null, origin: 'http://localhost:56151', strategy: 'file', visiting: undefined, domainName: 'localhost', fileServer: 'http://localhost:56152' } +0ms
  cypress:server:timers queuing timer id 3 after 30000 ms +301ms
  cypress:server:timers child received timer id 3 +336ms
WEBPREFERENCES { partition: null,
  chromeWebSecurity: true,
  nodeIntegration: false,
  backgroundThrottling: false }
  cypress:server:openproject launching browser: { name: 'electron', family: 'electron', displayName: 'Electron', version: '61.0.3163.100', path: '', majorVersion: '61', info: 'Electron is the default browser that comes with Cypress. This is the browser that runs in headless mode. Selecting this browser is useful when debugging. The version number indicates the underlying Chromium version that Electron uses.', isHeadless: true, isHeaded: false }, spec: cypress/integration/aaa.js +2ms
  cypress:server:browsers opening browser { name: 'electron', family: 'electron', displayName: 'Electron', version: '61.0.3163.100', path: '', majorVersion: '61', info: 'Electron is the default browser that comes with Cypress. This is the browser that runs in headless mode. Selecting this browser is useful when debugging. The version number indicates the underlying Chromium version that Electron uses.', isHeadless: true, isHeaded: false } +0ms
  cypress:server:browsers:electron open { browser: { name: 'electron', family: 'electron', displayName: 'Electron', version: '61.0.3163.100', path: '', majorVersion: '61', info: 'Electron is the default browser that comes with Cypress. This is the browser that runs in headless mode. Selecting this browser is useful when debugging. The version number indicates the underlying Chromium version that Electron uses.', isHeadless: true, isHeaded: false }, url: 'http://localhost:56151/__/#/tests/integration/aaa.js' } +0ms
  cypress:server:saved_state noop saved state +654ms
  cypress:server:browsers:electron received saved state {} +1ms
  cypress:server:browsers:electron browser window options { width: 1280, height: 720, show: false, recordFrameRate: 20, automationMiddleware: { onAfterResponse: [Function] }, projectRoot: '/Users/jennifer/Dev/cypress-example-kitchensink', browsers: undefined, proxyUrl: 'http://localhost:56151', userAgent: null, proxyServer: 'http://localhost:56151', socketIoRoute: '/__socket.io', chromeWebSecurity: true, url: 'http://localhost:56151/__/#/tests/integration/aaa.js', isTextTerminal: true, browser: { name: 'electron', family: 'electron', displayName: 'Electron', version: '61.0.3163.100', path: '', majorVersion: '61', info: 'Electron is the default browser that comes with Cypress. This is the browser that runs in headless mode. Selecting this browser is useful when debugging. The version number indicates the underlying Chromium version that Electron uses.', isHeadless: true, isHeaded: false }, x: null, y: null, devTools: false, minWidth: 100, minHeight: 100, contextMenu: true, partition: 'persist:run-94296', trackState: { width: 'browserWidth', height: 'browserHeight', x: 'browserX', y: 'browserY', devTools: 'isBrowserDevToolsOpen' }, frame: true, webPreferences: { partition: null, chromeWebSecurity: true, nodeIntegration: false, backgroundThrottling: false } } +1ms
  cypress:server:plugins plugin event registered? { event: 'before:browser:launch', isRegistered: true } +442ms
  cypress:server:plugins execute plugin event 'before:browser:launch' with args: { name: 'electron', family: 'electron', displayName: 'Electron', version: '61.0.3163.100', path: '', majorVersion: '61', info: 'Electron is the default browser that comes with Cypress. This is the browser that runs in headless mode. Selecting this browser is useful when debugging. The version number indicates the underlying Chromium version that Electron uses.', isHeadless: true, isHeaded: false } { width: 1280, height: 720, show: false, onCrashed: [Function: onCrashed], onNewWindow: [Function: onNewWindow], recordFrameRate: 20, onPaint: [Function], automationMiddleware: { onAfterResponse: [Function] }, projectRoot: '/Users/jennifer/Dev/cypress-example-kitchensink', browsers: undefined, proxyUrl: 'http://localhost:56151', userAgent: null, proxyServer: 'http://localhost:56151', socketIoRoute: '/__socket.io', chromeWebSecurity: true, url: 'http://localhost:56151/__/#/tests/integration/aaa.js', isTextTerminal: true, browser: { name: 'electron', family: 'electron', displayName: 'Electron', version: '61.0.3163.100', path: '', majorVersion: '61', info: 'Electron is the default browser that comes with Cypress. This is the browser that runs in headless mode. Selecting this browser is useful when debugging. The version number indicates the underlying Chromium version that Electron uses.', isHeadless: true, isHeaded: false }, onBrowserClose: [Function], onBrowserOpen: [Function: onBrowserOpen], x: null, y: null, devTools: false, minWidth: 100, minHeight: 100, contextMenu: true, partition: 'persist:run-94296', trackState: { width: 'browserWidth', height: 'browserHeight', x: 'browserX', y: 'browserY', devTools: 'isBrowserDevToolsOpen' }, onFocus: [Function: onFocus], frame: true, onBlur: [Function: onBlur], onClose: [Function: onClose], webPreferences: { partition: null, chromeWebSecurity: true, nodeIntegration: false, backgroundThrottling: false } } undefined +1ms
  cypress:server:plugins call event before:browser:launch for invocation id inv1 +0ms
  cypress:server:plugins:child execute plugin event: before:browser:launch ({ eventId: 2, invocationId: 'inv1' }) +446ms
  cypress:server:video capture stderr log { message: 'ffmpeg version N-92718-g092cb17983-tessus  https://evermeet.cx/ffmpeg/  Copyright (c) 2000-2018 the FFmpeg developers' } +17ms
  cypress:server:video capture stderr log { message: '  built with Apple LLVM version 10.0.0 (clang-1000.11.45.5)' } +1ms
  cypress:server:video capture stderr log { message: '  configuration: --cc=/usr/bin/clang --prefix=/opt/ffmpeg --extra-version=tessus --enable-avisynth --enable-fontconfig --enable-gpl --enable-libaom --enable-libass --enable-libbluray --enable-libdav1d --enable-libfreetype --enable-libgsm --enable-libmodplug --enable-libmp3lame --enable-libmysofa --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenh264 --enable-libopenjpeg --enable-libopus --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-libzimg --enable-libzmq --enable-libzvbi --enable-version3 --pkg-config-flags=--static --disable-ffplay' } +0ms
  cypress:server:video capture stderr log { message: '  libavutil      56. 24.101 / 56. 24.101' } +0ms
  cypress:server:video capture stderr log { message: '  libavcodec     58. 42.102 / 58. 42.102' } +0ms
  cypress:server:video capture stderr log { message: '  libavformat    58. 24.101 / 58. 24.101' } +0ms
  cypress:server:video capture stderr log { message: '  libavdevice    58.  6.101 / 58.  6.101' } +0ms
  cypress:server:video capture stderr log { message: '  libavfilter     7. 46.101 /  7. 46.101' } +0ms
  cypress:server:video capture stderr log { message: '  libswscale      5.  4.100 /  5.  4.100' } +0ms
  cypress:server:video capture stderr log { message: '  libswresample   3.  4.100 /  3.  4.100' } +0ms
  cypress:server:video capture stderr log { message: '  libpostproc    55.  4.100 / 55.  4.100' } +1ms
  cypress:server:plugins promise resolved for id 'inv1' with value { width: 1280,
  height: 720,
  show: false,
  recordFrameRate: 20,
  automationMiddleware: {},
  projectRoot: '/Users/jennifer/Dev/cypress-example-kitchensink',
  proxyUrl: 'http://localhost:56151',
  userAgent: null,
  proxyServer: 'http://localhost:56151',
  socketIoRoute: '/__socket.io',
  chromeWebSecurity: true,
  url: 'http://localhost:56151/__/#/tests/integration/aaa.js',
  isTextTerminal: true,
  browser:
   { name: 'electron',
     family: 'electron',
     displayName: 'Electron',
     version: '61.0.3163.100',
     path: '',
     majorVersion: '61',
     info: 'Electron is the default browser that comes with Cypress. This is the browser that runs in headless mode. Selecting this browser is useful when debugging. The version number indicates the underlying Chromium version that Electron uses.',
     isHeadless: true,
     isHeaded: false },
  x: null,
  y: null,
  devTools: false,
  minWidth: 100,
  minHeight: 100,
  contextMenu: true,
  partition: 'persist:run-94296',
  trackState:
   { width: 'browserWidth',
     height: 'browserHeight',
     x: 'browserX',
     y: 'browserY',
     devTools: 'isBrowserDevToolsOpen' },
  frame: true,
  webPreferences:
   { partition: null,
     chromeWebSecurity: true,
     nodeIntegration: false,
     backgroundThrottling: false,
     devTools: true } } +0ms
  cypress:server:browsers:electron received new options from plugin event { width: 1280, height: 720, show: false, recordFrameRate: 20, automationMiddleware: {}, projectRoot: '/Users/jennifer/Dev/cypress-example-kitchensink', proxyUrl: 'http://localhost:56151', userAgent: null, proxyServer: 'http://localhost:56151', socketIoRoute: '/__socket.io', chromeWebSecurity: true, url: 'http://localhost:56151/__/#/tests/integration/aaa.js', isTextTerminal: true, browser: { name: 'electron', family: 'electron', displayName: 'Electron', version: '61.0.3163.100', path: '', majorVersion: '61', info: 'Electron is the default browser that comes with Cypress. This is the browser that runs in headless mode. Selecting this browser is useful when debugging. The version number indicates the underlying Chromium version that Electron uses.', isHeadless: true, isHeaded: false }, x: null, y: null, devTools: false, minWidth: 100, minHeight: 100, contextMenu: true, partition: 'persist:run-94296', trackState: { width: 'browserWidth', height: 'browserHeight', x: 'browserX', y: 'browserY', devTools: 'isBrowserDevToolsOpen' }, frame: true, webPreferences: { partition: null, chromeWebSecurity: true, nodeIntegration: false, backgroundThrottling: false, devTools: true } } +18ms
  cypress:server:browsers:electron launching browser window to url: http://localhost:56151/__/#/tests/integration/aaa.js +0ms
  cypress:server:browsers:electron debugger attached +32ms
  cypress:server:browsers:electron clearing cache +0ms
  cypress:server:browsers browser opened +62ms
  cypress:server:timers queuing timer id 4 after 1000 ms +68ms
  cypress:server:timers child received timer id 4 +68ms
  cypress:server:routes Serving Cypress front-end by requested URL: /__/ +0ms
  cypress:server:server Getting remote state: { auth: undefined, props: null, origin: 'http://localhost:56151', strategy: 'file', visiting: undefined, domainName: 'localhost', fileServer: 'http://localhost:56152' } +144ms
  cypress:server:runner serving runner index.html with config { version: '3.3.1', platform: 'darwin', arch: 'x64', projectName: 'cypress-example-kitchensink' } +0ms
  cypress:server:browsers:electron console message: { column: 17, level: 'info', line: 162528, source: 'console-api', text: '%cDownload the React DevTools for a better development experience: https://fb.me/react-devtools', url: 'http://localhost:56151/__cypress/runner/cypress_runner.js' } +533ms
  cypress:server:server Got CONNECT request from localhost:56151 +618ms
  cypress:https-proxy Writing browserSocket connection headers { url: 'localhost:56151', headLength: 0, headers: { host: 'localhost:56151', 'proxy-connection': 'keep-alive', 'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Cypress/3.3.1 Chrome/61.0.3163.100 Electron/2.0.18 Safari/537.36' } } +1s
  cypress:https-proxy Got first head bytes { url: 'localhost:56151', head: 'GET /__socket.io/?EIO=3&transport=websocket HTTP/1.1\r\nHost: loca' } +2ms
  cypress:server:server HTTPS request does not match URL: https://localhost:56151 with props: null +2ms
  cypress:https-proxy Making connection to localhost:56151 +0ms
  cypress:network:connect successfully connected { opts: { port: '56151', host: 'localhost', getDelayMsForRetry: [Function: getDelayForRetry] }, iteration: 0 } +0ms
  cypress:https-proxy received upstreamSocket callback for request { port: '56151', hostname: 'localhost', err: undefined } +4ms
  cypress:server:server Got UPGRADE request from /__socket.io/?EIO=3&transport=websocket +4ms
  cypress:server:timers queuing timer id 5 after 85000 ms +705ms
  cypress:server:timers child received timer id 5 +705ms
  cypress:server:socket socket connected +0ms
  cypress:server:browsers:electron console message: { column: 17, level: 'info', line: 118992, source: 'console-api', text: '%cDownload the React DevTools for a better development experience: https://fb.me/react-devtools', url: 'http://localhost:56151/__cypress/runner/cypress_runner.js' } +209ms
  cypress:server:timers clearing timer id 5 from queue { '3': { args: [], ms: 30000, cb: [Function: timeoutTimeout] }, '4': { args: [], ms: 1000, cb: [Function] }, '5': { args: [], ms: 85000, cb: [Function] } } +63ms
  cypress:server:timers queuing timer id 6 after 85000 ms +0ms
  cypress:server:timers child received timer id 6 +63ms
  cypress:server:timers clearing timer id 6 from queue { '3': { args: [], ms: 30000, cb: [Function: timeoutTimeout] }, '4': { args: [], ms: 1000, cb: [Function] }, '6': { args: [], ms: 85000, cb: [Function] } } +18ms
  cypress:server:timers queuing timer id 7 after 85000 ms +0ms
  cypress:server:timers child received timer id 7 +18ms
  cypress:server:timers queuing timer id 8 after 1000 ms +1ms
  cypress:server:timers child received timer id 8 +1ms
  cypress:server:timers clearing timer id 8 from queue { '3': { args: [], ms: 30000, cb: [Function: timeoutTimeout] }, '4': { args: [], ms: 1000, cb: [Function] }, '7': { args: [], ms: 85000, cb: [Function] }, '8': { args: [], ms: 1000, cb: [Function: timeoutTimeout] } } +0ms
  cypress:server:browsers:electron console message: { column: 15, level: 'error', line: 96956, source: 'console-api', text: 'Warning: Failed prop type: The prop `config.browsers` is marked as required in `App`, but its value is `undefined`.\n    in App (created by Container)\n    in Container', url: 'http://localhost:56151/__cypress/runner/cypress_runner.js' } +60ms
  cypress:server:browsers:electron console message: { column: 32, level: 'log', line: 172393, source: 'console-api', text: 'console.clear', url: 'http://localhost:56151/__cypress/runner/cypress_runner.js' } +165ms
  cypress:server:timers clearing timer id 7 from queue { '3': { args: [], ms: 30000, cb: [Function: timeoutTimeout] }, '4': { args: [], ms: 1000, cb: [Function] }, '7': { args: [], ms: 85000, cb: [Function] } } +169ms
  cypress:server:timers queuing timer id 9 after 85000 ms +0ms
  cypress:server:timers child received timer id 9 +169ms
  cypress:server:run got socket connection { id: 'xinsd' } +1s
  cypress:server:timers child sending timer id 4 +47ms
  cypress:server:timers clearing timer id 4 from queue { '3': { args: [], ms: 30000, cb: [Function: timeoutTimeout] }, '4': { args: [], ms: 1000, cb: [Function] }, '9': { args: [], ms: 85000, cb: [Function] } } +48ms
  cypress:server:timers clearing timer id 3 from queue { '3': { args: [], ms: 30000, cb: [Function: timeoutTimeout] }, '9': { args: [], ms: 85000, cb: [Function] } } +0ms
  cypress:server:server Getting remote state: { auth: undefined, props: null, origin: 'http://localhost:56151', strategy: 'file', visiting: undefined, domainName: 'localhost', fileServer: 'http://localhost:56152' } +320ms
  cypress:server:timers clearing timer id 9 from queue { '9': { args: [], ms: 85000, cb: [Function] } } +16ms
  cypress:server:timers queuing timer id 10 after 85000 ms +1ms
  cypress:server:timers child received timer id 10 +18ms
  cypress:server:timers clearing timer id 10 from queue { '10': { args: [], ms: 85000, cb: [Function] } } +5ms
  cypress:server:timers queuing timer id 11 after 85000 ms +0ms
  cypress:server:timers child received timer id 11 +6ms
  cypress:server:socket watch test file 'integration/aaa.js' +320ms
  cypress:server:socket will watch test file path 'cypress/integration/aaa.js' +0ms
  cypress:server:preprocessor getFile /Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration/aaa.js +0ms
  cypress:server:appdata path: /Users/jennifer/Library/Application Support/Cypress/cy/production/projects/cypress-example-kitchensink-1a802cc60480d6ee1e3eddc0e22b6c9b/bundles/cypress/integration/aaa.js +1s
  cypress:server:plugins plugin event registered? { event: 'file:preprocessor', isRegistered: false } +1s
  cypress:server:preprocessor set default preprocessor +1ms
  cypress:browserify received user options: {} +0ms
  cypress:server:plugins register event 'file:preprocessor' +195ms
  cypress:server:plugins execute plugin event 'file:preprocessor' with args: EventEmitter { domain: null, _events: { rerun: [Function] }, _eventsCount: 1, _maxListeners: undefined, filePath: '/Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration/aaa.js', shouldWatch: false, outputPath: '/Users/jennifer/Library/Application Support/Cypress/cy/production/projects/cypress-example-kitchensink-1a802cc60480d6ee1e3eddc0e22b6c9b/bundles/cypress/integration/aaa.js' } undefined undefined +0ms
  cypress:browserify get: /Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration/aaa.js +1ms
  cypress:browserify input: /Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration/aaa.js +0ms
  cypress:browserify output: /Users/jennifer/Library/Application Support/Cypress/cy/production/projects/cypress-example-kitchensink-1a802cc60480d6ee1e3eddc0e22b6c9b/bundles/cypress/integration/aaa.js +0ms
  cypress:browserify browserifyOptions { extensions: [ '.js', '.jsx', '.coffee', '.cjsx' ], transform: [ [ '/Users/jennifer/Library/Caches/Cypress/3.3.1/Cypress.app/Contents/Resources/app/packages/server/node_modules/@cypress/browserify-preprocessor/cjsxify.js', {} ], [ '/Users/jennifer/Library/Caches/Cypress/3.3.1/Cypress.app/Contents/Resources/app/packages/server/node_modules/babelify/index.js', [Object] ] ], plugin: [], cache: {}, packageCache: {}, entries: [ '/Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration/aaa.js' ] }: +0ms
  cypress:browserify making bundle /Users/jennifer/Library/Application Support/Cypress/cy/production/projects/cypress-example-kitchensink-1a802cc60480d6ee1e3eddc0e22b6c9b/bundles/cypress/integration/aaa.js +9ms
  cypress:server:controllers:spec request for { spec: 'cypress/support/index.js' } +0ms
  cypress:server:preprocessor getFile /Users/jennifer/Dev/cypress-example-kitchensink/cypress/support/index.js +213ms
  cypress:server:appdata path: /Users/jennifer/Library/Application Support/Cypress/cy/production/projects/cypress-example-kitchensink-1a802cc60480d6ee1e3eddc0e22b6c9b/bundles/cypress/support/index.js +213ms
  cypress:server:plugins plugin event registered? { event: 'file:preprocessor', isRegistered: true } +18ms
  cypress:server:plugins execute plugin event 'file:preprocessor' with args: EventEmitter { domain: null, _events: { rerun: [Function] }, _eventsCount: 1, _maxListeners: undefined, filePath: '/Users/jennifer/Dev/cypress-example-kitchensink/cypress/support/index.js', shouldWatch: false, outputPath: '/Users/jennifer/Library/Application Support/Cypress/cy/production/projects/cypress-example-kitchensink-1a802cc60480d6ee1e3eddc0e22b6c9b/bundles/cypress/support/index.js' } undefined undefined +0ms
  cypress:browserify get: /Users/jennifer/Dev/cypress-example-kitchensink/cypress/support/index.js +8ms
  cypress:browserify input: /Users/jennifer/Dev/cypress-example-kitchensink/cypress/support/index.js +0ms
  cypress:browserify output: /Users/jennifer/Library/Application Support/Cypress/cy/production/projects/cypress-example-kitchensink-1a802cc60480d6ee1e3eddc0e22b6c9b/bundles/cypress/support/index.js +0ms
  cypress:browserify browserifyOptions { extensions: [ '.js', '.jsx', '.coffee', '.cjsx' ], transform: [ [ '/Users/jennifer/Library/Caches/Cypress/3.3.1/Cypress.app/Contents/Resources/app/packages/server/node_modules/@cypress/browserify-preprocessor/cjsxify.js', [Object] ], [ '/Users/jennifer/Library/Caches/Cypress/3.3.1/Cypress.app/Contents/Resources/app/packages/server/node_modules/babelify/index.js', [Object] ] ], plugin: [], cache: {}, packageCache: {}, entries: [ '/Users/jennifer/Dev/cypress-example-kitchensink/cypress/support/index.js' ] }: +0ms
  cypress:server:controllers:spec request for { spec: 'cypress/integration/aaa.js' } +4ms
  cypress:server:preprocessor getFile /Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration/aaa.js +3ms
  cypress:server:plugins plugin event registered? { event: 'file:preprocessor', isRegistered: true } +3ms
  cypress:server:preprocessor headless and already processed +0ms
  cypress:browserify making bundle /Users/jennifer/Library/Application Support/Cypress/cy/production/projects/cypress-example-kitchensink-1a802cc60480d6ee1e3eddc0e22b6c9b/bundles/cypress/support/index.js +4ms
  cypress:server:video capture stderr log { message: '[mjpeg @ 0x7fba25811400] EOI missing, emulating' } +2s
  cypress:server:timers child sending timer id 8 +763ms
  cypress:browserify finished bundling: /Users/jennifer/Library/Application Support/Cypress/cy/production/projects/cypress-example-kitchensink-1a802cc60480d6ee1e3eddc0e22b6c9b/bundles/cypress/integration/aaa.js +598ms
  cypress:server:controllers:spec sending spec { filePath: '/Users/jennifer/Library/Application Support/Cypress/cy/production/projects/cypress-example-kitchensink-1a802cc60480d6ee1e3eddc0e22b6c9b/bundles/cypress/integration/aaa.js' } +600ms
  cypress:browserify finished bundling: /Users/jennifer/Library/Application Support/Cypress/cy/production/projects/cypress-example-kitchensink-1a802cc60480d6ee1e3eddc0e22b6c9b/bundles/cypress/support/index.js +15ms
  cypress:server:controllers:spec sending spec { filePath: '/Users/jennifer/Library/Application Support/Cypress/cy/production/projects/cypress-example-kitchensink-1a802cc60480d6ee1e3eddc0e22b6c9b/bundles/cypress/support/index.js' } +15ms
  cypress:server:timers clearing timer id 11 from queue { '11': { args: [], ms: 85000, cb: [Function] } } +842ms
  cypress:server:timers queuing timer id 12 after 85000 ms +0ms
  cypress:server:timers child received timer id 12 +78ms
  cypress:server:timers clearing timer id 12 from queue { '12': { args: [], ms: 85000, cb: [Function] } } +9ms
  cypress:server:timers queuing timer id 13 after 85000 ms +0ms
  cypress:server:timers child received timer id 13 +9ms
  cypress:server:project received runnables { id: 'r1', title: '', root: true, type: 'suite', tests: [], suites: [ { id: 'r2', title: 'Files', root: false, type: 'suite', tests: [Array], suites: [] } ] } +2s
  cypress:server:reporter trying to load reporter: spec +2s
  cypress:server:reporter spec is Mocha reporter +0ms
  cypress:server:timers clearing timer id 13 from queue { '13': { args: [], ms: 85000, cb: [Function] } } +9ms
  cypress:server:timers queuing timer id 14 after 85000 ms +0ms
  cypress:server:timers child received timer id 14 +9ms
  cypress:server:project onMocha start +10ms
  cypress:server:reporter got mocha event 'start' with args: [ { start: '2019-06-03T07:21:19.100Z' } ] +9ms

  cypress:server:timers clearing timer id 14 from queue { '14': { args: [], ms: 85000, cb: [Function] } } +2ms
  cypress:server:timers queuing timer id 15 after 85000 ms +0ms
  cypress:server:project onMocha suite +1ms
  cypress:server:timers child received timer id 15 +2ms

cypress:server:reporter got mocha event 'suite' with args: [ { id: 'r1', title: '', root: true, type: 'suite' } ] +1ms
  cypress:server:timers clearing timer id 15 from queue { '15': { args: [], ms: 85000, cb: [Function] } } +25ms
  cypress:server:timers queuing timer id 16 after 85000 ms +0ms
  cypress:server:project onMocha suite +25ms
  cypress:server:timers child received timer id 16 +25ms
  cypress:server:reporter got mocha event 'suite' with args: [ { id: 'r2', title: 'Files', root: false, type: 'suite' } ] +25ms
  Files
  cypress:server:timers clearing timer id 16 from queue { '16': { args: [], ms: 85000, cb: [Function] } } +1ms
  cypress:server:timers queuing timer id 17 after 85000 ms +0ms
  cypress:server:project onMocha test +1ms
  cypress:server:timers child received timer id 17 +1ms
  cypress:server:reporter got mocha event 'test' with args: [ { id: 'r3', title: 'cy.writeFile() - write to a file', body: 'function () {\n    // https://on.cypress.io/writefile\n    // You can write to a file\n    // Use a response from a request to automatically\n    // generate a fixture file for use later\n    cy.request(\'https://jsonplaceholder.cypress.io/users\').then(function (response) {\n      cy.writeFile(\'cypress/fixtures/users.json\', response.body);\n    });\n    cy.fixture(\'users\').should(function (users) {\n      expect(users[0].name).to.exist;\n    }); // JavaScript arrays and objects are stringified\n    // and formatted into text.\n\n    cy.writeFile(\'cypress/fixtures/profile.json\', {\n      id: 8739,\n      name: \'Jane\',\n      email: \'jane@example.com\'\n    });\n    cy.fixture(\'profile\').should(function (profile) {\n      expect(profile.name).to.eq(\'Jane\');\n    });\n  }', type: 'test' } ] +1ms
  cypress:server:timers clearing timer id 17 from queue { '17': { args: [], ms: 85000, cb: [Function] } } +0ms
  cypress:server:timers queuing timer id 18 after 85000 ms +1ms
  cypress:server:project onMocha hook +1ms
  cypress:server:timers child received timer id 18 +1ms
  cypress:server:reporter got mocha event 'hook' with args: [ { id: 'r3', title: '"before each" hook', hookName: 'before each', hookId: 'h1', body: 'function () {\n    cy.visit(\'http://localhost:8080/commands/files\');\n  }', type: 'hook' } ] +1ms
  cypress:server:timers clearing timer id 18 from queue { '18': { args: [], ms: 85000, cb: [Function] } } +0ms
  cypress:server:timers queuing timer id 19 after 85000 ms +1ms
  cypress:server:timers child received timer id 19 +1ms
  cypress:server:socket automation:request get:cookies { domain: 'localhost' } +889ms
  cypress:server:cookies getting:cookies { domain: 'localhost' } +0ms
  cypress:server:cookies received get:cookies [] +0ms
  cypress:server:timers clearing timer id 19 from queue { '19': { args: [], ms: 85000, cb: [Function] } } +22ms
  cypress:server:timers queuing timer id 20 after 85000 ms +0ms
  cypress:server:timers child received timer id 20 +22ms
  cypress:server:socket backend:request { eventName: 'resolve:url', args: [ 'http://localhost:8080/commands/files', { auth: null, failOnStatusCode: true, retryOnNetworkFailure: true, retryOnStatusCodeFailure: false, method: 'GET', body: null, headers: {}, timeout: 30000 } ] } +22ms
  cypress:server:server resolving visit { url: 'http://localhost:8080/commands/files', headers: { host: 'localhost:56151', connection: 'Upgrade', pragma: 'no-cache', 'cache-control': 'no-cache', upgrade: 'websocket', origin: 'http://localhost:56151', 'sec-websocket-version': '13', 'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Cypress/3.3.1 Chrome/61.0.3163.100 Electron/2.0.18 Safari/537.36', 'accept-encoding': 'gzip, deflate', 'accept-language': 'en-US', 'sec-websocket-key': 'oMOk81EYagBYDZ/oxWrGaQ==', 'sec-websocket-extensions': 'permessage-deflate; client_max_window_bits' }, options: { auth: null, failOnStatusCode: true, retryOnNetworkFailure: true, retryOnStatusCodeFailure: false, method: 'GET', body: null, headers: {}, timeout: 30000 } } +919ms
  cypress:server:server Getting remote state: { auth: undefined, props: null, origin: 'http://localhost:56151', strategy: 'file', visiting: undefined, domainName: 'localhost', fileServer: 'http://localhost:56152' } +0ms
  cypress:server:server sending request with options { auth: null, failOnStatusCode: true, retryOnNetworkFailure: true, retryOnStatusCodeFailure: false, method: 'GET', body: null, headers: { accept: 'text/html,*/*' }, timeout: 30000, gzip: false, url: 'http://localhost:8080/commands/files', onBeforeReqInit: [Function: runPhase], followRedirect: [Function: followRedirect] } +1ms
  cypress:server:cookies getting:cookies { url: 'http://localhost:8080/commands/files' } +25ms
  cypress:server:cookies received get:cookies [] +0ms
  cypress:server:request sending request as stream { auth: null, failOnStatusCode: true, retryOnNetworkFailure: true, retryOnStatusCodeFailure: false, method: 'GET', body: null, headers: { accept: 'text/html,*/*', 'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Cypress/3.3.1 Chrome/61.0.3163.100 Electron/2.0.18 Safari/537.36' }, timeout: 30000, gzip: false, url: 'http://localhost:8080/commands/files', onBeforeReqInit: [Function: runPhase] } +0ms
  cypress:network:agent addRequest called for http://localhost:8080/commands/files +0ms
  cypress:server:timers queuing timer id 21 after 30000 ms +69ms
  cypress:server:timers child received timer id 21 +69ms
  cypress:server:timers clearing timer id 21 from queue { '20': { args: [], ms: 85000, cb: [Function] }, '21': { args: [], ms: 30000, cb: [Function] } } +1ms
  cypress:server:request received status code on request { requestId: 'request2', statusCode: 200 } +69ms
  cypress:server:request successful response received { requestId: 'request2' } +1ms
  cypress:server:server resolve:url headers received, buffering response { headers: { 'last-modified': 'Tue, 28 May 2019 05:51:51 GMT', 'content-length': '8004', 'content-disposition': 'inline; filename="files.html"', 'accept-ranges': 'bytes', 'content-type': 'text/html; charset=utf-8', 'cache-control': 'no-cache', vary: 'Accept-Encoding', date: 'Mon, 03 Jun 2019 07:21:19 GMT', connection: 'keep-alive' }, statusCode: 200 } +72ms
  cypress:server:request setting request jar cookies [] +1ms
  cypress:server:server setting details resolving url { isOkStatusCode: true, isHtml: true, contentType: 'text/html', url: 'http://localhost:8080/commands/files', status: 200, cookies: [], statusText: 'OK', redirects: [], originalUrl: 'http://localhost:8080/commands/files' } +3ms
  cypress:server:server resolve:url response ended, setting buffer { newUrl: 'http://localhost:8080/commands/files', details: { isOkStatusCode: true, isHtml: true, contentType: 'text/html', url: 'http://localhost:8080/commands/files', status: 200, cookies: [], statusText: 'OK', redirects: [], originalUrl: 'http://localhost:8080/commands/files' } } +2ms
  cypress:server:server Setting remoteAuth null +0ms
  cypress:server:cors Parsed URL { port: '8080', tld: 'localhost', domain: '' } +0ms
  cypress:server:server Setting remoteOrigin http://localhost:8080 +16ms
  cypress:server:server Setting remoteHostAndPort { port: '8080', tld: 'localhost', domain: '' } +0ms
  cypress:server:server Setting remoteDocDomain localhost +0ms
  cypress:server:server Getting remote state: { auth: null, props: { port: '8080', tld: 'localhost', domain: '' }, origin: 'http://localhost:8080', strategy: 'http', visiting: false, domainName: 'localhost', fileServer: null } +0ms
  cypress:server:timers clearing timer id 20 from queue { '20': { args: [], ms: 85000, cb: [Function] } } +28ms
  cypress:server:timers queuing timer id 22 after 85000 ms +1ms
  cypress:server:timers child received timer id 22 +30ms
  cypress:server:socket backend:request { eventName: 'preserve:run:state', args: [ { currentId: 'r3', tests: {}, startTime: '2019-06-03T07:21:19.098Z', emissions: [Object], passed: 0, failed: 0, pending: 0, numLogs: 0, autoScrollingEnabled: true, scrollTop: 0 } ] } +99ms
  cypress:server:routes Serving Cypress front-end by requested URL: /__/ +2s
  cypress:server:server Getting remote state: { auth: null, props: { port: '8080', tld: 'localhost', domain: '' }, origin: 'http://localhost:8080', strategy: 'http', visiting: false, domainName: 'localhost', fileServer: null } +85ms
  cypress:server:runner serving runner index.html with config { version: '3.3.1', platform: 'darwin', arch: 'x64', projectName: 'cypress-example-kitchensink' } +2s
  cypress:server:timers queuing timer id 23 after 30000 ms +90ms
  cypress:server:timers child received timer id 23 +90ms
  cypress:server:timers clearing timer id 23 from queue { '22': { args: [], ms: 85000, cb: [Function] }, '23': { args: [], ms: 30000, cb: [Function: bound cleanupWebsocketResources] } } +2ms
  cypress:server:timers clearing timer id 22 from queue { '22': { args: [], ms: 85000, cb: [Function] } } +0ms
  cypress:server:timers clearing timer id 22 from queue {} +0ms
  cypress:server:browsers:electron console message: { column: 17, level: 'info', line: 162528, source: 'console-api', text: '%cDownload the React DevTools for a better development experience: https://fb.me/react-devtools', url: 'http://localhost:8080/__cypress/runner/cypress_runner.js' } +2s
  cypress:server:server Got CONNECT request from localhost:8080 +587ms
  cypress:https-proxy Writing browserSocket connection headers { url: 'localhost:8080', headLength: 0, headers: { host: 'localhost:8080', 'proxy-connection': 'keep-alive', 'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Cypress/3.3.1 Chrome/61.0.3163.100 Electron/2.0.18 Safari/537.36' } } +2s
  cypress:https-proxy Got first head bytes { url: 'localhost:8080', head: 'GET /__socket.io/?EIO=3&transport=websocket HTTP/1.1\r\nHost: loca' } +1ms
  cypress:server:cors Parsed URL { port: '8080', tld: 'localhost', domain: '' } +673ms
  cypress:server:server HTTPS request does match URL: https://localhost:8080 with props: { port: '8080', tld: 'localhost', domain: '' } +1ms
  cypress:https-proxy Not making direct connection { url: 'localhost:8080' } +0ms
  cypress:https-proxy Making intercepted connection to 56151 +1ms
  cypress:network:connect successfully connected { opts: { port: 56151, host: 'localhost', getDelayMsForRetry: [Function: getDelayForRetry] }, iteration: 0 } +2s
  cypress:https-proxy received upstreamSocket callback for request { port: 56151, hostname: 'localhost', err: undefined } +2ms
  cypress:server:server Got UPGRADE request from /__socket.io/?EIO=3&transport=websocket +3ms
  cypress:server:timers queuing timer id 24 after 85000 ms +581ms
  cypress:server:timers child received timer id 24 +583ms
  cypress:server:socket socket connected +673ms
  cypress:server:browsers:electron console message: { column: 17, level: 'info', line: 118992, source: 'console-api', text: '%cDownload the React DevTools for a better development experience: https://fb.me/react-devtools', url: 'http://localhost:8080/__cypress/runner/cypress_runner.js' } +202ms
  cypress:server:timers clearing timer id 24 from queue { '24': { args: [], ms: 85000, cb: [Function] } } +68ms
  cypress:server:timers queuing timer id 25 after 85000 ms +0ms
  cypress:server:timers child received timer id 25 +68ms
  cypress:server:timers clearing timer id 25 from queue { '25': { args: [], ms: 85000, cb: [Function] } } +18ms
  cypress:server:timers queuing timer id 26 after 85000 ms +0ms
  cypress:server:timers queuing timer id 27 after 1000 ms +0ms
  cypress:server:timers child received timer id 26 +18ms
  cypress:server:timers child received timer id 27 +0ms
  cypress:server:timers clearing timer id 27 from queue { '26': { args: [], ms: 85000, cb: [Function] }, '27': { args: [], ms: 1000, cb: [Function: timeoutTimeout] } } +0ms
  cypress:server:browsers:electron console message: { column: 15, level: 'error', line: 96956, source: 'console-api', text: 'Warning: Failed prop type: The prop `config.browsers` is marked as required in `App`, but its value is `undefined`.\n    in App (created by Container)\n    in Container', url: 'http://localhost:8080/__cypress/runner/cypress_runner.js' } +54ms
  cypress:server:browsers:electron console message: { column: 32, level: 'log', line: 172393, source: 'console-api', text: 'console.clear', url: 'http://localhost:8080/__cypress/runner/cypress_runner.js' } +144ms
  cypress:server:timers clearing timer id 26 from queue { '26': { args: [], ms: 85000, cb: [Function] } } +146ms
  cypress:server:timers queuing timer id 28 after 85000 ms +0ms
  cypress:server:timers child received timer id 28 +146ms
  cypress:server:server Getting remote state: { auth: null, props: { port: '8080', tld: 'localhost', domain: '' }, origin: 'http://localhost:8080', strategy: 'http', visiting: false, domainName: 'localhost', fileServer: null } +289ms
  cypress:server:timers clearing timer id 28 from queue { '28': { args: [], ms: 85000, cb: [Function] } } +56ms
  cypress:server:timers queuing timer id 29 after 85000 ms +1ms
  cypress:server:timers child received timer id 29 +57ms
  cypress:server:timers clearing timer id 29 from queue { '29': { args: [], ms: 85000, cb: [Function] } } +0ms
  cypress:server:timers queuing timer id 30 after 85000 ms +0ms
  cypress:server:socket watch test file 'integration/aaa.js' +289ms
  cypress:server:timers child received timer id 30 +0ms
  cypress:server:controllers:spec request for { spec: 'cypress/support/index.js' } +1s
  cypress:server:preprocessor getFile /Users/jennifer/Dev/cypress-example-kitchensink/cypress/support/index.js +2s
  cypress:server:plugins plugin event registered? { event: 'file:preprocessor', isRegistered: true } +2s
  cypress:server:preprocessor headless and already processed +0ms
  cypress:server:controllers:spec request for { spec: 'cypress/integration/aaa.js' } +1ms
  cypress:server:preprocessor getFile /Users/jennifer/Dev/cypress-example-kitchensink/cypress/integration/aaa.js +1ms
  cypress:server:plugins plugin event registered? { event: 'file:preprocessor', isRegistered: true } +1ms
  cypress:server:preprocessor headless and already processed +0ms
  cypress:server:controllers:spec sending spec { filePath: '/Users/jennifer/Library/Application Support/Cypress/cy/production/projects/cypress-example-kitchensink-1a802cc60480d6ee1e3eddc0e22b6c9b/bundles/cypress/support/index.js' } +0ms
  cypress:server:controllers:spec sending spec { filePath: '/Users/jennifer/Library/Application Support/Cypress/cy/production/projects/cypress-example-kitchensink-1a802cc60480d6ee1e3eddc0e22b6c9b/bundles/cypress/integration/aaa.js' } +1ms
  cypress:server:timers clearing timer id 30 from queue { '30': { args: [], ms: 85000, cb: [Function] } } +52ms
  cypress:server:timers queuing timer id 31 after 85000 ms +1ms
  cypress:server:timers child received timer id 31 +53ms
  cypress:server:timers clearing timer id 31 from queue { '31': { args: [], ms: 85000, cb: [Function] } } +17ms
  cypress:server:timers queuing timer id 32 after 85000 ms +0ms
  cypress:server:project onMocha hook +1s
  cypress:server:timers child received timer id 32 +17ms
  cypress:server:reporter got mocha event 'hook' with args: [ { id: 'r3', title: '"before each" hook', hookName: 'before each', hookId: 'h1', body: 'function () {\n    cy.visit(\'http://localhost:8080/commands/files\');\n  }', type: 'hook' } ] +1s
  cypress:server:timers clearing timer id 32 from queue { '32': { args: [], ms: 85000, cb: [Function] } } +23ms
  cypress:server:timers queuing timer id 33 after 85000 ms +0ms
  cypress:server:socket automation:request get:cookies { domain: 'localhost' } +93ms
  cypress:server:timers child received timer id 33 +23ms
  cypress:server:cookies getting:cookies { domain: 'localhost' } +1s
  cypress:server:cookies received get:cookies [] +1ms
  cypress:server:timers clearing timer id 33 from queue { '33': { args: [], ms: 85000, cb: [Function] } } +23ms
  cypress:server:timers queuing timer id 34 after 85000 ms +0ms
  cypress:server:timers child received timer id 34 +23ms
  cypress:server:socket backend:request { eventName: 'resolve:url', args: [ 'http://localhost:8080/commands/files', { auth: null, failOnStatusCode: true, retryOnNetworkFailure: true, retryOnStatusCodeFailure: false, method: 'GET', body: null, headers: {}, timeout: 30000 } ] } +23ms
  cypress:server:server resolving visit { url: 'http://localhost:8080/commands/files', headers: { host: 'localhost:8080', connection: 'Upgrade', pragma: 'no-cache', 'cache-control': 'no-cache', upgrade: 'websocket', origin: 'http://localhost:8080', 'sec-websocket-version': '13', 'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Cypress/3.3.1 Chrome/61.0.3163.100 Electron/2.0.18 Safari/537.36', 'accept-encoding': 'gzip, deflate', 'accept-language': 'en-US', 'sec-websocket-key': 'y+VXP+uivxLSqy9PiQRb1Q==', 'sec-websocket-extensions': 'permessage-deflate; client_max_window_bits' }, options: { auth: null, failOnStatusCode: true, retryOnNetworkFailure: true, retryOnStatusCodeFailure: false, method: 'GET', body: null, headers: {}, timeout: 30000 } } +117ms
  cypress:server:server Getting remote state: { auth: null, props: { port: '8080', tld: 'localhost', domain: '' }, origin: 'http://localhost:8080', strategy: 'http', visiting: false, domainName: 'localhost', fileServer: null } +1ms
  cypress:server:server got previous request buffer for url: http://localhost:8080/commands/files +0ms
  cypress:server:request setting request jar cookies [] +1s
  cypress:server:server Getting remote state: { auth: null, props: { port: '8080', tld: 'localhost', domain: '' }, origin: 'http://localhost:8080', strategy: 'http', visiting: false, domainName: 'localhost', fileServer: null } +5ms
  cypress:server:proxy handling proxied request { url: '/commands/files', proxiedUrl: 'http://localhost:8080/commands/files', headers: { host: 'localhost:8080', 'proxy-connection': 'keep-alive', 'upgrade-insecure-requests': '1', 'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Cypress/3.3.1 Chrome/61.0.3163.100 Electron/2.0.18 Safari/537.36', accept: 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8', referer: 'http://localhost:8080/__/', 'accept-encoding': 'gzip, deflate', 'accept-language': 'en-US', cookie: '__cypress.initial=true' }, remoteState: { auth: null, props: { port: '8080', tld: 'localhost', domain: '' }, origin: 'http://localhost:8080', strategy: 'http', visiting: false, domainName: 'localhost', fileServer: null } } +0ms
  cypress:server:buffers found request buffer { buffer: { url: 'http://localhost:8080/commands/files', originalUrl: 'http://localhost:8080/commands/files' }, bufferCount: 0 } +3s
  cypress:server:proxy received response for { url: 'http://localhost:8080/commands/files', headers: { 'last-modified': 'Tue, 28 May 2019 05:51:51 GMT', 'content-length': '8004', 'content-disposition': 'inline; filename="files.html"', 'accept-ranges': 'bytes', 'content-type': 'text/html; charset=utf-8', 'cache-control': 'no-cache', vary: 'Accept-Encoding', date: 'Mon, 03 Jun 2019 07:21:19 GMT', connection: 'keep-alive' }, statusCode: 200, isGzipped: undefined, wantsInjection: 'full', wantsSecurityRemoved: true } +2ms
  cypress:server:server Getting remote state: { auth: null, props: { port: '8080', tld: 'localhost', domain: '' }, origin: 'http://localhost:8080', strategy: 'http', visiting: false, domainName: 'localhost', fileServer: null } +9ms
  cypress:server:proxy handling proxied request { url: '/assets/css/vendor/bootstrap.min.css', proxiedUrl: 'http://localhost:8080/assets/css/vendor/bootstrap.min.css', headers: { host: 'localhost:8080', 'proxy-connection': 'keep-alive', 'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Cypress/3.3.1 Chrome/61.0.3163.100 Electron/2.0.18 Safari/537.36', accept: 'text/css,*/*;q=0.1', referer: 'http://localhost:8080/commands/files', 'accept-encoding': 'gzip, deflate', 'accept-language': 'en-US' }, remoteState: { auth: null, props: { port: '8080', tld: 'localhost', domain: '' }, origin: 'http://localhost:8080', strategy: 'http', visiting: false, domainName: 'localhost', fileServer: null } } +7ms
  cypress:network:agent addRequest called for http://localhost:8080/assets/css/vendor/bootstrap.min.css +1s
  cypress:server:stream_buffer stream buffer writeable final called +0ms
  cypress:server:server Getting remote state: { auth: null, props: { port: '8080', tld: 'localhost', domain: '' }, origin: 'http://localhost:8080', strategy: 'http', visiting: false, domainName: 'localhost', fileServer: null } +5ms
  cypress:server:proxy handling proxied request { url: '/assets/css/vendor/fira.css', proxiedUrl: 'http://localhost:8080/assets/css/vendor/fira.css', headers: { host: 'localhost:8080', 'proxy-connection': 'keep-alive', 'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Cypress/3.3.1 Chrome/61.0.3163.100 Electron/2.0.18 Safari/537.36', accept: 'text/css,*/*;q=0.1', referer: 'http://localhost:8080/commands/files', 'accept-encoding': 'gzip, deflate', 'accept-language': 'en-US' }, remoteState: { auth: null, props: { port: '8080', tld: 'localhost', domain: '' }, origin: 'http://localhost:8080', strategy: 'http', visiting: false, domainName: 'localhost', fileServer: null } } +6ms
  cypress:network:agent addRequest called for http://localhost:8080/assets/css/vendor/fira.css +4ms
  cypress:server:stream_buffer stream buffer writeable final called +3ms
  cypress:server:request received status code on request { requestId: 'request3', statusCode: 200 } +21ms
  cypress:server:request successful response received { requestId: 'request3' } +1ms
  cypress:server:proxy received response for { url: 'http://localhost:8080/assets/css/vendor/bootstrap.min.css', headers: { 'last-modified': 'Tue, 28 May 2019 05:51:51 GMT', 'content-disposition': 'inline; filename="bootstrap.min.css"', 'accept-ranges': 'bytes', 'content-type': 'text/css; charset=utf-8', 'cache-control': 'no-cache', vary: 'Accept-Encoding', 'content-encoding': 'gzip', date: 'Mon, 03 Jun 2019 07:21:20 GMT', connection: 'keep-alive', 'transfer-encoding': 'chunked' }, statusCode: 200, isGzipped: true, wantsInjection: false, wantsSecurityRemoved: false } +2ms
  cypress:server:server Getting remote state: { auth: null, props: { port: '8080', tld: 'localhost', domain: '' }, origin: 'http://localhost:8080', strategy: 'http', visiting: false, domainName: 'localhost', fileServer: null } +4ms
  cypress:server:proxy handling proxied request { url: '/assets/css/styles.css', proxiedUrl: 'http://localhost:8080/assets/css/styles.css', headers: { host: 'localhost:8080', 'proxy-connection': 'keep-alive', 'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Cypress/3.3.1 Chrome/61.0.3163.100 Electron/2.0.18 Safari/537.36', accept: 'text/css,*/*;q=0.1', referer: 'http://localhost:8080/commands/files', 'accept-encoding': 'gzip, deflate', 'accept-language': 'en-US' }, remoteState: { auth: null, props: { port: '8080', tld: 'localhost', domain: '' }, origin: 'http://localhost:8080', strategy: 'http', visiting: false, domainName: 'localhost', fileServer: null } } +1ms
  cypress:network:agent addRequest called for http://localhost:8080/assets/css/styles.css +3ms
  cypress:server:stream_buffer stream buffer writeable final called +3ms
  cypress:server:server Getting remote state: { auth: null, props: { port: '8080', tld: 'localhost', domain: '' }, origin: 'http://localhost:8080', strategy: 'http', visiting: false, domainName: 'localhost', fileServer: null } +2ms
  cypress:server:proxy handling proxied request { url: '/assets/js/vendor/jquery-1.12.0.min.js', proxiedUrl: 'http://localhost:8080/assets/js/vendor/jquery-1.12.0.min.js', headers: { host: 'localhost:8080', 'proxy-connection': 'keep-alive', 'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Cypress/3.3.1 Chrome/61.0.3163.100 Electron/2.0.18 Safari/537.36', accept: '*/*', referer: 'http://localhost:8080/commands/files', 'accept-encoding': 'gzip, deflate', 'accept-language': 'en-US' }, remoteState: { auth: null, props: { port: '8080', tld: 'localhost', domain: '' }, origin: 'http://localhost:8080', strategy: 'http', visiting: false, domainName: 'localhost', fileServer: null } } +2ms
  cypress:network:agent addRequest called for http://localhost:8080/assets/js/vendor/jquery-1.12.0.min.js +2ms
  cypress:server:stream_buffer stream buffer writeable final called +2ms
  cypress:server:server Getting remote state: { auth: null, props: { port: '8080', tld: 'localhost', domain: '' }, origin: 'http://localhost:8080', strategy: 'http', visiting: false, domainName: 'localhost', fileServer: null } +1ms
  cypress:server:proxy handling proxied request { url: '/assets/js/vendor/bootstrap.min.js', proxiedUrl: 'http://localhost:8080/assets/js/vendor/bootstrap.min.js', headers: { host: 'localhost:8080', 'proxy-connection': 'keep-alive', 'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Cypress/3.3.1 Chrome/61.0.3163.100 Electron/2.0.18 Safari/537.36', accept: '*/*', referer: 'http://localhost:8080/commands/files', 'accept-encoding': 'gzip, deflate', 'accept-language': 'en-US' }, remoteState: { auth: null, props: { port: '8080', tld: 'localhost', domain: '' }, origin: 'http://localhost:8080', strategy: 'http', visiting: false, domainName: 'localhost', fileServer: null } } +1ms
  cypress:network:agent addRequest called for http://localhost:8080/assets/js/vendor/bootstrap.min.js +1ms
  cypress:server:stream_buffer stream buffer writeable final called +2ms
  cypress:server:server Getting remote state: { auth: null, props: { port: '8080', tld: 'localhost', domain: '' }, origin: 'http://localhost:8080', strategy: 'http', visiting: false, domainName: 'localhost', fileServer: null } +2ms
  cypress:server:proxy handling proxied request { url: '/assets/js/vendor/highlight.pack.js', proxiedUrl: 'http://localhost:8080/assets/js/vendor/highlight.pack.js', headers: { host: 'localhost:8080', 'proxy-connection': 'keep-alive', 'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Cypress/3.3.1 Chrome/61.0.3163.100 Electron/2.0.18 Safari/537.36', accept: '*/*', referer: 'http://localhost:8080/commands/files', 'accept-encoding': 'gzip, deflate', 'accept-language': 'en-US' }, remoteState: { auth: null, props: { port: '8080', tld: 'localhost', domain: '' }, origin: 'http://localhost:8080', strategy: 'http', visiting: false, domainName: 'localhost', fileServer: null } } +2ms
  cypress:network:agent addRequest called for http://localhost:8080/assets/js/vendor/highlight.pack.js +4ms
  cypress:server:stream_buffer stream buffer writeable final called +4ms
  cypress:server:server Getting remote state: { auth: null, props: { port: '8080', tld: 'localhost', domain: '' }, origin: 'http://localhost:8080', strategy: 'http', visiting: false, domainName: 'localhost', fileServer: null } +6ms
  cypress:server:proxy handling proxied request { url: '/assets/js/scripts.js', proxiedUrl: 'http://localhost:8080/assets/js/scripts.js', headers: { host: 'localhost:8080', 'proxy-connection': 'keep-alive', 'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Cypress/3.3.1 Chrome/61.0.3163.100 Electron/2.0.18 Safari/537.36', accept: '*/*', referer: 'http://localhost:8080/commands/files', 'accept-encoding': 'gzip, deflate', 'accept-language': 'en-US' }, remoteState: { auth: null, props: { port: '8080', tld: 'localhost', domain: '' }, origin: 'http://localhost:8080', strategy: 'http', visiting: false, domainName: 'localhost', fileServer: null } } +6ms
  cypress:network:agent addRequest called for http://localhost:8080/assets/js/scripts.js +4ms
  cypress:server:stream_buffer stream buffer writeable final called +4ms
  cypress:server:request received status code on request { requestId: 'request4', statusCode: 200 } +15ms
  cypress:server:request successful response received { requestId: 'request4' } +0ms
  cypress:server:proxy received response for { url: 'http://localhost:8080/assets/css/vendor/fira.css', headers: { 'last-modified': 'Tue, 28 May 2019 05:51:51 GMT', 'content-length': '809', 'content-disposition': 'inline; filename="fira.css"', 'accept-ranges': 'bytes', 'content-type': 'text/css; charset=utf-8', 'cache-control': 'no-cache', vary: 'Accept-Encoding', date: 'Mon, 03 Jun 2019 07:21:20 GMT', connection: 'keep-alive' }, statusCode: 200, isGzipped: undefined, wantsInjection: false, wantsSecurityRemoved: false } +3ms
  cypress:server:request received status code on request { requestId: 'request5', statusCode: 200 } +2ms
  cypress:server:request successful response received { requestId: 'request5' } +0ms
  cypress:server:proxy received response for { url: 'http://localhost:8080/assets/css/styles.css', headers: { 'last-modified': 'Tue, 28 May 2019 05:51:51 GMT', 'content-disposition': 'inline; filename="styles.css"', 'accept-ranges': 'bytes', 'content-type': 'text/css; charset=utf-8', 'cache-control': 'no-cache', vary: 'Accept-Encoding', 'content-encoding': 'gzip', date: 'Mon, 03 Jun 2019 07:21:20 GMT', connection: 'keep-alive', 'transfer-encoding': 'chunked' }, statusCode: 200, isGzipped: true, wantsInjection: false, wantsSecurityRemoved: false } +2ms
  cypress:server:request received status code on request { requestId: 'request7', statusCode: 200 } +8ms
  cypress:server:request successful response received { requestId: 'request7' } +0ms
  cypress:server:proxy received response for { url: 'http://localhost:8080/assets/js/vendor/bootstrap.min.js', headers: { 'last-modified': 'Tue, 28 May 2019 05:51:51 GMT', 'content-disposition': 'inline; filename="bootstrap.min.js"', 'accept-ranges': 'bytes', 'content-type': 'application/javascript; charset=utf-8', 'cache-control': 'no-cache', vary: 'Accept-Encoding', 'content-encoding': 'gzip', date: 'Mon, 03 Jun 2019 07:21:20 GMT', connection: 'keep-alive', 'transfer-encoding': 'chunked' }, statusCode: 200, isGzipped: true, wantsInjection: false, wantsSecurityRemoved: true } +8ms
  cypress:server:request received status code on request { requestId: 'request9', statusCode: 200 } +3ms
  cypress:server:request successful response received { requestId: 'request9' } +0ms
  cypress:server:proxy received response for { url: 'http://localhost:8080/assets/js/scripts.js', headers: { 'last-modified': 'Tue, 28 May 2019 05:51:51 GMT', 'content-disposition': 'inline; filename="scripts.js"', 'accept-ranges': 'bytes', 'content-type': 'application/javascript; charset=utf-8', 'cache-control': 'no-cache', vary: 'Accept-Encoding', 'content-encoding': 'gzip', date: 'Mon, 03 Jun 2019 07:21:20 GMT', connection: 'keep-alive', 'transfer-encoding': 'chunked' }, statusCode: 200, isGzipped: true, wantsInjection: false, wantsSecurityRemoved: true } +3ms
  cypress:server:request received status code on request { requestId: 'request8', statusCode: 200 } +1ms
  cypress:server:request successful response received { requestId: 'request8' } +1ms
  cypress:server:proxy received response for { url: 'http://localhost:8080/assets/js/vendor/highlight.pack.js', headers: { 'last-modified': 'Tue, 28 May 2019 05:51:51 GMT', 'content-disposition': 'inline; filename="highlight.pack.js"', 'accept-ranges': 'bytes', 'content-type': 'application/javascript; charset=utf-8', 'cache-control': 'no-cache', vary: 'Accept-Encoding', 'content-encoding': 'gzip', date: 'Mon, 03 Jun 2019 07:21:20 GMT', connection: 'keep-alive', 'transfer-encoding': 'chunked' }, statusCode: 200, isGzipped: true, wantsInjection: false, wantsSecurityRemoved: true } +2ms
  cypress:server:request received status code on request { requestId: 'request6', statusCode: 200 } +1ms
  cypress:server:request successful response received { requestId: 'request6' } +0ms
  cypress:server:proxy received response for { url: 'http://localhost:8080/assets/js/vendor/jquery-1.12.0.min.js', headers: { 'last-modified': 'Tue, 28 May 2019 05:51:51 GMT', 'content-disposition': 'inline; filename="jquery-1.12.0.min.js"', 'accept-ranges': 'bytes', 'content-type': 'application/javascript; charset=utf-8', 'cache-control': 'no-cache', vary: 'Accept-Encoding', 'content-encoding': 'gzip', date: 'Mon, 03 Jun 2019 07:21:20 GMT', connection: 'keep-alive', 'transfer-encoding': 'chunked' }, statusCode: 200, isGzipped: true, wantsInjection: false, wantsSecurityRemoved: true } +1ms
  cypress:server:server Getting remote state: { auth: null, props: { port: '8080', tld: 'localhost', domain: '' }, origin: 'http://localhost:8080', strategy: 'http', visiting: false, domainName: 'localhost', fileServer: null } +53ms
  cypress:server:proxy handling proxied request { url: '/assets/fonts/woff/FiraSans-Regular.woff', proxiedUrl: 'http://localhost:8080/assets/fonts/woff/FiraSans-Regular.woff', headers: { host: 'localhost:8080', 'proxy-connection': 'keep-alive', origin: 'http://localhost:8080', 'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Cypress/3.3.1 Chrome/61.0.3163.100 Electron/2.0.18 Safari/537.36', accept: '*/*', referer: 'http://localhost:8080/assets/css/vendor/fira.css', 'accept-encoding': 'gzip, deflate', 'accept-language': 'en-US' }, remoteState: { auth: null, props: { port: '8080', tld: 'localhost', domain: '' }, origin: 'http://localhost:8080', strategy: 'http', visiting: false, domainName: 'localhost', fileServer: null } } +34ms
  cypress:network:agent addRequest called for http://localhost:8080/assets/fonts/woff/FiraSans-Regular.woff +53ms
  cypress:server:stream_buffer stream buffer writeable final called +53ms
  cypress:server:server Getting remote state: { auth: null, props: { port: '8080', tld: 'localhost', domain: '' }, origin: 'http://localhost:8080', strategy: 'http', visiting: false, domainName: 'localhost', fileServer: null } +2ms
  cypress:server:proxy handling proxied request { url: '/assets/fonts/woff/FiraSans-Medium.woff', proxiedUrl: 'http://localhost:8080/assets/fonts/woff/FiraSans-Medium.woff', headers: { host: 'localhost:8080', 'proxy-connection': 'keep-alive', origin: 'http://localhost:8080', 'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Cypress/3.3.1 Chrome/61.0.3163.100 Electron/2.0.18 Safari/537.36', accept: '*/*', referer: 'http://localhost:8080/assets/css/vendor/fira.css', 'accept-encoding': 'gzip, deflate', 'accept-language': 'en-US' }, remoteState: { auth: null, props: { port: '8080', tld: 'localhost', domain: '' }, origin: 'http://localhost:8080', strategy: 'http', visiting: false, domainName: 'localhost', fileServer: null } } +3ms
  cypress:network:agent addRequest called for http://localhost:8080/assets/fonts/woff/FiraSans-Medium.woff +3ms
  cypress:server:stream_buffer stream buffer writeable final called +2ms
  cypress:server:request received status code on request { requestId: 'request10', statusCode: 200 } +38ms
  cypress:server:request successful response received { requestId: 'request10' } +0ms
  cypress:server:proxy received response for { url: 'http://localhost:8080/assets/fonts/woff/FiraSans-Regular.woff', headers: { 'last-modified': 'Tue, 28 May 2019 05:51:51 GMT', 'content-length': '183268', 'content-disposition': 'inline; filename="FiraSans-Regular.woff"', 'accept-ranges': 'bytes', 'content-type': 'application/font-woff', 'cache-control': 'no-cache', date: 'Mon, 03 Jun 2019 07:21:20 GMT', connection: 'keep-alive' }, statusCode: 200, isGzipped: undefined, wantsInjection: false, wantsSecurityRemoved: false } +2ms
  cypress:server:request received status code on request { requestId: 'request11', statusCode: 200 } +2ms
  cypress:server:request successful response received { requestId: 'request11' } +1ms
  cypress:server:proxy received response for { url: 'http://localhost:8080/assets/fonts/woff/FiraSans-Medium.woff', headers: { 'last-modified': 'Tue, 28 May 2019 05:51:51 GMT', 'content-length': '186824', 'content-disposition': 'inline; filename="FiraSans-Medium.woff"', 'accept-ranges': 'bytes', 'content-type': 'application/font-woff', 'cache-control': 'no-cache', date: 'Mon, 03 Jun 2019 07:21:20 GMT', connection: 'keep-alive' }, statusCode: 200, isGzipped: undefined, wantsInjection: false, wantsSecurityRemoved: false } +2ms
  cypress:server:timers clearing timer id 34 from queue { '34': { args: [], ms: 85000, cb: [Function] } } +163ms
  cypress:server:timers queuing timer id 35 after 85000 ms +1ms
  cypress:server:project onMocha hook end +210ms
  cypress:server:timers child received timer id 35 +164ms
  cypress:server:reporter got mocha event 'hook end' with args: [ { id: 'r3', title: '"before each" hook', hookName: 'before each', hookId: 'h1', body: 'function () {\n    cy.visit(\'http://localhost:8080/commands/files\');\n  }', type: 'hook', duration: 208 } ] +210ms
  cypress:server:timers clearing timer id 35 from queue { '35': { args: [], ms: 85000, cb: [Function] } } +12ms
  cypress:server:timers queuing timer id 36 after 85000 ms +0ms
  cypress:server:project onMocha hook +13ms
  cypress:server:timers child received timer id 36 +13ms
  cypress:server:reporter got mocha event 'hook' with args: [ { id: 'r3', title: '"before each" hook', hookName: 'before each', hookId: 'h2', body: 'function () {\n    // load example.json fixture file and store\n    // in the test context object\n    cy.fixture(\'example.json\').as(\'example\');\n  }', type: 'hook' } ] +13ms
  cypress:server:timers clearing timer id 36 from queue { '36': { args: [], ms: 85000, cb: [Function] } } +1ms
  cypress:server:timers queuing timer id 37 after 85000 ms +1ms
  cypress:server:socket backend:request { eventName: 'get:fixture', args: [ 'example.json', {} ] } +178ms
  cypress:server:timers child received timer id 37 +1ms
  cypress:server:fixture fixture exact name exists /Users/jennifer/Dev/cypress-example-kitchensink/cypress/fixtures/example.json +0ms
  cypress:server:timers clearing timer id 37 from queue { '37': { args: [], ms: 85000, cb: [Function] } } +17ms
  cypress:server:timers queuing timer id 38 after 85000 ms +0ms
  cypress:server:project onMocha hook end +18ms
  cypress:server:timers child received timer id 38 +17ms
  cypress:server:reporter got mocha event 'hook end' with args: [ { id: 'r3', title: '"before each" hook', hookName: 'before each', hookId: 'h2', body: 'function () {\n    // load example.json fixture file and store\n    // in the test context object\n    cy.fixture(\'example.json\').as(\'example\');\n  }', type: 'hook', duration: 32 } ] +18ms
  cypress:server:timers clearing timer id 38 from queue { '38': { args: [], ms: 85000, cb: [Function] } } +21ms
  cypress:server:timers queuing timer id 39 after 85000 ms +0ms
  cypress:server:timers child received timer id 39 +21ms
  cypress:server:socket backend:request { eventName: 'http:request', args: [ { url: 'https://jsonplaceholder.cypress.io/users', method: 'GET', gzip: true, timeout: 30000, followRedirect: true, failOnStatusCode: true, retryOnNetworkFailure: true, retryOnStatusCodeFailure: false } ] } +38ms
  cypress:server:cookies getting:cookies { url: 'https://jsonplaceholder.cypress.io/users' } +239ms
  cypress:server:cookies received get:cookies [] +0ms
  cypress:network:agent addRequest called for https://jsonplaceholder.cypress.io/users +131ms
  cypress:server:timers queuing timer id 40 after 30000 ms +12ms
  cypress:server:timers child received timer id 40 +12ms
  cypress:server:timers clearing timer id 40 from queue { '39': { args: [], ms: 85000, cb: [Function] }, '40': { args: [], ms: 30000, cb: [Function] } } +1ms
  cypress:server:request received an error making http request { url: 'https://jsonplaceholder.cypress.io/users', method: 'GET', gzip: true, timeout: 30000, failOnStatusCode: true, retryOnNetworkFailure: true, retryOnStatusCodeFailure: false, headers: { 'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Cypress/3.3.1 Chrome/61.0.3163.100 Electron/2.0.18 Safari/537.36', accept: '*/*' }, cookies: true, simple: false, resolveWithFullResponse: true, followAllRedirects: true, requestId: 'request12', retryIntervals: [ 0, 1000, 2000, 2000 ], delaysRemaining: [ 0, 1000, 2000, 2000 ], err: { Error: getaddrinfo ENOTFOUND jsonplaceholder.cypress.io jsonplaceholder.cypress.io:443 at errnoException (dns.js:50:10) at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:92:26) code: 'ENOTFOUND', errno: 'ENOTFOUND', syscall: 'getaddrinfo', hostname: 'jsonplaceholder.cypress.io', host: 'jsonplaceholder.cypress.io', port: 443 } } +136ms
  cypress:server:file get values from /Users/jennifer/Library/Application Support/Cypress/cy/production/cache +0ms
  cypress:server:file attempt to get lock on /Users/jennifer/Library/Application Support/Cypress/cy/production/cache +0ms
  cypress:server:file gettin lock succeeded or failed for /Users/jennifer/Library/Application Support/Cypress/cy/production/cache +199ms
  cypress:server:file read /Users/jennifer/Library/Application Support/Cypress/cy/production/cache +0ms
  cypress:server:file read succeeded or failed for /Users/jennifer/Library/Application Support/Cypress/cy/production/cache +1ms
  cypress:server:file attempt to unlock /Users/jennifer/Library/Application Support/Cypress/cy/production/cache +0ms
  cypress:server:timers queuing timer id 41 after 2000 ms +277ms
  cypress:server:timers child received timer id 41 +278ms
  cypress:server:timers clearing timer id 41 from queue { '39': { args: [], ms: 85000, cb: [Function] }, '41': { args: [], ms: 2000, cb: [Function: timeoutTimeout] } } +1ms
  cypress:server:file unlock succeeded or failed for /Users/jennifer/Library/Application Support/Cypress/cy/production/cache +1ms
  cypress:server:api request to url: POST https://api.cypress.io/exceptions with params: {"body":{"err":{"name":"RangeError","message":"Maximum call stack size exceeded","stack":"RangeError: Maximum call stack size exceeded\n    at _hasBinary (<stripped-path>index.js:25:22)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49  cypress:server:timers child received timer id 42 +8ms
:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:RangeError: Maximum call stack size exceeded
    at _hasBinary (/Users/jennifer/Library/Caches/Cypress/3.3.1/Cypress.app/Contents/Resources/app/packages/socket/node_modules/has-binary/index.js:25:22)
--- like thousands of lines of this --
    at _hasBinary (/Users/jennifer/Library/Caches/Cypress/3.3.1/Cypress.app/Contents/Resources/app/packages/socket/node_modules/has-binary/index.js:49:63)
    at _hasBinary (/Users/jennifer/Library/Caches/Cypress/3.3.1/Cypress.app/Contents/Resources  cypress:server:timers child sending timer id 27 +168ms
/app/packages/socket/node_modules/has-binary/index.js:49:63)
    at _hasBinary (/Users/jennifer/Library/Caches/Cypress/3.3.1/Cypress.app/Contents/Resources/app/packages/socket/node_modules/has-binary/index.js:49:63)
--- like thousands of lines of this --
    at _hasBinary (/Users/jennifer/Library/Caches/Cypress/3.3.1/Cypress.app/Contents/Resources/app/packages/socket/node_modules/has-binary/index.js:49:63)
    at _hasBinary (/Users/jennifer/Library/Caches/Cypress/3.3.1/Cypress.app/Contents/Resources/app/packages/socket/node_modules/has-binary/index.js:38:15)
    at hasBinary (/Users/jennifer/Library/Caches/Cypress/3.3.1/Cypress.app/Contents/Resources/app/packages/socket/node_modules/has-binary/index.js:58:10)
    at /Users/jennifer/Library/Caches/Cypress/3.3.1/Cypress.app/Contents/Resources/app/packages/socket/node_modules/socket.io/lib/socket.js:369:16
    at /Users/jennifer/Library/Caches/Cypress/3.3.1/Cypress.app/Contents/Resources/app/packages/server/lib/socket.js:308:22
    at tryCatcher (/Users/jennifer/Library/Caches/Cypress/3.3.1/Cypress.app/Contents/Resources/app/packages/server/node_modules/bluebird/js/release/util.js:16:23)
    at Promise._settlePromiseFromHandler (/Users/jennifer/Library/Caches/Cypress/3.3.1/Cypress.app/Contents/Resources/app/packages/server/node_modules/bluebird/js/release/promise.js:510:31)
    at Promise._settlePromise (/Users/jennifer/Library/Caches/Cypress/3.3.1/Cypress.app/Contents/Resources/app/packages/server/node_modules/bluebird/js/release/promise.js:567:18)
    at Promise._settlePromise0 (/Users/jennifer/Library/Caches/Cypress/3.3.1/Cypress.app/Contents/Resources/app/packages/server/node_modules/bluebird/js/release/promise.js:612:10)
    at Promise._settlePromises (/Users/jennifer/Library/Caches/Cypress/3.3.1/Cypress.app/Contents/Resources/app/packages/server/node_modules/bluebird/js/release/promise.js:687:18)
    at Async._drainQueue (/Users/jennifer/Library/Caches/Cypress/3.3.1/Cypress.app/Contents/Resources/app/packages/server/node_modules/bluebird/js/release/async.js:133:16)
    at Async._drainQueues (/Users/jennifer/Library/Caches/Cypress/3.3.1/Cypress.app/Contents/Resources/app/packages/server/node_modules/bluebird/js/release/async.js:143:10)
    at Immediate.Async.drainQueues (/Users/jennifer/Library/Caches/Cypress/3.3.1/Cypress.app/Contents/Resources/app/packages/server/node_modules/bluebird/js/release/async.js:17:14)
    at runCallback (timers.js:789:20)
    at tryOnImmediate (timers.js:751:5)
    at processImmediate [as _immediateCallback] (timers.js:722:5)

RangeError: Maximum call stack size exceeded
    at _hasBinary (/Users/jennifer/Library/Caches/Cypress/3.3.1/Cypress.app/Contents/Resources/app/packages/socket/node_modules/has-binary/index.js:25:22)
    at _hasBinary (/Users/jennifer/Library/Caches/Cypress/3.3.1/Cypress.app/Contents/Resources/app/packages/socket/node_modules/has-binary/index.js:49:63)
--- like thousands of lines of this --
    at _hasBinary (/Users/jennifer/Library/Caches/Cypress/3.3.1/Cypress.app/Contents/Resources/app/packages/socket/node_modules/has-binary/index.js:49:63)
    at _hasBinary (/Users/jennifer/Library/Caches/Cypress/3.3.1/Cypress.app/Contents/Resources/app/packages/socket/node_modules/has-binary/index.js:38:15)
    at hasBinary (/Users/jennifer/Library/Caches/Cypress/3.3.1/Cypress.app/Contents/Resources/app/packages/socket/node_modules/has-binary/index.js:58:10)
    at /Users/jennifer/Library/Caches/Cypress/3.3.1/Cypress.app/Contents/Resources/app/packages/socket/node_modules/socket.io/lib/socket.js:369:16
    at /Users/jennifer/Library/Caches/Cypress/3.3.1/Cypress.app/Contents/Resources/app/packages/server/lib/socket.js:308:22
    at tryCatcher (/Users/jennifer/Library/Caches/Cypress/3.3.1/Cypress.app/Contents/Resources/app/packages/server/node_modules/bluebird/js/release/util.js:16:23)
    at Promise._settlePromiseFromHandler (/Users/jennifer/Library/Caches/Cypress/3.3.1/Cypress.app/Contents/Resources/app/packages/server/node_modules/bluebird/js/release/promise.js:510:31)
    at Promise._settlePromise (/Users/jennifer/Library/Caches/Cypress/3.3.1/Cypress.app/Contents/Resources/app/packages/server/node_modules/bluebird/js/release/promise.js:567:18)
    at Promise._settlePromise0 (/Users/jennifer/Library/Caches/Cypress/3.3.1/Cypress.app/Contents/Resources/app/packages/server/node_modules/bluebird/js/release/promise.js:612:10)
    at Promise._settlePromises (/Users/jennifer/Library/Caches/Cypress/3.3.1/Cypress.app/Contents/Resources/app/packages/server/node_modules/bluebird/js/release/promise.js:687:18)
    at Async._drainQueue (/Users/jennifer/Library/Caches/Cypress/3.3.1/Cypress.app/Contents/Resources/app/packages/server/node_modules/bluebird/js/release/async.js:133:16)
    at Async._drainQueues (/Users/jennifer/Library/Caches/Cypress/3.3.1/Cypress.app/Contents/Resources/app/packages/server/node_modules/bluebird/js/release/async.js:143:10)
    at Immediate.Async.drainQueues (/Users/jennifer/Library/Caches/Cypress/3.3.1/Cypress.app/Contents/Resources/app/packages/server/node_modules/bluebird/js/release/async.js:17:14)
    at runCallback (timers.js:789:20)
    at tryOnImmediate (timers.js:751:5)
    at processImmediate [as _immediateCallback] (timers.js:722:5)

63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.js:49:63)\n    at _hasBinary (<stripped-path>index.%

@flotwig flotwig self-assigned this Jun 6, 2019

@flotwig

This comment has been minimized.

Copy link
Member

commented Jun 6, 2019

We were getting this error too while working on the 3.3.0 network changes, but thought it was isolated. I guess it makes sense to break the circular references in the errors sent over socket.io to fix this.

@JohnnyFun

This comment has been minimized.

Copy link

commented Jun 6, 2019

if it's any help, I started seeing this error after updating cypress from 3.2.0 to 3.3.1. Rolled back to 3.2.0 for now...

@flotwig

This comment has been minimized.

Copy link
Member

commented Jun 6, 2019

@JohnnyFun Do you happen to have any test code that can reliably cause this error?

@JohnnyFun

This comment has been minimized.

Copy link

commented Jun 6, 2019

Yeah, I have a test that sends a cy.request to a test saml sso server (my app server starts a node server on startup on a different port). If the test sso server is not running for some reason. I get a big stack trace and cypress shuts down:

> npm run cypress-open
> cypress open
�[0mGET /__/ �[32m200 �[0m10.615 ms - -�[0m
�[0mGET /__cypress/runner/cypress_runner.css �[32m200 �[0m2.437 ms - -�[0m
�[0mGET /__cypress/runner/cypress_runner.js �[32m200 �[0m2.403 ms - -�[0m
�[0mGET /__cypress/runner/fonts/fontawesome-webfont.woff2?v=4.7.0 �[32m200 �[0m2.529 ms - 77160�[0m
�[0mGET /__cypress/iframes/integration/end-to-end-tests/sso.spec.js �[32m200 �[0m7.092 ms - 746�[0m
�[0mGET /__cypress/tests?p=cypress%5Ctests%5Cend-to-end-tests%5Csso.spec.js-501 �[0m- �[0m- ms - -�[0m
�[0mGET /__cypress/tests?p=cypress%5Csupport%5Cindex.js-668 �[0m- �[0m- ms - -�[0m
�[0mGET /__cypress/iframes/integration/end-to-end-tests/sso.spec.js �[32m200 �[0m2.516 ms - 746�[0m
�[0mGET /__cypress/tests?p=cypress%5Csupport%5Cindex.js-852 �[32m200 �[0m307.096 ms - -�[0m
�[0mGET /__cypress/tests?p=cypress%5Ctests%5Cend-to-end-tests%5Csso.spec.js-606 �[0m- �[0m- ms - -�[0m
�[0mGET /__cypress/iframes/integration/end-to-end-tests/sso.spec.js �[32m200 �[0m2.992 ms - 746�[0m
�[0mGET /__cypress/tests?p=cypress%5Csupport%5Cindex.js-391 �[32m200 �[0m9.093 ms - -�[0m
�[0mGET /__cypress/tests?p=cypress%5Ctests%5Cend-to-end-tests%5Csso.spec.js-361 �[32m200 �[0m17.180 ms - -�[0m
RangeError: Maximum call stack size exceeded
    at TCP.get [as reading] (_tls_wrap.js:395:22)
    at _hasBinary (C:\Users\john\AppData\Local\Cypress\Cache\3.3.1\Cypress\resources\app\packages\socket\node_modules\has-binary\index.js:49:77)
    at _hasBinary (C:\Users\john\AppData\Local\Cypress\Cache\3.3.1\Cypress\resources\app\packages\socket\node_modules\has-binary\index.js:49:63)
    at _hasBinary (C:\Users\john\AppData\Local\Cypress\Cache\3.3.1\Cypress\resources\app\packages\socket\node_modules\has-binary\index.js:49:63)
    at _hasBinary (C:\Users\john\AppData\Local\Cypress\Cache\3.3.1\Cypress\resources\app\packages\socket\node_modules\has-binary\index.js:49:63)
    ... MANY HITS TO LINE 63...
    at _hasBinary (C:\Users\john\AppData\Local\Cypress\Cache\3.3.1\Cypress\resources\app\packages\socket\node_modules\has-binary\index.js:38:15)
    at hasBinary (C:\Users\john\AppData\Local\Cypress\Cache\3.3.1\Cypress\resources\app\packages\socket\node_modules\has-binary\index.js:58:10)
    at C:\Users\john\AppData\Local\Cypress\Cache\3.3.1\Cypress\resources\app\packages\socket\node_modules\socket.io\lib\socket.js:369:16
    at C:\Users\john\AppData\Local\Cypress\Cache\3.3.1\Cypress\resources\app\packages\server\lib\socket.js:308:22
    at tryCatcher (C:\Users\john\AppData\Local\Cypress\Cache\3.3.1\Cypress\resources\app\packages\server\node_modules\bluebird\js\release\util.js:16:23)
    at Promise._settlePromiseFromHandler (C:\Users\john\AppData\Local\Cypress\Cache\3.3.1\Cypress\resources\app\packages\server\node_modules\bluebird\js\release\promise.js:510:31)
    at Promise._settlePromise (C:\Users\john\AppData\Local\Cypress\Cache\3.3.1\Cypress\resources\app\packages\server\node_modules\bluebird\js\release\promise.js:567:18)
    at Promise._settlePromise0 (C:\Users\john\AppData\Local\Cypress\Cache\3.3.1\Cypress\resources\app\packages\server\node_modules\bluebird\js\release\promise.js:612:10)
    at Promise._settlePromises (C:\Users\john\AppData\Local\Cypress\Cache\3.3.1\Cypress\resources\app\packages\server\node_modules\bluebird\js\release\promise.js:687:18)
    at Async._drainQueue (C:\Users\john\AppData\Local\Cypress\Cache\3.3.1\Cypress\resources\app\packages\server\node_modules\bluebird\js\release\async.js:133:16)
    at Async._drainQueues (C:\Users\john\AppData\Local\Cypress\Cache\3.3.1\Cypress\resources\app\packages\server\node_modules\bluebird\js\release\async.js:143:10)
    at Immediate.Async.drainQueues (C:\Users\john\AppData\Local\Cypress\Cache\3.3.1\Cypress\resources\app\packages\server\node_modules\bluebird\js\release\async.js:17:14)
    at runCallback (timers.js:789:20)
    at tryOnImmediate (timers.js:751:5)
    at processImmediate [as _immediateCallback] (timers.js:722:5)

I'll look into why my server didn't start to maybe get more info for you as to how it can pop up.

@JohnnyFun

This comment has been minimized.

Copy link

commented Jun 6, 2019

Yeah, it consistently happens, if I make my test hit the wrong port, for instance. So seems like maybe cy.request simply needs to handle when the server is down a bit better?

I ran same deliberately-broken test with version 3.2.0 and got a super detailed nice error message:
image

@JohnnyFun

This comment has been minimized.

Copy link

commented Jun 6, 2019

Oh and here's my cy.request call, if you need it:

return cy.request({
	method: 'POST',
	url: 'http://localhost:3000/signin', // local test IdP running on port 3000 (I used a nodejs test SAML server a nice fella made: https://github.com/mcguinness/saml-idp)
	form: true,
	body: {
		userName: 'samljackson',
		displayName: 'Saml Jackson',
		email: 'saml.jackson@snakes.com',
		_authnRequest
	}
})
@flotwig

This comment has been minimized.

Copy link
Member

commented Jun 6, 2019

@JohnnyFun Interesting, is there a circular reference in your _authnRequest? This works for me fine, I get the expected ECONNREFUSED:

cy.request({
  method: "POST",
  url: "http://0.0.0.0/",
  form: true,
  body: {
    username: "test"
  }
})

But when I add a circular reference to the body, it immediately stops working:

let c = {}
c.c = c

cy.request({
  method: "POST",
  url: "http://0.0.0.0/",
  form: true,
  body: {
    username: "test",
    c
  }
})

It looks like there's two situations where a maximum call stack exceeded can be thrown by socket.io:

  • in the server, when responding with an error that contains a circular reference
  • in the runner, when sending a body that contains a circular reference

I think we should just switch to using a custom socket.io parser that supports circular JSON, instead of trying to check every place where a message is sent to prevent circular references.


EDIT: Okay, in addition to allowing circular bodies to be sent over socket.io, the PR will also prevent users from sending circular bodies with requests because that's never going to make sense:
image

@JohnnyFun

This comment has been minimized.

Copy link

commented Jun 10, 2019

Circular ref shouldn't be the issue in my case. Those "_authnRequest" are just base64 encoded string values For example: "eyJyZWxheVN0YXRlIjoiV2s2LVN2Rm5reDNDdGJxTmZjNk4wR2VXIiwiaWQiOiJpZDgyYjVmODE3MmZlNTQ4ZGI4YWFjNGY3Y2FkMzAxOGJhIiwiaXNzdWVyIjoiaHR0cHM6Ly9sb2NhbGhvc3Q6NDQzMDAiLCJkZXN0aW5hdGlvbiI6Imh0dHA6Ly9sb2NhbGhvc3Q6MzAwMC9zYW1sL3NzbyIsImFjc1VybCI6Imh0dHBzOi8vbG9jYWxob3N0OjQ0MzAwL3NhbWwyL2hjYS9BY3MiLCJmb3JjZUF1dGhuIjpmYWxzZX0=".

@JohnnyFun

This comment has been minimized.

Copy link

commented Jun 10, 2019

I narrowed it further. Seems to happen if the failing call is inside another cy.request call like:

it.only('simple test', () => {
	return cy.request('https://google.com').then(xhr => {
		return cy.request('http://localhost:3001') // don't have a server running at this endpoint...
	})
})
@rasmusvhansen

This comment has been minimized.

Copy link

commented Jun 13, 2019

I am getting the error consistently at the moment. I tried doing console.log in has-binary and this is what I got:

{ response: [] }
{ error: 
   { name: 'RequestError',
     stack: 'RequestError: Error: ESOCKETTIMEDOUT\n    at new RequestError (C:\\Users\\xxxx\\AppData\\Local\\Cypress\\Cache\\3.3.1\\Cypress\\resources\\app\\packages\\server\\node_modules\\request-promise-core\\lib\\errors.js:14:15)\n    at Request.plumbing.callback (C:\\Users\\xxxx\\AppData\\Local\\Cypress\\Cache\\3.3.1\\Cypress\\resources\\app\\packages\\server\\node_modules\\request-promise-core\\lib\\plumbing.js:87:29)\n    at Request.RP$callback [as _callback] (C:\\Users\\xxxx\\AppData\\Local\\Cypress\\Cache\\3.3.1\\Cypress\\resources\\app\\packages\\server\\node_modules\\request-promise-core\\lib\\plumbing.js:46:31)\n    at self.callback (C:\\Users\\xxxx\\AppData\\Local\\Cypress\\Cache\\3.3.1\\Cypress\\resources\\app\\packages\\server\\node_modules\\request\\request.js:185:22)\n    at emitOne (events.js:116:13)\n    at Request.emit (events.js:211:7)\n    at ClientRequest.<anonymous> (C:\\Users\\xxxx\\AppData\\Local\\Cypress\\Cache\\3.3.1\\Cypress\\resources\\app\\packages\\server\\node_modules\\request\\request.js:819:16)\n    at Object.onceWrapper (events.js:313:30)\n    at emitNone (events.js:106:13)\n    at ClientRequest.emit (events.js:208:7)\n    at Socket.emitTimeout (_http_client.js:708:34)\n    at Object.onceWrapper (events.js:313:30)\n    at emitNone (events.js:106:13)\n    at Socket.emit (events.js:208:7)\n    at Socket._onTimeout (net.js:407:8)\n    at ontimeout (timers.js:475:11)\n    at tryOnTimeout (timers.js:310:5)\n    at Timer.listOnTimeout (timers.js:270:5)\n',
     message: 'Error: ESOCKETTIMEDOUT',
     cause: { Error: ESOCKETTIMEDOUT
    at ClientRequest.<anonymous> (C:\Users\xxxx\AppData\Local\Cypress\Cache\3.3.1\Cypress\resources\app\packages\server\node_modules\request\request.js:816:19)
    at Object.onceWrapper (events.js:313:30)
    at emitNone (events.js:106:13)
    at ClientRequest.emit (events.js:208:7)
    at Socket.emitTimeout (_http_client.js:708:34)
    at Object.onceWrapper (events.js:313:30)
    at emitNone (events.js:106:13)
    at Socket.emit (events.js:208:7)
    at Socket._onTimeout (net.js:407:8)
    at ontimeout (timers.js:475:11)
    at tryOnTimeout (timers.js:310:5)
    at Timer.listOnTimeout (timers.js:270:5)
	
	... 2,500,000 lines more

So apparently, a HUGE error object (probably the request object is referenced, which might reference the socket) is passed to has_binary.

Hope this helps

@cypress-bot

This comment has been minimized.

Copy link

commented Jun 13, 2019

The code for this is done in cypress-io/cypress#4407, but has yet to be released.
We'll update this issue and reference the changelog when it's released.

@JohnnyFun

This comment has been minimized.

Copy link

commented Jun 13, 2019

@flotwig not sure if you saw my narrowed example with the nested failing cy.request call. The issue I ran into isn't the circular json issue.

@flotwig

This comment has been minimized.

Copy link
Member

commented Jun 13, 2019

@JohnnyFun You're right, #4407 doesn't seem to fix that particular issue. Looking in to it.

@flotwig

This comment has been minimized.

Copy link
Member

commented Jun 14, 2019

Seems like nesting cy.requests where the internal one has an error will produce this error:

[ { error: 
     { name: 'RequestError',
       stack: 'RequestError: Error: connect ECONNREFUSED 127.0.0.1:3001\n    at new RequestError (/home/flotwig/Projects/cypress/cypress/packages/server/node_modules/request-promise-core/lib/errors.js:14:15)\n    at Request.plumbing.callback (/home/flotwig/Projects/cypress/cypress/packages/server/node_modules/request-promise-core/lib/plumbing.js:87:29)\n    at Request.RP$callback [as _callback] (/home/flotwig/Projects/cypress/cypress/packages/server/node_modules/request-promise-core/lib/plumbing.js:46:31)\n    at self.callback (/home/flotwig/Projects/cypress/cypress/packages/server/node_modules/request/request.js:185:22)\n    at emitOne (events.js:116:13)\n    at Request.emit (events.js:211:7)\n    at Request.onRequestError (/home/flotwig/Projects/cypress/cypress/packages/server/node_modules/request/request.js:881:8)\n    at emitOne (events.js:121:20)\n    at ClientRequest.emit (events.js:211:7)\n    at Socket.socketErrorListener (_http_client.js:387:9)\n    at emitOne (events.js:116:13)\n    at Socket.emit (events.js:211:7)\n    at emitErrorNT (internal/streams/destroy.js:64:8)\n    at _combinedTickCallback (internal/process/next_tick.js:138:11)\n    at process._tickCallback (internal/process/next_tick.js:180:9)\n',
       message: 'Error: connect ECONNREFUSED 127.0.0.1:3001',
       cause: [Object],
       error: [Object],
       options: [Object],
       response: undefined } } ]

...which contains a circular reference at [0].error.options.agent.httpAgent.constructor.super_ which is causing the socket to blow up.

@sikanhe

This comment has been minimized.

Copy link

commented Jun 14, 2019

I think any case of ECONNREFUSED should reproduce this

@flotwig

This comment has been minimized.

Copy link
Member

commented Jun 14, 2019

@sikanhe It doesn't for me, do you have spec code you can share to reproduce? I believe #4469 will fix this but the more the merrier :)

@cypress-bot

This comment has been minimized.

Copy link

commented Jun 17, 2019

The code for this is done in cypress-io/cypress#4469, but has yet to be released.
We'll update this issue and reference the changelog when it's released.

@garethleonard

This comment has been minimized.

Copy link

commented Jun 19, 2019

Do you have an ETA for release on #4469?

@cypress-bot

This comment has been minimized.

Copy link

commented Jun 27, 2019

Released in 3.3.2.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.