https://speed.cloudflare.com/

Submitted URL:
https://speed.cloudflare.com/
Report Finished:

The outgoing links identified from the page

JavaScript Variables · 18 found

Global JavaScript variables loaded on the window object of a page, are variables declared outside of functions and accessible from anywhere in the code within the current scope

Console log messages · 3 found

Messages logged to the web console

HTML

The raw HTML body of the page

<!DOCTYPE html><html class=""><head><meta charset="utf-8"><meta name="viewport" content="width=device-width"><title>Internet Speed Test - Measure Network Performance | Cloudflare</title><meta name="next-head-count" content="3"><meta charset="utf-8"><link rel="icon" href="https://www.cloudflare.com/favicon.ico"><link rel="canonical" href="https://speed.cloudflare.com/"><meta name="description" content="Test your Internet connection. Check your network performance with our Internet speed test. Powered by Cloudflare's global edge network."><meta property="og:url" content="https://speed.cloudflare.com"><meta property="og:image" content="https://speed.cloudflare.com/static/img/card5.png"><meta property="og:type" content="website"><meta property="og:title" content="Internet Speed Test - Measure Network Performance | Cloudflare"><meta property="og:description" content="Test your Internet connection. Check your network performance with our Internet speed test. Powered by Cloudflare's global edge network."><meta property="twitter:site" content="cloudflare"><meta property="twitter:card" content="summary_large_image"><meta property="twitter:image" content="https://speed.cloudflare.com/static/img/card5.png"><meta property="twitter:title" content="Internet Speed Test - Measure Network Performance | Cloudflare"><meta property="twitter:description" content="Test your Internet connection. Check your network performance with our Internet speed test. Powered by Cloudflare's global edge network."><link rel="preload" href="/_next/static/css/23e054799aa89f3a.css" as="style"><link rel="stylesheet" href="/_next/static/css/23e054799aa89f3a.css" data-n-p=""><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/_next/static/chunks/polyfills-c67a75d1b6f99dc8.js"></script><script src="/_next/static/chunks/webpack-13950375ac853d97.js" defer=""></script><script src="/_next/static/chunks/framework-bb5c596eafb42b22.js" defer=""></script><script src="/_next/static/chunks/main-ac2245a692396b05.js" defer=""></script><script src="/_next/static/chunks/pages/_app-24a05d6eeee62aa5.js" defer=""></script><script src="/_next/static/chunks/c16184b3-64cf1234ee41dc24.js" defer=""></script><script src="/_next/static/chunks/75fc9c18-40134325ca6388e2.js" defer=""></script><script src="/_next/static/chunks/420-a364527be043a9ab.js" defer=""></script><script src="/_next/static/chunks/320-a0c98b7dcebb418d.js" defer=""></script><script src="/_next/static/chunks/339-7eced1c292b785dd.js" defer=""></script><script src="/_next/static/chunks/pages/index-bfa12fafe6fabdd6.js" defer=""></script><script src="/_next/static/OiaEaWLM5XAOBEW0HF9dl/_buildManifest.js" defer=""></script><script src="/_next/static/OiaEaWLM5XAOBEW0HF9dl/_ssgManifest.js" defer=""></script><style type="text/css">.__react_component_tooltip {
  border-radius: 3px;
  display: inline-block;
  font-size: 13px;
  left: -999em;
  opacity: 0;
  padding: 8px 21px;
  position: fixed;
  pointer-events: none;
  transition: opacity 0.3s ease-out;
  top: -999em;
  visibility: hidden;
  z-index: 999;
}
.__react_component_tooltip.allow_hover, .__react_component_tooltip.allow_click {
  pointer-events: auto;
}
.__react_component_tooltip:before, .__react_component_tooltip:after {
  content: "";
  width: 0;
  height: 0;
  position: absolute;
}
.__react_component_tooltip.show {
  opacity: 0.9;
  margin-top: 0px;
  margin-left: 0px;
  visibility: visible;
}
.__react_component_tooltip.type-dark {
  color: #fff;
  background-color: #222;
}
.__react_component_tooltip.type-dark.place-top:after {
  border-top-color: #222;
  border-top-style: solid;
  border-top-width: 6px;
}
.__react_component_tooltip.type-dark.place-bottom:after {
  border-bottom-color: #222;
  border-bottom-style: solid;
  border-bottom-width: 6px;
}
.__react_component_tooltip.type-dark.place-left:after {
  border-left-color: #222;
  border-left-style: solid;
  border-left-width: 6px;
}
.__react_component_tooltip.type-dark.place-right:after {
  border-right-color: #222;
  border-right-style: solid;
  border-right-width: 6px;
}
.__react_component_tooltip.type-dark.border {
  border: 1px solid #fff;
}
.__react_component_tooltip.type-dark.border.place-top:before {
  border-top: 8px solid #fff;
}
.__react_component_tooltip.type-dark.border.place-bottom:before {
  border-bottom: 8px solid #fff;
}
.__react_component_tooltip.type-dark.border.place-left:before {
  border-left: 8px solid #fff;
}
.__react_component_tooltip.type-dark.border.place-right:before {
  border-right: 8px solid #fff;
}
.__react_component_tooltip.type-success {
  color: #fff;
  background-color: #8DC572;
}
.__react_component_tooltip.type-success.place-top:after {
  border-top-color: #8DC572;
  border-top-style: solid;
  border-top-width: 6px;
}
.__react_component_tooltip.type-success.place-bottom:after {
  border-bottom-color: #8DC572;
  border-bottom-style: solid;
  border-bottom-width: 6px;
}
.__react_component_tooltip.type-success.place-left:after {
  border-left-color: #8DC572;
  border-left-style: solid;
  border-left-width: 6px;
}
.__react_component_tooltip.type-success.place-right:after {
  border-right-color: #8DC572;
  border-right-style: solid;
  border-right-width: 6px;
}
.__react_component_tooltip.type-success.border {
  border: 1px solid #fff;
}
.__react_component_tooltip.type-success.border.place-top:before {
  border-top: 8px solid #fff;
}
.__react_component_tooltip.type-success.border.place-bottom:before {
  border-bottom: 8px solid #fff;
}
.__react_component_tooltip.type-success.border.place-left:before {
  border-left: 8px solid #fff;
}
.__react_component_tooltip.type-success.border.place-right:before {
  border-right: 8px solid #fff;
}
.__react_component_tooltip.type-warning {
  color: #fff;
  background-color: #F0AD4E;
}
.__react_component_tooltip.type-warning.place-top:after {
  border-top-color: #F0AD4E;
  border-top-style: solid;
  border-top-width: 6px;
}
.__react_component_tooltip.type-warning.place-bottom:after {
  border-bottom-color: #F0AD4E;
  border-bottom-style: solid;
  border-bottom-width: 6px;
}
.__react_component_tooltip.type-warning.place-left:after {
  border-left-color: #F0AD4E;
  border-left-style: solid;
  border-left-width: 6px;
}
.__react_component_tooltip.type-warning.place-right:after {
  border-right-color: #F0AD4E;
  border-right-style: solid;
  border-right-width: 6px;
}
.__react_component_tooltip.type-warning.border {
  border: 1px solid #fff;
}
.__react_component_tooltip.type-warning.border.place-top:before {
  border-top: 8px solid #fff;
}
.__react_component_tooltip.type-warning.border.place-bottom:before {
  border-bottom: 8px solid #fff;
}
.__react_component_tooltip.type-warning.border.place-left:before {
  border-left: 8px solid #fff;
}
.__react_component_tooltip.type-warning.border.place-right:before {
  border-right: 8px solid #fff;
}
.__react_component_tooltip.type-error {
  color: #fff;
  background-color: #BE6464;
}
.__react_component_tooltip.type-error.place-top:after {
  border-top-color: #BE6464;
  border-top-style: solid;
  border-top-width: 6px;
}
.__react_component_tooltip.type-error.place-bottom:after {
  border-bottom-color: #BE6464;
  border-bottom-style: solid;
  border-bottom-width: 6px;
}
.__react_component_tooltip.type-error.place-left:after {
  border-left-color: #BE6464;
  border-left-style: solid;
  border-left-width: 6px;
}
.__react_component_tooltip.type-error.place-right:after {
  border-right-color: #BE6464;
  border-right-style: solid;
  border-right-width: 6px;
}
.__react_component_tooltip.type-error.border {
  border: 1px solid #fff;
}
.__react_component_tooltip.type-error.border.place-top:before {
  border-top: 8px solid #fff;
}
.__react_component_tooltip.type-error.border.place-bottom:before {
  border-bottom: 8px solid #fff;
}
.__react_component_tooltip.type-error.border.place-left:before {
  border-left: 8px solid #fff;
}
.__react_component_tooltip.type-error.border.place-right:before {
  border-right: 8px solid #fff;
}
.__react_component_tooltip.type-info {
  color: #fff;
  background-color: #337AB7;
}
.__react_component_tooltip.type-info.place-top:after {
  border-top-color: #337AB7;
  border-top-style: solid;
  border-top-width: 6px;
}
.__react_component_tooltip.type-info.place-bottom:after {
  border-bottom-color: #337AB7;
  border-bottom-style: solid;
  border-bottom-width: 6px;
}
.__react_component_tooltip.type-info.place-left:after {
  border-left-color: #337AB7;
  border-left-style: solid;
  border-left-width: 6px;
}
.__react_component_tooltip.type-info.place-right:after {
  border-right-color: #337AB7;
  border-right-style: solid;
  border-right-width: 6px;
}
.__react_component_tooltip.type-info.border {
  border: 1px solid #fff;
}
.__react_component_tooltip.type-info.border.place-top:before {
  border-top: 8px solid #fff;
}
.__react_component_tooltip.type-info.border.place-bottom:before {
  border-bottom: 8px solid #fff;
}
.__react_component_tooltip.type-info.border.place-left:before {
  border-left: 8px solid #fff;
}
.__react_component_tooltip.type-info.border.place-right:before {
  border-right: 8px solid #fff;
}
.__react_component_tooltip.type-light {
  color: #222;
  background-color: #fff;
}
.__react_component_tooltip.type-light.place-top:after {
  border-top-color: #fff;
  border-top-style: solid;
  border-top-width: 6px;
}
.__react_component_tooltip.type-light.place-bottom:after {
  border-bottom-color: #fff;
  border-bottom-style: solid;
  border-bottom-width: 6px;
}
.__react_component_tooltip.type-light.place-left:after {
  border-left-color: #fff;
  border-left-style: solid;
  border-left-width: 6px;
}
.__react_component_tooltip.type-light.place-right:after {
  border-right-color: #fff;
  border-right-style: solid;
  border-right-width: 6px;
}
.__react_component_tooltip.type-light.border {
  border: 1px solid #222;
}
.__react_component_tooltip.type-light.border.place-top:before {
  border-top: 8px solid #222;
}
.__react_component_tooltip.type-light.border.place-bottom:before {
  border-bottom: 8px solid #222;
}
.__react_component_tooltip.type-light.border.place-left:before {
  border-left: 8px solid #222;
}
.__react_component_tooltip.type-light.border.place-right:before {
  border-right: 8px solid #222;
}
.__react_component_tooltip.place-top {
  margin-top: -10px;
}
.__react_component_tooltip.place-top:before {
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  bottom: -8px;
  left: 50%;
  margin-left: -10px;
}
.__react_component_tooltip.place-top:after {
  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
  bottom: -6px;
  left: 50%;
  margin-left: -8px;
}
.__react_component_tooltip.place-bottom {
  margin-top: 10px;
}
.__react_component_tooltip.place-bottom:before {
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  top: -8px;
  left: 50%;
  margin-left: -10px;
}
.__react_component_tooltip.place-bottom:after {
  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
  top: -6px;
  left: 50%;
  margin-left: -8px;
}
.__react_component_tooltip.place-left {
  margin-left: -10px;
}
.__react_component_tooltip.place-left:before {
  border-top: 6px solid transparent;
  border-bottom: 6px solid transparent;
  right: -8px;
  top: 50%;
  margin-top: -5px;
}
.__react_component_tooltip.place-left:after {
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
  right: -6px;
  top: 50%;
  margin-top: -4px;
}
.__react_component_tooltip.place-right {
  margin-left: 10px;
}
.__react_component_tooltip.place-right:before {
  border-top: 6px solid transparent;
  border-bottom: 6px solid transparent;
  left: -8px;
  top: 50%;
  margin-top: -5px;
}
.__react_component_tooltip.place-right:after {
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
  left: -6px;
  top: 50%;
  margin-top: -4px;
}
.__react_component_tooltip .multi-line {
  display: block;
  padding: 2px 0px;
  text-align: center;
}</style><style id="erd_scroll_detection_scrollbar_style">/* Created by the element-resize-detector library. */
.erd_scroll_detection_container > div::-webkit-scrollbar { display: none; }

