1<!DOCTYPE html><html lang="en" class="css-18y42"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><title>About - cdnjs</title><meta name="theme-color" content="#242525"/><meta name="title" content="About - cdnjs"/><meta name="description" content="Learn more about cdnjs, how libraries are added, the team behind it, and the sponsors that make it possible to run this service for free. cdnjs is the free, open-source CDN for the web's most popular libraries. JavaScript, CSS, and font resources, globally cached on Cloudflare's network. Trusted by 12.5% of all websites, serving 250 billion requests per month."/><meta name="keywords" content="about, team, sponsors, cdn, cache, cdnjs, cloudflare, js, javascript, css, font, fonts, library, package, resource, web, frontend, front-end, free, open-source, open source, oss, npm, github"/><link rel="canonical" href="https://cdnjs.com/about"/><meta name="twitter:card" content="summary_large_image"/><meta name="twitter:title" content="About - cdnjs"/><meta name="twitter:description" content="Learn more about cdnjs, how libraries are added, the team behind it, and the sponsors that make it possible to run this service for free. cdnjs is the free, open-source CDN for the web's most popular libraries. JavaScript, CSS, and font resources, globally cached on Cloudflare's network. Trusted by 12.5% of all websites, serving 250 billion requests per month."/><meta name="twitter:url" content="https://cdnjs.com/about"/><meta name="twitter:site" content="@cdnjs"/><meta name="twitter:creator" content="@MattIPv4"/><meta name="twitter:image" content="https://cdnjs.com/banner.png"/><meta property="og:title" content="About - cdnjs"/><meta property="og:description" content="Learn more about cdnjs, how libraries are added, the team behind it, and the sponsors that make it possible to run this service for free. cdnjs is the free, open-source CDN for the web's most popular libraries. JavaScript, CSS, and font resources, globally cached on Cloudflare's network. Trusted by 12.5% of all websites, serving 250 billion requests per month."/><meta property="og:url" content="https://cdnjs.com/about"/><meta property="og:site_name" content="cdnjs"/><meta property="og:type" content="website"/><meta property="og:locale" content="en_US"/><meta property="og:image" content="https://cdnjs.com/banner.png"/><meta property="og:image:secure_url" content="https://cdnjs.com/banner.png"/><link title="cdnjs" type="application/opensearchdescription+xml" href="/opensearch.xml" rel="search"/><link rel="icon" type="image/x-icon" href="/favicon.ico"/><link rel="icon" type="image/png" href="/favicon.png"/><link rel="icon" type="image/svg+xml" href="/favicon.svg"/><link rel="shortcut-icon" type="image/png" href="/favicon.png"/><link rel="apple-touch-icon" type="image/png" href="/favicon.png"/><link rel="dns-prefetch" href="https://cdnjs.cloudflare.com"/><link rel="preconnect" href="https://cdnjs.cloudflare.com" crossorigin="anonymous" referrerPolicy="no-referrer"/><link rel="preload" href="https://cdnjs.cloudflare.com/ajax/libs/modern-normalize/3.0.1/modern-normalize.min.css" as="style" integrity="sha512-q6WgHqiHlKyOqslT/lgBgodhd03Wp4BEqKeW6nNtlOY4quzyG3VoQKFrieaCeSnuVseNKRGpGeDU3qPmabCANg==" crossorigin="anonymous" referrerPolicy="no-referrer"/><link rel="preload" href="https://cdnjs.cloudflare.com/ajax/libs/fontsource-inter/5.2.8/index.min.css" as="style" integrity="sha512-6arWMnMEofnjQzuSHcwFlEMCPRJLWifo5SNG8mG46UaPdY9dwR+eRYwNKv+c/jQwFrSE56Pox98ubnJuALLjzA==" crossorigin="anonymous" referrerPolicy="no-referrer"/><link rel="preload" href="https://cdnjs.cloudflare.com/ajax/libs/fontsource-inter/5.2.8/files/inter-latin-400-normal.woff2" as="font" type="font/woff2" crossorigin="anonymous" referrerPolicy="no-referrer"/><link rel="preload" href="https://cdnjs.cloudflare.com/ajax/libs/fontsource-jetbrains-mono/5.2.8/index.min.css" as="style" integrity="sha512-wy9HCEuMc2WciAissjPymKPuomtDPAqHxed+9+led70ajmRqU1AD8dcFQW6FbTkgPeAaUmUq1mzfBjJ2hMxJ3w==" crossorigin="anonymous" referrerPolicy="no-referrer"/><link rel="preload" href="https://cdnjs.cloudflare.com/ajax/libs/fontsource-jetbrains-mono/5.2.8/files/jetbrains-mono-latin-400-normal.woff2" as="font" type="font/woff2" crossorigin="anonymous" referrerPolicy="no-referrer"/><link rel="preload" href="https://cdnjs.cloudflare.com/ajax/libs/fontsource-space-grotesk/5.2.8/index.min.css" as="style" integrity="sha512-FT7MJI83N9vNo9hTY75CYSWvGhs8EJUrgb2cqLlJrBbG99yJW9Vm7FYbYsB4xDYVFfD7FjnERyaU/MdDuxTGQg==" crossorigin="anonymous" referrerPolicy="no-referrer"/><link rel="preload" href="https://cdnjs.cloudflare.com/ajax/libs/fontsource-space-grotesk/5.2.8/files/sp
1ace-grotesk-latin-400-normal.woff2" as="font" type="font/woff2" crossorigin="anonymous" referrerPolicy="no-referrer"/><link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/modern-normalize/3.0.1/modern-normalize.min.css" integrity="sha512-q6WgHqiHlKyOqslT/lgBgodhd03Wp4BEqKeW6nNtlOY4quzyG3VoQKFrieaCeSnuVseNKRGpGeDU3qPmabCANg==" crossorigin="anonymous" referrerPolicy="no-referrer"/><link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/fontsource-inter/5.2.8/index.min.css" integrity="sha512-6arWMnMEofnjQzuSHcwFlEMCPRJLWifo5SNG8mG46UaPdY9dwR+eRYwNKv+c/jQwFrSE56Pox98ubnJuALLjzA==" crossorigin="anonymous" referrerPolicy="no-referrer"/><link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/fontsource-jetbrains-mono/5.2.8/index.min.css" integrity="sha512-wy9HCEuMc2WciAissjPymKPuomtDPAqHxed+9+led70ajmRqU1AD8dcFQW6FbTkgPeAaUmUq1mzfBjJ2hMxJ3w==" crossorigin="anonymous" referrerPolicy="no-referrer"/><link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/fontsource-space-grotesk/5.2.8/index.min.css" integrity="sha512-FT7MJI83N9vNo9hTY75CYSWvGhs8EJUrgb2cqLlJrBbG99yJW9Vm7FYbYsB4xDYVFfD7FjnERyaU/MdDuxTGQg==" crossorigin="anonymous" referrerPolicy="no-referrer"/><style data-emotion="css 1h8q802 1aupga7 4aqzra q8acn6 ck05i1 12w1z6z 70md0y 1taerq5 eea0k5 fu8ope 9e7oxd iv9sb6 1h0enx2 114icok 18y42 1gclvze gk7skr 18e4oum 1ydoihd wj0rra 1bmmy2l 190095o 1wns8sj 1p9e7mr 1tkgruk 9hx3tc gjfh51 2i10xu 1oqhdu5 1668fef tzbmo0 1wlcdcq 3jxgab 1kgs2lq 12rftfd 1ia9ks2 1eqzbkx 1g7v4ay ir82op 4ijwxm tdh7fd 19vjh76 1whdftj tvde3q 1bmnzf3 5n9u9r vfuzlw q03vu6 19ykprv 1ytj7bg 1lfjxqt">.css-1h8q802{display:contents;}.css-1aupga7{margin:0;}.css-4aqzra{border-right:2px solid currentColor;margin:0 8px 0 0;padding:0 8px 0 0;font-size:1.25rem;font-weight:400;}.css-q8acn6{color:currentColor;-webkit-text-decoration:underline;text-decoration:underline;}.css-q8acn6:hover{-webkit-text-decoration:none;text-decoration:none;}.css-ck05i1{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;margin:16px 0;}.css-12w1z6z{color:#a6a6a6;text-transform:uppercase;margin:0 0 16px;font-size:0.875rem;font-weight:400;}.css-12w1z6z:not(:first-of-type){margin-top:32px;}.css-70md0y{margin:0 0 8px;}.css-70md0y:last-child{margin-bottom:0;}.css-1taerq5{color:#ebebeb;-webkit-text-decoration:none;text-decoration:none;-webkit-transition:color 0.2s ease-in-out;transition:color 0.2s ease-in-out;}.css-1taerq5:hover{color:#d9643a;-webkit-text-decoration:underline;text-decoration:underline;}.css-eea0k5{display:block;max-width:100%;width:256px;margin:0 0 16px;}.css-fu8ope{width:10px;height:10px;border-radius:50%;background-color:#3a3c3c;-webkit-transition:background-color 0.2s ease-in-out;transition:background-color 0.2s ease-in-out;}.css-9e7oxd{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:16px;list-style:none;margin:0;padding:0;}.css-9e7oxd >li:first-child{margin-right:auto;}.css-9e7oxd >li:last-child{display:none;}@media screen and (max-width: 768px){.css-9e7oxd >li:not(:first-child):not(:last-child){display:none;}.css-9e7oxd >li:last-child{display:block;}}.css-iv9sb6{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:baseline;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline;gap:8px;padding:8px;color:#ebebeb;-webkit-text-decoration:none;text-decoration:none;-webkit-transition:color 0.2s ease-in-out;transition:color 0.2s ease-in-out;}.css-iv9sb6:hover{color:#d9643a;-webkit-text-decoration:underline;text-decoration:underline;}.css-1h0enx2{display:block;max-width:100%;height:32px;object-fit:contain;}.css-114icok{position:absolute;top:100%;left:0;right:0;background:#242525;border-top:2px solid #d9643a;border-bottom:2px solid #242525;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;gap:4px;list-style:none;margin:0;padding:8px 0;}.css-18y42{background:#242525;color:#ebebeb;}.css-1gclvze{background:#3a3c3c;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;min-height:100vh;}@-webkit-keyframes animation-gk7skr{0%{-webkit-transform:scale(1);-moz-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:0.7;}
150%,100%{-webkit-transform:scale(4);-moz-transform:scale(4);-ms-transform:scale(4);transform:scale(4);opacity:0;}}@keyframes animation-gk7skr{0%{-webkit-transform:scale(1);-moz-transform:scale(1);-ms-transform:scale(1);transform:scale(1);opacity:0.7;}50%,100%{-webkit-transform:scale(4);-moz-transform:scale(4);-ms-transform:scale(4);transform:scale(4);opacity:0;}}@-webkit-keyframes animation-18e4oum{0%{opacity:0.35;}50%{opacity:0.7;}100%{opacity:0.35;}}@keyframes animation-18e4oum{0%{opacity:0.35;}50%{opacity:0.7;}100%{opacity:0.35;}}@-webkit-keyframes animation-1ydoihd{0%{offset-distance:0%;opacity:0;}5%,95%{opacity:1;}100%{offset-distance:100%;opacity:0;}}@keyframes animation-1ydoihd{0%{offset-distance:0%;opacity:0;}5%,95%{opacity:1;}100%{offset-distance:100%;opacity:0;}}.css-wj0rra{fill:currentColor;opacity:0.2;}.css-1bmmy2l{fill:none;stroke:currentColor;stroke-width:1;opacity:0.1;}.css-190095o{fill:color-mix(in oklab, currentColor, transparent 80%);transform-box:fill-box;transform-origin:center;-webkit-animation:animation-gk7skr linear infinite;animation:animation-gk7skr linear infinite;will-change:transform,opacity;}.css-1wns8sj{-webkit-animation:animation-18e4oum linear infinite;animation:animation-18e4oum linear infinite;will-change:opacity;}.css-1wns8sj:nth-child(1){fill:currentColor;}.css-1wns8sj:nth-child(2){fill:color-mix(in oklab, currentColor, white 35%);}.css-1p9e7mr{-webkit-animation:animation-1ydoihd linear infinite;animation:animation-1ydoihd linear infinite;will-change:offset-distance,opacity;}.css-1p9e7mr:nth-child(1){fill:color-mix(in oklab, currentColor, transparent 65%);-webkit-filter:blur(2.5px);filter:blur(2.5px);}.css-1p9e7mr:nth-child(2){fill:color-mix(in oklab, currentColor, white 55%);}.css-1tkgruk{position:relative;isolation:isolate;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}.css-9hx3tc{color:#d9643a;position:absolute;width:100vw;height:calc(100% + 32px);left:50%;-webkit-transform:translateX(-50%);-moz-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%);top:-16px;bottom:-16px;z-index:-1;pointer-events:none;}.css-gjfh51{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;text-align:center;gap:32px;margin:auto;max-width:100%;background:radial-gradient( 2 ellipse at center, 3 rgb(from #3a3c3c r g b / 0.9) 0%, 4 rgb(from #3a3c3c r g b / 0) 100% 5 );padding:32px 16px;}.css-2i10xu{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:12px;background:rgb(from #d9643a r g b / 0.125);border:1px solid rgb(from #d9643a r g b / 0.75);border-radius:32px;color:#d9643a;font-family:"JetBrains Mono",ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",Menlo,monospace;font-size:0.75rem;font-weight:400;line-height:1;text-transform:uppercase;padding:8px 14px;margin:0;opacity:0.875;}.css-2i10xu::before{content:' ';display:block;width:6px;height:6px;margin:0 -2px;border-radius:50%;background:#d9643a;box-shadow:0 0 6px #d9643a;}.css-1oqhdu5{font-family:"Space Grotesk",system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";line-height:1.125;margin:0;}.css-1oqhdu5,.css-1oqhdu5 strong{font-size:3rem;font-weight:600;}.css-1oqhdu5 strong{color:#d9643a;}.css-1oqhdu5 small{color:#a6a6a6;font-family:"JetBrains Mono",ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",Menlo,monospace;font-size:1rem;font-weight:400;}.css-1668fef{color:#a6a6a6;line-height:1.5;margin:0;}.css-1668fef,.css-1668fef strong{font-size:0.875rem;font-weight:400;}.css-1668fef strong{color:#ebebeb;}.css-tzbmo0{position:relative;isolation:isolate;padding:16px 0px;}.css-tzbmo0::before{content:'';position:absolute;width:100vw;left:50%;-webkit-transform:translateX(-50%);-moz-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%);background:#242525;top:0;bottom:0;z-index:-1;}.css-1wlcdcq{margin:32px 0px 0px;}.css-1wlcdcq p{color:#a6a6a6;font-size:1rem;font-weight:400;margin:16px 0px 0px;}.css-1wlcdcq p a{color:#d9643a;-webkit-text-decoration:underline;text-decoration:underline;}.css-1wlcdcq p a:hover,.css-1wlcdcq p a:focus{-webkit-text-decoration:none;text-decoration:none;}.css-3jxgab{font-size:1.25rem;font-weight:400;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:16px;margin:0;}.css-3jxgab::after{content:'';-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;height:1px;background:#ebebeb;margin:2px 0px 0px;opacity:0.125;}.css-1kgs2lq{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;max-width:1024px;margin:0 auto;padding:0px 0px 16px;}.css-12rftfd{display:grid;grid-template-columns:repeat(4, minmax(0, 1fr));gap:32px;padding:16px 0px;margin:0;list-style:none;}@media screen and (max-width: 768px){.css-12rftfd{grid-template-columns:repeat(2, minmax(0, 1fr));}}.css-1ia9ks2{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;gap:4px;color:#a6a6a6;font-family:"JetBrains Mono",ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",Menlo,monospace;font-size:0.75rem;font-weight:400;text-align:center;text-transform:uppercase;}.css-1ia9ks2 strong{display:block;color:#ebebeb;font-family:"Space Grotesk",system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";font-size:1.25rem;font-weight:400;}.css-1eqzbkx{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:32px;}@media screen and (max-width: 768px){.css-1eqzbkx{grid-template-columns:1fr;}}.css-1g7v4ay{background:#242525;border-radius:4px;padding:16px;margin:16px 0px 0px;color:#a6a6a6;font-family:"JetBrains Mono",ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",Menlo,monospace;font-size:0.75rem;font-weight:400;}.css-ir82op{color:#d9643a;}.css-4ijwxm{color:rgb(from #d9643a r g b / 0.5);}.css-tdh7fd{color:rgb(from #a6a6a6 r g b / 0.5);}.css-19vjh76{background:#242525;border-radius:4px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-flex-wrap:wrap;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:8px;padding:16px;margin:16px 0px 0px;}.css-19vjh76 p{color:#a6a6a6;font-family:"JetBrains Mono",ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",Menlo,monospace;font-size:0.75rem;font-weight:400;margin:0;}.css-19vjh76 ul{display:contents;margin:0;padding:0;list-style:none;}.css-19vjh76 ul a{color:#d9643a;-webkit-text-decoration:underline;text-decoration:underline;}.css-19vjh76 ul a:hover,.css-19vjh76 ul a:focus{-webkit-text-decoration:none;text-decoration:none;}.css-19vjh76 ul div{width:4px;height:4px;border-radius:50%;background:#3a3c3c;}
5.css-1whdftj{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:16px;margin:32px 0px 0px;padding:0;list-style:none;}@media screen and (max-width: 768px){.css-1whdftj{grid-template-columns:1fr;}}.css-1whdftj li{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;gap:8px;padding:16px;background:#242525;border-radius:4px;position:relative;isolation:isolate;-webkit-transition:background 0.2s ease-in-out;transition:background 0.2s ease-in-out;}.css-1whdftj li:has(a:hover, a:focus){background:rgb(from #242525 r g b / 0.75);}.css-1whdftj li p{margin:0;}.css-1whdftj li p,.css-1whdftj li p small{font-size:0.875rem;font-weight:400;}.css-1whdftj li p small{color:rgb(from #a6a6a6 r g b / 0.5);}.css-1whdftj li a{color:#d9643a;font-size:1.25rem;font-weight:400;-webkit-text-decoration:underline;text-decoration:underline;}.css-1whdftj li a:hover{-webkit-text-decoration:none;text-decoration:none;}.css-1whdftj li a::before{content:'';position:absolute;width:100%;height:100%;top:0;left:0;}.css-tvde3q{font-size:1rem;font-weight:400;font-family:"Inter",system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";overflow-x:hidden;background:#242525;color:#ebebeb;}.css-tvde3q *:focus-visible{outline:2px solid #d9643a;border-radius:4px;}.css-1bmnzf3{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;isolation:isolate;position:relative;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;margin:0 auto;width:100%;max-width:1536px;padding:16px;}@media screen and (max-width: 768px){.css-1bmnzf3{padding:8px;}}.css-5n9u9r{position:relative;isolation:isolate;z-index:1;margin:0 auto;width:100%;max-width:1536px;padding:16px;}.css-5n9u9r::before{content:'';position:absolute;width:100vw;left:50%;-webkit-transform:translateX(-50%);-moz-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%);background:#242525;top:0;bottom:0;z-index:-1;}@media screen and (max-width: 768px){.css-5n9u9r{padding:8px;}}.css-vfuzlw{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:baseline;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline;gap:8px;padding:8px;color:#ebebeb;-webkit-text-decoration:none;text-decoration:none;-webkit-transition:color 0.2s ease-in-out;transition:color 0.2s ease-in-out;font-size:1.25rem;font-weight:400;list-style:none;}.css-vfuzlw:hover{color:#d9643a;-webkit-text-decoration:underline;text-decoration:underline;}.css-vfuzlw:hover{-webkit-text-decoration:none;text-decoration:none;}.css-vfuzlw::-webkit-details-marker{display:none;}[open]>.css-vfuzlw{color:#d9643a;}.css-q03vu6{color:#141515;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-box-flex-wrap:wrap;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;position:relative;isolation:isolate;padding-top:8px;padding-bottom:8px;margin:0 auto;width:100%;max-width:1536px;padding:16px;}.css-q03vu6::before{content:'';position:absolute;width:100vw;left:50%;-webkit-transform:translateX(-50%);-moz-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%);background:#d9643a;top:0;bottom:0;z-index:-1;}@media screen and (max-width: 768px){.css-q03vu6{padding:8px;}}.css-19ykprv{display:grid;grid-template-columns:repeat(4, 1fr);gap:32px;position:relative;isolation:isolate;margin:0 auto;width:100%;max-width:1536px;padding:16px;}@media screen and (max-width: 768px){.css-19ykprv{grid-template-columns:repeat(2, 1fr);}}.css-19ykprv::before{content:'';position:absolute;width:100vw;left:50%;-webkit-transform:translateX(-50%);-moz-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%);background:#242525;top:0;bottom:0;z-index:-1;}
5@media screen and (max-width: 768px){.css-19ykprv{padding:8px;}}.css-1ytj7bg{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;margin:16px 0;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:justify;-webkit-justify-content:space-between;justify-content:space-between;}.css-1ytj7bg dd{color:#a6a6a6;font-size:0.875rem;font-weight:400;margin-top:16px;}.css-1lfjxqt{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:baseline;-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline;gap:8px;padding:8px;color:#ebebeb;-webkit-text-decoration:none;text-decoration:none;-webkit-transition:color 0.2s ease-in-out;transition:color 0.2s ease-in-out;color:#d9643a;}.css-1lfjxqt:hover{color:#d9643a;-webkit-text-decoration:underline;text-decoration:underline;}</style></head><body class="css-tvde3q"><main class="css-1gclvze"><nav class="css-5n9u9r"><ul class="css-9e7oxd"><li><a href="/" rel="noopener" aria-label="cdnjs"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 412 113" class="css-1h0enx2"><g fill="none"><path stroke="#a6a6a6" stroke-linecap="round" stroke-width="10.24" d="M60.54 6.736 7.229 54.333a5.53 5.53 0 0 0 .113 8.348l53.2 44.97M350.845 6.736l53.313 47.597a5.53 5.53 0 0 1-.113 8.348l-53.2 44.97"></path><path fill="#ff6934" d="M75.743 57.567q0-6.413 1.99-11.999 1.992-5.585 5.696-9.677 3.705-4.091 9.013-6.414 5.309-2.322 11.944-2.322 8.184 0 15.483 2.986l-2.875 10.948q-2.323-.995-5.254-1.659-2.93-.663-6.248-.663-7.852 0-11.944 4.921t-4.092 13.88q0 8.625 3.87 13.658 3.871 5.031 13.05 5.032 3.429 0 6.747-.664 3.318-.663 5.75-1.659l1.88 11.06q-2.211 1.105-6.69 1.99t-9.235.885q-7.41 0-12.883-2.267-5.475-2.268-9.069-6.304t-5.364-9.622-1.77-12.11m65.736-.22q0 8.847 4.203 13.879 4.202 5.031 11.612 5.032 3.207 0 5.474-.277 2.266-.276 3.705-.608V42.195q-1.77-1.216-4.7-2.267t-6.249-1.05q-7.299 0-10.672 4.976-3.373 4.977-3.373 13.492m38.375 27.316q-3.981 1.216-10.008 2.211-6.028.996-12.663.996-6.857 0-12.276-2.102-5.418-2.1-9.234-6.027t-5.861-9.51q-2.046-5.586-2.046-12.553 0-6.856 1.714-12.442 1.714-5.585 5.032-9.566a22.4 22.4 0 0 1 8.073-6.138q4.755-2.156 10.949-2.156 4.201 0 7.41.995 3.206.996 5.529 2.212V2.824L179.854.613zm17.961-54.19q3.87-1.106 10.064-2.102t13.713-.995q7.078 0 11.834 1.935T241 34.73t3.981 8.404 1.162 10.783v32.514h-13.382V56.019q0-4.644-.608-7.907-.61-3.263-1.99-5.309-1.383-2.046-3.761-2.986-2.377-.94-5.806-.94-2.544 0-5.308.332-2.766.332-4.092.553v46.67h-13.382z"></path><path fill="#ebebeb" d="M256.031 107.002q-1.437 0-4.037-.276-2.598-.277-4.59-1.051l1.77-10.949q2.433.775 5.862.775 4.644 0 6.525-2.71 1.88-2.71 1.88-8.128v-56.07h13.381v56.29q0 11.281-5.363 16.7-5.364 5.42-15.428 5.42m22.229-95.33q0 3.76-2.433 5.972t-5.75 2.212q-3.429 0-5.862-2.212t-2.433-5.972q0-3.87 2.433-6.083 2.433-2.211 5.861-2.212 3.318 0 5.751 2.212t2.433 6.083m31.01 65.138q5.31 0 7.742-1.271 2.433-1.272 2.433-4.369 0-2.876-2.6-4.755-2.598-1.88-8.57-4.092-3.65-1.328-6.69-2.82-3.043-1.493-5.254-3.484-2.212-1.99-3.484-4.81-1.27-2.82-1.271-6.913 0-7.962 5.861-12.552 5.862-4.59 15.925-4.59 5.088 0 9.732.94 4.646.941 6.968 1.825l-2.433 10.839q-2.213-.996-5.64-1.825-3.429-.83-7.963-.83-4.092 0-6.636 1.383-2.543 1.382-2.543 4.257 0 1.439.497 2.544.498 1.106 1.715 2.046 1.216.94 3.207 1.88t4.866 1.935q4.755 1.77 8.073 3.484 3.318 1.715 5.474 3.87 2.157 2.158 3.152 4.922t.995 6.636q0 8.294-6.137 12.552-6.138 4.257-17.53 4.258-7.63 0-12.275-1.272t-6.525-2.046l2.323-11.17q2.985 1.216 7.133 2.323 4.147 1.105 9.455 1.105"></path></g></svg></a></li><li><a href="/about" rel="noopener" class="css-1lfjxqt">About</a></li><li><a href="/libraries" rel="noopener" class="css-iv9sb6">Libraries</a></li><li><a href="/api" rel="noopener" class="css-iv9sb6">API</a></li><li><a href="https://github.com/cdnjs" rel="noopener" class="css-iv9sb6">GitHub</a></li><li><a href="https://status.cdnjs.com" rel="noopener" class="css-iv9sb6">Status<div class="css-1h8q802" data-island="status" data-island-props="island-props-status-_R_5cm_" data-island-prefix="island-status-_R_5cm_-"><div class="css-fu8ope"></div></div>
5<script id="island-props-status-_R_5cm_" type="application/json">{}</script>
5<script type="module" src="/islands/status-B83v3dfy.js"></script>
5</a></li><li><details><summary class="css-vfuzlw" aria-label="Navigation links">â¡</summary><ul class="css-114icok"><li><a href="/about" rel="noopener" class="css-1lfjxqt">About</a></li><li><a href="/libraries" rel="noopener" class="css-iv9sb6">Libraries</a></li><li><a href="/api" rel="noopener" class="css-iv9sb6">API</a></li><li><a href="https://github.com/cdnjs" rel="noopener" class="css-iv9sb6">GitHub</a></li><li><a href="https://status.cdnjs.com" rel="noopener" class="css-iv9sb6">Status<div class="css-1h8q802" data-island="status" data-island-props="island-props-status-_R_lmm_" data-island-prefix="island-status-_R_lmm_-"><div class="css-fu8ope"></div></div>
5<script id="island-props-status-_R_lmm_" type="application/json">{}</script>
5<script type="module" src="/islands/status-B83v3dfy.js"></script>
5</a></li></ul></details></li></ul></nav><div class="css-1bmnzf3"><div class="css-1kgs2lq"><div class="css-1tkgruk"><svg id="grid-_R_2j6_" xmlns="http://www.w3.org/2000/svg" data-seed="1347823838" viewBox="0 225 1200 225" preserveAspectRatio="xMidYMid slice" aria-hidden="true" class="css-9hx3tc"><g><circle cx="0" cy="0" r="1" class="css-wj0rra"></circle><circle cx="75" cy="0" r="1" class="css-wj0rra"></circle><circle cx="150" cy="0" r="1" class="css-wj0rra"></circle><circle cx="225" cy="0" r="1" class="css-wj0rra"></circle><circle cx="300" cy="0" r="1" class="css-wj0rra"></circle><circle cx="375" cy="0" r="1" class="css-wj0rra"></circle><circle cx="450" cy="0" r="1" class="css-wj0rra"></circle><circle cx="525" cy="0" r="1" class="css-wj0rra"></circle><circle cx="600" cy="0" r="1" class="css-wj0rra"></circle><circle cx="675" cy="0" r="1" class="css-wj0rra"></circle><circle cx="750" cy="0" r="1" class="css-wj0rra"></circle><circle cx="825" cy="0" r="1" class="css-wj0rra"></circle><circle cx="900" cy="0" r="1" class="css-wj0rra"></circle><circle cx="975" cy="0" r="1" class="css-wj0rra"></circle><circle cx="1050" cy="0" r="1" class="css-wj0rra"></circle><circle cx="1125" cy="0" r="1" class="css-wj0rra"></circle><circle cx="0" cy="75" r="1" class="css-wj0rra"></circle><circle cx="75" cy="75" r="1" class="css-wj0rra"></circle><circle cx="150" cy="75" r="1" class="css-wj0rra"></circle><circle cx="225" cy="75" r="1" class="css-wj0rra"></circle><circle cx="300" cy="75" r="1" class="css-wj0rra"></circle><circle cx="375" cy="75" r="1" class="css-wj0rra"></circle><circle cx="450" cy="75" r="1" class="css-wj0rra"></circle><circle cx="525" cy="75" r="1" class="css-wj0rra"></circle><circle cx="600" cy="75" r="1" class="css-wj0rra"></circle><circle cx="675" cy="75" r="1" class="css-wj0rra"></circle><circle cx="750" cy="75" r="1" class="css-wj0rra"></circle><circle cx="825" cy="75" r="1" class="css-wj0rra"></circle><circle cx="900" cy="75" r="1" class="css-wj0rra"></circle><circle cx="975" cy="75" r="1" class="css-wj0rra"></circle><circle cx="1050" cy="75" r="1" class="css-wj0rra"></circle><circle cx="1125" cy="75" r="1" class="css-wj0rra"></circle><circle cx="0" cy="150" r="1" class="css-wj0rra"></circle><circle cx="75" cy="150" r="1" class="css-wj0rra"></circle><circle cx="150" cy="150" r="1" class="css-wj0rra"></circle><circle cx="225" cy="150" r="1" class="css-wj0rra"></circle><circle cx="300" cy="150" r="1" class="css-wj0rra"></circle><circle cx="375" cy="150" r="1" class="css-wj0rra"></circle><circle cx="450" cy="150" r="1" class="css-wj0rra"></circle><circle cx="525" cy="150" r="1" class="css-wj0rra"></circle><circle cx="600" cy="150" r="1" class="css-wj0rra"></circle><circle cx="675" cy="150" r="1" class="css-wj0rra"></circle><circle cx="750" cy="150" r="1" class="css-wj0rra"></circle><circle cx="825" cy="150" r="1" class="css-wj0rra"></circle><circle cx="900" cy="150" r="1" class="css-wj0rra"></circle><circle cx="975" cy="150" r="1" class="css-wj0rra"></circle><circle cx="1050" cy="150" r="1" class="css-wj0rra"></circle><circle cx="1125" cy="150" r="1" class="css-wj0rra"></circle><circle cx="0" cy="225" r="1" class="css-wj0rra"></circle><circle cx="75" cy="225" r="1" class="css-wj0rra"></circle><circle cx="150" cy="225" r="1" class="css-wj0rra"></circle><circle cx="225" cy="225" r="1" class="css-wj0rra"></circle><circle cx="300" cy="225" r="1" class="css-wj0rra"></circle><circle cx="375" cy="225" r="1" class="css-wj0rra"></circle><circle cx="450" cy="225" r="1" class="css-wj0rra"></circle><circle cx="525" cy="225" r="1" class="css-wj0rra"></circle><circle cx="600" cy="225" r="1" class="css-wj0rra"></circle><circle cx="675" cy="225" r="1" class="css-wj0rra"></circle><circle cx="750" cy="225" r="1" class="css-wj0rra"></circle><circle cx="825" cy="225" r="1" class="css-wj0rra"></circle><circle cx="900" cy="225" r="1" class="css-wj0rra"></circle><circle cx="975" cy="225" r="1" class="css-wj0rra"></circle><circle cx="1050" cy="225" r="1" class="css-wj0rra"></circle><circle cx="1125" cy="225" r="1" class="css-wj0rra"></circle><circle cx="0" cy="300" r="1" class="css-wj0rra"></circle><circle cx="75" cy="300" r="1" class="css-wj0rra"></circle><circle cx="150" cy="300" r="1" class="css-wj0rra"></circle><circle cx="225" cy="300" r="1" class="css-wj0rra"></circle><circle cx="300" cy="300" r="1" class="css-wj0rra"></circle><circle cx="375" cy="300" r="1" class="css-wj0rra"></circle><circle cx="450" cy="300" r="1" class="css-wj0rra"></circle><circle cx="525" cy="300" r="1" class="css-wj0rra"></circle><circle cx="600" cy="300" r="1" class="css-wj0rra"></circle><circle cx="675" cy="300" r="1" class="css-wj0rra"></circle><circle cx="750" cy="300" r="1" class="css-wj0rra"></circle><circle cx="825" cy="300" r="1" class="css-wj0rra"></circle><circle cx="900" cy="300" r="1" class="css-wj0rra"></circle><circle cx="975" cy="300" r="1" class="css-wj0rra"></circle><circle cx="1050" cy="300" r="1" class="css-wj0rra"></circle><circle cx="1125" cy="300" r="1" class="css-wj0rra"></circle><circle cx="0" cy="375" r="1" class="css-wj0rra"></circle><circle cx="75" cy="375" r="1" class="css-wj0rra"></circle><circle cx="150" cy="375" r="1" class="css-wj0rra"></circle><circle cx="225" cy="375" r="1" class="css-wj0rra"></circle><circle cx="300" cy="375" r="1" class="css-wj0rra"></circle><circle cx="375" cy="375" r="1" class="css-wj0rra"></circle><circle cx="450" cy="375" r="1" class="css-wj0rra"></circle><circle cx="525" cy="375" r="1" class="css-wj0rra"></circle><circle cx="600" cy="375" r="1" class="css-wj0rra"></circle><circle cx="675" cy="375" r="1" class="css-wj0rra"></circle><circle cx="750" cy="375" r="1" class="css-wj0rra"></circle><circle cx="825" cy="375" r="1" class="css-wj0rra"></circle><circle cx="900" cy="375" r="1" class="css-wj0rra"></circle><circle cx="975" cy="375" r="1" class="css-wj0rra"></circle><circle cx="1050" cy="375" r="1" class="css-wj0rra"></circle><circle cx="1125" cy="375" r="1" class="css-wj0rra"></circle><circle cx="0" cy="450" r="1" class="css-wj0rra"></circle><circle cx="75" cy="450" r="1" class="css-wj0rra"></circle><circle cx="150" cy="450" r="1" class="css-wj0rra"></circle><circle cx="225" cy="450" r="1" class="css-wj0rra"></circle><circle cx="300" cy="450" r="1" class="css-wj0rra"></circle><circle cx="375" cy="450" r="1" class="css-wj0rra"></circle><circle cx="450" cy="450" r="1" class="css-wj0rra"></circle><circle cx="525" cy="450" r="1" class="css-wj0rra"></circle><circle cx="600" cy="450" r="1" class="css-wj0rra"></circle><circle cx="675" cy="450" r="1" class="css-wj0rra"></circle><circle cx="750" cy="450" r="1" class="css-wj0rra"></circle><circle cx="825" cy="450" r="1" class="css-wj0rra"></circle><circle cx="900" cy="450" r="1" class="css-wj0rra"></circle><circle cx="975" cy="450" r="1" class="css-wj0rra"></circle><circle cx="1050" cy="450" r="1" class="css-wj0rra"></circle><circle cx="1125" cy="450" r="1" class="css-wj0rra"></circle><circle cx="0" cy="525" r="1" class="css-wj0rra"></circle><circle cx="75" cy="525" r="1" class="css-wj0rra"></circle><circle cx="150" cy="525" r="1" class="css-wj0rra"></circle><circle cx="225" cy="525" r="1" class="css-wj0rra"></circle><circle cx="300" cy="525" r="1" class="css-wj0rra"></circle><circle cx="375" cy="525" r="1" class="css-wj0rra"></circle><circle cx="450" cy="525" r="1" class="css-wj0rra"></circle><circle cx="525" cy="525" r="1" class="css-wj0rra"></circle><circle cx="600" cy="525" r="1" class="css-wj0rra"></circle><circle cx="675" cy="525" r="1" class="css-wj0rra"></circle><circle cx="750" cy="525" r="1" class="css-wj0rra"></circle><circle cx="825" cy="525" r="1" class="css-wj0rra"></circle><circle cx="900" cy="525" r="1" class="css-wj0rra"></circle><circle cx="975" cy="525" r="1" class="css-wj0rra"></circle><circle cx="1050" cy="525" r="1" class="css-wj0rra"></circle><circle cx="1125" cy="525" r="1" class="css-wj0rra"></circle><circle cx="0" cy="600" r="1" class="css-wj0rra"></circle><circle cx="75" cy="600" r="1" class="css-wj0rra"></circle><circle cx="150" cy="600" r="1" class="css-wj0rra"></circle><circle cx="225" cy="600" r="1" class="css-wj0rra"></circle><circle cx="300" cy="600" r="1" class="css-wj0rra"></circle><circle cx="375" cy="600" r="1" class="css-wj0rra"></circle><circle cx="450" cy="600" r="1" class="css-wj0rra"></circle><circle cx="525" cy="600" r="1" class="css-wj0rra"></circle><circle cx="600" cy="600" r="1" class="css-wj0rra"></circle><circle cx="675" cy="600" r="1" class="css-wj0rra"></circle><circle cx="750" cy="600" r="1" class="css-wj0rra"></circle><circle cx="825" cy="600" r="1" class="css-wj0rra"></circle><circle cx="900" cy="600" r="1" class="css-wj0rra"></circle><circle cx="975" cy="600" r="1" class="css-wj0rra"></circle><circle cx="1050" cy="600" r="1" class="css-wj0rra"></circle><circle cx="1125" cy="600" r="1" class="css-wj0rra"></circle></g><g><path d="M 450 0 L 450 75" class="css-1bmmy2l"></path><path d="M 750 0 L 825 0" class="css-1bmmy2l"></path><path d="M 750 0 L 750 75 L 825 75" class="css-1bmmy2l"></path><path d="M 750 0 L 750 75 L 675 75" class="css-1bmmy2l"></path><path d="M 825 0 L 825 75" class="css-1bmmy2l"></path><path d="M 450 75 L 450 150" class="css-1bmmy2l"></path><path d="M 600 75 L 675 75" class="css-1bmmy2l"></path><path d="M 600 75 L 600 150" class="css-1bmmy2l"></path><path d="M 675 75 L 675 150" class="css-1bmmy2l"></path><path d="M 825 75 L 825 150" class="css-1bmmy2l"></path><path d="M 1125 75 L 1125 150 L 1050 150" class="css-1bmmy2l"></path><path d="M 0 150 L 75 150" class="css-1bmmy2l"></path><path d="M 75 150 L 150 150" class="css-1bmmy2l"></path><path d="M 150 150 L 225 150" class="css-1bmmy2l"></path><path d="M 225 150 L 225 225" class="css-1bmmy2l"></path><path d="M 375 150 L 450 150" class="css-1bmmy2l"></path><path d="M 450 150 L 525 150" class="css-1bmmy2l"></path><path d="M 525 150 L 600 150" class="css-1bmmy2l"></path><path d="M 525 150 L 525 225" class="css-1bmmy2l"></path><path d="M 600 150 L 675 150" class="css-1bmmy2l"></path><path d="M 600 150 L 600 225" class="css-1bmmy2l"></path><path d="M 675 150 L 750 150" class="css-1bmmy2l"></path><path d="M 675 150 L 675 225" class="css-1bmmy2l"></path><path d="M 750 150 L 825 150" class="css-1bmmy2l"></path><path d="M 825 150 L 825 225 L 900 225" class="css-1bmmy2l"></path><path d="M 1050 150 L 1050 225" class="css-1bmmy2l"></path><path d="M 225 225 L 225 300" class="css-1bmmy2l"></path><path d="M 525 225 L 600 225" class="css-1bmmy2l"></path><path d="M 525 225 L 525 300" class="css-1bmmy2l"></path><path d="M 600 225 L 675 225" class="css-1bmmy2l"></path><path d="M 600 225 L 600 300" class="css-1bmmy2l"></path><path d="M 675 225 L 675 300" class="css-1bmmy2l"></path><path d="M 1050 225 L 1125 225" class="css-1bmmy2l"></path>
5<path d="M 1050 225 L 1050 300 L 975 300" class="css-1bmmy2l"></path><path d="M 150 300 L 225 300" class="css-1bmmy2l"></path><path d="M 150 300 L 150 375" class="css-1bmmy2l"></path><path d="M 225 300 L 300 300" class="css-1bmmy2l"></path><path d="M 225 300 L 225 375" class="css-1bmmy2l"></path><path d="M 300 300 L 300 375" class="css-1bmmy2l"></path><path d="M 450 300 L 525 300" class="css-1bmmy2l"></path><path d="M 450 300 L 450 375 L 375 375" class="css-1bmmy2l"></path><path d="M 525 300 L 600 300" class="css-1bmmy2l"></path><path d="M 600 300 L 675 300" class="css-1bmmy2l"></path><path d="M 675 300 L 675 375" class="css-1bmmy2l"></path><path d="M 825 300 L 825 375" class="css-1bmmy2l"></path><path d="M 150 375 L 225 375" class="css-1bmmy2l"></path><path d="M 150 375 L 150 450" class="css-1bmmy2l"></path><path d="M 225 375 L 300 375" class="css-1bmmy2l"></path><path d="M 225 375 L 225 450" class="css-1bmmy2l"></path><path d="M 300 375 L 375 375" class="css-1bmmy2l"></path><path d="M 300 375 L 300 450" class="css-1bmmy2l"></path><path d="M 375 375 L 375 450" class="css-1bmmy2l"></path><path d="M 825 375 L 825 450" class="css-1bmmy2l"></path><path d="M 75 450 L 150 450" class="css-1bmmy2l"></path><path d="M 75 450 L 75 525 L 150 525" class="css-1bmmy2l"></path><path d="M 150 450 L 225 450" class="css-1bmmy2l"></path><path d="M 150 450 L 150 525" class="css-1bmmy2l"></path><path d="M 225 450 L 300 450" class="css-1bmmy2l"></path><path d="M 300 450 L 375 450" class="css-1bmmy2l"></path><path d="M 375 450 L 375 525" class="css-1bmmy2l"></path><path d="M 750 450 L 825 450" class="css-1bmmy2l"></path><path d="M 375 525 L 450 525" class="css-1bmmy2l"></path><path d="M 450 525 L 450 600 L 525 600" class="css-1bmmy2l"></path><path d="M 600 525 L 675 525" class="css-1bmmy2l"></path><path d="M 600 525 L 600 600 L 525 600" class="css-1bmmy2l"></path><path d="M 975 525 L 1050 525" class="css-1bmmy2l"></path><path d="M 975 525 L 975 600" class="css-1bmmy2l"></path><path d="M 1050 525 L 1050 600" class="css-1bmmy2l"></path><path d="M 975 600 L 1050 600" class="css-1bmmy2l"></path></g><g><g><circle cx="450" cy="0" r="2" class="css-1wns8sj" style="animation-duration:4s;animation-delay:-2.4s"></circle></g><g><circle cx="750" cy="0" r="8" class="css-190095o" style="animation-duration:3.5s;animation-delay:0s"></circle><circle cx="750" cy="0" r="4" class="css-1wns8sj" style="animation-duration:2s;animation-delay:0s"></circle></g><g><circle cx="825" cy="0" r="2" class="css-1wns8sj" style="animation-duration:4s;animation-delay:-0.4s"></circle></g><g><circle cx="450" cy="75" r="2" class="css-1wns8sj" style="animation-duration:4s;animation-delay:-0.8s"></circle></g><g><circle cx="600" cy="75" r="2" class="css-1wns8sj" style="animation-duration:4s;animation-delay:-1.6s"></circle></g><g><circle cx="675" cy="75" r="8" class="css-190095o" style="animation-duration:3.5s;animation-delay:0s"></circle><circle cx="675" cy="75" r="4" class="css-1wns8sj" style="animation-duration:2s;animation-delay:0s"></circle></g><g><circle cx="825" cy="75" r="8" class="css-190095o" style="animation-duration:3.5s;animation-delay:-0.8s"></circle><circle cx="825" cy="75" r="4" class="css-1wns8sj" style="animation-duration:2s;animation-delay:-0.8s"></circle></g><g><circle cx="1125" cy="75" r="2" class="css-1wns8sj" style="animation-duration:4s;animation-delay:-0.4s"></circle></g><g><circle cx="0" cy="150" r="2" class="css-1wns8sj" style="animation-duration:4s;animation-delay:-0.8s"></circle></g><g><circle cx="75" cy="150" r="2" class="css-1wns8sj" style="animation-duration:4s;animation-delay:-1.2s"></circle></g><g><circle cx="150" cy="150" r="2" class="css-1wns8sj" style="animation-duration:4s;animation-delay:-1.6s"></circle></g><g><circle cx="225" cy="150" r="2" class="css-1wns8sj" style="animation-duration:4s;animation-delay:-2s"></circle></g><g><circle cx="375" cy="150" r="2" class="css-1wns8sj" style="animation-duration:4s;animation-delay:-2.8s"></circle></g><g><circle cx="450" cy="150" r="8" class="css-190095o" style="animation-duration:3.5s;animation-delay:-1.2s"></circle><circle cx="450" cy="150" r="4" class="css-1wns8sj" style="animation-duration:2s;animation-delay:-1.2s"></circle></g><g><circle cx="525" cy="150" r="8" class="css-190095o" style="animation-duration:3.5s;
5animation-delay:-1.6s"></circle><circle cx="525" cy="150" r="4" class="css-1wns8sj" style="animation-duration:2s;animation-delay:-1.6s"></circle></g><g><circle cx="600" cy="150" r="8" class="css-190095o" style="animation-duration:3.5s;animation-delay:0s"></circle><circle cx="600" cy="150" r="4" class="css-1wns8sj" style="animation-duration:2s;animation-delay:0s"></circle></g><g><circle cx="675" cy="150" r="8" class="css-190095o" style="animation-duration:3.5s;animation-delay:-0.4s"></circle><circle cx="675" cy="150" r="4" class="css-1wns8sj" style="animation-duration:2s;animation-delay:-0.4s"></circle></g><g><circle cx="750" cy="150" r="2" class="css-1wns8sj" style="animation-duration:4s;animation-delay:-0.8s"></circle></g><g><circle cx="825" cy="150" r="8" class="css-190095o" style="animation-duration:3.5s;animation-delay:-1.2s"></circle><circle cx="825" cy="150" r="4" class="css-1wns8sj" style="animation-duration:2s;animation-delay:-1.2s"></circle></g><g><circle cx="1050" cy="150" r="2" class="css-1wns8sj" style="animation-duration:4s;animation-delay:-2.4s"></circle></g><g><circle cx="225" cy="225" r="2" class="css-1wns8sj" style="animation-duration:4s;animation-delay:-0.4s"></circle></g><g><circle cx="525" cy="225" r="8" class="css-190095o" style="animation-duration:3.5s;animation-delay:0s"></circle><circle cx="525" cy="225" r="4" class="css-1wns8sj" style="animation-duration:2s;animation-delay:0s"></circle></g><g><circle cx="600" cy="225" r="8" class="css-190095o" style="animation-duration:3.5s;animation-delay:-0.4s"></circle><circle cx="600" cy="225" r="4" class="css-1wns8sj" style="animation-duration:2s;animation-delay:-0.4s"></circle></g><g><circle cx="675" cy="225" r="8" class="css-190095o" style="animation-duration:3.5s;animation-delay:-0.8s"></circle><circle cx="675" cy="225" r="4" class="css-1wns8sj" style="animation-duration:2s;animation-delay:-0.8s"></circle></g><g><circle cx="900" cy="225" r="2" class="css-1wns8sj" style="animation-duration:4s;animation-delay:0s"></circle></g><g><circle cx="1050" cy="225" r="8" class="css-190095o" style="animation-duration:3.5s;animation-delay:-0.8s"></circle><circle cx="1050" cy="225" r="4" class="css-1wns8sj" style="animation-duration:2s;animation-delay:-0.8s"></circle></g><g><circle cx="1125" cy="225" r="2" class="css-1wns8sj" style="animation-duration:4s;animation-delay:-1.2s"></circle></g><g><circle cx="150" cy="300" r="2" class="css-1wns8sj" style="animation-duration:4s;animation-delay:-2.4s"></circle></g><g><circle cx="225" cy="300" r="8" class="css-190095o" style="animation-duration:3.5s;animation-delay:-0.8s"></circle><circle cx="225" cy="300" r="4" class="css-1wns8sj" style="animation-duration:2s;animation-delay:-0.8s"></circle></g><g><circle cx="300" cy="300" r="2" class="css-1wns8sj" style="animation-duration:4s;animation-delay:-3.2s"></circle></g><g><circle cx="450" cy="300" r="2" class="css-1wns8sj" style="animation-duration:4s;animation-delay:0s"></circle></g><g><circle cx="525" cy="300" r="8" class="css-190095o" style="animation-duration:3.5s;animation-delay:-0.4s"></circle><circle cx="525" cy="300" r="4" class="css-1wns8sj" style="animation-duration:2s;animation-delay:-0.4s"></circle></g><g><circle cx="600" cy="300" r="8" class="css-190095o" style="animation-duration:3.5s;animation-delay:-0.8s"></circle><circle cx="600" cy="300" r="4" class="css-1wns8sj" style="animation-duration:2s;animation-delay:-0.8s"></circle></g><g><circle cx="675" cy="300" r="8" class="css-190095o" style="animation-duration:3.5s;animation-delay:-1.2s"></circle><circle cx="675" cy="300" r="4" class="css-1wns8sj" style="animation-duration:2s;animation-delay:-1.2s"></circle></g><g><circle cx="825" cy="300" r="2" class="css-1wns8sj" style="animation-duration:4s;animation-delay:-2s"></circle></g><g><circle cx="975" cy="300" r="2" class="css-1wns8sj" style="animation-duration:4s;animation-delay:-2.8s"></circle></g><g><circle cx="150" cy="375" r="8" class="css-190095o" style="animation-duration:3.5s;animation-delay:-0.8s"></circle><circle cx="150" cy="375" r="4" class="css-1wns8sj" style="animation-duration:2s;animation-delay:-0.8s"></circle></g><g><circle cx="225" cy="375" r="8" class="css-190095o" style="animation-duration:3.5s;animation-delay:-1.2s"></circle><circle cx="225" cy="375" r="4" class="css-1wns8sj" style="animation-duration:2s;animation-delay:-1.2s"></circle></g><g><circle cx="300" cy="375" r="8" class="css-190095o" style="animation-duration:3.5s;
5animation-delay:-1.6s"></circle><circle cx="300" cy="375" r="4" class="css-1wns8sj" style="animation-duration:2s;animation-delay:-1.6s"></circle></g><g><circle cx="375" cy="375" r="8" class="css-190095o" style="animation-duration:3.5s;animation-delay:0s"></circle><circle cx="375" cy="375" r="4" class="css-1wns8sj" style="animation-duration:2s;animation-delay:0s"></circle></g><g><circle cx="675" cy="375" r="2" class="css-1wns8sj" style="animation-duration:4s;animation-delay:-3.6s"></circle></g><g><circle cx="825" cy="375" r="2" class="css-1wns8sj" style="animation-duration:4s;animation-delay:-0.4s"></circle></g><g><circle cx="75" cy="450" r="2" class="css-1wns8sj" style="animation-duration:4s;animation-delay:-2.8s"></circle></g><g><circle cx="150" cy="450" r="8" class="css-190095o" style="animation-duration:3.5s;animation-delay:-1.2s"></circle><circle cx="150" cy="450" r="4" class="css-1wns8sj" style="animation-duration:2s;animation-delay:-1.2s"></circle></g><g><circle cx="225" cy="450" r="8" class="css-190095o" style="animation-duration:3.5s;animation-delay:-1.6s"></circle><circle cx="225" cy="450" r="4" class="css-1wns8sj" style="animation-duration:2s;animation-delay:-1.6s"></circle></g><g><circle cx="300" cy="450" r="8" class="css-190095o" style="animation-duration:3.5s;animation-delay:0s"></circle><circle cx="300" cy="450" r="4" class="css-1wns8sj" style="animation-duration:2s;animation-delay:0s"></circle></g><g><circle cx="375" cy="450" r="8" class="css-190095o" style="animation-duration:3.5s;animation-delay:-0.4s"></circle><circle cx="375" cy="450" r="4" class="css-1wns8sj" style="animation-duration:2s;animation-delay:-0.4s"></circle></g><g><circle cx="750" cy="450" r="2" class="css-1wns8sj" style="animation-duration:4s;animation-delay:-2.4s"></circle></g><g><circle cx="825" cy="450" r="2" class="css-1wns8sj" style="animation-duration:4s;animation-delay:-2.8s"></circle></g><g><circle cx="150" cy="525" r="2" class="css-1wns8sj" style="animation-duration:4s;animation-delay:-1.6s"></circle></g><g><circle cx="375" cy="525" r="2" class="css-1wns8sj" style="animation-duration:4s;animation-delay:-2.8s"></circle></g><g><circle cx="450" cy="525" r="2" class="css-1wns8sj" style="animation-duration:4s;animation-delay:-3.2s"></circle></g><g><circle cx="600" cy="525" r="2" class="css-1wns8sj" style="animation-duration:4s;animation-delay:0s"></circle></g><g><circle cx="675" cy="525" r="2" class="css-1wns8sj" style="animation-duration:4s;animation-delay:-0.4s"></circle></g><g><circle cx="975" cy="525" r="2" class="css-1wns8sj" style="animation-duration:4s;animation-delay:-2s"></circle></g><g><circle cx="1050" cy="525" r="2" class="css-1wns8sj" style="animation-duration:4s;animation-delay:-2.4s"></circle></g><g><circle cx="525" cy="600" r="2" class="css-1wns8sj" style="animation-duration:4s;animation-delay:-2s"></circle></g><g><circle cx="975" cy="600" r="2" class="css-1wns8sj" style="animation-duration:4s;animation-delay:-0.4s"></circle></g><g><circle cx="1050" cy="600" r="2" class="css-1wns8sj" style="animation-duration:4s;animation-delay:-0.8s"></circle></g></g><g><g><circle cx="0" cy="0" r="5" class="css-1p9e7mr" style="offset-path:path('M 450 0 L 450 75');animation-duration:3.38s;animation-delay:-0.63s"></circle><circle cx="0" cy="0" r="2" class="css-1p9e7mr" style="offset-path:path('M 450 0 L 450 75');animation-duration:3.38s;animation-delay:-0.63s"></circle></g><g><circle cx="0" cy="0" r="5" class="css-1p9e7mr" style="offset-path:path('M 450 75 L 450 0');animation-duration:4.06s;animation-delay:-1.72s"></circle><circle cx="0" cy="0" r="2" class="css-1p9e7mr" style="offset-path:path('M 450 75 L 450 0');animation-duration:4.06s;animation-delay:-1.72s"></circle></g><g><circle cx="0" cy="0" r="5" class="css-1p9e7mr" style="offset-path:path('M 750 0 L 750 75 L 825 75');animation-duration:8.5s;animation-delay:-3.78s"></circle><circle cx="0" cy="0" r="2" class="css-1p9e7mr" style="offset-path:path('M 750 0 L 750 75 L 825 75');animation-duration:8.5s;animation-delay:-3.78s"></circle></g><g><circle cx="0" cy="0" r="5" class="css-1p9e7mr" style="offset-path:path('M 825 0 L 825 75');animation-duration:4.1s;animation-delay:-3.88s"></circle><circle cx="0" cy="0" r="2" class="css-1p9e7mr" style="offset-path:path('M 825 0 L 825 75');animation-duration:4.1s;animation-delay:-3.88s"></circle></g><g><circle cx="0" cy="0" r="5" class="css-1p9e7mr" style="offset-path:path('M 450 75 L 450 150');animation-duration:4.23s;animation-delay:-1.16s"></circle><circle cx="0" cy="0" r="2" class="css-1p9e7mr" style="offset-path:path('M 450 75 L 450 150');animation-duration:4.23s;animation-delay:-1.16s"></circle></g><g><circle cx="0" cy="0" r="5" class="css-1p9e7mr" style="offset-path:path('M 600 75 L 675 75');animation-duration:3.35s;
5animation-delay:-2.36s"></circle><circle cx="0" cy="0" r="2" class="css-1p9e7mr" style="offset-path:path('M 600 75 L 675 75');animation-duration:3.35s;animation-delay:-2.36s"></circle></g><g><circle cx="0" cy="0" r="5" class="css-1p9e7mr" style="offset-path:path('M 600 75 L 600 150');animation-duration:3.19s;animation-delay:-2.69s"></circle><circle cx="0" cy="0" r="2" class="css-1p9e7mr" style="offset-path:path('M 600 75 L 600 150');animation-duration:3.19s;animation-delay:-2.69s"></circle></g><g><circle cx="0" cy="0" r="5" class="css-1p9e7mr" style="offset-path:path('M 1125 75 L 1125 150 L 1050 150');animation-duration:6.48s;animation-delay:-1.61s"></circle><circle cx="0" cy="0" r="2" class="css-1p9e7mr" style="offset-path:path('M 1125 75 L 1125 150 L 1050 150');animation-duration:6.48s;animation-delay:-1.61s"></circle></g><g><circle cx="0" cy="0" r="5" class="css-1p9e7mr" style="offset-path:path('M 1050 150 L 1125 150 L 1125 75');animation-duration:5.48s;animation-delay:-4.49s"></circle><circle cx="0" cy="0" r="2" class="css-1p9e7mr" style="offset-path:path('M 1050 150 L 1125 150 L 1125 75');animation-duration:5.48s;animation-delay:-4.49s"></circle></g><g><circle cx="0" cy="0" r="5" class="css-1p9e7mr" style="offset-path:path('M 0 150 L 75 150');animation-duration:2.89s;animation-delay:-2.53s"></circle><circle cx="0" cy="0" r="2" class="css-1p9e7mr" style="offset-path:path('M 0 150 L 75 150');animation-duration:2.89s;animation-delay:-2.53s"></circle></g><g><circle cx="0" cy="0" r="5" class="css-1p9e7mr" style="offset-path:path('M 75 150 L 150 150');animation-duration:2.88s;animation-delay:-2.6s"></circle><circle cx="0" cy="0" r="2" class="css-1p9e7mr" style="offset-path:path('M 75 150 L 150 150');animation-duration:2.88s;animation-delay:-2.6s"></circle></g><g><circle cx="0" cy="0" r="5" class="css-1p9e7mr" style="offset-path:path('M 225 150 L 225 225');animation-duration:3.43s;animation-delay:-2.59s"></circle><circle cx="0" cy="0" r="2" class="css-1p9e7mr" style="offset-path:path('M 225 150 L 225 225');animation-duration:3.43s;animation-delay:-2.59s"></circle></g><g><circle cx="0" cy="0" r="5" class="css-1p9e7mr" style="offset-path:path('M 225 225 L 225 150');animation-duration:3.04s;animation-delay:-0.53s"></circle><circle cx="0" cy="0" r="2" class="css-1p9e7mr" style="offset-path:path('M 225 225 L 225 150');animation-duration:3.04s;animation-delay:-0.53s"></circle></g><g><circle cx="0" cy="0" r="5" class="css-1p9e7mr" style="offset-path:path('M 450 150 L 525 150');animation-duration:4.66s;animation-delay:-3.85s"></circle><circle cx="0" cy="0" r="2" class="css-1p9e7mr" style="offset-path:path('M 450 150 L 525 150');animation-duration:4.66s;animation-delay:-3.85s"></circle></g><g><circle cx="0" cy="0" r="5" class="css-1p9e7mr" style="offset-path:path('M 525 150 L 525 225');animation-duration:2.29s;animation-delay:-1.27s"></circle><circle cx="0" cy="0" r="2" class="css-1p9e7mr" style="offset-path:path('M 525 150 L 525 225');animation-duration:2.29s;animation-delay:-1.27s"></circle></g><g><circle cx="0" cy="0" r="5" class="css-1p9e7mr" style="offset-path:path('M 525 225 L 525 150');animation-duration:2.09s;animation-delay:-0.5s"></circle><circle cx="0" cy="0" r="2" class="css-1p9e7mr" style="offset-path:path('M 525 225 L 525 150');animation-duration:2.09s;animation-delay:-0.5s"></circle></g><g><circle cx="0" cy="0" r="5" class="css-1p9e7mr" style="offset-path:path('M 675 225 L 675 300');animation-duration:3.91s;animation-delay:-3.8s"></circle><circle cx="0" cy="0" r="2" class="css-1p9e7mr" style="offset-path:path('M 675 225 L 675 300');animation-duration:3.91s;animation-delay:-3.8s"></circle></g><g><circle cx="0" cy="0" r="5" class="css-1p9e7mr" style="offset-path:path('M 1050 225 L 1125 225');animation-duration:2.87s;animation-delay:-2.46s"></circle><circle cx="0" cy="0" r="2" class="css-1p9e7mr" style="offset-path:path('M 1050 225 L 1125 225');animation-duration:2.87s;animation-delay:-2.46s"></circle></g><g><circle cx="0" cy="0" r="5" class="css-1p9e7mr" style="offset-path:path('M 1125 225 L 1050 225');animation-duration:4.16s;
5animation-delay:-1.66s"></circle><circle cx="0" cy="0" r="2" class="css-1p9e7mr" style="offset-path:path('M 1125 225 L 1050 225');animation-duration:4.16s;animation-delay:-1.66s"></circle></g><g><circle cx="0" cy="0" r="5" class="css-1p9e7mr" style="offset-path:path('M 150 300 L 225 300');animation-duration:3.03s;animation-delay:-1.9s"></circle><circle cx="0" cy="0" r="2" class="css-1p9e7mr" style="offset-path:path('M 150 300 L 225 300');animation-duration:3.03s;animation-delay:-1.9s"></circle></g><g><circle cx="0" cy="0" r="5" class="css-1p9e7mr" style="offset-path:path('M 150 300 L 150 375');animation-duration:3.54s;animation-delay:-0.61s"></circle><circle cx="0" cy="0" r="2" class="css-1p9e7mr" style="offset-path:path('M 150 300 L 150 375');animation-duration:3.54s;animation-delay:-0.61s"></circle></g><g><circle cx="0" cy="0" r="5" class="css-1p9e7mr" style="offset-path:path('M 225 300 L 300 300');animation-duration:2.54s;animation-delay:-1.37s"></circle><circle cx="0" cy="0" r="2" class="css-1p9e7mr" style="offset-path:path('M 225 300 L 300 300');animation-duration:2.54s;animation-delay:-1.37s"></circle></g><g><circle cx="0" cy="0" r="5" class="css-1p9e7mr" style="offset-path:path('M 300 300 L 225 300');animation-duration:2.36s;animation-delay:-1.02s"></circle><circle cx="0" cy="0" r="2" class="css-1p9e7mr" style="offset-path:path('M 300 300 L 225 300');animation-duration:2.36s;animation-delay:-1.02s"></circle></g><g><circle cx="0" cy="0" r="5" class="css-1p9e7mr" style="offset-path:path('M 225 300 L 225 375');animation-duration:4.44s;animation-delay:-4.35s"></circle><circle cx="0" cy="0" r="2" class="css-1p9e7mr" style="offset-path:path('M 225 300 L 225 375');animation-duration:4.44s;animation-delay:-4.35s"></circle></g><g><circle cx="0" cy="0" r="5" class="css-1p9e7mr" style="offset-path:path('M 225 375 L 225 300');animation-duration:2.24s;animation-delay:-1.62s"></circle><circle cx="0" cy="0" r="2" class="css-1p9e7mr" style="offset-path:path('M 225 375 L 225 300');animation-duration:2.24s;animation-delay:-1.62s"></circle></g><g><circle cx="0" cy="0" r="5" class="css-1p9e7mr" style="offset-path:path('M 300 300 L 300 375');animation-duration:4.09s;animation-delay:-3.83s"></circle><circle cx="0" cy="0" r="2" class="css-1p9e7mr" style="offset-path:path('M 300 300 L 300 375');animation-duration:4.09s;animation-delay:-3.83s"></circle></g><g><circle cx="0" cy="0" r="5" class="css-1p9e7mr" style="offset-path:path('M 300 375 L 300 300');animation-duration:4.65s;animation-delay:-1.24s"></circle><circle cx="0" cy="0" r="2" class="css-1p9e7mr" style="offset-path:path('M 300 375 L 300 300');animation-duration:4.65s;animation-delay:-1.24s"></circle></g><g><circle cx="0" cy="0" r="5" class="css-1p9e7mr" style="offset-path:path('M 450 300 L 525 300');animation-duration:3.85s;animation-delay:-1.28s"></circle><circle cx="0" cy="0" r="2" class="css-1p9e7mr" style="offset-path:path('M 450 300 L 525 300');animation-duration:3.85s;animation-delay:-1.28s"></circle></g><g><circle cx="0" cy="0" r="5" class="css-1p9e7mr" style="offset-path:path('M 525 300 L 450 300');animation-duration:3.77s;animation-delay:-3.68s"></circle><circle cx="0" cy="0" r="2" class="css-1p9e7mr" style="offset-path:path('M 525 300 L 450 300');animation-duration:3.77s;animation-delay:-3.68s"></circle></g><g><circle cx="0" cy="0" r="5" class="css-1p9e7mr" style="offset-path:path('M 150 375 L 225 375');animation-duration:2.72s;animation-delay:-2.15s"></circle><circle cx="0" cy="0" r="2" class="css-1p9e7mr" style="offset-path:path('M 150 375 L 225 375');animation-duration:2.72s;animation-delay:-2.15s"></circle></g><g><circle cx="0" cy="0" r="5" class="css-1p9e7mr" style="offset-path:path('M 225 375 L 150 375');animation-duration:2.4s;animation-delay:-0.85s"></circle><circle cx="0" cy="0" r="2" class="css-1p9e7mr" style="offset-path:path('M 225 375 L 150 375');animation-duration:2.4s;animation-delay:-0.85s"></circle></g><g><circle cx="0" cy="0" r="5" class="css-1p9e7mr" style="offset-path:path('M 225 375 L 225 450');animation-duration:4.31s;animation-delay:-0.74s"></circle><circle cx="0" cy="0" r="2" class="css-1p9e7mr" style="offset-path:path('M 225 375 L 225 450');animation-duration:4.31s;animation-delay:-0.74s"></circle></g><g><circle cx="0" cy="0" r="5" class="css-1p9e7mr" style="offset-path:path('M 375 375 L 375 450');animation-duration:2.96s;animation-delay:-1.16s"></circle><circle cx="0" cy="0" r="2" class="css-1p9e7mr" style="offset-path:path('M 375 375 L 375 450');animation-duration:2.96s;animation-delay:-1.16s"></circle></g><g><circle cx="0" cy="0" r="5" class="css-1p9e7mr" style="offset-path:path('M 825 375 L 825 450');animation-duration:2.68s;animation-delay:-2.22s"></circle><circle cx="0" cy="0" r="2" class="css-1p9e7mr" style="offset-path:path('M 825 375 L 825 450');animation-duration:2.68s;animation-delay:-2.22s"></circle></g><g><circle cx="0" cy="0" r="5" class="css-1p9e7mr" style="offset-path:path('M 825 450 L 825 375');animation-duration:4.96s;animation-delay:-1.42s"></circle><circle cx="0" cy="0" r="2" class="css-1p9e7mr" style="offset-path:path('M 825 450 L 825 375');animation-duration:4.96s;animation-delay:-1.42s"></circle></g><g><circle cx="0" cy="0" r="5" class="css-1p9e7mr" style="offset-path:path('M 150 450 L 225 450');animation-duration:2.09s;animation-delay:-1.86s"></circle><circle cx="0" cy="0" r="2" class="css-1p9e7mr" style="offset-path:path('M 150 450 L 225 450');animation-duration:2.09s;animation-delay:-1.86s"></circle></g><g><circle cx="0" cy="0" r="5" class="css-1p9e7mr" style="offset-path:path('M 150 450 L 150 525');animation-duration:2.82s;animation-delay:-0.29s"></circle><circle cx="0" cy="0" r="2" class="css-1p9e7mr" style="offset-path:path('M 150 450 L 150 525');animation-duration:2.82s;animation-delay:-0.29s"></circle></g><g><circle cx="0" cy="0" r="5" class="css-1p9e7mr" style="offset-path:path('M 225 450 L 300 450');animation-duration:3.73s;animation-delay:-0.59s"></circle><circle cx="0" cy="0" r="2" class="css-1p9e7mr" style="offset-path:path('M 225 450 L 300 450');animation-duration:3.73s;animation-delay:-0.59s"></circle></g><g><circle cx="0" cy="0" r="5" class="css-1p9e7mr" style="offset-path:path('M 300 450 L 225 450');animation-duration:3.15s;animation-delay:-1.88s"></circle><circle cx="0" cy="0" r="2" class="css-1p9e7mr" style="offset-path:path('M 300 450 L 225 450');animation-duration:3.15s;animation-delay:-1.88s"></circle></g><g><circle cx="0" cy="0" r="5" class="css-1p9e7mr" style="offset-path:path('M 300 450 L 375 450');animation-duration:3.75s;animation-delay:-3.58s"></circle><circle cx="0" cy="0" r="2" class="css-1p9e7mr" style="offset-path:path('M 300 450 L 375 450');animation-duration:3.75s;animation-delay:-3.58s"></circle></g><g><circle cx="0" cy="0" r="5" class="css-1p9e7mr" style="offset-path:path('M 375 450 L 375 525');animation-duration:4.61s;animation-delay:-0.84s"></circle><circle cx="0" cy="0" r="2" class="css-1p9e7mr" style="offset-path:path('M 375 450 L 375 525');animation-duration:4.61s;animation-delay:-0.84s"></circle></g><g><circle cx="0" cy="0" r="5" class="css-1p9e7mr" style="offset-path:path('M 750 450 L 825 450');animation-duration:2.63s;animation-delay:-2.08s"></circle><circle cx="0" cy="0" r="2" class="css-1p9e7mr" style="offset-path:path('M 750 450 L 825 450');animation-duration:2.63s;animation-delay:-2.08s"></circle></g><g><circle cx="0" cy="0" r="5" class="css-1p9e7mr" style="offset-path:path('M 825 450 L 750 450');animation-duration:2.73s;animation-delay:-0.18s"></circle><circle cx="0" cy="0" r="2" class="css-1p9e7mr" style="offset-path:path('M 825 450 L 750 450');animation-duration:2.73s;animation-delay:-0.18s"></circle></g><g><circle cx="0" cy="0" r="5" class="css-1p9e7mr" style="offset-path:path('M 375 525 L 450 525');animation-duration:4.43s;animation-delay:-2.52s"></circle><circle cx="0" cy="0" r="2" class="css-1p9e7mr" style="offset-path:path('M 375 525 L 450 525');animation-duration:4.43s;animation-delay:-2.52s"></circle></g><g><circle cx="0" cy="0" r="5" class="css-1p9e7mr" style="offset-path:path('M 450 525 L 375 525');animation-duration:3.71s;animation-delay:-3.13s"></circle><circle cx="0" cy="0" r="2" class="css-1p9e7mr" style="offset-path:path('M 450 525 L 375 525');animation-duration:3.71s;animation-delay:-3.13s"></circle></g><g><circle cx="0" cy="0" r="5" class="css-1p9e7mr" style="offset-path:path('M 600 525 L 675 525');animation-duration:3.74s;animation-delay:-1.26s"></circle><circle cx="0" cy="0" r="2" class="css-1p9e7mr" style="offset-path:path('M 600 525 L 675 525');animation-duration:3.74s;animation-delay:-1.26s"></circle></g><g><circle cx="0" cy="0" r="5" class="css-1p9e7mr" style="offset-path:path('M 975 525 L 975 600');animation-duration:2.48s;
5animation-delay:-1.6s"></circle><circle cx="0" cy="0" r="2" class="css-1p9e7mr" style="offset-path:path('M 975 525 L 975 600');animation-duration:2.48s;animation-delay:-1.6s"></circle></g></g></svg><div class="css-gjfh51"><p class="css-2i10xu">Powered by Cloudflare</p><h1 class="css-1oqhdu5">About <strong>cdnjs</strong></h1><p class="css-1668fef">A free, open-source CDN for the web's most popular JavaScript, CSS, and font resources.</p></div></div><div class="css-tzbmo0"><ul class="css-12rftfd"><li class="css-1ia9ks2"><strong>12.5%</strong> of all websites</li><li class="css-1ia9ks2"><strong>250B+</strong> Requests per month</li><li class="css-1ia9ks2"><strong>330+</strong> Edge locations</li><li class="css-1ia9ks2"><strong>2011</strong> Founded</li></ul></div><div class="css-1wlcdcq"><h2 class="css-3jxgab" id="what-is-cdnjs">What is cdnjs?</h2><div class="css-1eqzbkx"><div><p>cdnjs is a free, open-source, and community-driven CDN that makes it easy to include popular web libraries in any project â no build step, no npm install, just a single script or link tag.</p><p>Launched in 2011, it is one of the longest-running and most popular public CDNs on the web. cdnjs believes in the power of open source, with all the package configurations and code behind the service available on GitHub.</p><p>While a CDN isn't the right tool for every occasion, when it is, we're here for you (and your agent).</p></div><div><p>Every file is served directly from Cloudflare's global network, ensuring fast response times for any assets included on your website, with full support for HTTP/3, HTTP/2, QUIC, and Brotli + GZIP compression.</p><p>cdnjs is HSTS preloaded, ensuring all requests are securely served over HTTPS, and Subresource Integrity (SRI) hashes are provided for all script and link tags to provide an additional layer of security.</p></div></div></div><div class="css-1wlcdcq"><h2 class="css-3jxgab" id="adding-a-library">Adding a library</h2><div class="css-1eqzbkx"><div><p>cdnjs is different from some other public CDNs that support on-demand pull-through access to libraries. Instead, cdnjs is a curated CDN that only serves libraries that have been added to the service by the community.</p><p>Adding a library to cdnjs is straightforward: open a pull request in the<!-- --> <a href="https://github.com/cdnjs/packages" rel="noopener">cdnjs/packages repository</a> <!-- -->with a small JSON file describing the library. Once approved and merged, cdnjs automation takes over â new versions are picked up automatically as they are published to npm or GitHub.</p><p>No manual uploads for each version, no waiting for a maintainer to cut a release. The ingestion pipeline checks for updates regularly and handles minification, compression, SRI hash generation, and publishing to the CDN automatically.</p></div><div><pre class="css-1g7v4ay"><code><span class="css-tdh7fd">packages/m/my-library.json</span> 6<!-- --> 7<!-- -->{<!-- --> 8<!-- --> <span class="css-ir82op">"name"</span>:<!-- --> <span class="css-4ijwxm">"my-library"</span>,<!-- --> 9<!-- --> <span class="css-ir82op">"filename"</span>:<!-- --> <span class="css-4ijwxm">"my-library.min.js"</span>,<!-- --> 10<!-- --> <span class="css-tdh7fd">...</span> 11<!-- --> <span class="css-ir82op">"autoupdate"</span>:<!-- --> {<!-- --> 12<!-- --> <span class="css-ir82op">"source"</span>:<!-- --> <span class="css-4ijwxm">"npm"</span>,<!-- --> 13<!-- --> <span class="css-ir82op">"target"</span>:<!-- --> <span class="css-4ijwxm">"my-library"</span>,<!-- --> 14<!-- --> <span class="css-ir82op">"fileMap"</span>: <!-- -->[{<!-- --> 15<!-- --> <span class="css-ir82op">"basePath"</span>:<!-- --> <span class="css-4ijwxm">"dist"</span>,<!-- --> 16<!-- --> <span class="css-ir82op">"files"</span>: [<span class="css-4ijwxm">"*.js"</span>]<!-- --> 17<!-- --> <!-- -->}]<!-- --> 18<!-- --> <!-- -->},<!-- --> 19<!-- --> <span class="css-tdh7fd">...</span> 20<!-- -->}</code></pre></div></div></div><div class="css-1wlcdcq"><h2 class="css-3jxgab" id="team">Team</h2><div class="css-19vjh76"><p>Maintained by</p><div></div><ul><li><a href="https://github.com/MattIPv4" rel="noopener" title="@MattIPv4">Matt Cowley</a></li><div></div><li><a href="https://blog.cloudflare.com/tag/cdnjs" rel="noopener">Cloudflare Engineering</a></li><div></div><li><a href="https://github.com/cdnjs" rel="noopener">You?</a></li></ul></div><div class="css-19vjh76"><p>Founded by</p><div></div><ul><li><a href="https://github.com/ryankirkman" rel="noopener" title="@ryankirkman">Ryan Kirkman</a></li><div></div><li><a href="https://github.com/thomasdavis" rel="noopener" title="@thomasdavis">Thomas Davis</a></li></ul></div></div><div class="css-1wlcdcq"><h2 class="css-3jxgab" id="sponsors">Sponsors</h2><p>cdnjs is free to use because of the generosity of these organisations. Their support covers infrastru
20cture, tooling, and monitoring.</p><ul class="css-1whdftj"><li><p><a href="https://www.cloudflare.com?utm_source=cdnjs&utm_medium=cdnjs_link&utm_campaign=cdnjs_about" rel="noopener">Cloudflare</a></p><p>Believing cdnjs is part of the open-source community-driven tools that will build the future of the internet, Cloudflare supports cdnjs by providing the global CDN infrastructure and project maintenance.</p></li><li><p><a href="https://www.algolia.com?utm_source=cdnjs&utm_medium=cdnjs_link&utm_campaign=cdnjs_about" rel="noopener">Algolia</a></p><p>Algolia provides a developer-friendly SaaS API for searching. With Algolia's search indexing and unique find as you type experience, you can find cdnjs libraries in just a few key strokes.</p></li><li><p><a href="https://www.digitalocean.com?utm_source=cdnjs&utm_medium=cdnjs_link&utm_campaign=cdnjs_about" rel="noopener">DigitalOcean</a></p><p>DigitalOcean is simplifying the cloud by providing an infrastructure experience that developers love. DigitalOcean is proud to give back to open-source and community-driven projects like cdnjs.</p></li><li><p><a href="https://www.atlassian.com/software/statuspage?utm_source=cdnjs&utm_medium=cdnjs_link&utm_campaign=cdnjs_about" rel="noopener">Statuspage</a></p><p><small>Supporting cdnjs with incident communication services.</small></p></li><li><p><a href="https://sentry.io?utm_source=cdnjs&utm_medium=cdnjs_link&utm_campaign=cdnjs_about" rel="noopener">Sentry</a></p><p><small>Supporting cdnjs with error monitoring services.</small></p></li><li><p><a href="https://uptimerobot.com?utm_source=cdnjs&utm_medium=cdnjs_link&utm_campaign=cdnjs_about" rel="noopener">UptimeRobot</a></p><p>UptimeRobot is the world's leading uptime monitoring service, supporting cdnjs to ensure the service is always available for developers and users around the world.</p></li></ul></div></div></div><div class="css-q03vu6"><p class="css-4aqzra">Help support cdnjs</p><p class="css-1aupga7">You can<!-- --> <a href="https://github.com/cdnjs/packages/issues" rel="noopener" class="css-q8acn6">contribute on GitHub</a> <!-- -->to get involved with cdnjs! Or, help fund the maintenance of cdnjs via<!-- --> <a href="https://github.com/cdnjs/packages?sponsor" rel="noopener" class="css-q8acn6">GitHub Sponsors</a>,<!-- --> <a href="https://opencollective.com/cdnjs" rel="noopener" class="css-q8acn6">Open Collective</a>, or<!-- --> <a href="https://www.patreon.com/cdnjs" rel="noopener" class="css-q8acn6">Patreon</a>.</p></div></main><footer class="css-19ykprv"><dl class="css-1ytj7bg"><dt><a href="/" rel="noopener" aria-label="cdnjs"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 412 113" class="css-eea0k5"><g fill="none"><path stroke="#a6a6a6" stroke-linecap="round" stroke-width="10.24" d="M60.54 6.736 7.229 54.333a5.53 5.53 0 0 0 .113 8.348l53.2 44.97M350.845 6.736l53.313 47.597a5.53 5.53 0 0 1-.113 8.348l-53.2 44.97"></path><path fill="#ff6934" d="M75.743 57.567q0-6.413 1.99-11.999 1.992-5.585 5.696-9.677 3.705-4.091 9.013-6.414 5.309-2.322 11.944-2.322 8.184 0 15.483 2.986l-2.875 10.948q-2.323-.995-5.254-1.659-2.93-.663-6.248-.663-7.852 0-11.944 4.921t-4.092 13.88q0 8.625 3.87 13.658 3.871 5.031 13.05 5.032 3.429 0 6.747-.664 3.318-.663 5.75-1.659l1.88 11.06q-2.211 1.105-6.69 1.99t-9.235.885q-7.41 0-12.883-2.267-5.475-2.268-9.069-6.304t-5.364-9.622-1.77-12.11m65.736-.22q0 8.847 4.203 13.879 4.202 5.031 11.612 5.032 3.207 0 5.474-.277 2.266-.276 3.705-.608V42.195q-1.77-1.216-4.7-2.267t-6.249-1.05q-7.299 0-10.672 4.976-3.373 4.977-3.373 13.492m38.375 27.316q-3.981 1.216-10.008 2.211-6.028.996-12.663.996-6.857 0-12.276-2.102-5.418-2.1-9.234-6.027t-5.861-9.51q-2.046-5.586-2.046-12.553 0-6.856 1.714-12.442 1.714-5.585 5.032-9.566a22.4 22.4 0 0 1 8.073-6.138q4.755-2.156 10.949-2.156 4.201 0 7.41.995 3.206.996 5.529 2.212V2.824L179.854.613zm17.961-54.19q3.87-1.106 10.064-2.102t13.713-.995q7.078 0 11.834 1.935T241 34.73t3.981 8.404 1.162 10.783v32.514h-13.382V56.019q0-4.644-.608-7.907-.61-3.263-1.99-5.309-1.383-2.046-3.761-2.986-2.377-.94-5.806-.94-2.544 0-5.308.332-2.766.332-4.092.553v46.67h-13.382z"></path><path fill="#ebebeb" d="M256.031 107.002q-1.437 0-4.037-.276-2.598-.277-4.59-1.051l1.77-10.949q2.433.775 5.862.775 4.644 0 6.525-2.71 1.88-2.71 1.88-8.128v-56.07h13.381v56.29q0 11.281-5.363 16.7-5.364 5.42-15.428 5.42m22.229-95.33q0 3.76-2.433 5.972t-5.75 2.212q-3.429 0-5.862-2.212t-2.433-5.972q0-3.87 2.433-6.083 2.433-2.211 5.861-2.212 3.318 0 5.751 2.212t2.433 6.083m31.01 65.138q5.31 0 7.742-1.271 2.433-1.272 2.433-4.369 0-2.876-2.6-4.755-2.598-1.88-8.57-4.092-3.65-1.328-6.69-2.82-3.043-1.493-5.254-3.484-2.212-1.99-3.484-4.81-1.27-2.82-1.271-6.913 0-7.962 5.861-12.552 5.862-4.59 15.925-4.59 5.088 0 9.732.94 4.646.941 6.968 1.825l-2.433 10.839q-2.213-.996-5.64-1.825-3.429-.83-7.963-.83-4.092 0-6.636 1.383-2.543 1.382-2.543 4.257 0 1.439.497 2.544.498 1.106 1.715 2.046 1.216.94 3.207 1.88t4.866 1.935q4.755 1.77 8.073 3.484 3.318 1.715 5.474 3.87 2.157 2.158 3.152 4.922t.995 6.636q0 8.294-6.137 12.552-6.
20138 4.257-17.53 4.258-7.63 0-12.275-1.272t-6.525-2.046l2.323-11.17q2.985 1.216 7.133 2.323 4.147 1.105 9.455 1.105"></path></g></svg></a></dt><dd class="css-70md0y">© <!-- -->2026<!-- --> cdnjs.</dd></dl><dl class="css-ck05i1"><dt class="css-12w1z6z">Info</dt><dd class="css-70md0y"><a href="/about" rel="noopener" class="css-1taerq5">About Us</a></dd><dd class="css-70md0y"><a href="https://www.cloudflare.com/privacypolicy" rel="noopener" class="css-1taerq5">Privacy Policy</a></dd><dt class="css-12w1z6z">Community</dt><dd class="css-70md0y"><a href="https://github.com/cdnjs" rel="noopener" class="css-1taerq5">OSS on GitHub</a></dd><dd class="css-70md0y"><a href="https://github.com/cdnjs/cdnjs/discussions" rel="noopener" class="css-1taerq5">Discussions</a></dd></dl><dl class="css-ck05i1"><dt class="css-12w1z6z">Libraries</dt><dd class="css-70md0y"><a href="/libraries" rel="noopener" class="css-1taerq5">Search Libraries</a></dd><dd class="css-70md0y"><a href="/api" rel="noopener" class="css-1taerq5">API Documentation</a></dd><dt class="css-12w1z6z">Status</dt><dd class="css-70md0y"><a href="https://status.cdnjs.com" rel="noopener" class="css-1taerq5">Status Page</a></dd><dd class="css-70md0y"><a href="https://www.cloudflare.com/network" rel="noopener" class="css-1taerq5">CDN Network Map</a></dd></dl><dl class="css-ck05i1"><dt class="css-12w1z6z">Sponsors</dt><dd class="css-70md0y"><a href="https://www.cloudflare.com?utm_source=cdnjs&utm_medium=cdnjs_link&utm_campaign=cdnjs_footer" rel="noopener" class="css-1taerq5">Cloudflare</a></dd><dd class="css-70md0y"><a href="https://www.algolia.com?utm_source=cdnjs&utm_medium=cdnjs_link&utm_campaign=cdnjs_footer" rel="noopener" class="css-1taerq5">Algolia</a></dd><dd class="css-70md0y"><a href="https://www.digitalocean.com?utm_source=cdnjs&utm_medium=cdnjs_link&utm_campaign=cdnjs_footer" rel="noopener" class="css-1taerq5">DigitalOcean</a></dd><dd class="css-70md0y"><a href="https://www.atlassian.com/software/statuspage?utm_source=cdnjs&utm_medium=cdnjs_link&utm_campaign=cdnjs_footer" rel="noopener" class="css-1taerq5">Statuspage</a></dd><dd class="css-70md0y"><a href="https://sentry.io?utm_source=cdnjs&utm_medium=cdnjs_link&utm_campaign=cdnjs_footer" rel="noopener" class="css-1taerq5">Sentry</a></dd><dd class="css-70md0y"><a href="https://uptimerobot.com?utm_source=cdnjs&utm_medium=cdnjs_link&utm_campaign=cdnjs_footer" rel="noopener" class="css-1taerq5">UptimeRobot</a></dd></dl></footer>
20<script defer="">console.log("%cThanks for using cdnjs! ð", "font-family: \"Space Grotesk\", system-ui, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\"; font-size: 5em; color: #d9643a;");</script>
20<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" data-cf-beacon='{"version":"2024.11.0","token":"c315de2b31e645528eb2880ba971205e","spa":2}' crossorigin="anonymous"></script>
20 21</body></html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.