code: function _getBrowserParams() {
    let topWindow
    let topScreen
    let topUrl
    let ggad
    let ns
    function getNetworkSpeed () {
      const connection = window.navigator && (window.navigator.connection || window.navigator.mozConnection || window.navigator.webkitConnection)
      const Mbps = connection && (connection.downlink || connection.bandwidth)
      return Mbps ? Math.round(Mbps * 1024) : null // 1 megabit -> 1024 kilobits
    }
    function getOgURL () {
      let ogURL = ''
      const ogURLSelector = "meta[property='og:url']"
      const head = document && document.getElementsByTagName('head')[0]
      const ogURLElement = head.querySelector(ogURLSelector)
      ogURL = ogURLElement ? ogURLElement.content : null
      return ogURL
    }
    if (browserParams.vw) {
      // we've already initialized browserParams, just return it.
      return browserParams
    }
  
    try {
      topWindow = global.top;
      topScreen = topWindow.screen;
      topUrl = utils.getTopWindowUrl()
    } catch (error) {
      utils.logError(error);
      return browserParams
    }
  
    browserParams = {
      vw: topWindow.innerWidth,
      vh: topWindow.innerHeight,
      sw: topScreen.width,
      sh: topScreen.height,
      pu: topUrl,
      ce: utils.cookiesAreEnabled(),
      dpr: topWindow.devicePixelRatio || 1,
      jcsi: JSON.stringify({ t: 0, rq: 8 }),
      ogu: getOgURL()
    }
  
    ns = getNetworkSpeed()
    if (ns) {
      browserParams.ns = ns
    }
  
    ggad = (topUrl.match(/#ggad=(\w+)$/) || [0, 0])[1]
    if (ggad) {
      browserParams[isNaN(ggad) ? 'eAdBuyId' : 'adBuyId'] = ggad
    }
    return browserParams
  }
docs: TODO: potential 0 values for browserParams sent to ad server