.erd_scroll_detection_container_animation_active { -webkit-animation-duration: 0.1s; animation-duration: 0.1s; -webkit-animation-name: erd_scroll_detection_container_animation; animation-name: erd_scroll_detection_container_animation; }
@-webkit-keyframes erd_scroll_detection_container_animation { 0% { opacity: 1; } 50% { opacity: 0; } 100% { opacity: 1; } }
@keyframes erd_scroll_detection_container_animation { 0% { opacity: 1; } 50% { opacity: 0; } 100% { opacity: 1; } }</style><style data-fela-type="STATIC" type="text/css">@keyframes blink { 50% { opacity: 0 }}</style><style data-fela-type="RULE" type="text/css"></style><style data-fela-type="RULE" type="text/css" media="(min-width: 0px) and (max-width: 768px)"></style><style data-fela-type="RULE" type="text/css" media="(min-width: 768px) and (max-width: 1800px)"></style><style data-fela-type="RULE" type="text/css" media="(min-width: 1800px)"></style><style data-react-tooltip="true">.__react_component_tooltip {
  border-radius: 3px;
  display: inline-block;
  font-size: 13px;
  left: -999em;
  opacity: 0;
  position: fixed;
  pointer-events: none;
  transition: opacity 0.3s ease-out;
  top: -999em;
  visibility: hidden;
  z-index: 999;
}
.__react_component_tooltip.allow_hover, .__react_component_tooltip.allow_click {
  pointer-events: auto;
}
.__react_component_tooltip::before, .__react_component_tooltip::after {
  content: "";
  width: 0;
  height: 0;
  position: absolute;
}
.__react_component_tooltip.show {
  opacity: 0.9;
  margin-top: 0;
  margin-left: 0;
  visibility: visible;
}
.__react_component_tooltip.place-top::before {
  bottom: 0;
  left: 50%;
  margin-left: -11px;
}
.__react_component_tooltip.place-bottom::before {
  top: 0;
  left: 50%;
  margin-left: -11px;
}
.__react_component_tooltip.place-left::before {
  right: 0;
  top: 50%;
  margin-top: -9px;
}
.__react_component_tooltip.place-right::before {
  left: 0;
  top: 50%;
  margin-top: -9px;
}
.__react_component_tooltip .multi-line {
  display: block;
  padding: 2px 0;
  text-align: center;
}</style><style data-fela-type="RULE" type="text/css" media="(min-width: 768px)"></style><link rel="stylesheet" type="text/css" href="/_next/static/css/61441bcdee12fd2b.css"></head><body style="overflow-y: hidden;"><div id="__next" data-reactroot=""><div class=""><div class="a b c d" style="position: relative;"><div class="e f g"><div class="h i"></div><div class="j k c l m"><a href="/" class="" style="text-decoration: none;"><div class="c n"><div class=""><img height="28px" src="/static/img/speedrabbit-static.png"></div><div class="o p q r s t">Speed Test</div></div></a><a href="/about/" class="u v w x y">About</a></div><div class="z ab ac ae"></div><div class="af ag"></div><div class="ah ai c aj ak al am an ao ap n aq"><div class="ar as at au"></div><div class="av ai aw c ax ay ap az ba"><div class="au ba"><p class="bb bc">When you run Speed Test, your IP address will be shared with Cloudflare and processed in accordance with our <a href="https://www.cloudflare.com/privacypolicy/">privacy policy</a>. &nbsp;<br><a class="bd"><span class="be">Learn More</span> <span class="arrowSwivel bf bg bh bi bj"><svg class="bk bl bm bn" aria-label="caret-right" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" aria-hidden="false" focusable="false"><path d="M4.488 1.85l.854-.353 6.15 6.15v.707l-6.15 6.15-.854-.354V1.85z"></path></svg></span></a></p><div class="bo bp bq br bs bt"><p class="bb">When you use Speed Test, Cloudflare receives the IP address you use to connect to Cloudflare’s Speed Test service. Cloudflare uses your IP address to estimate your geolocation (at the country and city levels) and to identify the Autonomous System Number (ASN) associated with your IP address.</p><p>Cloudflare shares anonymized measurement information (e.g., the estimated geolocation, ASN associated with your Speed Test, etc.) with our measurement partners as part of Cloudflare’s contribution to a shared Internet performance database. We do not share your IP address with our measurement partners.</p><p>As a part of this Speed Test, Cloudflare receives the following information:</p><ul><li>Your IP address;</li><li>An estimate of your location (Country, City);</li><li>The Autonomous System Number of your ISP (ASN).</li></ul><p>Cloudflare truncates your IP address that it receives as part of your use of the Speed Test to /24 and /48 for IPv4 and IPv6 addresses, respectively.</p></div></div><div class="bu bv"><button type="button" class="bw bx by bz ca cb cc cd ce cf cg ch ci cj bd n d ck cl cm cn co cp cq cr cs bt ct cu cv cw cx cy cz bf da db dc dd de df dg dh bb k di j dj dk dl dm dn do dp dq dr ds"><svg class="bk bl q dt du bn" aria-label="start" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" aria-hidden="false" focusable="false"><path d="M4.488 1.85l.854-.353 6.15 6.15v.707l-6.15 6.15-.854-.354V1.85z"></path></svg>Start</button><div class="bo dv dw be">Note: A speed test can consume up to 200MB of data.</div></div></div></div><div class="ek el em en eo ep eq er es et"><div class="c ap" style="grid-area: overview;"><div class="i c n"><div class="eu ev">Your Internet Speed</div></div><div class="g"><div class="c gh ap"><div class="gi gj"></div><div class="ek el em gk eo ep eq gl gm g"><div class="c ap" style="grid-area: download;"><div class="c gh ap"><div class="c n"><div class="gn"></div><div class="dw ev">Download</div><div class="ew ex ey bh"><div data-tip="true" data-for="single_tooltip_10" currentitem="false"><div class="ez"><svg class="fa bl fb fc" role="presentation" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" aria-hidden="true" focusable="false"><path d="M8 1.5a6.5 6.5 0 100 13 6.5 6.5 0 000-13zm0 12a5.5 5.5 0 110-11 5.5 5.5 0 010 11z"></path><path d="M8.572 6.253H6.607v1h.965v3.812H6.397v1h3.35v-1H8.572V6.253zM8.49 4.032H7.235v1.255H8.49V4.032z"></path></svg></div></div><div class="__react_component_tooltip t924b20d0-f95c-48b0-873b-c21f81c2e84f place-right type-dark" id="single_tooltip_10" data-id="tooltip"><style aria-hidden="true">
  	.t924b20d0-f95c-48b0-873b-c21f81c2e84f {
	    color: #fff;
	    background: #222;
	    border: 1px solid transparent;
	    border-radius: undefinedpx;
	    padding: 8px 21px;
  	}

  	.t924b20d0-f95c-48b0-873b-c21f81c2e84f.place-top {
        margin-top: -10px;
    }
    .t924b20d0-f95c-48b0-873b-c21f81c2e84f.place-top::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: 2;
        width: 20px;
        height: 12px;
    }
    .t924b20d0-f95c-48b0-873b-c21f81c2e84f.place-top::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        bottom: -6px;
        left: 50%;
        margin-left: -6px;
        transform: rotate(135deg);
    }

    .t924b20d0-f95c-48b0-873b-c21f81c2e84f.place-bottom {
        margin-top: 10px;
    }
    .t924b20d0-f95c-48b0-873b-c21f81c2e84f.place-bottom::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: -1;
        width: 18px;
        height: 10px;
    }
    .t924b20d0-f95c-48b0-873b-c21f81c2e84f.place-bottom::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        top: -6px;
        left: 50%;
        margin-left: -6px;
        transform: rotate(45deg);
    }

    .t924b20d0-f95c-48b0-873b-c21f81c2e84f.place-left {
        margin-left: -10px;
    }
    .t924b20d0-f95c-48b0-873b-c21f81c2e84f.place-left::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: -1;
        width: 10px;
        height: 18px;
    }
    .t924b20d0-f95c-48b0-873b-c21f81c2e84f.place-left::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        right: -6px;
        top: 50%;
        margin-top: -6px;
        transform: rotate(45deg);
    }

    .t924b20d0-f95c-48b0-873b-c21f81c2e84f.place-right {
        margin-left: 10px;
    }
    .t924b20d0-f95c-48b0-873b-c21f81c2e84f.place-right::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: -1;
        width: 10px;
        height: 18px;
    }
    .t924b20d0-f95c-48b0-873b-c21f81c2e84f.place-right::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        left: -6px;
        top: 50%;
        margin-top: -6px;
        transform: rotate(-135deg);
    }
  </style><div class="do fd fe">Download determines how fast your network connection can get data from the test network. This is important when downloading large files such as updates for applications or streaming video services. Download speed is tested by downloading files of various sizes. The number reported represents the 90th percentile of all download measurements and not the absolute maximum. Scroll down to view details.</div></div></div></div><div class="g"></div><div class="c go"><div class="gp ev gq c gr gs"><div class="c n"><div class="">&nbsp;</div><div class="gt">-</div></div></div></div><div class="g"></div><div class="dv dx"></div><div class="gu"></div></div></div><div class="c ap" style="grid-area: other;"><div class="c gh"><div class="c e gv ap"><div class="c n"><div class="gn"></div><div class="dw ev">Upload</div><div class="ew ex ey bh"><div data-tip="true" data-for="single_tooltip_11" currentitem="false"><div class="ez"><svg class="fa bl fb fc" role="presentation" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" aria-hidden="true" focusable="false"><path d="M8 1.5a6.5 6.5 0 100 13 6.5 6.5 0 000-13zm0 12a5.5 5.5 0 110-11 5.5 5.5 0 010 11z"></path><path d="M8.572 6.253H6.607v1h.965v3.812H6.397v1h3.35v-1H8.572V6.253zM8.49 4.032H7.235v1.255H8.49V4.032z"></path></svg></div></div><div class="__react_component_tooltip tf8504298-c887-474d-a7d1-1557aa06ee6a place-right type-dark" id="single_tooltip_11" data-id="tooltip"><style aria-hidden="true">
  	.tf8504298-c887-474d-a7d1-1557aa06ee6a {
	    color: #fff;
	    background: #222;
	    border: 1px solid transparent;
	    border-radius: undefinedpx;
	    padding: 8px 21px;
  	}

  	.tf8504298-c887-474d-a7d1-1557aa06ee6a.place-top {
        margin-top: -10px;
    }
    .tf8504298-c887-474d-a7d1-1557aa06ee6a.place-top::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: 2;
        width: 20px;
        height: 12px;
    }
    .tf8504298-c887-474d-a7d1-1557aa06ee6a.place-top::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        bottom: -6px;
        left: 50%;
        margin-left: -6px;
        transform: rotate(135deg);
    }

    .tf8504298-c887-474d-a7d1-1557aa06ee6a.place-bottom {
        margin-top: 10px;
    }
    .tf8504298-c887-474d-a7d1-1557aa06ee6a.place-bottom::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: -1;
        width: 18px;
        height: 10px;
    }
    .tf8504298-c887-474d-a7d1-1557aa06ee6a.place-bottom::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        top: -6px;
        left: 50%;
        margin-left: -6px;
        transform: rotate(45deg);
    }

    .tf8504298-c887-474d-a7d1-1557aa06ee6a.place-left {
        margin-left: -10px;
    }
    .tf8504298-c887-474d-a7d1-1557aa06ee6a.place-left::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: -1;
        width: 10px;
        height: 18px;
    }
    .tf8504298-c887-474d-a7d1-1557aa06ee6a.place-left::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        right: -6px;
        top: 50%;
        margin-top: -6px;
        transform: rotate(45deg);
    }

    .tf8504298-c887-474d-a7d1-1557aa06ee6a.place-right {
        margin-left: 10px;
    }
    .tf8504298-c887-474d-a7d1-1557aa06ee6a.place-right::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: -1;
        width: 10px;
        height: 18px;
    }
    .tf8504298-c887-474d-a7d1-1557aa06ee6a.place-right::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        left: -6px;
        top: 50%;
        margin-top: -6px;
        transform: rotate(-135deg);
    }
  </style><div class="do fd fe">Upload determines how fast your network connection can transfer data to the test network. This is especially important for applications such as FTP or if you are the source for a live video stream. Upload speed is tested by uploading files of various sizes. The number reported represents the 90th percentile of all upload measurements and not the absolute maximum. Scroll down to view details.</div></div></div></div><div class="g"></div><div class="c go"><div class="gt ev gq c gw gs"><div class="c n"><div class="">&nbsp;</div><div class="gt">-</div></div></div></div><div class="g"></div><div class="dv dx"></div><div class="gu"></div></div><div class="p q"></div><div class="c e g ap"><div class="c n"><div class="gn"></div><div class="dw ev">Latency</div><div class="ew ex ey bh"><div data-tip="true" data-for="single_tooltip_12" currentitem="false"><div class="ez"><svg class="fa bl fb fc" role="presentation" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" aria-hidden="true" focusable="false"><path d="M8 1.5a6.5 6.5 0 100 13 6.5 6.5 0 000-13zm0 12a5.5 5.5 0 110-11 5.5 5.5 0 010 11z"></path><path d="M8.572 6.253H6.607v1h.965v3.812H6.397v1h3.35v-1H8.572V6.253zM8.49 4.032H7.235v1.255H8.49V4.032z"></path></svg></div></div><div class="__react_component_tooltip t2ff68556-7127-4fb8-80d8-6dddf7ee4d3c place-left type-dark" id="single_tooltip_12" data-id="tooltip"><style aria-hidden="true">
  	.t2ff68556-7127-4fb8-80d8-6dddf7ee4d3c {
	    color: #fff;
	    background: #222;
	    border: 1px solid transparent;
	    border-radius: undefinedpx;
	    padding: 8px 21px;
  	}

  	.t2ff68556-7127-4fb8-80d8-6dddf7ee4d3c.place-top {
        margin-top: -10px;
    }
    .t2ff68556-7127-4fb8-80d8-6dddf7ee4d3c.place-top::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: 2;
        width: 20px;
        height: 12px;
    }
    .t2ff68556-7127-4fb8-80d8-6dddf7ee4d3c.place-top::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        bottom: -6px;
        left: 50%;
        margin-left: -6px;
        transform: rotate(135deg);
    }

    .t2ff68556-7127-4fb8-80d8-6dddf7ee4d3c.place-bottom {
        margin-top: 10px;
    }
    .t2ff68556-7127-4fb8-80d8-6dddf7ee4d3c.place-bottom::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: -1;
        width: 18px;
        height: 10px;
    }
    .t2ff68556-7127-4fb8-80d8-6dddf7ee4d3c.place-bottom::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        top: -6px;
        left: 50%;
        margin-left: -6px;
        transform: rotate(45deg);
    }

    .t2ff68556-7127-4fb8-80d8-6dddf7ee4d3c.place-left {
        margin-left: -10px;
    }
    .t2ff68556-7127-4fb8-80d8-6dddf7ee4d3c.place-left::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: -1;
        width: 10px;
        height: 18px;
    }
    .t2ff68556-7127-4fb8-80d8-6dddf7ee4d3c.place-left::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        right: -6px;
        top: 50%;
        margin-top: -6px;
        transform: rotate(45deg);
    }

    .t2ff68556-7127-4fb8-80d8-6dddf7ee4d3c.place-right {
        margin-left: 10px;
    }
    .t2ff68556-7127-4fb8-80d8-6dddf7ee4d3c.place-right::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: -1;
        width: 10px;
        height: 18px;
    }
    .t2ff68556-7127-4fb8-80d8-6dddf7ee4d3c.place-right::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        left: -6px;
        top: 50%;
        margin-top: -6px;
        transform: rotate(-135deg);
    }
  </style><div class="do fd fe">Round trip time latency (or RTT) is the time it takes for a packet to be sent from your computer to Cloudflare's network and back. It is especially important for applications such as gaming and video chat, where you want to be as up to date as possible. The number reported represents the median of all RTT measurements. Lower RTT is better.</div></div></div></div><div class="g"></div><div class="c go"><div class="gt ev gq c gw gs"><div class="c n"><div class="">&nbsp;</div><div class="gt">-</div></div></div></div><div class="c dy gx gy"></div><div class="gz"></div><div class="dv dx"></div><div class="c n"><div class="gn"></div><div class="dw ev">Jitter</div><div class="ew ex ey bh"><div data-tip="true" data-for="single_tooltip_13" currentitem="false"><div class="ez"><svg class="fa bl fb fc" role="presentation" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" aria-hidden="true" focusable="false"><path d="M8 1.5a6.5 6.5 0 100 13 6.5 6.5 0 000-13zm0 12a5.5 5.5 0 110-11 5.5 5.5 0 010 11z"></path><path d="M8.572 6.253H6.607v1h.965v3.812H6.397v1h3.35v-1H8.572V6.253zM8.49 4.032H7.235v1.255H8.49V4.032z"></path></svg></div></div><div class="__react_component_tooltip t9cf494d9-8a6c-46ff-8075-3955ce70e63e place-left type-dark" id="single_tooltip_13" data-id="tooltip"><style aria-hidden="true">
  	.t9cf494d9-8a6c-46ff-8075-3955ce70e63e {
	    color: #fff;
	    background: #222;
	    border: 1px solid transparent;
	    border-radius: undefinedpx;
	    padding: 8px 21px;
  	}

  	.t9cf494d9-8a6c-46ff-8075-3955ce70e63e.place-top {
        margin-top: -10px;
    }
    .t9cf494d9-8a6c-46ff-8075-3955ce70e63e.place-top::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: 2;
        width: 20px;
        height: 12px;
    }
    .t9cf494d9-8a6c-46ff-8075-3955ce70e63e.place-top::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        bottom: -6px;
        left: 50%;
        margin-left: -6px;
        transform: rotate(135deg);
    }

    .t9cf494d9-8a6c-46ff-8075-3955ce70e63e.place-bottom {
        margin-top: 10px;
    }
    .t9cf494d9-8a6c-46ff-8075-3955ce70e63e.place-bottom::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: -1;
        width: 18px;
        height: 10px;
    }
    .t9cf494d9-8a6c-46ff-8075-3955ce70e63e.place-bottom::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        top: -6px;
        left: 50%;
        margin-left: -6px;
        transform: rotate(45deg);
    }

    .t9cf494d9-8a6c-46ff-8075-3955ce70e63e.place-left {
        margin-left: -10px;
    }
    .t9cf494d9-8a6c-46ff-8075-3955ce70e63e.place-left::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: -1;
        width: 10px;
        height: 18px;
    }
    .t9cf494d9-8a6c-46ff-8075-3955ce70e63e.place-left::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        right: -6px;
        top: 50%;
        margin-top: -6px;
        transform: rotate(45deg);
    }

    .t9cf494d9-8a6c-46ff-8075-3955ce70e63e.place-right {
        margin-left: 10px;
    }
    .t9cf494d9-8a6c-46ff-8075-3955ce70e63e.place-right::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: -1;
        width: 10px;
        height: 18px;
    }
    .t9cf494d9-8a6c-46ff-8075-3955ce70e63e.place-right::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        left: -6px;
        top: 50%;
        margin-top: -6px;
        transform: rotate(-135deg);
    }
  </style><div class="do fd fe">Although median RTT is important, it only paints half the picture. RTT can go up and down from time to time, which is noticeable in applications like video chat, gaming, or streaming. Jitter gives you insight into how much variation we see in the RTT measurements. It's calculated as the average distance between consecutive RTT measurements. Lower jitter is better.</div></div></div></div><div class="g"></div><div class="c go"><div class="gt ev gq c gw gs"><div class="c n"><div class="">&nbsp;</div><div class="gt">-</div></div></div></div><div class="c dy gx gy"></div><div class="gz"></div><div class="dv dx"></div><div class="c n"><div class="gn"></div><div class="dw ev">Packet Loss</div><div class="ew ex ey bh"><div data-tip="true" data-for="single_tooltip_14" currentitem="false"><div class="ez"><svg class="fa bl fb fc" role="presentation" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" aria-hidden="true" focusable="false"><path d="M8 1.5a6.5 6.5 0 100 13 6.5 6.5 0 000-13zm0 12a5.5 5.5 0 110-11 5.5 5.5 0 010 11z"></path><path d="M8.572 6.253H6.607v1h.965v3.812H6.397v1h3.35v-1H8.572V6.253zM8.49 4.032H7.235v1.255H8.49V4.032z"></path></svg></div></div><div class="__react_component_tooltip tf04b72ad-bd9f-4198-bf39-fd7291819634 place-left type-dark" id="single_tooltip_14" data-id="tooltip"><style aria-hidden="true">
  	.tf04b72ad-bd9f-4198-bf39-fd7291819634 {
	    color: #fff;
	    background: #222;
	    border: 1px solid transparent;
	    border-radius: undefinedpx;
	    padding: 8px 21px;
  	}

  	.tf04b72ad-bd9f-4198-bf39-fd7291819634.place-top {
        margin-top: -10px;
    }
    .tf04b72ad-bd9f-4198-bf39-fd7291819634.place-top::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: 2;
        width: 20px;
        height: 12px;
    }
    .tf04b72ad-bd9f-4198-bf39-fd7291819634.place-top::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        bottom: -6px;
        left: 50%;
        margin-left: -6px;
        transform: rotate(135deg);
    }

    .tf04b72ad-bd9f-4198-bf39-fd7291819634.place-bottom {
        margin-top: 10px;
    }
    .tf04b72ad-bd9f-4198-bf39-fd7291819634.place-bottom::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: -1;
        width: 18px;
        height: 10px;
    }
    .tf04b72ad-bd9f-4198-bf39-fd7291819634.place-bottom::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        top: -6px;
        left: 50%;
        margin-left: -6px;
        transform: rotate(45deg);
    }

    .tf04b72ad-bd9f-4198-bf39-fd7291819634.place-left {
        margin-left: -10px;
    }
    .tf04b72ad-bd9f-4198-bf39-fd7291819634.place-left::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: -1;
        width: 10px;
        height: 18px;
    }
    .tf04b72ad-bd9f-4198-bf39-fd7291819634.place-left::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        right: -6px;
        top: 50%;
        margin-top: -6px;
        transform: rotate(45deg);
    }

    .tf04b72ad-bd9f-4198-bf39-fd7291819634.place-right {
        margin-left: 10px;
    }
    .tf04b72ad-bd9f-4198-bf39-fd7291819634.place-right::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: -1;
        width: 10px;
        height: 18px;
    }
    .tf04b72ad-bd9f-4198-bf39-fd7291819634.place-right::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        left: -6px;
        top: 50%;
        margin-top: -6px;
        transform: rotate(-135deg);
    }
  </style><div class="do fd fe">Packet loss indicates the presence of packets that are lost in the communication with the testing network. A high packet loss rate can cause jitter to rise and disrupt real-time sensitive applications like streaming and gaming. It's calculated as the percentage of UDP packets that are not received after being relayed through a WebRTC TURN server.</div></div></div></div><div class="g"></div><div class="c go"><div class="gt ev gq c gw gs"><div class="c n"><div class="">&nbsp;</div><div class="gt">-</div></div></div></div><div class="g"></div></div></div></div></div><div class="ab fv"></div><div class="c ha n m"><div class="c n"><div class="c n"><button type="button" class="bw hb by bz hc hd cc cd ce he hf ch ci cj bd n d ck cl cm hg hh hi hj cr cs bt ct cu cv cw cx cy cz bf da db dc dd de df dg dh bb ey di ex fn fo dl dm hk hl hm dw dr ds"><svg class="bk bl ey du bn" role="presentation" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" aria-hidden="true" focusable="false"><path d="M4.488 1.85l.854-.353 6.15 6.15v.707l-6.15 6.15-.854-.354V1.85z"></path></svg><div class="ex fs">Resume</div></button><button type="button" class="bw hb by bz hc hd cc cd ce he hf ch ci cj bd n d ck cl cm hg hh hi hj cr cs bt ct cu cv cw cx cy cz bf da db dc dd de df dg dh bb ey di ex fn fo dl dm hk hl hm dw dr ds"><svg class="bk bl ey du bn" role="presentation" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" aria-hidden="true" focusable="false"><path d="M7.999 2c1.53 0 3.004.586 4.117 1.638l-.317-2.088.988-.15.558 3.664-3.666.557-.15-.989 1.882-.285a4.982 4.982 0 101.46 2.528l.976-.225A6 6 0 117.999 2z"></path></svg><div class="ex fs">Retest</div></button><div class="ex ey"></div><div class="hn be dw">Paused</div></div></div></div></div></div></div><div class="c ap" style="grid-area: overviewSeparator;"><div class="z ac ae"></div></div><div class="c ap" style="grid-area: separator2;"><div class="z ac ae"></div></div><div class="c ap" style="grid-area: scores;"><div class="i c n"><div class="eu ev">Network Quality Score</div><div class="ew ex ey bh"><div data-tip="true" data-for="single_tooltip_1" currentitem="false"><div class="ez"><svg class="fa bl fb fc" role="presentation" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" aria-hidden="true" focusable="false"><path d="M8 1.5a6.5 6.5 0 100 13 6.5 6.5 0 000-13zm0 12a5.5 5.5 0 110-11 5.5 5.5 0 010 11z"></path><path d="M8.572 6.253H6.607v1h.965v3.812H6.397v1h3.35v-1H8.572V6.253zM8.49 4.032H7.235v1.255H8.49V4.032z"></path></svg></div></div><div class="__react_component_tooltip tf375e70b-8f31-4755-aa78-2f649bfa936d place-top type-dark" id="single_tooltip_1" data-id="tooltip"><style aria-hidden="true">
  	.tf375e70b-8f31-4755-aa78-2f649bfa936d {
	    color: #fff;
	    background: #222;
	    border: 1px solid transparent;
	    border-radius: undefinedpx;
	    padding: 8px 21px;
  	}

  	.tf375e70b-8f31-4755-aa78-2f649bfa936d.place-top {
        margin-top: -10px;
    }
    .tf375e70b-8f31-4755-aa78-2f649bfa936d.place-top::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: 2;
        width: 20px;
        height: 12px;
    }
    .tf375e70b-8f31-4755-aa78-2f649bfa936d.place-top::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        bottom: -6px;
        left: 50%;
        margin-left: -6px;
        transform: rotate(135deg);
    }

    .tf375e70b-8f31-4755-aa78-2f649bfa936d.place-bottom {
        margin-top: 10px;
    }
    .tf375e70b-8f31-4755-aa78-2f649bfa936d.place-bottom::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: -1;
        width: 18px;
        height: 10px;
    }
    .tf375e70b-8f31-4755-aa78-2f649bfa936d.place-bottom::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        top: -6px;
        left: 50%;
        margin-left: -6px;
        transform: rotate(45deg);
    }

    .tf375e70b-8f31-4755-aa78-2f649bfa936d.place-left {
        margin-left: -10px;
    }
    .tf375e70b-8f31-4755-aa78-2f649bfa936d.place-left::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: -1;
        width: 10px;
        height: 18px;
    }
    .tf375e70b-8f31-4755-aa78-2f649bfa936d.place-left::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        right: -6px;
        top: 50%;
        margin-top: -6px;
        transform: rotate(45deg);
    }

    .tf375e70b-8f31-4755-aa78-2f649bfa936d.place-right {
        margin-left: 10px;
    }
    .tf375e70b-8f31-4755-aa78-2f649bfa936d.place-right::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: -1;
        width: 10px;
        height: 18px;
    }
    .tf375e70b-8f31-4755-aa78-2f649bfa936d.place-right::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        left: -6px;
        top: 50%;
        margin-top: -6px;
        transform: rotate(-135deg);
    }
  </style><div class="do fd fe">Aggregated Internet Measurement (AIM) helps you understand your Internet quality to identify scenarios that your Internet connection is good or bad for. Typically, an Internet speed test provides you with upload and download speeds, which may not always provide a holistic view of your Internet quality.</div></div></div><a href="https://developers.cloudflare.com/fundamentals/speed/aim/" target="_blank" rel="noreferrer" class="p ff">Learn more</a></div><div class="g"><div class="fg fh fi fj az"><div class="fk dv dx dw da">waiting to finish measurements...</div></div></div></div><div class="c ap" style="grid-area: map;"><div class="i c n"><div class="eu ev">Server Location</div><div class="ew ex ey bh"><div data-tip="true" data-for="single_tooltip_2" currentitem="false"><div class="ez"><svg class="fa bl fb fc" role="presentation" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" aria-hidden="true" focusable="false"><path d="M8 1.5a6.5 6.5 0 100 13 6.5 6.5 0 000-13zm0 12a5.5 5.5 0 110-11 5.5 5.5 0 010 11z"></path><path d="M8.572 6.253H6.607v1h.965v3.812H6.397v1h3.35v-1H8.572V6.253zM8.49 4.032H7.235v1.255H8.49V4.032z"></path></svg></div></div><div class="__react_component_tooltip tae7dd169-08d4-4114-97b4-527d2f00da8b place-top type-dark" id="single_tooltip_2" data-id="tooltip"><style aria-hidden="true">
  	.tae7dd169-08d4-4114-97b4-527d2f00da8b {
	    color: #fff;
	    background: #222;
	    border: 1px solid transparent;
	    border-radius: undefinedpx;
	    padding: 8px 21px;
  	}

  	.tae7dd169-08d4-4114-97b4-527d2f00da8b.place-top {
        margin-top: -10px;
    }
    .tae7dd169-08d4-4114-97b4-527d2f00da8b.place-top::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: 2;
        width: 20px;
        height: 12px;
    }
    .tae7dd169-08d4-4114-97b4-527d2f00da8b.place-top::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        bottom: -6px;
        left: 50%;
        margin-left: -6px;
        transform: rotate(135deg);
    }

    .tae7dd169-08d4-4114-97b4-527d2f00da8b.place-bottom {
        margin-top: 10px;
    }
    .tae7dd169-08d4-4114-97b4-527d2f00da8b.place-bottom::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: -1;
        width: 18px;
        height: 10px;
    }
    .tae7dd169-08d4-4114-97b4-527d2f00da8b.place-bottom::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        top: -6px;
        left: 50%;
        margin-left: -6px;
        transform: rotate(45deg);
    }

    .tae7dd169-08d4-4114-97b4-527d2f00da8b.place-left {
        margin-left: -10px;
    }
    .tae7dd169-08d4-4114-97b4-527d2f00da8b.place-left::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: -1;
        width: 10px;
        height: 18px;
    }
    .tae7dd169-08d4-4114-97b4-527d2f00da8b.place-left::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        right: -6px;
        top: 50%;
        margin-top: -6px;
        transform: rotate(45deg);
    }

    .tae7dd169-08d4-4114-97b4-527d2f00da8b.place-right {
        margin-left: 10px;
    }
    .tae7dd169-08d4-4114-97b4-527d2f00da8b.place-right::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: -1;
        width: 10px;
        height: 18px;
    }
    .tae7dd169-08d4-4114-97b4-527d2f00da8b.place-right::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        left: -6px;
        top: 50%;
        margin-top: -6px;
        transform: rotate(-135deg);
    }
  </style><div class="do fd fe">Shows the data center that’s currently being used to test your network connection. Data center locations are tracked as airport codes and may not be 100% accurate.</div></div></div></div><div class="g"><div class="fg fh fi fj az"><div class="bf ho hp hq">Unable to display map: browser does not support WebGL</div><div class="ab ff"><div class="dv c n"><svg class="bk bl du bn" role="presentation" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" aria-hidden="true" focusable="false"><path d="M2 10.5l-.5.5v2.75l.5.5h2.75l.5-.5V11l-.5-.5H2zm2.25 2.75H2.5V11.5h1.75v1.75zM7.928 1.498l-2.25 2.25L7.928 6l2.25-2.25-2.25-2.25zM3.76 9.058h8.335v1.14h.982V8.073h-4.65v-1.6h-1v1.6H2.776v2.125h.985v-1.14zM12.5 10.5a2 2 0 100 4 2 2 0 000-4zm0 3a1 1 0 110-2 1 1 0 010 2z"></path></svg><div class="ex ey"></div><div class="">Connected via <span class="w">IPv6</span></div></div><div class="dv c n"><svg class="bk bl du bn" role="presentation" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" aria-hidden="true" focusable="false"><path d="M12.375 7.409a.523.523 0 100-1.046.523.523 0 000 1.046z"></path><path fill-rule="evenodd" d="M3.863 2.183L4.25 2h7.5l.387.183 2.25 2.75.113.317v.14l.002.002v3.213l-.5.5H2l-.5-.5V5.25l.113-.317 2.25-2.75zM2.5 5.892v2.213h11.002V6.25H13.5v-.358h-11zm10.56-1H2.94L4.486 3h7.026l1.548 1.892z"></path><path d="M12.375 12.303a.523.523 0 100-1.047.523.523 0 000 1.046z"></path><path fill-rule="evenodd" d="M2 9.785l-.5.5v3.213l.5.5h12.002l.5-.5v-3.213l-.5-.5H2zm.5 3.213v-2.213h11.002v2.213H2.5z"></path></svg><div class="ex ey"></div><div class="">Server location: <span class="w">Madrid</span></div></div><div class="dv c n"><svg class="bk bl du bn" role="presentation" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" aria-hidden="true" focusable="false"><path d="M8 1.363A5.083 5.083 0 002.922 6.44c0 3.5 4.448 9.25 4.638 9.48h.785c.195-.25 4.732-6 4.732-9.485A5.083 5.083 0 008 1.363zm-.043 13.42c-1.08-1.478-4.035-5.75-4.035-8.343a4.078 4.078 0 118.155 0c0 2.588-3.017 6.867-4.12 8.343z"></path><path d="M7.98 4.25a2.25 2.25 0 100 4.5 2.25 2.25 0 000-4.5zm0 3.5A1.25 1.25 0 119.23 6.5a1.25 1.25 0 01-1.25 1.268V7.75z"></path></svg><div class="ex ey"></div><div class="">Your network: <span class="w">Cloudflare Warp<span> (<a href="https://radar.cloudflare.com/quality/as13335" target="_blank" rel="noreferrer">AS13335</a>)</span></span></div></div><div class="dv c n"><svg class="bk bl du bn" role="presentation" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" aria-hidden="true" focusable="false"><path d="M3.623 5.4a.522.522 0 100-1.045.522.522 0 000 1.045zM5.298 5.4a.522.522 0 100-1.045.522.522 0 000 1.045zM6.97 5.4a.522.522 0 100-1.045.522.522 0 000 1.045z"></path><path d="M14 3.017H2l-.5.5v9.968l.5.5h12l.5-.5V3.517l-.5-.5zm-.5 1V5.75h-11V4.017h11zm-11 8.968V6.75h11V13l-11-.015z"></path></svg><div class="ex ey"></div><div class="">Your IP address: <span class="w"><a href="https://radar.cloudflare.com/ip/2a09:bac5:312f:e64::16f:7e" target="_blank" rel="noreferrer">2a09:bac5:312f:e64::16f:7e</a></span></div></div></div></div></div></div><div class="c ap" style="grid-area: latency;"><div class="i c n"><div class="eu ev">Latency Measurements</div><div class="ew ex ey bh"><div data-tip="true" data-for="single_tooltip_3" currentitem="false"><div class="ez"><svg class="fa bl fb fc" role="presentation" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" aria-hidden="true" focusable="false"><path d="M8 1.5a6.5 6.5 0 100 13 6.5 6.5 0 000-13zm0 12a5.5 5.5 0 110-11 5.5 5.5 0 010 11z"></path><path d="M8.572 6.253H6.607v1h.965v3.812H6.397v1h3.35v-1H8.572V6.253zM8.49 4.032H7.235v1.255H8.49V4.032z"></path></svg></div></div><div class="__react_component_tooltip t35842d38-4ffa-486a-b53e-97472da99c77 place-top type-dark" id="single_tooltip_3" data-id="tooltip"><style aria-hidden="true">
  	.t35842d38-4ffa-486a-b53e-97472da99c77 {
	    color: #fff;
	    background: #222;
	    border: 1px solid transparent;
	    border-radius: undefinedpx;
	    padding: 8px 21px;
  	}

  	.t35842d38-4ffa-486a-b53e-97472da99c77.place-top {
        margin-top: -10px;
    }
    .t35842d38-4ffa-486a-b53e-97472da99c77.place-top::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: 2;
        width: 20px;
        height: 12px;
    }
    .t35842d38-4ffa-486a-b53e-97472da99c77.place-top::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        bottom: -6px;
        left: 50%;
        margin-left: -6px;
        transform: rotate(135deg);
    }

    .t35842d38-4ffa-486a-b53e-97472da99c77.place-bottom {
        margin-top: 10px;
    }
    .t35842d38-4ffa-486a-b53e-97472da99c77.place-bottom::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: -1;
        width: 18px;
        height: 10px;
    }
    .t35842d38-4ffa-486a-b53e-97472da99c77.place-bottom::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        top: -6px;
        left: 50%;
        margin-left: -6px;
        transform: rotate(45deg);
    }

    .t35842d38-4ffa-486a-b53e-97472da99c77.place-left {
        margin-left: -10px;
    }
    .t35842d38-4ffa-486a-b53e-97472da99c77.place-left::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: -1;
        width: 10px;
        height: 18px;
    }
    .t35842d38-4ffa-486a-b53e-97472da99c77.place-left::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        right: -6px;
        top: 50%;
        margin-top: -6px;
        transform: rotate(45deg);
    }

    .t35842d38-4ffa-486a-b53e-97472da99c77.place-right {
        margin-left: 10px;
    }
    .t35842d38-4ffa-486a-b53e-97472da99c77.place-right::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: -1;
        width: 10px;
        height: 18px;
    }
    .t35842d38-4ffa-486a-b53e-97472da99c77.place-right::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        left: -6px;
        top: 50%;
        margin-top: -6px;
        transform: rotate(-135deg);
    }
  </style><div class="do fd fe">Each measurement represents the amount of time an HTTP request took to reach the server. It’s calculated by determining the time to first byte and subtracting the amount of processing time the server took to handle the request.</div></div></div></div><div class="g"><div class="dx fl fm fh fi fj az"><div class="fn fo dl dm az bd fp fq fr"><div data-tip="true" data-for="single_tooltip_4" currentitem="false"><div class="ac"><div class="c m"><div class="fs w"><span class="">Unloaded latency</span> <span class="ft w">(0/1)</span></div><span class="arrowSwivel bf bg bh fu bj"><svg class="fa bl bo fc" aria-label="caret-right" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" aria-hidden="false" focusable="false"><path d="M4.488 1.85l.854-.353 6.15 6.15v.707l-6.15 6.15-.854-.354V1.85z"></path></svg></span></div><div class="ab fv"></div><div class="ac gd bf"><div class="fy fz dw c ac gd n gb">waiting for measurements...</div><div class="erd_scroll_detection_container erd_scroll_detection_container_animation_active" style="visibility: hidden; display: inline; width: 0px; height: 0px; z-index: -1; overflow: hidden; margin: 0px; padding: 0px;"><div dir="ltr" class="erd_scroll_detection_container" style="position: absolute; flex: 0 0 auto; overflow: hidden; z-index: -1; visibility: hidden; width: 100%; height: 100%; left: 0px; top: 0px;"><div class="erd_scroll_detection_container" style="position: absolute; flex: 0 0 auto; overflow: hidden; z-index: -1; visibility: hidden; inset: -11px -10px -10px -11px;"><div style="position: absolute; flex: 0 0 auto; overflow: scroll; z-index: -1; visibility: hidden; width: 100%; height: 100%;"><div style="position: absolute; left: 0px; top: 0px; width: 371px; height: 72px;"></div></div><div style="position: absolute; flex: 0 0 auto; overflow: scroll; z-index: -1; visibility: hidden; width: 100%; height: 100%;"><div style="position: absolute; width: 200%; height: 200%;"></div></div></div></div></div></div><div class="fw fx"></div><div style="position: relative;"><svg width="100%" height="2"><rect x="0" y="0" width="100%" height="2" class="ge"></rect><rect color="#ffce4b" x="0" y="0" width="0%" height="2" class="gf"></rect></svg><div class="erd_scroll_detection_container erd_scroll_detection_container_animation_active" style="visibility: hidden; display: inline; width: 0px; height: 0px; z-index: -1; overflow: hidden; margin: 0px; padding: 0px;"><div dir="ltr" class="erd_scroll_detection_container" style="position: absolute; flex: 0 0 auto; overflow: hidden; z-index: -1; visibility: hidden; width: 100%; height: 100%; left: 0px; top: 0px;"><div class="erd_scroll_detection_container" style="position: absolute; flex: 0 0 auto; overflow: hidden; z-index: -1; visibility: hidden; inset: -11px -10px -10px -11px;"><div style="position: absolute; flex: 0 0 auto; overflow: scroll; z-index: -1; visibility: hidden; width: 100%; height: 100%;"><div style="position: absolute; left: 0px; top: 0px; width: 371px; height: 49px;"></div></div><div style="position: absolute; flex: 0 0 auto; overflow: scroll; z-index: -1; visibility: hidden; width: 100%; height: 100%;"><div style="position: absolute; width: 200%; height: 200%;"></div></div></div></div></div></div></div></div><div class="__react_component_tooltip tac717ba8-3ed2-4dd5-a4ea-668adcf27110 place-top type-dark" id="single_tooltip_4" data-id="tooltip"><style aria-hidden="true">
  	.tac717ba8-3ed2-4dd5-a4ea-668adcf27110 {
	    color: #fff;
	    background: #222;
	    border: 1px solid transparent;
	    border-radius: undefinedpx;
	    padding: 8px 21px;
  	}

  	.tac717ba8-3ed2-4dd5-a4ea-668adcf27110.place-top {
        margin-top: -10px;
    }
    .tac717ba8-3ed2-4dd5-a4ea-668adcf27110.place-top::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: 2;
        width: 20px;
        height: 12px;
    }
    .tac717ba8-3ed2-4dd5-a4ea-668adcf27110.place-top::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        bottom: -6px;
        left: 50%;
        margin-left: -6px;
        transform: rotate(135deg);
    }

    .tac717ba8-3ed2-4dd5-a4ea-668adcf27110.place-bottom {
        margin-top: 10px;
    }
    .tac717ba8-3ed2-4dd5-a4ea-668adcf27110.place-bottom::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: -1;
        width: 18px;
        height: 10px;
    }
    .tac717ba8-3ed2-4dd5-a4ea-668adcf27110.place-bottom::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        top: -6px;
        left: 50%;
        margin-left: -6px;
        transform: rotate(45deg);
    }

    .tac717ba8-3ed2-4dd5-a4ea-668adcf27110.place-left {
        margin-left: -10px;
    }
    .tac717ba8-3ed2-4dd5-a4ea-668adcf27110.place-left::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: -1;
        width: 10px;
        height: 18px;
    }
    .tac717ba8-3ed2-4dd5-a4ea-668adcf27110.place-left::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        right: -6px;
        top: 50%;
        margin-top: -6px;
        transform: rotate(45deg);
    }

    .tac717ba8-3ed2-4dd5-a4ea-668adcf27110.place-right {
        margin-left: 10px;
    }
    .tac717ba8-3ed2-4dd5-a4ea-668adcf27110.place-right::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: -1;
        width: 10px;
        height: 18px;
    }
    .tac717ba8-3ed2-4dd5-a4ea-668adcf27110.place-right::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        left: -6px;
        top: 50%;
        margin-top: -6px;
        transform: rotate(-135deg);
    }
  </style><div class="do fd fe"><div class="">The thick bar covers all measurements that fall within the 25th to 75th percentile. The solid line marks the median score whilst the dotted line represents average.</div><ul class=""><li class="">Min: <b>∞s</b></li><li class="">Max: <b>-∞s</b></li><li class="">Average: <b>NaN s</b></li><li class="">Median: <b>0 s</b></li><li class="">25th percentile: <b>0 s</b></li><li class="">75th percentile: <b>0 s</b></li></ul></div></div></div></div><div class="dx fl fm fh fi fj az"><div class="fn fo dl dm az bd fp fq fr"><div data-tip="true" data-for="single_tooltip_5" currentitem="false"><div class="ac"><div class="c m"><div class="fs w"><span class="">Latency during download</span> <span class="ft w">(0)</span></div><span class="arrowSwivel bf bg bh fu bj"><svg class="fa bl bo fc" aria-label="caret-right" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" aria-hidden="false" focusable="false"><path d="M4.488 1.85l.854-.353 6.15 6.15v.707l-6.15 6.15-.854-.354V1.85z"></path></svg></span></div><div class="ab fv"></div><div class="ac gd bf"><div class="fy fz dw c ac gd n gb">waiting for measurements...</div><div class="erd_scroll_detection_container erd_scroll_detection_container_animation_active" style="visibility: hidden; display: inline; width: 0px; height: 0px; z-index: -1; overflow: hidden; margin: 0px; padding: 0px;"><div dir="ltr" class="erd_scroll_detection_container" style="position: absolute; flex: 0 0 auto; overflow: hidden; z-index: -1; visibility: hidden; width: 100%; height: 100%; left: 0px; top: 0px;"><div class="erd_scroll_detection_container" style="position: absolute; flex: 0 0 auto; overflow: hidden; z-index: -1; visibility: hidden; inset: -11px -10px -10px -11px;"><div style="position: absolute; flex: 0 0 auto; overflow: scroll; z-index: -1; visibility: hidden; width: 100%; height: 100%;"><div style="position: absolute; left: 0px; top: 0px; width: 371px; height: 72px;"></div></div><div style="position: absolute; flex: 0 0 auto; overflow: scroll; z-index: -1; visibility: hidden; width: 100%; height: 100%;"><div style="position: absolute; width: 200%; height: 200%;"></div></div></div></div></div></div><div class="fw fx"></div><div style="position: relative;"><svg width="100%" height="2"><rect x="0" y="0" width="100%" height="2" class="ge"></rect><rect color="#2db35e" x="0" y="0" width="NaN%" height="2" class="gg"></rect></svg><div class="erd_scroll_detection_container erd_scroll_detection_container_animation_active" style="visibility: hidden; display: inline; width: 0px; height: 0px; z-index: -1; overflow: hidden; margin: 0px; padding: 0px;"><div dir="ltr" class="erd_scroll_detection_container" style="position: absolute; flex: 0 0 auto; overflow: hidden; z-index: -1; visibility: hidden; width: 100%; height: 100%; left: 0px; top: 0px;"><div class="erd_scroll_detection_container" style="position: absolute; flex: 0 0 auto; overflow: hidden; z-index: -1; visibility: hidden; inset: -11px -10px -10px -11px;"><div style="position: absolute; flex: 0 0 auto; overflow: scroll; z-index: -1; visibility: hidden; width: 100%; height: 100%;"><div style="position: absolute; left: 0px; top: 0px; width: 371px; height: 49px;"></div></div><div style="position: absolute; flex: 0 0 auto; overflow: scroll; z-index: -1; visibility: hidden; width: 100%; height: 100%;"><div style="position: absolute; width: 200%; height: 200%;"></div></div></div></div></div></div></div></div><div class="__react_component_tooltip t96d904d1-f0e4-4ed5-a9c3-5d90245be5db place-top type-dark" id="single_tooltip_5" data-id="tooltip"><style aria-hidden="true">
  	.t96d904d1-f0e4-4ed5-a9c3-5d90245be5db {
	    color: #fff;
	    background: #222;
	    border: 1px solid transparent;
	    border-radius: undefinedpx;
	    padding: 8px 21px;
  	}

  	.t96d904d1-f0e4-4ed5-a9c3-5d90245be5db.place-top {
        margin-top: -10px;
    }
    .t96d904d1-f0e4-4ed5-a9c3-5d90245be5db.place-top::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: 2;
        width: 20px;
        height: 12px;
    }
    .t96d904d1-f0e4-4ed5-a9c3-5d90245be5db.place-top::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        bottom: -6px;
        left: 50%;
        margin-left: -6px;
        transform: rotate(135deg);
    }

    .t96d904d1-f0e4-4ed5-a9c3-5d90245be5db.place-bottom {
        margin-top: 10px;
    }
    .t96d904d1-f0e4-4ed5-a9c3-5d90245be5db.place-bottom::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: -1;
        width: 18px;
        height: 10px;
    }
    .t96d904d1-f0e4-4ed5-a9c3-5d90245be5db.place-bottom::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        top: -6px;
        left: 50%;
        margin-left: -6px;
        transform: rotate(45deg);
    }

    .t96d904d1-f0e4-4ed5-a9c3-5d90245be5db.place-left {
        margin-left: -10px;
    }
    .t96d904d1-f0e4-4ed5-a9c3-5d90245be5db.place-left::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: -1;
        width: 10px;
        height: 18px;
    }
    .t96d904d1-f0e4-4ed5-a9c3-5d90245be5db.place-left::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        right: -6px;
        top: 50%;
        margin-top: -6px;
        transform: rotate(45deg);
    }

    .t96d904d1-f0e4-4ed5-a9c3-5d90245be5db.place-right {
        margin-left: 10px;
    }
    .t96d904d1-f0e4-4ed5-a9c3-5d90245be5db.place-right::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: -1;
        width: 10px;
        height: 18px;
    }
    .t96d904d1-f0e4-4ed5-a9c3-5d90245be5db.place-right::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        left: -6px;
        top: 50%;
        margin-top: -6px;
        transform: rotate(-135deg);
    }
  </style><div class="do fd fe"><div class="">The thick bar covers all measurements that fall within the 25th to 75th percentile. The solid line marks the median score whilst the dotted line represents average.</div><ul class=""><li class="">Min: <b>∞s</b></li><li class="">Max: <b>-∞s</b></li><li class="">Average: <b>NaN s</b></li><li class="">Median: <b>0 s</b></li><li class="">25th percentile: <b>0 s</b></li><li class="">75th percentile: <b>0 s</b></li></ul></div></div></div></div><div class="dx fl fm fh fi fj az"><div class="fn fo dl dm az bd fp fq fr"><div data-tip="true" data-for="single_tooltip_6" currentitem="false"><div class="ac"><div class="c m"><div class="fs w"><span class="">Latency during upload</span> <span class="ft w">(0)</span></div><span class="arrowSwivel bf bg bh fu bj"><svg class="fa bl bo fc" aria-label="caret-right" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" aria-hidden="false" focusable="false"><path d="M4.488 1.85l.854-.353 6.15 6.15v.707l-6.15 6.15-.854-.354V1.85z"></path></svg></span></div><div class="ab fv"></div><div class="ac gd bf"><div class="fy fz dw c ac gd n gb">waiting for measurements...</div><div class="erd_scroll_detection_container erd_scroll_detection_container_animation_active" style="visibility: hidden; display: inline; width: 0px; height: 0px; z-index: -1; overflow: hidden; margin: 0px; padding: 0px;"><div dir="ltr" class="erd_scroll_detection_container" style="position: absolute; flex: 0 0 auto; overflow: hidden; z-index: -1; visibility: hidden; width: 100%; height: 100%; left: 0px; top: 0px;"><div class="erd_scroll_detection_container" style="position: absolute; flex: 0 0 auto; overflow: hidden; z-index: -1; visibility: hidden; inset: -11px -10px -10px -11px;"><div style="position: absolute; flex: 0 0 auto; overflow: scroll; z-index: -1; visibility: hidden; width: 100%; height: 100%;"><div style="position: absolute; left: 0px; top: 0px; width: 371px; height: 72px;"></div></div><div style="position: absolute; flex: 0 0 auto; overflow: scroll; z-index: -1; visibility: hidden; width: 100%; height: 100%;"><div style="position: absolute; width: 200%; height: 200%;"></div></div></div></div></div></div><div class="fw fx"></div><div style="position: relative;"><svg width="100%" height="2"><rect x="0" y="0" width="100%" height="2" class="ge"></rect><rect color="#2db35e" x="0" y="0" width="NaN%" height="2" class="gg"></rect></svg><div class="erd_scroll_detection_container erd_scroll_detection_container_animation_active" style="visibility: hidden; display: inline; width: 0px; height: 0px; z-index: -1; overflow: hidden; margin: 0px; padding: 0px;"><div dir="ltr" class="erd_scroll_detection_container" style="position: absolute; flex: 0 0 auto; overflow: hidden; z-index: -1; visibility: hidden; width: 100%; height: 100%; left: 0px; top: 0px;"><div class="erd_scroll_detection_container" style="position: absolute; flex: 0 0 auto; overflow: hidden; z-index: -1; visibility: hidden; inset: -11px -10px -10px -11px;"><div style="position: absolute; flex: 0 0 auto; overflow: scroll; z-index: -1; visibility: hidden; width: 100%; height: 100%;"><div style="position: absolute; left: 0px; top: 0px; width: 371px; height: 49px;"></div></div><div style="position: absolute; flex: 0 0 auto; overflow: scroll; z-index: -1; visibility: hidden; width: 100%; height: 100%;"><div style="position: absolute; width: 200%; height: 200%;"></div></div></div></div></div></div></div></div><div class="__react_component_tooltip t908b89f5-30eb-4be0-aea2-a78a479c30a8 place-top type-dark" id="single_tooltip_6" data-id="tooltip"><style aria-hidden="true">
  	.t908b89f5-30eb-4be0-aea2-a78a479c30a8 {
	    color: #fff;
	    background: #222;
	    border: 1px solid transparent;
	    border-radius: undefinedpx;
	    padding: 8px 21px;
  	}

  	.t908b89f5-30eb-4be0-aea2-a78a479c30a8.place-top {
        margin-top: -10px;
    }
    .t908b89f5-30eb-4be0-aea2-a78a479c30a8.place-top::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: 2;
        width: 20px;
        height: 12px;
    }
    .t908b89f5-30eb-4be0-aea2-a78a479c30a8.place-top::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        bottom: -6px;
        left: 50%;
        margin-left: -6px;
        transform: rotate(135deg);
    }

    .t908b89f5-30eb-4be0-aea2-a78a479c30a8.place-bottom {
        margin-top: 10px;
    }
    .t908b89f5-30eb-4be0-aea2-a78a479c30a8.place-bottom::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: -1;
        width: 18px;
        height: 10px;
    }
    .t908b89f5-30eb-4be0-aea2-a78a479c30a8.place-bottom::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        top: -6px;
        left: 50%;
        margin-left: -6px;
        transform: rotate(45deg);
    }

    .t908b89f5-30eb-4be0-aea2-a78a479c30a8.place-left {
        margin-left: -10px;
    }
    .t908b89f5-30eb-4be0-aea2-a78a479c30a8.place-left::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: -1;
        width: 10px;
        height: 18px;
    }
    .t908b89f5-30eb-4be0-aea2-a78a479c30a8.place-left::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        right: -6px;
        top: 50%;
        margin-top: -6px;
        transform: rotate(45deg);
    }

    .t908b89f5-30eb-4be0-aea2-a78a479c30a8.place-right {
        margin-left: 10px;
    }
    .t908b89f5-30eb-4be0-aea2-a78a479c30a8.place-right::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: -1;
        width: 10px;
        height: 18px;
    }
    .t908b89f5-30eb-4be0-aea2-a78a479c30a8.place-right::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        left: -6px;
        top: 50%;
        margin-top: -6px;
        transform: rotate(-135deg);
    }
  </style><div class="do fd fe"><div class="">The thick bar covers all measurements that fall within the 25th to 75th percentile. The solid line marks the median score whilst the dotted line represents average.</div><ul class=""><li class="">Min: <b>∞s</b></li><li class="">Max: <b>-∞s</b></li><li class="">Average: <b>NaN s</b></li><li class="">Median: <b>0 s</b></li><li class="">25th percentile: <b>0 s</b></li><li class="">75th percentile: <b>0 s</b></li></ul></div></div></div></div></div></div><div class="c ap" style="grid-area: packetLoss;"><div class="i c n"><div class="eu ev">Packet Loss Measurements</div><div class="ew ex ey bh"><div data-tip="true" data-for="single_tooltip_7" currentitem="false"><div class="ez"><svg class="fa bl fb fc" role="presentation" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" aria-hidden="true" focusable="false"><path d="M8 1.5a6.5 6.5 0 100 13 6.5 6.5 0 000-13zm0 12a5.5 5.5 0 110-11 5.5 5.5 0 010 11z"></path><path d="M8.572 6.253H6.607v1h.965v3.812H6.397v1h3.35v-1H8.572V6.253zM8.49 4.032H7.235v1.255H8.49V4.032z"></path></svg></div></div><div class="__react_component_tooltip tfcab2502-6a34-4d12-a6d3-178bf28fb12f place-top type-dark" id="single_tooltip_7" data-id="tooltip"><style aria-hidden="true">
  	.tfcab2502-6a34-4d12-a6d3-178bf28fb12f {
	    color: #fff;
	    background: #222;
	    border: 1px solid transparent;
	    border-radius: undefinedpx;
	    padding: 8px 21px;
  	}

  	.tfcab2502-6a34-4d12-a6d3-178bf28fb12f.place-top {
        margin-top: -10px;
    }
    .tfcab2502-6a34-4d12-a6d3-178bf28fb12f.place-top::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: 2;
        width: 20px;
        height: 12px;
    }
    .tfcab2502-6a34-4d12-a6d3-178bf28fb12f.place-top::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        bottom: -6px;
        left: 50%;
        margin-left: -6px;
        transform: rotate(135deg);
    }

    .tfcab2502-6a34-4d12-a6d3-178bf28fb12f.place-bottom {
        margin-top: 10px;
    }
    .tfcab2502-6a34-4d12-a6d3-178bf28fb12f.place-bottom::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: -1;
        width: 18px;
        height: 10px;
    }
    .tfcab2502-6a34-4d12-a6d3-178bf28fb12f.place-bottom::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        top: -6px;
        left: 50%;
        margin-left: -6px;
        transform: rotate(45deg);
    }

    .tfcab2502-6a34-4d12-a6d3-178bf28fb12f.place-left {
        margin-left: -10px;
    }
    .tfcab2502-6a34-4d12-a6d3-178bf28fb12f.place-left::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: -1;
        width: 10px;
        height: 18px;
    }
    .tfcab2502-6a34-4d12-a6d3-178bf28fb12f.place-left::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        right: -6px;
        top: 50%;
        margin-top: -6px;
        transform: rotate(45deg);
    }

    .tfcab2502-6a34-4d12-a6d3-178bf28fb12f.place-right {
        margin-left: 10px;
    }
    .tfcab2502-6a34-4d12-a6d3-178bf28fb12f.place-right::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: -1;
        width: 10px;
        height: 18px;
    }
    .tfcab2502-6a34-4d12-a6d3-178bf28fb12f.place-right::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        left: -6px;
        top: 50%;
        margin-top: -6px;
        transform: rotate(-135deg);
    }
  </style><div class="do fd fe">Each measurement represents a UDP packet that was sent to the TURN server for relaying. The WebRTC packet receiver is also configured in this application, thus every packet that is not received contributes to the packet loss rate. After sending all the test packets, there is a short time window to wait for the reception of all the packets still in transit.</div></div></div></div><div class="g"><div class="fl fm fh fi fj az"><div class="fn fo dl dm az bd fp fq fr"><div class="ac"><div class="c m"><div class="fs w"><span class="">Packet Loss Test</span> </div></div><div class="ab fv"></div><div class="fy fz dw c ac ga n gb">waiting for measurements...</div><div style="position: relative;"><svg width="100%" height="2"><rect x="0" y="0" width="100%" height="2" class="ge"></rect><rect color="#ffce4b" x="0" y="0" width="0%" height="2" class="gf"></rect></svg><div class="erd_scroll_detection_container erd_scroll_detection_container_animation_active" style="visibility: hidden; display: inline; width: 0px; height: 0px; z-index: -1; overflow: hidden; margin: 0px; padding: 0px;"><div dir="ltr" class="erd_scroll_detection_container" style="position: absolute; flex: 0 0 auto; overflow: hidden; z-index: -1; visibility: hidden; width: 100%; height: 100%; left: 0px; top: 0px;"><div class="erd_scroll_detection_container" style="position: absolute; flex: 0 0 auto; overflow: hidden; z-index: -1; visibility: hidden; inset: -11px -10px -10px -11px;"><div style="position: absolute; flex: 0 0 auto; overflow: scroll; z-index: -1; visibility: hidden; width: 100%; height: 100%;"><div style="position: absolute; left: 0px; top: 0px; width: 371px; height: 49px;"></div></div><div style="position: absolute; flex: 0 0 auto; overflow: scroll; z-index: -1; visibility: hidden; width: 100%; height: 100%;"><div style="position: absolute; width: 200%; height: 200%;"></div></div></div></div></div></div></div></div></div></div></div><div class="c ap" style="grid-area: download;"><div class="i c n"><div class="eu ev">Download Measurements</div><div class="ew ex ey bh"><div data-tip="true" data-for="single_tooltip_8" currentitem="false"><div class="ez"><svg class="fa bl fb fc" role="presentation" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" aria-hidden="true" focusable="false"><path d="M8 1.5a6.5 6.5 0 100 13 6.5 6.5 0 000-13zm0 12a5.5 5.5 0 110-11 5.5 5.5 0 010 11z"></path><path d="M8.572 6.253H6.607v1h.965v3.812H6.397v1h3.35v-1H8.572V6.253zM8.49 4.032H7.235v1.255H8.49V4.032z"></path></svg></div></div><div class="__react_component_tooltip ta0627d4c-1bba-4b89-bc7f-3fcb2988b2c5 place-top type-dark" id="single_tooltip_8" data-id="tooltip"><style aria-hidden="true">
  	.ta0627d4c-1bba-4b89-bc7f-3fcb2988b2c5 {
	    color: #fff;
	    background: #222;
	    border: 1px solid transparent;
	    border-radius: undefinedpx;
	    padding: 8px 21px;
  	}

  	.ta0627d4c-1bba-4b89-bc7f-3fcb2988b2c5.place-top {
        margin-top: -10px;
    }
    .ta0627d4c-1bba-4b89-bc7f-3fcb2988b2c5.place-top::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: 2;
        width: 20px;
        height: 12px;
    }
    .ta0627d4c-1bba-4b89-bc7f-3fcb2988b2c5.place-top::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        bottom: -6px;
        left: 50%;
        margin-left: -6px;
        transform: rotate(135deg);
    }

    .ta0627d4c-1bba-4b89-bc7f-3fcb2988b2c5.place-bottom {
        margin-top: 10px;
    }
    .ta0627d4c-1bba-4b89-bc7f-3fcb2988b2c5.place-bottom::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: -1;
        width: 18px;
        height: 10px;
    }
    .ta0627d4c-1bba-4b89-bc7f-3fcb2988b2c5.place-bottom::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        top: -6px;
        left: 50%;
        margin-left: -6px;
        transform: rotate(45deg);
    }

    .ta0627d4c-1bba-4b89-bc7f-3fcb2988b2c5.place-left {
        margin-left: -10px;
    }
    .ta0627d4c-1bba-4b89-bc7f-3fcb2988b2c5.place-left::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: -1;
        width: 10px;
        height: 18px;
    }
    .ta0627d4c-1bba-4b89-bc7f-3fcb2988b2c5.place-left::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        right: -6px;
        top: 50%;
        margin-top: -6px;
        transform: rotate(45deg);
    }

    .ta0627d4c-1bba-4b89-bc7f-3fcb2988b2c5.place-right {
        margin-left: 10px;
    }
    .ta0627d4c-1bba-4b89-bc7f-3fcb2988b2c5.place-right::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: -1;
        width: 10px;
        height: 18px;
    }
    .ta0627d4c-1bba-4b89-bc7f-3fcb2988b2c5.place-right::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        left: -6px;
        top: 50%;
        margin-top: -6px;
        transform: rotate(-135deg);
    }
  </style><div class="do fd fe">Each measurement represents the actual time it took to transfer the file. To do this, we start measuring from the moment we start receiving the actual first byte of data. This omits the time required to actually perform and process the actual HTTP request.</div></div></div></div><div class="g"><div class="dx fg fh fi fj az"><div class="fy fz dw c ac gc n gb">waiting for measurements...</div></div></div></div><div class="c ap" style="grid-area: upload;"><div class="i c n"><div class="eu ev">Upload Measurements</div><div class="ew ex ey bh"><div data-tip="true" data-for="single_tooltip_9" currentitem="false"><div class="ez"><svg class="fa bl fb fc" role="presentation" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" aria-hidden="true" focusable="false"><path d="M8 1.5a6.5 6.5 0 100 13 6.5 6.5 0 000-13zm0 12a5.5 5.5 0 110-11 5.5 5.5 0 010 11z"></path><path d="M8.572 6.253H6.607v1h.965v3.812H6.397v1h3.35v-1H8.572V6.253zM8.49 4.032H7.235v1.255H8.49V4.032z"></path></svg></div></div><div class="__react_component_tooltip td047ca78-24f3-49d0-87bf-e52167484183 place-top type-dark" id="single_tooltip_9" data-id="tooltip"><style aria-hidden="true">
  	.td047ca78-24f3-49d0-87bf-e52167484183 {
	    color: #fff;
	    background: #222;
	    border: 1px solid transparent;
	    border-radius: undefinedpx;
	    padding: 8px 21px;
  	}

  	.td047ca78-24f3-49d0-87bf-e52167484183.place-top {
        margin-top: -10px;
    }
    .td047ca78-24f3-49d0-87bf-e52167484183.place-top::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: 2;
        width: 20px;
        height: 12px;
    }
    .td047ca78-24f3-49d0-87bf-e52167484183.place-top::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        bottom: -6px;
        left: 50%;
        margin-left: -6px;
        transform: rotate(135deg);
    }

    .td047ca78-24f3-49d0-87bf-e52167484183.place-bottom {
        margin-top: 10px;
    }
    .td047ca78-24f3-49d0-87bf-e52167484183.place-bottom::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: -1;
        width: 18px;
        height: 10px;
    }
    .td047ca78-24f3-49d0-87bf-e52167484183.place-bottom::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        top: -6px;
        left: 50%;
        margin-left: -6px;
        transform: rotate(45deg);
    }

    .td047ca78-24f3-49d0-87bf-e52167484183.place-left {
        margin-left: -10px;
    }
    .td047ca78-24f3-49d0-87bf-e52167484183.place-left::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: -1;
        width: 10px;
        height: 18px;
    }
    .td047ca78-24f3-49d0-87bf-e52167484183.place-left::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        right: -6px;
        top: 50%;
        margin-top: -6px;
        transform: rotate(45deg);
    }

    .td047ca78-24f3-49d0-87bf-e52167484183.place-right {
        margin-left: 10px;
    }
    .td047ca78-24f3-49d0-87bf-e52167484183.place-right::before {
        content: "";
        background-color: inherit;
        position: absolute;
        z-index: -1;
        width: 10px;
        height: 18px;
    }
    .td047ca78-24f3-49d0-87bf-e52167484183.place-right::after {
        content: "";
        position: absolute;
        width: 10px;
        height: 10px;
        border-top-right-radius: undefinedpx;
        border: 1px solid transparent;
        background-color: #222;
        z-index: -2;
        left: -6px;
        top: 50%;
        margin-top: -6px;
        transform: rotate(-135deg);
    }
  </style><div class="do fd fe">Each measurement represents the actual time it took to upload the file. To do this, we start measuring from the moment we start uploading the file till we receive the first byte of the acknowledgement.</div></div></div></div><div class="g"><div class="dx fg fh fi fj az"><div class="fy fz dw c ac gc n gb">waiting for measurements...</div></div></div></div></div><div class="h i"></div><div class="h i"><div class="z ac ae"></div><div class="dv dx"></div><div class="c dy n m"><div class="c dz"><a href="/" class="bp ea u w x y">Home</a><a href="/about/" class="bp ea u w x y">About</a><a href="https://www.cloudflare.com/privacypolicy/" class="bp ea u w x y">Privacy Policy</a><a href="https://www.cloudflare.com/website-terms/" class="bp ea u w x y">Terms of Use</a></div><a target="_blank" href="https://www.cloudflare.com" class="u w x y"><div class="eb"><div><svg viewBox="0 0 105 36" role="img" width="105px" height="41px" aria-hidden="true"><path fill="#000" d="M11.679 26.754h2.353v6.423h4.111v2.06H11.68v-8.483zM20.58 31.02v-.024c0-2.436 1.965-4.412 4.584-4.412 2.62 0 4.56 1.951 4.56 4.387v.025c0 2.436-1.965 4.41-4.584 4.41-2.618 0-4.56-1.95-4.56-4.386zm6.743 0v-.024c0-1.223-.885-2.291-2.183-2.291-1.285 0-2.147 1.042-2.147 2.266v.025c0 1.222.886 2.29 2.171 2.29 1.298 0 2.159-1.042 2.159-2.266zM32.604 31.517v-4.763h2.389v4.714c0 1.223.618 1.806 1.564 1.806.946 0 1.564-.557 1.564-1.745v-4.775h2.39v4.7c0 2.74-1.564 3.939-3.978 3.939s-3.93-1.223-3.93-3.878M44.112 26.755h3.274c3.032 0 4.79 1.744 4.79 4.192v.025c0 2.447-1.782 4.265-4.838 4.265h-3.226v-8.483zm3.31 6.397c1.408 0 2.34-.775 2.34-2.146v-.024c0-1.357-.932-2.145-2.34-2.145h-.958v4.316l.959-.001zM55.596 26.754h6.791v2.06h-4.438v1.442h4.014v1.951h-4.014v3.03h-2.353v-8.483zM65.661 26.754h2.353v6.423h4.111v2.06h-6.464v-8.483zM78.273 26.693h2.268l3.614 8.544h-2.522l-.62-1.515H77.74l-.606 1.515h-2.474l3.614-8.544zm2.062 5.2l-.946-2.413-.959 2.412h1.905zM87.186 26.754H91.2c1.298 0 2.195.34 2.765.921.498.485.752 1.14.752 1.976v.024c0 1.296-.693 2.156-1.746 2.605l2.025 2.957H92.28l-1.71-2.57h-1.03v2.57h-2.353v-8.483zm3.905 4.072c.8 0 1.262-.388 1.262-1.006v-.024c0-.667-.486-1.006-1.275-1.006h-1.54v2.038l1.553-.002zM98.112 26.754h6.827v2h-4.498v1.284h4.075v1.854h-4.075v1.346H105v1.999h-6.888v-8.483zM6.528 32.014c-.33.744-1.023 1.272-1.944 1.272-1.286 0-2.171-1.067-2.171-2.29v-.025c0-1.223.86-2.266 2.146-2.266.97 0 1.708.595 2.02 1.406h2.48c-.398-2.02-2.173-3.526-4.475-3.526-2.62 0-4.584 1.977-4.584 4.41v.024c0 2.436 1.94 4.388 4.56 4.388 2.24 0 3.991-1.45 4.453-3.393H6.528z"></path><path d="M89.012 22.355l.257-.887c.306-1.056.192-2.031-.321-2.748-.472-.66-1.259-1.049-2.214-1.094l-18.096-.229a.358.358 0 01-.285-.151.367.367 0 01-.04-.326.481.481 0 01.42-.321l18.263-.232c2.166-.099 4.512-1.856 5.333-3.998L93.37 9.65a.659.659 0 00.028-.36C92.216 3.975 87.468 0 81.792 0c-5.23 0-9.67 3.373-11.263 8.061a5.34 5.34 0 00-3.756-1.039 5.356 5.356 0 00-4.637 6.644c-4.099.12-7.386 3.475-7.386 7.6 0 .368.028.735.082 1.1a.354.354 0 00.348.305l33.408.004h.009a.44.44 0 00.415-.32z" fill="#F6821F"></path><path d="M95.04 9.847c-.167 0-.334.004-.5.013a.28.28 0 00-.079.017.285.285 0 00-.182.192l-.712 2.456c-.305 1.055-.192 2.03.322 2.746.471.661 1.258 1.05 2.213 1.094l3.858.232a.351.351 0 01.275.149.365.365 0 01.041.328.484.484 0 01-.42.32l-4.008.232c-2.176.1-4.521 1.856-5.342 3.998l-.29.756a.212.212 0 00.095.262c.03.017.062.027.096.028h13.802a.366.366 0 00.356-.265 9.846 9.846 0 00.367-2.677c-.001-5.457-4.429-9.88-9.891-9.88z" fill="#FBAD41"></path></svg></div></div></a></div></div></div><div class="erd_scroll_detection_container erd_scroll_detection_container_animation_active" style="visibility: hidden; display: inline; width: 0px; height: 0px; z-index: -1; overflow: hidden; margin: 0px; padding: 0px;"><div dir="ltr" class="erd_scroll_detection_container" style="position: absolute; flex: 0 0 auto; overflow: hidden; z-index: -1; visibility: hidden; width: 100%; height: 100%; left: 0px; top: 0px;"><div class="erd_scroll_detection_container" style="position: absolute; flex: 0 0 auto; overflow: hidden; z-index: -1; visibility: hidden; inset: -11px -10px -10px -11px;"><div style="position: absolute; flex: 0 0 auto; overflow: scroll; z-index: -1; visibility: hidden; width: 100%; height: 100%;"><div style="position: absolute; left: 0px; top: 0px; width: 799px; height: 1401px;"></div></div><div style="position: absolute; flex: 0 0 auto; overflow: scroll; z-index: -1; visibility: hidden; width: 100%; height: 100%;"><div style="position: absolute; width: 200%; height: 200%;"></div></div></div></div></div></div></div></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{}},"page":"/","query":{},"buildId":"OiaEaWLM5XAOBEW0HF9dl","nextExport":true,"autoExport":true,"isFallback":false,"scriptLoader":[]}</script><script defer="" src="https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" integrity="sha512-ZpsOmlRQV6y907TI0dKBHq9Md29nnaEIPlkf84rnaERnq6zvWvPUqr2ft8M1aS28oN72PdrCzSjY4U6VaAw1EQ==" data-cf-beacon="{&quot;rayId&quot;:&quot;8cfc4ae699c12fa7&quot;,&quot;version&quot;:&quot;2024.8.0&quot;,&quot;serverTiming&quot;:{&quot;name&quot;:{&quot;cfExtPri&quot;:true,&quot;cfL4&quot;:true}},&quot;token&quot;:&quot;96223dabe4f24068913679b95bdf96ef&quot;,&quot;b&quot;:1}" crossorigin="anonymous"></script>
<next-route-announcer><p aria-live="assertive" id="__next-route-announcer__" role="alert" style="border: 0px; clip: rect(0px, 0px, 0px, 0px); height: 1px; margin: -1px; overflow: hidden; padding: 0px; position: absolute; width: 1px; white-space: nowrap; overflow-wrap: normal;"></p></next-route-announcer></body></html>