CINXE.COM

HAProxy Enterprise | HAProxy Documentation

<!doctype html> <html lang="en" x-data="{ darkMode: 'system', system: 'light', searchModal : false, mobileNav: false }" x-init="$watch('darkMode', value => localStorage.setItem('darkMode', value)), $nextTick(() => { system = window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light', darkMode = localStorage.getItem('darkMode') ?? 'system' })" :class="(darkMode === 'dark') || (darkMode === 'system' && system === 'dark') ? 'dark' : ''" :data-theme="(darkMode === 'dark') || (darkMode === 'system' && system === 'dark') ? 'dark' : ''"> <head> <script src="https://bmrg.haproxy.com/boomerang-restiming.min3.js"></script> <script> if ((localStorage.getItem('darkMode') === 'dark') | (localStorage.getItem('darkMode') != "light" && window.matchMedia("(prefers-color-scheme: dark)")["matches"])) {document.documentElement.classList.add('dark');} BOOMR.init({beacon_url: 'https://cdnrum2.haproxy.com:5443/beacon', beacon_type: 'POST'}); </script> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>HAProxy Enterprise | HAProxy Documentation</title> <meta data-pagefind-meta="excerpt[content]" name="description" content="HAProxy Enterprise is the industry&#39;s leading software load balancer."> <meta name="robots" content="index, follow"> <meta name="author" content="HAProxy Technologies"> <link rel="canonical" href="https://www.haproxy.com/documentation/haproxy-enterprise/"> <meta property="og:url" content="/haproxy-enterprise/"> <meta property="og:type" content="website"> <meta property="og:title" content="HAProxy Enterprise"> <meta property="og:description" content="HAProxy Enterprise is the industry&#39;s leading software load balancer."> <meta name="twitter:card" content="summary_large_image"> <meta property="twitter:domain" content="haproxy.com"> <meta property="twitter:url" content="/haproxy-enterprise/"> <meta name="twitter:title" content="HAProxy Enterprise"> <meta name="twitter:description" content="HAProxy Enterprise is the industry&#39;s leading software load balancer."> <script type="application/ld+json"> { "@context": "https://schema.org", "@type": "Organization", "name": "HAProxy Documentation", "url": "https://www.haproxy.com/documentation", "logo": "/assets/img/haproxy-logo.svg" } </script> <meta data-pagefind-filter="product[content]" content="HAProxy Enterprise" property="product"> <meta data-pagefind-filter="tags[content]" content="HAProxy Enterprise" property="tags"> <meta data-pagefind-filter="tags[content]" content="Enterprise" property="tags"> <link rel="icon" type="image/x-icon" href="https://cdn.haproxy.com/documentation/assets/favicons/favicon.ico?v=1740149478257"> <link rel="icon" type="image/png" sizes="16x16" href="https://cdn.haproxy.com/documentation/assets/favicons/favicon-16x16.png?v=1740149478257"> <link rel="icon" type="image/png" sizes="32x32" href="https://cdn.haproxy.com/documentation/assets/favicons/favicon-32x32.png?v=1740149478257"> <link rel="icon" type="image/png" sizes="48x48" href="https://cdn.haproxy.com/documentation/assets/favicons/favicon-48x48.png?v=1740149478257"> <!-- capture the CSS content as a Nunjucks variable --> <style> @font-face{font-family:Inter;font-stretch:normal;font-style:normal;font-weight:300 700;src:url('https://cdn.haproxy.com/documentation/assets/fonts/Inter/Inter-VariableFont_wght.ttf') format('woff2');font-display:swap}@font-face{font-family:Lexend;font-stretch:normal;font-style:normal;font-weight:100 900;src:url('https://cdn.haproxy.com/documentation/assets/fonts/Lexend/Lexend-VariableFont_wght.ttf') format('woff2');font-display:swap} </style> <link rel="stylesheet" type="text/css" href="https://cdn.haproxy.com/documentation/assets/css/tailwind.css?v=1740149478257"> <link rel="stylesheet" type="text/css" href="https://cdn.haproxy.com/documentation/assets/css/copy-button.css?v=1740149478257"> <link rel="stylesheet" type="text/css" href="https://cdn.haproxy.com/documentation/assets/css/code-theme.css?v=1740149478257"> <link rel="stylesheet" type="text/css" href="https://cdn.haproxy.com/documentation/assets/search/search.css?v=1740149478257"> <script defer="" src="https://cdn.haproxy.com/documentation/assets/js/codeCopy.js?v=1740149478257"></script> <script defer="" src="https://cdn.haproxy.com/documentation/assets/js/tableOfContents.js?v=1740149478257"></script> <script defer="" src="https://cdn.haproxy.com/documentation/assets/js/tabs.js?v=1740149478257"></script> <script> function getCookie(cname) { let name = cname + "="; let decodedCookie = decodeURIComponent(document.cookie); let ca = decodedCookie.split(";"); for (let i = 0; i < ca.length; i++) { let c = ca[i]; while (c.charAt(0) == " ") { c = c.substring(1); } if (c.indexOf(name) == 0) { return c.substring(name.length, c.length); } } return ""; } window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag("consent", "default", { 'ad_user_data': 'denied', 'ad_personalization': 'denied', 'ad_storage': 'denied', 'analytics_storage': 'denied', 'functionality_storage': 'granted', 'wait_for_update': 500 }); gtag("consent", "update", { 'ad_user_data': (localStorage.getItem('cookieBannerAdUserData') === 'true' || getCookie('GDIR') === 'pass') ? 'granted' : 'denied', 'ad_personalization': (localStorage.getItem('cookieBannerAdPersonalization') === 'true' || getCookie('GDIR') === 'pass') ? 'granted' : 'denied', 'ad_storage': (localStorage.getItem('cookieBannerAdStorage') === 'true' || getCookie('GDIR') === 'pass') ? 'granted' : 'denied', 'analytics_storage': (localStorage.getItem('cookieBannerAnalyticsStorage') === 'true' || getCookie('GDIR') === 'pass') ? 'granted' : 'denied', 'functionality_storage': 'granted' }); (function (w, d, s, l, i) { w[l] = w[l] || []; w[l].push({'gtm.start': new Date().getTime(), event: 'gtm.js'}); var f = d.getElementsByTagName(s)[0], j = d.createElement(s), dl = l != 'dataLayer' ? '&l=' + l : ''; j.async = true; j.src = 'https://www.googletagmanager.com/gtm.js?id=' + i + dl; f.parentNode.insertBefore(j, f); })(window, document, 'script', 'dataLayer', 'GTM-W9N2N3S'); </script> <script defer="defer" data-domain="www.haproxy.com" src="https://plausible.io/js/script.tagged-events.file-downloads.js"></script> <script> store = {}; store.cookieBanner = ''; store.navtop = 0; </script> <script src="https://cdn.haproxy.com/documentation/assets/js/turbo-adapter.js?v=1740149478257" defer=""></script> <!--script src="/assets/js/alpinePersist.js" data-turbo-eval="false"></script--> <script src="https://cdn.haproxy.com/documentation/assets/js/alpine.js?v=1740149478257" defer=""></script> <script src="https://cdn.haproxy.com/documentation/assets/js/global.js?v=1740149478257" defer=""></script> <script src="https://cdn.haproxy.com/documentation/assets/js/turbo-umd.js?v=1740149478257" defer=""></script> <script src="https://cdn.haproxy.com/documentation/assets/js/activeLinks.js?v=1740149478257" defer=""></script> <script> document.addEventListener('turbo:load', function(event) { const links = document.querySelectorAll('main a[href^="http"]:not(.card a):not(.nextprev)'); links.forEach(link => { link.setAttribute('target', '_blank'); link.setAttribute('rel', 'noopener'); link.innerHTML += `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="ml-1 w-4 h-4 inline"><path fill-rule="evenodd" d="M4.25 5.5a.75.75 0 00-.75.75v8.5c0 .414.336.75.75.75h8.5a.75.75 0 00.75-.75v-4a.75.75 0 011.5 0v4A2.25 2.25 0 0112.75 17h-8.5A2.25 2.25 0 012 14.75v-8.5A2.25 2.25 0 014.25 4h5a.75.75 0 010 1.5h-5z" clip-rule="evenodd"></path><path fill-rule="evenodd" d="M6.194 12.753a.75.75 0 001.06.053L16.5 4.44v2.81a.75.75 0 001.5 0v-4.5a.75.75 0 00-.75-.75h-4.5a.75.75 0 000 1.5h2.553l-9.056 8.194a.75.75 0 00-.053 1.06z" clip-rule="evenodd"></path></svg>` }); // append data-turbo="false" to the links that don't belong to the current documentation project const alllinks = document.querySelectorAll('a:not(.card a):not(.nextprev)'); alllinks.forEach(link => { var link_path = link.href.replace(window.location.origin, '').replace('/documentation', '').split('/')[1]; var project_path = window.location.pathname.replace('/documentation', '').split('/')[1]; if (link_path != project_path && link.target != "_blank" && link.getAttribute('data-turbo') != 'false') { link.setAttribute('data-turbo', 'false'); } }); }); </script> </head> <body id="documentation" sx-init="() => { var script = document.createElement('script'); script.src = /assets/js/alpinePersist.js; document.head.appendChild(script); }" data-pagefind-ignore="" class="min-h-screen bg-white dark:bg-slate-900 relative haproxy-enterprise "> <div class="newsbar hidden bg-primary-blue-600 md:flex flex-row flex-wrap lg:justify-center items-center w-full h-[35px] z-[2000]"> <div class="hidden leading-relaxed mx-auto px-default text-center md:block"> <a href="https://www.haproxyconf.com" target="_blank" class="!no-underline !text-white hover:no-underline"> <strong>HAProxyConf 2025</strong> - <u>Registration & Call for Papers are Open!</u> </a> </div> </div> <header class="sticky top-0 z-20 bg-white border-b-4 dark:bg-slate-900 border-primary-gray-100 dark:bg-primary-gray-900 dark:border-primary-gray-600 " data-pagefind-ignore=""> <div class="flex items-center justify-between flex-none h-20 px-4 mx-auto max-w-10xl"> <div class="flex mr-6 lg:hidden"> <button @click.prevent="mobileNav = true" type="button" class="relative" aria-label="Open navigation"> <svg aria-hidden="true" viewbox="0 0 24 24" fill="none" stroke-width="2" stroke-linecap="round" class="w-6 h-6 stroke-primary-gray-500 focus:text-primary-blue-600 dark:focus:text-slate-200"> <path d="M4 7h16M4 12h16M4 17h16"></path> </svg> </button> <div style="position:fixed;top:1px;left:1px;width:1px;height:0;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;display:none"></div> </div> <div class="relative flex items-center flex-grow basis-0"> <a aria-label="Home page" href="/documentation/" data-turbo="false" class="block h-[49px] w-auto pr-2"> <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 377 89" class="h-full dark-mode-logo"> <path fill="#fff" d="M126.07 63.93V48.17h-19.26v15.76H99.8V25.41h7.01v15.76h19.26V25.41h7v38.52h-7ZM169.67 56.05h-19.8l-3.61 7.88h-7.72l17.28-38.52h7.85l17.26 38.52h-7.79l-3.47-7.88Zm-9.93-23.36-7.12 16.35h14.27l-7.15-16.35ZM204.86 52.55h-11.38v11.38h-7V25.41l18.3-.07c18.76 0 18.8 27.17 0 27.17m-11.26-6.96h11.16c9.54 0 9.46-14.01 0-14.01h-11.2l.04 14.01Zm64.28 18.38h-7.22L239.1 50.8H232v13.13h-7V25.41l17.61.07c8.74.07 13.35 6.08 13.35 12.74 0 5.29-2.32 10.62-9.36 12.1l11.23 13.14-.03.47ZM232 31.54V43.8h11c4.59 0 6.56-3.05 6.56-6.13s-2.01-6.13-6.56-6.13h-11Zm68.3 12.92c-.11 9.92-6.22 19.87-19.69 19.87-13.47 0-19.77-9.7-19.77-19.8 0-10.1 6.47-20.23 19.77-20.23s19.8 10.13 19.69 20.16Zm-32.31.18c.18 6.33 3.56 13.05 12.61 13.05 9.05 0 12.47-6.79 12.58-13.12.11-6.33-3.52-13.73-12.58-13.73s-12.79 7.33-12.61 13.8Z"></path> <path fill="#fff" d="M327.39 25.41h7.91v-.04l-12.97 18.66 13.85 19.19v.71h-8.57l-9.81-14.91-9.85 14.91h-8.54v-.71l13.79-19.19-12.91-18.66v.04h7.91l9.6 13.94 9.59-13.94Zm29.96 15.9 10.28-15.9h8.82v.32l-14.88 22.29v15.91h-7.88V48.02l-14.88-22.29v-.32h8.69l9.85 15.9ZM35.156 22.428l.27-.238 9.234 10.456-.27.238-9.234-10.456Z"></path> <path fill="#fff" d="m15.45 24.71 7.26 10.49-.15.11-7.26-10.5.15-.1Zm28.94 7.95 9.2-10.5.27.24-9.2 10.5-.27-.24Zm11.088 11.66 10.892-9.203.232.275-10.892 9.204-.232-.275Z"></path> <path fill="#fff" d="m55.71 44.32 10.89 9.56-.24.27-10.89-9.56.24-.27ZM44.383 55.899l.267-.241 9.235 10.241-.268.241-9.234-10.24Z"></path> <path fill="#fff" d="m35.191 65.894 9.202-10.244.268.24-9.202 10.245-.268-.24ZM22.52 53.442l10.492-9.163.237.272-10.492 9.162-.237-.27Z"></path> <path fill="#fff" d="m22.519 35.397.237-.271 10.492 9.162-.237.272-10.492-9.163Z"></path> <path fill="#fff" d="m44.54 32.96-21.88 2.48-.04-.36L44.5 32.6l.04.36Z"></path> <path fill="#fff" d="m44.54 32.6 21.96 2.48-.04.36-21.96-2.48.04-.36Z"></path> <path fill="#fff" d="M55.41 44.47 53.54 22.3l.37-.03 1.86 22.17-.36.03Z"></path> <path fill="#fff" d="m55.77 44.47-1.83 21.56-.36-.03 1.83-21.56.36.03Z"></path> <path fill="#fff" d="m66.5 54.2-21.96 1.76-.03-.36 21.96-1.76.03.36Z"></path> <path fill="#fff" d="m22.621 53.77.036-.359 21.89 2.193-.035.358-21.89-2.192Z"></path> <path fill="#fff" d="m35.14 66.04-2.19-21.6.36-.04L35.5 66l-.36.04Z"></path> <path fill="#fff" d="m35.47 22.34-2.16 22.1-.36-.04 2.16-22.1.36.04ZM12.55 38.01l10.06-2.84.05.17-10.06 2.84-.05-.17Z"></path> <path fill="#fff" d="m24.698 14.92.104-.147 10.528 7.473-.105.147-10.527-7.473Z"></path> <path fill="#fff" d="m35.2 22.298 2.407-12.215.177.035-2.408 12.215-.176-.035Z"></path> <path fill="#fff" d="m37.64 10.165.108-.143 16.026 12.182-.109.143L37.64 10.165Z"></path> <path fill="#fff" d="m51.41 10.08 2.4 12.18-.18.04-2.4-12.18.18-.04Z"></path> <path fill="#fff" d="m64.31 14.92-10.53 7.44-.11-.15 10.53-7.44.11.15Z"></path> <path fill="#fff" d="m73.66 24.85-19.95-2.48.03-.18 19.94 2.48-.02.18Z"></path> <path fill="#fff" d="m66.41 35.2 7.18-10.49.16.1-7.19 10.5-.15-.11Z"></path> <path fill="#fff" d="m66.51 35.17 10.24 2.84-.05.17-10.24-2.84.05-.17Z"></path> <path fill="#fff" d="m66.56 35.21 9.99 15.31-.15.1-9.99-15.31.15-.1ZM51.37 10.17 35.34 22.39l-.11-.14 16.03-12.22.11.14Z"></path> <path fill="#fff" d="m66.39 35.27-2.23-20.42.19-.02 2.22 20.42-.18.02Zm.06 18.66 9.99-3.45.06.17-9.99 3.45-.06-.17Z"></path> <path fill="#fff" d="m66.4 53.961 10.24-15.92.152.097-10.24 15.92-.152-.097Z"></path> <path fill="#fff" d="m66.56 53.96 7.18 9.74-.14.11-7.19-9.74.15-.11Z"></path> <path fill="#fff" d="m64.196 73.653 2.191-19.658.179.02-2.191 19.658-.18-.02Z"></path> <path fill="#fff" d="m53.81 65.95 10.53 7.65-.1.15-10.53-7.66.1-.14Z"></path> <path fill="#fff" d="m53.75 65.93 19.91-2.27.02.19-19.91 2.26-.02-.18Z"></path> <path fill="#fff" d="m53.85 66.04-2.41 12.4-.18-.04L53.67 66l.18.04Z"></path> <path fill="#fff" d="m53.82 66.09-16.03 12.4-.11-.14 16.02-12.4.12.14Z"></path> <path fill="#fff" d="m35.41 66 2.41 12.4-.18.04-2.41-12.4.18-.04Z"></path> <path fill="#fff" d="m35.274 66.086.11-.143L51.41 78.338l-.11.143-16.026-12.395Z"></path> <path fill="#fff" d="m35.38 66.09-10.53 7.66-.11-.15 10.53-7.65.11.14Z"></path> <path fill="#fff" d="m35.31 66.11-19.94-2.19.02-.18 19.94 2.19-.02.18Z"></path> <path fill="#fff" d="m22.71 53.64-7.26 10.24-.15-.11 7.26-10.24.15.11Z"></path> <path fill="#fff" d="m22.541 53.592.18-.02 2.157 20.095-.179.02-2.158-20.095Z"></path> <path fill="#fff" d="m22.61 53.67-10.1-3.16.06-.17 10.09 3.16-.05.17Z"></path> <path fill="#fff" d="M22.71 35.31 12.62 50.47l-.16-.1 10.1-15.16.15.1Z"></path> <path fill="#fff" d="M22.56 53.63 12.5 38.15l.15-.1 10.06 15.49-.15.09Zm2.29-38.78-2.12 20.42-.18-.02 2.12-20.42.18.02Z"></path> <path fill="#fff" d="m15.364 24.67 19.91-2.444.022.178-19.91 2.445-.022-.178Zm1.642-13.473.06-.126 7.73 3.703-.061.127-7.73-3.704Z"></path> <path fill="#fff" d="m24.114 6.364.14-.01.575 8.481-.14.01-.575-8.48Z"></path> <path fill="#fff" d="M37.68 10.17 24.16 6.43l.04-.13 13.51 3.73-.03.14Z"></path> <path fill="#fff" d="m31.892 2.955.11-.087 5.747 7.184-.11.087-5.747-7.184Z"></path> <path fill="#fff" d="m37.63 10.08 2.44-8.52.14.04-2.45 8.52-.13-.04Zm-12.925 4.726 7.19-11.932.12.073-7.19 11.931-.12-.072Z"></path> <path fill="#fff" d="m40.1 1.633.084-.111 11.175 8.516-.085.111L40.1 1.633Z"></path> <path fill="#fff" d="m51.25 10.12-2.51-8.84.13-.04 2.51 8.84-.13.04Z"></path> <path fill="#fff" d="M37.658 10.045 48.76 1.207l.087.11-11.102 8.837-.087-.11Zm13.602.015 5.83-7.19.1.08-5.82 7.19-.11-.08Z"></path> <path fill="#fff" d="m57.082 2.943.12-.071 7.115 11.93-.12.071-7.115-11.93Z"></path> <path fill="#fff" d="m64.19 14.84.75-8.48.14.01-.76 8.48-.13-.01Z"></path> <path fill="#fff" d="m51.306 10.022 13.69-3.738.036.136-13.689 3.737-.037-.135ZM64.22 14.78l7.91-4.09.06.12-7.9 4.09-.07-.12Z"></path> <path fill="#fff" d="m64.26 14.78 13.8 2.08-.02.14-13.8-2.09.02-.13Z"></path> <path fill="#fff" d="M73.61 24.73 78 16.89l.11.07-4.38 7.84-.12-.07Z"></path> <path fill="#fff" d="m73.6 24.77-1.51-14.02.14-.01 1.51 14.02-.14.01Z"></path> <path fill="#fff" d="m73.654 24.704 9.059-.754.011.14-9.058.754-.012-.14Z"></path> <path fill="#fff" d="m73.7 24.7 12.44 7.05-.07.12-12.43-7.05.06-.12Z"></path> <path fill="#fff" d="m76.66 38.07 6-14.09.13.05-6 14.09-.13-.05Z"></path> <path fill="#fff" d="m76.688 38.037 9.377-6.287.078.116-9.377 6.287-.078-.116Z"></path> <path fill="#fff" d="m76.74 38.03 10.46 2.12-.03.13-10.46-2.12.03-.13Z"></path> <path fill="#fff" d="m76.43 50.52 10.71-10.35.09.1-10.71 10.35-.09-.1Z"></path> <path fill="#fff" d="m76.46 50.49 10.96-2.049.026.138-10.96 2.049-.025-.138Z"></path> <path fill="#fff" d="m76.674 38.145.097-.1 10.707 10.419-.097.1-10.707-10.42Zm-.23 12.475.077-.117 9.377 6.251-.077.117-9.377-6.252Z"></path> <path fill="#fff" d="m73.64 63.7 12.18-6.94.07.12-12.19 6.93-.06-.11Z"></path> <path fill="#fff" d="m73.663 63.827.014-.14 8.985.899-.014.139-8.985-.898Z"></path> <path fill="#fff" d="m76.54 50.54 6.18 14.09-.13.05-6.18-14.09.13-.05Zm-2.931 13.246.123-.066 4.276 7.942-.123.066-4.276-7.941Z"></path> <path fill="#fff" d="m71.985 77.622 1.617-13.876.14.016-1.618 13.876-.14-.016Z"></path> <path fill="#fff" d="m64.26 73.745.064-.124 7.761 3.953-.063.124-7.762-3.953Z"></path> <path fill="#fff" d="m64.36 73.67.61 8.7-.14.01-.61-8.7.14-.01Z"></path> <path fill="#fff" d="m64.28 73.61 13.66-1.98.02.14-13.66 1.97-.02-.13Z"></path> <path fill="#fff" d="m57.078 85.749 7.154-12.116.12.071L57.2 85.82l-.12-.071Z"></path> <path fill="#fff" d="m51.41 78.38 5.78 7.36-.1.09-5.79-7.37.11-.08Z"></path> <path fill="#fff" d="m51.37 78.35 13.55 3.96-.04.13-13.55-3.96.04-.13Z"></path> <path fill="#fff" d="m51.42 78.44-2.55 9.02-.13-.04 2.55-9.02.13.04Z"></path> <path fill="#fff" d="m51.39 78.47-11.17 9.02-.09-.1 11.18-9.02.08.1Z"></path> <path fill="#fff" d="m37.8 78.4 2.44 9.02-.13.04-2.44-9.02.13-.04Z"></path> <path fill="#fff" d="m37.691 78.474.088-.109 11.07 9.022-.088.108-11.07-9.022Z"></path> <path fill="#fff" d="m31.925 85.746 5.753-7.37.11.086-5.752 7.37-.11-.086Z"></path> <path fill="#fff" d="m24.85 73.64 7.19 12.11-.12.07-7.18-12.11.11-.07Z"></path> <path fill="#fff" d="m37.75 78.48-13.62 4.17-.04-.13 13.62-4.17.04.13Z"></path> <path fill="#fff" d="m24.86 73.68-.68 8.91-.14-.01.69-8.91.13.01Z"></path> <path fill="#fff" d="m24.83 73.73-7.87 4.28-.07-.12 7.87-4.28.07.12Z"></path> <path fill="#fff" d="m15.45 63.82 1.54 14.12-.13.02-1.55-14.13.14-.01Z"></path> <path fill="#fff" d="m24.79 73.74-13.77-1.87.02-.13 13.76 1.87-.01.13Z"></path> <path fill="#fff" d="m10.973 71.777 4.35-7.982.123.067-4.35 7.982-.123-.067Z"></path> <path fill="#fff" d="m15.38 63.9-8.98.86-.01-.14 8.98-.86.01.14Z"></path> <path fill="#fff" d="M15.34 63.89 2.95 56.95l.06-.12 12.4 6.94-.07.12Z"></path> <path fill="#fff" d="m2.945 56.835 9.557-6.468.079.116-9.557 6.468-.079-.116Z"></path> <path fill="#fff" d="m12.53 50.49-10.86-1.9.03-.14 10.85 1.9-.02.14Z"></path> <path fill="#fff" d="M12.6 50.45 6.46 64.72l-.13-.06 6.15-14.26.12.05Zm.02-12.31L1.73 48.57l-.09-.1 10.89-10.42.09.09Z"></path> <path fill="#fff" d="M12.49 50.47 1.6 40.27l.1-.1 10.89 10.2-.1.1Zm.05-12.32-9.31-6.18.07-.11 9.31 6.18-.07.11Z"></path> <path fill="#fff" d="m1.637 40.15 10.926-2.12.027.137-10.926 2.12-.027-.138Z"></path> <path fill="#fff" d="M12.51 38.12 6.37 24.11l.12-.06 6.15 14.02-.13.05Z"></path> <path fill="#fff" d="m6.417 24.137.01-.14 8.944.682-.01.14-8.944-.682Z"></path> <path fill="#fff" d="m3.235 31.859 12.116-7.154.071.12L3.307 31.98l-.072-.12Z"></path> <path fill="#fff" d="m11.078 17.322.122-.07 4.239 7.472-.122.069-4.239-7.471Z"></path> <path fill="#fff" d="m15.31 24.75 1.65-13.62.14.02-1.65 13.62-.14-.02Z"></path> <path fill="#fff" d="m11.132 17.221 13.622-2.444.025.138-13.622 2.444-.025-.138ZM39.4 37.59l.07-10.43 10.43.07-.07 10.43-10.43-.07ZM28.02 49.85l.07-10.43 10.43.07-.07 10.43-10.43-.07ZM39.4 61.23l.07-10.43 10.43.07-.07 10.43-10.43-.07Zm11.38-11.38.07-10.43 10.43.07-.07 10.43-10.43-.07ZM19.26 38.49l.05-6.95 6.96.05-.05 6.96-6.96-.05v-.01Zm12.26-13.13.05-6.96 6.96.05-.05 6.96-6.96-.05Zm18.38 0 .05-6.96 6.95.05-.05 6.96-6.96-.05h.01Zm13.13 13.11.07-6.93 6.93.07-.07 6.93-6.93-.07Zm0 18.41.05-6.96 6.96.05-.05 6.96-6.96-.05ZM49.9 70.01l.05-6.96 6.96.05-.05 6.96-6.96-.05Zm-18.38 0 .05-6.96 6.96.05-.05 6.96-6.95-.05h-.01ZM19.26 56.86l.07-6.93 6.93.07-.07 6.93-6.93-.07Z"></path> <path fill="#fff" d="m13.13 27.12.04-5.22 5.22.04-.04 5.22-5.22-.04Zm8.75-9.63.04-5.22 5.22.04-.04 5.22-5.22-.04Zm13.13-4.38.04-5.22 5.22.04-.04 5.22-5.22-.04Zm13.98-5.22 4.41-.03.03 4.41-4.41.03-.03-4.41Zm13.13 4.38 4.41-.03.03 4.41-4.41.03-.03-4.41Zm9.63 10.51 4.41-.03.03 4.41-4.41.03-.03-4.41Zm2.63 13.13 4.41-.03.03 4.41-4.41.03-.03-4.41Zm-.84 17.47.04-5.22 5.22.04-.04 5.22-5.22-.04Zm-2.63 13.13.04-5.22 5.22.04-.04 5.22-5.22-.04Zm-9.63 9.63.04-5.22 5.22.04-.04 5.22-5.22-.04Zm-12.26 5.25.04-5.22 5.22.04-.04 5.22-5.22-.04Zm-13.16-5.22 4.41-.03.03 4.41-4.41.03-.03-4.41Zm-13.13-4.38 4.41-.03.03 4.41-4.41.03-.03-4.41ZM13.1 61.28l4.41-.03.03 4.41-4.41.03-.03-4.41Zm-2.63-13.13 4.41-.03.03 4.41-4.41.03-.03-4.41Zm.03-7.04.03-5.22 4.35.04-.03 5.22-4.35-.04ZM15.76 12.26l.02-2.61 2.61.02-.02 2.61-2.61-.02Zm-6.13 6.13.02-2.61 2.61.02-.02 2.61-2.61-.02Zm-4.38 7 .02-2.61 2.61.02-.02 2.61-2.61-.02Zm-3.5 7.88.02-2.61 2.61.02-.02 2.61-2.61-.02ZM0 41.15l.02-2.61 2.61.02-.02 2.61L0 41.15Zm0 8.76.02-2.61 2.61.02-.02 2.61L0 49.91Zm1.75 7.88.02-2.61 2.61.02-.02 2.61-2.61-.02Zm3.5 7.88.02-2.61 2.61.02-.02 2.61-2.61-.02Zm4.38 7 .02-2.61 2.61.02-.02 2.61-2.61-.02Zm6.13 6.13.02-2.61 2.61.02-.02 2.61-2.61-.02Zm7 5.25.02-2.61 2.61.02-.02 2.61-2.61-.02Zm7.88 2.63.02-2.61 2.61.02-.02 2.61-2.61-.02Zm8.75 1.75.02-2.61 2.61.02-.02 2.61-2.61-.02Zm7.88-2.61h2.63v2.63h-2.63v-2.63Zm8.75.86.02-2.61 2.61.02-.02 2.61-2.61-.02Zm7.86-5.23 2.64-.02.02 2.64-2.65.02-.02-2.65.01.01Zm7.02-2.64.02-2.61 2.61.02-.02 2.61-2.61-.02Zm6.13-6.13.02-2.61 2.61.02-.02 2.61-2.61-.02Zm4.38-7 .02-2.61 2.61.02-.02 2.61-2.61-.02Zm3.5-7.88.02-2.61 2.61.02-.02 2.61-2.61-.02Zm.88-7.88.02-2.61 2.61.02-.02 2.61-2.61-.02Zm0-8.75.02-2.61 2.61.02-.02 2.61-2.61-.02Zm-.88-7.88.02-2.61 2.61.02-.02 2.61-2.61-.02Zm-3.5-7.88.02-2.61 2.61.02-.02 2.61-2.61-.02Zm-4.38-7 .02-2.61 2.61.02-.02 2.61-2.61-.02Zm-6.13-6.13.02-2.61 2.61.02-.02 2.61-2.61-.02Zm-7-4.38.02-2.61 2.61.02-.02 2.61-2.61-.02Zm-7.88-3.5.02-2.61 2.61.02-.02 2.61-2.61-.02Zm-8.75-1.75.02-2.61h2.61l-.02 2.63-2.61-.02ZM39.38.02 42.02 0l.02 2.65-2.65.02-.02-2.64.01-.01Zm-8.74 4.36.02-2.61 2.61.02-.02 2.61-2.61-.02Zm-7.9.89 2.64-.02.02 2.65-2.64.02-.02-2.64v-.01Z"></path> </svg> <svg viewBox="0 0 377 89" fill="none" xmlns="http://www.w3.org/2000/svg" class="h-full light-mode-logo"> <path d="M126.07 63.93V48.17h-19.26v15.76H99.8V25.41h7.01v15.76h19.26V25.41h7v38.52h-7Z" fill="#5899D4"></path> <path d="M169.67 56.05h-19.8l-3.61 7.88h-7.72l17.28-38.52h7.85l17.26 38.52h-7.79l-3.47-7.88Zm-9.93-23.36-7.12 16.35h14.27l-7.15-16.35Z" fill="#3D6DA5"></path> <path d="M204.86 52.55h-11.38v11.38h-7V25.41l18.3-.07c18.76 0 18.8 27.17 0 27.17m-11.26-6.96h11.16c9.54 0 9.46-14.01 0-14.01h-11.2l.04 14.01Zm64.28 18.38h-7.22L239.1 50.8H232v13.13h-7V25.41l17.61.07c8.74.07 13.35 6.08 13.35 12.74 0 5.29-2.32 10.62-9.36 12.1l11.23 13.14-.03.47ZM232 31.54V43.8h11c4.59 0 6.56-3.05 6.56-6.13s-2.01-6.13-6.56-6.13h-11Zm68.3 12.92c-.11 9.92-6.22 19.87-19.69 19.87-13.47 0-19.77-9.7-19.77-19.8 0-10.1 6.47-20.23 19.77-20.23s19.8 10.13 19.69 20.16Zm-32.31.18c.18 6.33 3.56 13.05 12.61 13.05 9.05 0 12.47-6.79 12.58-13.12.11-6.33-3.52-13.73-12.58-13.73s-12.79 7.33-12.61 13.8Z" fill="#26405F"></path> <path d="M327.39 25.41h7.91v-.04l-12.97 18.66 13.85 19.19v.71h-8.57l-9.81-14.91-9.85 14.91h-8.54v-.71l13.79-19.19-12.91-18.66v.04h7.91l9.6 13.94 9.59-13.94Zm29.96 15.9 10.28-15.9h8.82v.32l-14.88 22.29v15.91h-7.88V48.02l-14.88-22.29v-.32h8.69l9.85 15.9Z" fill="#26405F"></path> <path d="m35.156 22.428.27-.238 9.234 10.456-.27.238-9.234-10.456Z" fill="#2A4A6C"></path> <path d="m15.45 24.71 7.26 10.49-.15.11-7.26-10.5.15-.1Zm28.94 7.95 9.2-10.5.27.24-9.2 10.5-.27-.24ZM55.478 44.32l10.892-9.203.232.275-10.892 9.204-.232-.275Z" fill="#2A4A6C"></path> <path d="m55.71 44.32 10.89 9.56-.24.27-10.89-9.56.24-.27ZM44.383 55.899l.267-.241 9.235 10.241-.268.241L44.383 55.9Z" fill="#2A4A6C"></path> <path d="m35.191 65.894 9.202-10.244.268.24-9.202 10.245-.268-.24ZM22.52 53.442l10.492-9.163.237.272-10.492 9.162-.237-.27Z" fill="#2A4A6C"></path> <path d="m22.519 35.397.237-.271 10.492 9.162-.237.272-10.492-9.163Z" fill="#2A4A6C"></path> <path d="m44.54 32.96-21.88 2.48-.04-.36L44.5 32.6l.04.36Z" fill="#2A4A6C"></path> <path d="m44.54 32.6 21.96 2.48-.04.36-21.96-2.48.04-.36Z" fill="#2A4A6C"></path> <path d="M55.41 44.47 53.54 22.3l.37-.03 1.86 22.17-.36.03Z" fill="#2A4A6C"></path> <path d="m55.77 44.47-1.83 21.56-.36-.03 1.83-21.56.36.03Z" fill="#2A4A6C"></path> <path d="m66.5 54.2-21.96 1.76-.03-.36 21.96-1.76.03.36Z" fill="#2A4A6C"></path> <path d="m22.621 53.77.036-.359 21.89 2.193-.035.358-21.89-2.192Z" fill="#2A4A6C"></path> <path d="m35.14 66.04-2.19-21.6.36-.04L35.5 66l-.36.04Z" fill="#2A4A6C"></path> <path d="m35.47 22.34-2.16 22.1-.36-.04 2.16-22.1.36.04ZM12.55 38.01l10.06-2.84.05.17-10.06 2.84-.05-.17Z" fill="#2A4A6C"></path> <path d="m24.698 14.92.104-.147 10.528 7.473-.105.147-10.527-7.473Z" fill="#2A4A6C"></path> <path d="m35.2 22.298 2.407-12.215.177.035-2.408 12.215-.176-.035Z" fill="#2A4A6C"></path> <path d="m37.64 10.165.108-.143 16.026 12.182-.109.143L37.64 10.165Z" fill="#2A4A6C"></path> <path d="m51.41 10.08 2.4 12.18-.18.04-2.4-12.18.18-.04Z" fill="#2A4A6C"></path> <path d="m64.31 14.92-10.53 7.44-.11-.15 10.53-7.44.11.15Z" fill="#2A4A6C"></path> <path d="m73.66 24.85-19.95-2.48.03-.18 19.94 2.48-.02.18Z" fill="#2A4A6C"></path> <path d="m66.41 35.2 7.18-10.49.16.1-7.19 10.5-.15-.11Z" fill="#2A4A6C"></path> <path d="m66.51 35.17 10.24 2.84-.05.17-10.24-2.84.05-.17Z" fill="#2A4A6C"></path> <path d="m66.56 35.21 9.99 15.31-.15.1-9.99-15.31.15-.1ZM51.37 10.17 35.34 22.39l-.11-.14 16.03-12.22.11.14Z" fill="#2A4A6C"></path> <path d="m66.39 35.27-2.23-20.42.19-.02 2.22 20.42-.18.02Zm.06 18.66 9.99-3.45.06.17-9.99 3.45-.06-.17Z" fill="#2A4A6C"></path> <path d="m66.4 53.961 10.24-15.92.152.097-10.24 15.92-.152-.097Z" fill="#2A4A6C"></path> <path d="m66.56 53.96 7.18 9.74-.14.11-7.19-9.74.15-.11Z" fill="#2A4A6C"></path> <path d="m64.196 73.653 2.191-19.658.179.02-2.191 19.658-.18-.02Z" fill="#2A4A6C"></path> <path d="m53.81 65.95 10.53 7.65-.1.15-10.53-7.66.1-.14Z" fill="#2A4A6C"></path> <path d="m53.75 65.93 19.91-2.27.02.19-19.91 2.26-.02-.18Z" fill="#2A4A6C"></path> <path d="m53.85 66.04-2.41 12.4-.18-.04L53.67 66l.18.04Z" fill="#2A4A6C"></path> <path d="m53.82 66.09-16.03 12.4-.11-.14 16.02-12.4.12.14Z" fill="#2A4A6C"></path> <path d="m35.41 66 2.41 12.4-.18.04-2.41-12.4.18-.04Z" fill="#2A4A6C"></path> <path d="m35.274 66.086.11-.143L51.41 78.338l-.11.143-16.026-12.395Z" fill="#2A4A6C"></path> <path d="m35.38 66.09-10.53 7.66-.11-.15 10.53-7.65.11.14Z" fill="#2A4A6C"></path> <path d="m35.31 66.11-19.94-2.19.02-.18 19.94 2.19-.02.18Z" fill="#2A4A6C"></path> <path d="m22.71 53.64-7.26 10.24-.15-.11 7.26-10.24.15.11Z" fill="#2A4A6C"></path> <path d="m22.541 53.592.18-.02 2.157 20.095-.179.02-2.158-20.095Z" fill="#2A4A6C"></path> <path d="m22.61 53.67-10.1-3.16.06-.17 10.09 3.16-.05.17Z" fill="#2A4A6C"></path> <path d="M22.71 35.31 12.62 50.47l-.16-.1 10.1-15.16.15.1Z" fill="#2A4A6C"></path> <path d="M22.56 53.63 12.5 38.15l.15-.1 10.06 15.49-.15.09Zm2.29-38.78-2.12 20.42-.18-.02 2.12-20.42.18.02Z" fill="#2A4A6C"></path> <path d="m15.364 24.67 19.91-2.444.022.178-19.91 2.445-.022-.178ZM17.006 11.197l.06-.126 7.73 3.703-.061.127-7.73-3.704Z" fill="#2A4A6C"></path> <path d="m24.114 6.364.14-.01.575 8.481-.14.01-.575-8.48Z" fill="#2A4A6C"></path> <path d="M37.68 10.17 24.16 6.43l.04-.13 13.51 3.73-.03.14Z" fill="#2A4A6C"></path> <path d="m31.892 2.955.11-.087 5.747 7.184-.11.087-5.747-7.184Z" fill="#2A4A6C"></path> <path d="m37.63 10.08 2.44-8.52.14.04-2.45 8.52-.13-.04ZM24.705 14.806l7.19-11.932.12.073-7.19 11.931-.12-.072Z" fill="#2A4A6C"></path> <path d="m40.1 1.633.084-.111 11.175 8.516-.085.111L40.1 1.633Z" fill="#2A4A6C"></path> <path d="m51.25 10.12-2.51-8.84.13-.04 2.51 8.84-.13.04Z" fill="#2A4A6C"></path> <path d="M37.658 10.045 48.76 1.207l.087.11-11.102 8.837-.087-.11ZM51.26 10.06l5.83-7.19.1.08-5.82 7.19-.11-.08Z" fill="#2A4A6C"></path> <path d="m57.082 2.943.12-.071 7.115 11.93-.12.071-7.115-11.93Z" fill="#2A4A6C"></path> <path d="m64.19 14.84.75-8.48.14.01-.76 8.48-.13-.01Z" fill="#2A4A6C"></path> <path d="m51.306 10.022 13.69-3.738.036.136-13.689 3.737-.037-.135ZM64.22 14.78l7.91-4.09.06.12-7.9 4.09-.07-.12Z" fill="#2A4A6C"></path> <path d="m64.26 14.78 13.8 2.08-.02.14-13.8-2.09.02-.13Z" fill="#2A4A6C"></path> <path d="M73.61 24.73 78 16.89l.11.07-4.38 7.84-.12-.07Z" fill="#2A4A6C"></path> <path d="m73.6 24.77-1.51-14.02.14-.01 1.51 14.02-.14.01Z" fill="#2A4A6C"></path> <path d="m73.654 24.704 9.059-.754.011.14-9.058.754-.012-.14Z" fill="#2A4A6C"></path> <path d="m73.7 24.7 12.44 7.05-.07.12-12.43-7.05.06-.12Z" fill="#2A4A6C"></path> <path d="m76.66 38.07 6-14.09.13.05-6 14.09-.13-.05Z" fill="#2A4A6C"></path> <path d="m76.688 38.037 9.377-6.287.078.116-9.377 6.287-.078-.116Z" fill="#2A4A6C"></path> <path d="m76.74 38.03 10.46 2.12-.03.13-10.46-2.12.03-.13Z" fill="#2A4A6C"></path> <path d="m76.43 50.52 10.71-10.35.09.1-10.71 10.35-.09-.1Z" fill="#2A4A6C"></path> <path d="m76.46 50.49 10.96-2.049.026.138-10.96 2.049-.025-.138Z" fill="#2A4A6C"></path> <path d="m76.674 38.145.097-.1 10.707 10.419-.097.1-10.707-10.42ZM76.444 50.62l.077-.117 9.377 6.251-.077.117-9.377-6.252Z" fill="#2A4A6C"></path> <path d="m73.64 63.7 12.18-6.94.07.12-12.19 6.93-.06-.11Z" fill="#2A4A6C"></path> <path d="m73.663 63.827.014-.14 8.985.899-.014.139-8.985-.898Z" fill="#2A4A6C"></path> <path d="m76.54 50.54 6.18 14.09-.13.05-6.18-14.09.13-.05ZM73.609 63.786l.123-.066 4.276 7.942-.123.066-4.276-7.941Z" fill="#2A4A6C"></path> <path d="m71.985 77.622 1.617-13.876.14.016-1.618 13.876-.14-.016Z" fill="#2A4A6C"></path> <path d="m64.26 73.745.064-.124 7.761 3.953-.063.124-7.762-3.953Z" fill="#2A4A6C"></path> <path d="m64.36 73.67.61 8.7-.14.01-.61-8.7.14-.01Z" fill="#2A4A6C"></path> <path d="m64.28 73.61 13.66-1.98.02.14-13.66 1.97-.02-.13Z" fill="#2A4A6C"></path> <path d="m57.078 85.749 7.154-12.116.12.071L57.2 85.82l-.12-.071Z" fill="#2A4A6C"></path> <path d="m51.41 78.38 5.78 7.36-.1.09-5.79-7.37.11-.08Z" fill="#2A4A6C"></path> <path d="m51.37 78.35 13.55 3.96-.04.13-13.55-3.96.04-.13Z" fill="#2A4A6C"></path> <path d="m51.42 78.44-2.55 9.02-.13-.04 2.55-9.02.13.04Z" fill="#2A4A6C"></path> <path d="m51.39 78.47-11.17 9.02-.09-.1 11.18-9.02.08.1Z" fill="#2A4A6C"></path> <path d="m37.8 78.4 2.44 9.02-.13.04-2.44-9.02.13-.04Z" fill="#2A4A6C"></path> <path d="m37.691 78.474.088-.109 11.07 9.022-.088.108-11.07-9.022Z" fill="#2A4A6C"></path> <path d="m31.925 85.746 5.753-7.37.11.086-5.752 7.37-.11-.086Z" fill="#2A4A6C"></path> <path d="m24.85 73.64 7.19 12.11-.12.07-7.18-12.11.11-.07Z" fill="#2A4A6C"></path> <path d="m37.75 78.48-13.62 4.17-.04-.13 13.62-4.17.04.13Z" fill="#2A4A6C"></path> <path d="m24.86 73.68-.68 8.91-.14-.01.69-8.91.13.01Z" fill="#2A4A6C"></path> <path d="m24.83 73.73-7.87 4.28-.07-.12 7.87-4.28.07.12Z" fill="#2A4A6C"></path> <path d="m15.45 63.82 1.54 14.12-.13.02-1.55-14.13.14-.01Z" fill="#2A4A6C"></path> <path d="m24.79 73.74-13.77-1.87.02-.13 13.76 1.87-.01.13Z" fill="#2A4A6C"></path> <path d="m10.973 71.777 4.35-7.982.123.067-4.35 7.982-.123-.067Z" fill="#2A4A6C"></path> <path d="m15.38 63.9-8.98.86-.01-.14 8.98-.86.01.14Z" fill="#2A4A6C"></path> <path d="M15.34 63.89 2.95 56.95l.06-.12 12.4 6.94-.07.12Z" fill="#2A4A6C"></path> <path d="m2.945 56.835 9.557-6.468.079.116-9.557 6.468-.079-.116Z" fill="#2A4A6C"></path> <path d="m12.53 50.49-10.86-1.9.03-.14 10.85 1.9-.02.14Z" fill="#2A4A6C"></path> <path d="M12.6 50.45 6.46 64.72l-.13-.06 6.15-14.26.12.05Zm.02-12.31L1.73 48.57l-.09-.1 10.89-10.42.09.09Z" fill="#2A4A6C"></path> <path d="M12.49 50.47 1.6 40.27l.1-.1 10.89 10.2-.1.1Zm.05-12.32-9.31-6.18.07-.11 9.31 6.18-.07.11Z" fill="#2A4A6C"></path> <path d="m1.637 40.15 10.926-2.12.027.137-10.926 2.12-.027-.138Z" fill="#2A4A6C"></path> <path d="M12.51 38.12 6.37 24.11l.12-.06 6.15 14.02-.13.05Z" fill="#2A4A6C"></path> <path d="m6.417 24.137.01-.14 8.944.682-.01.14-8.944-.682Z" fill="#2A4A6C"></path> <path d="m3.235 31.859 12.116-7.154.071.12L3.307 31.98l-.072-.12Z" fill="#2A4A6C"></path> <path d="m11.078 17.322.122-.07 4.239 7.472-.122.069-4.239-7.471Z" fill="#2A4A6C"></path> <path d="m15.31 24.75 1.65-13.62.14.02-1.65 13.62-.14-.02Z" fill="#2A4A6C"></path> <path d="m11.132 17.221 13.622-2.444.025.138-13.622 2.444-.025-.138Z" fill="#2A4A6C"></path> <path d="m39.4 37.59.07-10.43 10.43.07-.07 10.43-10.43-.07ZM28.02 49.85l.07-10.43 10.43.07-.07 10.43-10.43-.07ZM39.4 61.23l.07-10.43 10.43.07-.07 10.43-10.43-.07Zm11.38-11.38.07-10.43 10.43.07-.07 10.43-10.43-.07Z" fill="#3D6DA5"></path> <path d="m19.26 38.49.05-6.95 6.96.05-.05 6.96-6.96-.05v-.01Zm12.26-13.13.05-6.96 6.96.05-.05 6.96-6.96-.05Zm18.38 0 .05-6.96 6.95.05-.05 6.96-6.96-.05h.01Zm13.13 13.11.07-6.93 6.93.07-.07 6.93-6.93-.07Zm0 18.41.05-6.96 6.96.05-.05 6.96-6.96-.05ZM49.9 70.01l.05-6.96 6.96.05-.05 6.96-6.96-.05Zm-18.38 0 .05-6.96 6.96.05-.05 6.96-6.95-.05h-.01ZM19.26 56.86l.07-6.93 6.93.07-.07 6.93-6.93-.07Z" fill="#4D76B9"></path> <path d="m13.13 27.12.04-5.22 5.22.04-.04 5.22-5.22-.04Zm8.75-9.63.04-5.22 5.22.04-.04 5.22-5.22-.04Zm13.13-4.38.04-5.22 5.22.04-.04 5.22-5.22-.04Zm13.98-5.22 4.41-.03.03 4.41-4.41.03-.03-4.41Zm13.13 4.38 4.41-.03.03 4.41-4.41.03-.03-4.41Zm9.63 10.51 4.41-.03.03 4.41-4.41.03-.03-4.41Zm2.63 13.13 4.41-.03.03 4.41-4.41.03-.03-4.41Zm-.84 17.47.04-5.22 5.22.04-.04 5.22-5.22-.04Zm-2.63 13.13.04-5.22 5.22.04-.04 5.22-5.22-.04Zm-9.63 9.63.04-5.22 5.22.04-.04 5.22-5.22-.04Zm-12.26 5.25.04-5.22 5.22.04-.04 5.22-5.22-.04Zm-13.16-5.22 4.41-.03.03 4.41-4.41.03-.03-4.41Zm-13.13-4.38 4.41-.03.03 4.41-4.41.03-.03-4.41ZM13.1 61.28l4.41-.03.03 4.41-4.41.03-.03-4.41Zm-2.63-13.13 4.41-.03.03 4.41-4.41.03-.03-4.41Zm.03-7.04.03-5.22 4.35.04-.03 5.22-4.35-.04Z" fill="#5899D4"></path> <path d="m15.76 12.26.02-2.61 2.61.02-.02 2.61-2.61-.02Zm-6.13 6.13.02-2.61 2.61.02-.02 2.61-2.61-.02Zm-4.38 7 .02-2.61 2.61.02-.02 2.61-2.61-.02Zm-3.5 7.88.02-2.61 2.61.02-.02 2.61-2.61-.02ZM0 41.15l.02-2.61 2.61.02-.02 2.61L0 41.15Zm0 8.76.02-2.61 2.61.02-.02 2.61L0 49.91Zm1.75 7.88.02-2.61 2.61.02-.02 2.61-2.61-.02Zm3.5 7.88.02-2.61 2.61.02-.02 2.61-2.61-.02Zm4.38 7 .02-2.61 2.61.02-.02 2.61-2.61-.02Zm6.13 6.13.02-2.61 2.61.02-.02 2.61-2.61-.02Zm7 5.25.02-2.61 2.61.02-.02 2.61-2.61-.02Zm7.88 2.63.02-2.61 2.61.02-.02 2.61-2.61-.02Zm8.75 1.75.02-2.61 2.61.02-.02 2.61-2.61-.02Zm7.88-2.61h2.63v2.63h-2.63v-2.63Zm8.75.86.02-2.61 2.61.02-.02 2.61-2.61-.02Zm7.86-5.23 2.64-.02.02 2.64-2.65.02-.02-2.65.01.01Zm7.02-2.64.02-2.61 2.61.02-.02 2.61-2.61-.02Zm6.13-6.13.02-2.61 2.61.02-.02 2.61-2.61-.02Zm4.38-7 .02-2.61 2.61.02-.02 2.61-2.61-.02Zm3.5-7.88.02-2.61 2.61.02-.02 2.61-2.61-.02Zm.88-7.88.02-2.61 2.61.02-.02 2.61-2.61-.02Zm0-8.75.02-2.61 2.61.02-.02 2.61-2.61-.02Zm-.88-7.88.02-2.61 2.61.02-.02 2.61-2.61-.02Zm-3.5-7.88.02-2.61 2.61.02-.02 2.61-2.61-.02Zm-4.38-7 .02-2.61 2.61.02-.02 2.61-2.61-.02Zm-6.13-6.13.02-2.61 2.61.02-.02 2.61-2.61-.02Zm-7-4.38.02-2.61 2.61.02-.02 2.61-2.61-.02Zm-7.88-3.5.02-2.61 2.61.02-.02 2.61-2.61-.02Zm-8.75-1.75.02-2.61h2.61l-.02 2.63-2.61-.02ZM39.38.02 42.02 0l.02 2.65-2.65.02-.02-2.64.01-.01Zm-8.74 4.36.02-2.61 2.61.02-.02 2.61-2.61-.02Zm-7.9.89 2.64-.02.02 2.65-2.64.02-.02-2.64v-.01Z" fill="#5EA8D9"></path> </svg> </a> <div class="ml-6 hidden md:block min-w-auto"> <ul class="flex md:gap-4" x-data="{ menuDropdown: false }"> <li class=""> <a class="text-primary-gray-500 dark:text-primary-gray-400 center" href="#" @click.prevent="menuDropdown = !menuDropdown"> <span class="">HAProxy Enterprise</span> <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="inline w-6 h-6" :class="{ 'transform rotate-180': menuDropdown }"> <path stroke-linecap="round" stroke-linejoin="round" d="M19.5 8.25l-7.5 7.5-7.5-7.5"></path> </svg> </a> <div class="absolute left-0 right-0 z-50 p-2 pt-5 pb-5 space-y-2 bg-white border rounded shadow-lg top-[68px] dark:bg-slate-900 border-primary-gray-100 dark:border-slate-600" x-show="menuDropdown" @click.away="menuDropdown = false" style="display: none;"> <div class="w-full flex flex-wrap flex-row text-sm"> <div class="px-3 w-full md:w-1/2 lg:w-1/3"> <h3 class="px-2 border-b pb-1 border-slate-200 dark:border-slate-800">Product Documentation</h3> <ul class="pt-1"> <li class="leading-tight"> <a class="text-sm text-primary-gray-500 hover:bg-primary-gray-50 dark:text-slate-200 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 block p-2 py-2" href="/documentation/haproxy-enterprise/" @click="document.getElementById('sidebar').removeAttribute('data-turbo-permanent');"> <span class="text-primary-gray-700 dark:text-slate-200">HAProxy Enterprise</span> </a> </li> <li class="leading-tight"> <a class="text-sm text-primary-gray-500 hover:bg-primary-gray-50 dark:text-slate-200 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 block p-2 py-2" href="/documentation/haproxy-aloha/" @click="document.getElementById('sidebar').removeAttribute('data-turbo-permanent');"> <span class="text-primary-gray-700 dark:text-slate-200">HAProxy ALOHA</span> </a> </li> <li class="leading-tight"> <a class="text-sm text-primary-gray-500 hover:bg-primary-gray-50 dark:text-slate-200 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 block p-2 py-2" href="https://customer-docs.haproxy.com/haproxy-fusion/" target="_blank" @click="document.getElementById('sidebar').removeAttribute('data-turbo-permanent');"> <span class="text-primary-gray-700 dark:text-slate-200">HAProxy Fusion Control Plane</span> </a> </li> <li class="leading-tight"> <a class="text-sm text-primary-gray-500 hover:bg-primary-gray-50 dark:text-slate-200 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 block p-2 py-2" href="/documentation/kubernetes-ingress/" @click="document.getElementById('sidebar').removeAttribute('data-turbo-permanent');"> <span class="text-primary-gray-700 dark:text-slate-200">HAProxy Kubernetes Ingress Controller</span> </a> </li> <li class="leading-tight"> <a class="text-sm text-primary-gray-500 hover:bg-primary-gray-50 dark:text-slate-200 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 block p-2 py-2" href="https://customer-docs.haproxy.com/haproxy-edge/" target="_blank" @click="document.getElementById('sidebar').removeAttribute('data-turbo-permanent');"> <span class="text-primary-gray-700 dark:text-slate-200">HAProxy Edge</span> </a> </li> </ul> </div> <div class="px-3 w-full md:w-1/2 lg:w-1/3"> <h3 class="px-2 border-b pb-1 border-slate-200 dark:border-slate-800">API Documentation</h3> <ul class="pt-1"> <li class="leading-tight"> <a class=" text-primary-gray-500 hover:bg-primary-gray-50 dark:text-slate-200 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 block p-2 py-2" href="/documentation/haproxy-data-plane-api/" @click="document.getElementById('sidebar').removeAttribute('data-turbo-permanent');"> <span class="text-primary-gray-700 dark:text-slate-200">HAProxy Data Plane API</span> </a> </li> <li class="leading-tight"> <a class=" text-primary-gray-500 hover:bg-primary-gray-50 dark:text-slate-200 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 block p-2 py-2" href="https://customer-docs.haproxy.com/haproxy-fusion-api/" target="_blank" @click="document.getElementById('sidebar').removeAttribute('data-turbo-permanent');"> <span class="text-primary-gray-700 dark:text-slate-200">HAProxy Fusion API</span> </a> </li> <li class="leading-tight"> <a class=" text-primary-gray-500 hover:bg-primary-gray-50 dark:text-slate-200 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 block p-2 py-2" href="/documentation/haproxy-runtime-api/" @click="document.getElementById('sidebar').removeAttribute('data-turbo-permanent');"> <span class="text-primary-gray-700 dark:text-slate-200">HAProxy Runtime API</span> </a> </li> <li class="leading-tight"> <a class=" text-primary-gray-500 hover:bg-primary-gray-50 dark:text-slate-200 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 block p-2 py-2" href="/documentation/haproxy-lua-api/" @click="document.getElementById('sidebar').removeAttribute('data-turbo-permanent');"> <span class="text-primary-gray-700 dark:text-slate-200">HAProxy LUA API</span> </a> </li> </ul> </div> <div class="px-3 w-full md:w-full lg:w-1/3 pt-3 lg:pt-0"> <h3 class="px-2 border-b pb-1 border-slate-200 dark:border-slate-800">Configuration Documentation</h3> <ul class="pt-1"> <li class="leading-tight"> <a class=" text-primary-gray-500 hover:bg-primary-gray-50 dark:text-slate-200 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 block p-2 py-2" href="/documentation/haproxy-configuration-tutorials/" @click="document.getElementById('sidebar').removeAttribute('data-turbo-permanent');"> <span class="text-primary-gray-700 dark:text-slate-200">Tutorials and examples</span> </a> </li> <li class="leading-tight"> <a class=" text-primary-gray-500 hover:bg-primary-gray-50 dark:text-slate-200 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 block p-2 py-2" href="/documentation/haproxy-configuration-manual/latest/" @click="document.getElementById('sidebar').removeAttribute('data-turbo-permanent');" data-turbo="false"> <span class="text-primary-gray-700 dark:text-slate-200">Configuration Manual</span> </a> </li> </ul> </div> </div> </div> </li> </ul> </div> </div> <div class="flex items-center justify-end basis-0 gap-1 md:gap-3 lg:gap-6" data-turbo="false"> <div> <div id="docsearch"></div> </div> <div class="relative z-50" x-data="{ themePicker: false }"> <label class="sr-only">Theme</label> <button @click.prevent="themePicker = !themePicker" @click.away="themePicker = false" class="flex h-6 w-6 items-center justify-center rounded-md shadow-md bg-slate-50 shadow-slate/5 ring-1 ring-slate/5 dark:bg-slate-800 dark:ring-inset dark:ring-white/5" type="button" aria-haspopup="listbox" aria-expanded="false" aria-label="Dark"> <svg aria-hidden="true" viewbox="0 0 16 16" class="h-4 w-4 fill-docs-blue-600" x-show="(darkMode === 'light') || (darkMode === 'system' && system === 'light') || (!darkMode && system === 'light')" style="display: none;"> <path fill-rule="evenodd" clip-rule="evenodd" d="M7 1a1 1 0 0 1 2 0v1a1 1 0 1 1-2 0V1Zm4 7a3 3 0 1 1-6 0 3 3 0 0 1 6 0Zm2.657-5.657a1 1 0 0 0-1.414 0l-.707.707a1 1 0 0 0 1.414 1.414l.707-.707a1 1 0 0 0 0-1.414Zm-1.415 11.313-.707-.707a1 1 0 0 1 1.415-1.415l.707.708a1 1 0 0 1-1.415 1.414ZM16 7.999a1 1 0 0 0-1-1h-1a1 1 0 1 0 0 2h1a1 1 0 0 0 1-1ZM7 14a1 1 0 1 1 2 0v1a1 1 0 1 1-2 0v-1Zm-2.536-2.464a1 1 0 0 0-1.414 0l-.707.707a1 1 0 0 0 1.414 1.414l.707-.707a1 1 0 0 0 0-1.414Zm0-8.486A1 1 0 0 1 3.05 4.464l-.707-.707a1 1 0 0 1 1.414-1.414l.707.707ZM3 8a1 1 0 0 0-1-1H1a1 1 0 0 0 0 2h1a1 1 0 0 0 1-1Z"></path> </svg> <svg aria-hidden="true" viewbox="0 0 16 16" class="h-4 w-4 fill-docs-blue-600" x-show="(darkMode === 'dark') || (darkMode === 'system' && system === 'dark') || (!darkMode && system === 'dark') " style="display: none;"> <path fill-rule="evenodd" clip-rule="evenodd" d="M7.23 3.333C7.757 2.905 7.68 2 7 2a6 6 0 1 0 0 12c.68 0 .758-.905.23-1.332A5.989 5.989 0 0 1 5 8c0-1.885.87-3.568 2.23-4.668ZM12 5a1 1 0 0 1 1 1 1 1 0 0 0 1 1 1 1 0 1 1 0 2 1 1 0 0 0-1 1 1 1 0 1 1-2 0 1 1 0 0 0-1-1 1 1 0 1 1 0-2 1 1 0 0 0 1-1 1 1 0 0 1 1-1Z"></path> </svg> </button> <ul x-show="themePicker" style="display: none;" class="absolute right-0 top-full mt-3 w-36 space-y-1 rounded-xl bg-white p-3 text-sm font-medium shadow-md shadow-black/5 ring-1 ring-black/5 dark:bg-slate-800 dark:ring-white/5" aria-orientation="vertical" role="listbox" tabindex="0"> <li @click="document.documentElement.classList.remove('dark'), themePicker = false, darkMode = 'light'" class="flex cursor-pointer select-none items-center rounded-[0.625rem] p-1 " :class="darkMode == 'light' ? 'text-docs-blue-600' : 'text-slate-700 dark:text-slate-400'" role="option" tabindex="-1" aria-selected="false"> <div class="rounded-md bg-white p-1 shadow ring-1 ring-slate-900/5 dark:bg-slate-700 dark:ring-inset dark:ring-white/5"> <svg aria-hidden="true" viewbox="0 0 16 16" class="h-4 w-4" :class="darkMode == 'light' ? 'fill-docs-blue-600 dark:fill-docs-blue-600' : 'fill-slate-400'"> <path fill-rule="evenodd" clip-rule="evenodd" d="M7 1a1 1 0 0 1 2 0v1a1 1 0 1 1-2 0V1Zm4 7a3 3 0 1 1-6 0 3 3 0 0 1 6 0Zm2.657-5.657a1 1 0 0 0-1.414 0l-.707.707a1 1 0 0 0 1.414 1.414l.707-.707a1 1 0 0 0 0-1.414Zm-1.415 11.313-.707-.707a1 1 0 0 1 1.415-1.415l.707.708a1 1 0 0 1-1.415 1.414ZM16 7.999a1 1 0 0 0-1-1h-1a1 1 0 1 0 0 2h1a1 1 0 0 0 1-1ZM7 14a1 1 0 1 1 2 0v1a1 1 0 1 1-2 0v-1Zm-2.536-2.464a1 1 0 0 0-1.414 0l-.707.707a1 1 0 0 0 1.414 1.414l.707-.707a1 1 0 0 0 0-1.414Zm0-8.486A1 1 0 0 1 3.05 4.464l-.707-.707a1 1 0 0 1 1.414-1.414l.707.707ZM3 8a1 1 0 0 0-1-1H1a1 1 0 0 0 0 2h1a1 1 0 0 0 1-1Z"></path> </svg> </div> <div class="ml-3">Light</div> </li> <li @click="themePicker = false, darkMode = 'dark'" class="flex cursor-pointer select-none items-center rounded-[0.625rem] p-1" :class="darkMode == 'dark' ? 'text-docs-blue-600' : 'text-slate-700 dark:text-slate-400'" role="option" tabindex="-1" aria-selected="false"> <div class="rounded-md bg-white p-1 shadow ring-1 ring-slate-900/5 dark:bg-slate-700 dark:ring-inset dark:ring-white/5"> <svg aria-hidden="true" viewbox="0 0 16 16" class="h-4 w-4" :class="darkMode == 'dark' ? 'fill-docs-blue-600 dark:fill-docs-blue-600' : 'fill-slate-400'"> <path fill-rule="evenodd" clip-rule="evenodd" d="M7.23 3.333C7.757 2.905 7.68 2 7 2a6 6 0 1 0 0 12c.68 0 .758-.905.23-1.332A5.989 5.989 0 0 1 5 8c0-1.885.87-3.568 2.23-4.668ZM12 5a1 1 0 0 1 1 1 1 1 0 0 0 1 1 1 1 0 1 1 0 2 1 1 0 0 0-1 1 1 1 0 1 1-2 0 1 1 0 0 0-1-1 1 1 0 1 1 0-2 1 1 0 0 0 1-1 1 1 0 0 1 1-1Z"></path> </svg> </div> <div class="ml-3">Dark</div> </li> <li @click="themePicker = false, darkMode = 'system'" class="flex cursor-pointer select-none items-center rounded-[0.625rem] p-1" :class="darkMode == 'system' ? 'text-docs-blue-600' : 'text-slate-700 dark:text-slate-400'" role="option" tabindex="-1" aria-selected="true"> <div class="rounded-md bg-white p-1 shadow ring-1 ring-slate-900/5 dark:bg-slate-700 dark:ring-inset dark:ring-white/5"> <svg aria-hidden="true" viewbox="0 0 16 16" class="h-4 w-4" :class="darkMode == 'system' ? 'fill-docs-blue-600 dark:fill-docs-blue-600' : 'fill-slate-400'"> <path fill-rule="evenodd" clip-rule="evenodd" d="M1 4a3 3 0 0 1 3-3h8a3 3 0 0 1 3 3v4a3 3 0 0 1-3 3h-1.5l.31 1.242c.084.333.36.573.63.808.091.08.182.158.264.24A1 1 0 0 1 11 15H5a1 1 0 0 1-.704-1.71c.082-.082.173-.16.264-.24.27-.235.546-.475.63-.808L5.5 11H4a3 3 0 0 1-3-3V4Zm3-1a1 1 0 0 0-1 1v4a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V4a1 1 0 0 0-1-1H4Z"></path> </svg> </div> <div class="ml-3">System</div> </li> </ul> </div> </div> </div> </header> <div class="relative z-10 md:min-h-[calc(100vh-160px)]" x-data="{'feedbackDialog': false}"> <div class="flex w-full mx-auto bg-white max-w-10xl dark:bg-slate-900"> <aside id="sidebar" class="min-h-[calc(100vh-160px)] md:w-[300px] flex-shrink-0 hidden min-[1024px]:block px-3 border-r border-r-primary-gray-100 dark:border-r-slate-600 py-4 lg:sticky z-10" data-pagefind-ignore="" data-turbo-permanent=""> <nav class="main-sidebar-nav text-base lg:text-sm customscroll overflow-y-auto md:sticky h-auto md:top-[100px] md:max-h-[calc(100vh-116px)]" x-data=""> <ul role="list"> <li class="py-1 text-primary-gray-500 file active expanded"> <a href="/documentation/haproxy-enterprise/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 active "> <span>HAProxy Enterprise</span> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/changelog/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Changelog</span> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/release-notes/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Release notes</span> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/end-of-life-dates/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>End-of-life dates</span> </a> </li> <li class="py-1 text-primary-gray-500 directory collapsed"> <h2 class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded hover:duration-75 font-display text-base font-medium text-primary-gray-600 flex justify-between items-center cursor-pointer select-none "> <span>Getting started</span> <svg class="w-4 h-4 duration-75 arrow" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor"> <path stroke-linecap="round" stroke-linejoin="round" d="M8.25 4.5l7.5 7.5-7.5 7.5"></path> </svg> </h2> <ul class="pl-4"> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/getting-started/01-overview/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Overview</span> </a> </li> <li class="py-1 text-primary-gray-500 directory collapsed"> <h2 class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded hover:duration-75 font-display text-base font-medium text-primary-gray-600 flex justify-between items-center cursor-pointer select-none "> <span>Installation</span> <svg class="w-4 h-4 duration-75 arrow" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor"> <path stroke-linecap="round" stroke-linejoin="round" d="M8.25 4.5l7.5 7.5-7.5 7.5"></path> </svg> </h2> <ul class="pl-4"> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/getting-started/installation/aws/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>AWS</span> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/getting-started/installation/azure/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Azure</span> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/getting-started/installation/bsd/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>BSD</span> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/getting-started/installation/docker/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Docker</span> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/getting-started/installation/install-vm-image/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Install the VM image</span> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/getting-started/installation/linux/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Linux</span> </a> </li> </ul></li> <li class="py-1 text-primary-gray-500 directory collapsed"> <h2 class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded hover:duration-75 font-display text-base font-medium text-primary-gray-600 flex justify-between items-center cursor-pointer select-none "> <span>Migration</span> <svg class="w-4 h-4 duration-75 arrow" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor"> <path stroke-linecap="round" stroke-linejoin="round" d="M8.25 4.5l7.5 7.5-7.5 7.5"></path> </svg> </h2> <ul class="pl-4"> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/getting-started/migration/migrate-from-haproxy/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Migrate from HAProxy</span> </a> </li> </ul></li> <li class="py-1 text-primary-gray-500 directory collapsed"> <h2 class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded hover:duration-75 font-display text-base font-medium text-primary-gray-600 flex justify-between items-center cursor-pointer select-none "> <span>Tutorials</span> <svg class="w-4 h-4 duration-75 arrow" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor"> <path stroke-linecap="round" stroke-linejoin="round" d="M8.25 4.5l7.5 7.5-7.5 7.5"></path> </svg> </h2> <ul class="pl-4"> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/getting-started/tutorials/docker-tutorial/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Docker tutorial</span> </a> </li> </ul></li> <li class="py-1 text-primary-gray-500 directory collapsed"> <h2 class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded hover:duration-75 font-display text-base font-medium text-primary-gray-600 flex justify-between items-center cursor-pointer select-none "> <span>Uninstallation</span> <svg class="w-4 h-4 duration-75 arrow" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor"> <path stroke-linecap="round" stroke-linejoin="round" d="M8.25 4.5l7.5 7.5-7.5 7.5"></path> </svg> </h2> <ul class="pl-4"> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/getting-started/uninstallation/bsd/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>BSD</span> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/getting-started/uninstallation/docker/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Docker</span> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/getting-started/uninstallation/linux/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Linux</span> </a> </li> </ul></li> <li class="py-1 text-primary-gray-500 directory collapsed"> <h2 class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded hover:duration-75 font-display text-base font-medium text-primary-gray-600 flex justify-between items-center cursor-pointer select-none "> <span>Upgrade</span> <svg class="w-4 h-4 duration-75 arrow" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor"> <path stroke-linecap="round" stroke-linejoin="round" d="M8.25 4.5l7.5 7.5-7.5 7.5"></path> </svg> </h2> <ul class="pl-4"> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/getting-started/upgrade/aws/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>AWS</span> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/getting-started/upgrade/bsd/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>BSD</span> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/getting-started/upgrade/docker/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Docker</span> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/getting-started/upgrade/linux/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Linux</span> </a> </li> </ul></li> </ul></li> <li class="py-1 text-primary-gray-500 directory collapsed"> <h2 class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded hover:duration-75 font-display text-base font-medium text-primary-gray-600 flex justify-between items-center cursor-pointer select-none "> <span>Administration</span> <svg class="w-4 h-4 duration-75 arrow" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor"> <path stroke-linecap="round" stroke-linejoin="round" d="M8.25 4.5l7.5 7.5-7.5 7.5"></path> </svg> </h2> <ul class="pl-4"> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/administration/configuration-files/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Configuration files</span> </a> </li> <li class="py-1 text-primary-gray-500 directory collapsed"> <h2 class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded hover:duration-75 font-display text-base font-medium text-primary-gray-600 flex justify-between items-center cursor-pointer select-none "> <span>High availability</span> <svg class="w-4 h-4 duration-75 arrow" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor"> <path stroke-linecap="round" stroke-linejoin="round" d="M8.25 4.5l7.5 7.5-7.5 7.5"></path> </svg> </h2> <ul class="pl-4"> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/administration/high-availability/active-active/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Active/Active clustering</span> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/administration/high-availability/active-standby/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Active/Standby clustering</span> </a> </li> </ul></li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/administration/license-keys/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>License keys</span> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/administration/logs/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Logs</span> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/administration/manage-service/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Manage the service</span> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/administration/manage-ssl-certs/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Manage SSL certificates</span> </a> </li> <li class="py-1 text-primary-gray-500 directory collapsed"> <h2 class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded hover:duration-75 font-display text-base font-medium text-primary-gray-600 flex justify-between items-center cursor-pointer select-none "> <span>Troubleshooting</span> <svg class="w-4 h-4 duration-75 arrow" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor"> <path stroke-linecap="round" stroke-linejoin="round" d="M8.25 4.5l7.5 7.5-7.5 7.5"></path> </svg> </h2> <ul class="pl-4"> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/administration/troubleshooting/common-questions/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Common questions</span> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/administration/troubleshooting/contact-us/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Contact Us</span> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/administration/troubleshooting/debugging/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Debugging</span> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/administration/troubleshooting/decrypt-tls-traffic/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Decrypt TLS traffic</span> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/administration/troubleshooting/enable-core-dumps/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Enable core dumps</span> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/administration/troubleshooting/enable-diagnostic-archive/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Enable diagnostic archive</span> </a> </li> </ul></li> </ul></li> <li class="py-1 text-primary-gray-500 file collapsed"> <a target="_blank" href="/documentation/haproxy-configuration-tutorials/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Configuration tutorials</span> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="ml-1 w-4 h-4 inline"><path fill-rule="evenodd" d="M4.25 5.5a.75.75 0 00-.75.75v8.5c0 .414.336.75.75.75h8.5a.75.75 0 00.75-.75v-4a.75.75 0 011.5 0v4A2.25 2.25 0 0112.75 17h-8.5A2.25 2.25 0 012 14.75v-8.5A2.25 2.25 0 014.25 4h5a.75.75 0 010 1.5h-5z" clip-rule="evenodd"></path><path fill-rule="evenodd" d="M6.194 12.753a.75.75 0 001.06.053L16.5 4.44v2.81a.75.75 0 001.5 0v-4.5a.75.75 0 00-.75-.75h-4.5a.75.75 0 000 1.5h2.553l-9.056 8.194a.75.75 0 00-.053 1.06z" clip-rule="evenodd"></path></svg> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a target="_blank" href="https://customer-docs.haproxy.com/bot-management/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Bot management</span> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="ml-1 w-4 h-4 inline"><path fill-rule="evenodd" d="M4.25 5.5a.75.75 0 00-.75.75v8.5c0 .414.336.75.75.75h8.5a.75.75 0 00.75-.75v-4a.75.75 0 011.5 0v4A2.25 2.25 0 0112.75 17h-8.5A2.25 2.25 0 012 14.75v-8.5A2.25 2.25 0 014.25 4h5a.75.75 0 010 1.5h-5z" clip-rule="evenodd"></path><path fill-rule="evenodd" d="M6.194 12.753a.75.75 0 001.06.053L16.5 4.44v2.81a.75.75 0 001.5 0v-4.5a.75.75 0 00-.75-.75h-4.5a.75.75 0 000 1.5h2.553l-9.056 8.194a.75.75 0 00-.053 1.06z" clip-rule="evenodd"></path></svg> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a target="_blank" href="https://customer-docs.haproxy.com/web-application-firewall/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Web Application Firewall</span> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="ml-1 w-4 h-4 inline"><path fill-rule="evenodd" d="M4.25 5.5a.75.75 0 00-.75.75v8.5c0 .414.336.75.75.75h8.5a.75.75 0 00.75-.75v-4a.75.75 0 011.5 0v4A2.25 2.25 0 0112.75 17h-8.5A2.25 2.25 0 012 14.75v-8.5A2.25 2.25 0 014.25 4h5a.75.75 0 010 1.5h-5z" clip-rule="evenodd"></path><path fill-rule="evenodd" d="M6.194 12.753a.75.75 0 001.06.053L16.5 4.44v2.81a.75.75 0 001.5 0v-4.5a.75.75 0 00-.75-.75h-4.5a.75.75 0 000 1.5h2.553l-9.056 8.194a.75.75 0 00-.053 1.06z" clip-rule="evenodd"></path></svg> </a> </li> <li class="py-1 text-primary-gray-500 directory collapsed"> <h2 class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded hover:duration-75 font-display text-base font-medium text-primary-gray-600 flex justify-between items-center cursor-pointer select-none "> <span>Enterprise modules</span> <svg class="w-4 h-4 duration-75 arrow" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor"> <path stroke-linecap="round" stroke-linejoin="round" d="M8.25 4.5l7.5 7.5-7.5 7.5"></path> </svg> </h2> <ul class="pl-4"> <li class="py-1 text-primary-gray-500 directory collapsed"> <h2 class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded hover:duration-75 font-display text-base font-medium text-primary-gray-600 flex justify-between items-center cursor-pointer select-none "> <span>Device detection</span> <svg class="w-4 h-4 duration-75 arrow" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor"> <path stroke-linecap="round" stroke-linejoin="round" d="M8.25 4.5l7.5 7.5-7.5 7.5"></path> </svg> </h2> <ul class="pl-4"> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/enterprise-modules/device-detection/51degrees/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>51Degrees</span> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/enterprise-modules/device-detection/deviceatlas/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>DeviceAtlas</span> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/enterprise-modules/device-detection/scientiamobile/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>ScientiaMobile</span> </a> </li> </ul></li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/enterprise-modules/dynamic-updates/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Dynamic updates</span> </a> </li> <li class="py-1 text-primary-gray-500 directory collapsed"> <h2 class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded hover:duration-75 font-display text-base font-medium text-primary-gray-600 flex justify-between items-center cursor-pointer select-none "> <span>Geolocation</span> <svg class="w-4 h-4 duration-75 arrow" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor"> <path stroke-linecap="round" stroke-linejoin="round" d="M8.25 4.5l7.5 7.5-7.5 7.5"></path> </svg> </h2> <ul class="pl-4"> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/enterprise-modules/geolocation/digitalelement/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Digital Element</span> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/enterprise-modules/geolocation/maxmind/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>MaxMind</span> </a> </li> </ul></li> <li class="py-1 text-primary-gray-500 directory collapsed"> <h2 class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded hover:duration-75 font-display text-base font-medium text-primary-gray-600 flex justify-between items-center cursor-pointer select-none "> <span>Global Profiling Engine</span> <svg class="w-4 h-4 duration-75 arrow" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor"> <path stroke-linecap="round" stroke-linejoin="round" d="M8.25 4.5l7.5 7.5-7.5 7.5"></path> </svg> </h2> <ul class="pl-4"> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/enterprise-modules/global-profiling-engine/overview/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Overview</span> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/enterprise-modules/global-profiling-engine/installation/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Installation</span> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/enterprise-modules/global-profiling-engine/real-time-aggregation/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Real-time aggregation</span> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/enterprise-modules/global-profiling-engine/historical-aggregation/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Historical aggregation</span> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/enterprise-modules/global-profiling-engine/reference/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Reference</span> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/enterprise-modules/global-profiling-engine/troubleshooting/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Troubleshooting</span> </a> </li> </ul></li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/enterprise-modules/global-server-load-balancing/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>GSLB</span> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/enterprise-modules/real-time-dashboard/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Real-time Dashboard</span> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/enterprise-modules/response-body-injection/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Response body injection</span> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/enterprise-modules/route-health-injection/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Route health injection</span> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/enterprise-modules/send-metrics/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Send metrics</span> </a> </li> <li class="py-1 text-primary-gray-500 directory collapsed"> <h2 class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded hover:duration-75 font-display text-base font-medium text-primary-gray-600 flex justify-between items-center cursor-pointer select-none "> <span>Single sign-on</span> <svg class="w-4 h-4 duration-75 arrow" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor"> <path stroke-linecap="round" stroke-linejoin="round" d="M8.25 4.5l7.5 7.5-7.5 7.5"></path> </svg> </h2> <ul class="pl-4"> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/enterprise-modules/single-sign-on/sso-kerberos/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Kerberos</span> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/enterprise-modules/single-sign-on/sso-saml-native/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>SAML</span> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/enterprise-modules/single-sign-on/sso-saml/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>SAML (legacy)</span> </a> </li> </ul></li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/enterprise-modules/snmp/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>SNMP</span> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/enterprise-modules/ssl-crl/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>SSL-CRL</span> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/enterprise-modules/traffic-mirroring/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Traffic mirroring</span> </a> </li> <li class="py-1 text-primary-gray-500 directory collapsed"> <h2 class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded hover:duration-75 font-display text-base font-medium text-primary-gray-600 flex justify-between items-center cursor-pointer select-none "> <span>UDP load balancing</span> <svg class="w-4 h-4 duration-75 arrow" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor"> <path stroke-linecap="round" stroke-linejoin="round" d="M8.25 4.5l7.5 7.5-7.5 7.5"></path> </svg> </h2> <ul class="pl-4"> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/enterprise-modules/udp-load-balancing/overview/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Overview</span> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/enterprise-modules/udp-load-balancing/installation/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Installation and examples</span> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/enterprise-modules/udp-load-balancing/reference/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Reference</span> </a> </li> </ul></li> </ul></li> <li class="py-1 text-primary-gray-500 directory collapsed"> <h2 class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded hover:duration-75 font-display text-base font-medium text-primary-gray-600 flex justify-between items-center cursor-pointer select-none "> <span>Integrations</span> <svg class="w-4 h-4 duration-75 arrow" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor"> <path stroke-linecap="round" stroke-linejoin="round" d="M8.25 4.5l7.5 7.5-7.5 7.5"></path> </svg> </h2> <ul class="pl-4"> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/integrations/ansible/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Ansible</span> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/integrations/consul-service-mesh/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Consul service mesh</span> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/integrations/elastic-stack/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Elastic Stack</span> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/integrations/grafana/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Grafana</span> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/integrations/influxdb-telegraf/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>InfluxDB</span> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/integrations/ns1/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>NS1</span> </a> </li> </ul></li> <li class="py-1 text-primary-gray-500 file collapsed"> <a target="_blank" href="/documentation/haproxy-data-plane-api/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Data Plane API</span> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="ml-1 w-4 h-4 inline"><path fill-rule="evenodd" d="M4.25 5.5a.75.75 0 00-.75.75v8.5c0 .414.336.75.75.75h8.5a.75.75 0 00.75-.75v-4a.75.75 0 011.5 0v4A2.25 2.25 0 0112.75 17h-8.5A2.25 2.25 0 012 14.75v-8.5A2.25 2.25 0 014.25 4h5a.75.75 0 010 1.5h-5z" clip-rule="evenodd"></path><path fill-rule="evenodd" d="M6.194 12.753a.75.75 0 001.06.053L16.5 4.44v2.81a.75.75 0 001.5 0v-4.5a.75.75 0 00-.75-.75h-4.5a.75.75 0 000 1.5h2.553l-9.056 8.194a.75.75 0 00-.053 1.06z" clip-rule="evenodd"></path></svg> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a target="_blank" href="/documentation/haproxy-lua-api/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Lua API</span> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="ml-1 w-4 h-4 inline"><path fill-rule="evenodd" d="M4.25 5.5a.75.75 0 00-.75.75v8.5c0 .414.336.75.75.75h8.5a.75.75 0 00.75-.75v-4a.75.75 0 011.5 0v4A2.25 2.25 0 0112.75 17h-8.5A2.25 2.25 0 012 14.75v-8.5A2.25 2.25 0 014.25 4h5a.75.75 0 010 1.5h-5z" clip-rule="evenodd"></path><path fill-rule="evenodd" d="M6.194 12.753a.75.75 0 001.06.053L16.5 4.44v2.81a.75.75 0 001.5 0v-4.5a.75.75 0 00-.75-.75h-4.5a.75.75 0 000 1.5h2.553l-9.056 8.194a.75.75 0 00-.053 1.06z" clip-rule="evenodd"></path></svg> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a target="_blank" href="/documentation/haproxy-runtime-api/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Runtime API</span> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="ml-1 w-4 h-4 inline"><path fill-rule="evenodd" d="M4.25 5.5a.75.75 0 00-.75.75v8.5c0 .414.336.75.75.75h8.5a.75.75 0 00.75-.75v-4a.75.75 0 011.5 0v4A2.25 2.25 0 0112.75 17h-8.5A2.25 2.25 0 012 14.75v-8.5A2.25 2.25 0 014.25 4h5a.75.75 0 010 1.5h-5z" clip-rule="evenodd"></path><path fill-rule="evenodd" d="M6.194 12.753a.75.75 0 001.06.053L16.5 4.44v2.81a.75.75 0 001.5 0v-4.5a.75.75 0 00-.75-.75h-4.5a.75.75 0 000 1.5h2.553l-9.056 8.194a.75.75 0 00-.053 1.06z" clip-rule="evenodd"></path></svg> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a href="/documentation/haproxy-enterprise/licensing/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Licensing</span> </a> </li> <li class="py-1 text-primary-gray-500 file collapsed"> <a target="_blank" href="https://www.haproxy.com/documentation/haproxy-configuration-manual/latest/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> <span>Configuration reference</span> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="ml-1 w-4 h-4 inline"><path fill-rule="evenodd" d="M4.25 5.5a.75.75 0 00-.75.75v8.5c0 .414.336.75.75.75h8.5a.75.75 0 00.75-.75v-4a.75.75 0 011.5 0v4A2.25 2.25 0 0112.75 17h-8.5A2.25 2.25 0 012 14.75v-8.5A2.25 2.25 0 014.25 4h5a.75.75 0 010 1.5h-5z" clip-rule="evenodd"></path><path fill-rule="evenodd" d="M6.194 12.753a.75.75 0 001.06.053L16.5 4.44v2.81a.75.75 0 001.5 0v-4.5a.75.75 0 00-.75-.75h-4.5a.75.75 0 000 1.5h2.553l-9.056 8.194a.75.75 0 00-.053 1.06z" clip-rule="evenodd"></path></svg> </a> </li></ul> </nav> <script> document.addEventListener("turbo:before-visit", function () { store.navtop = document.getElementsByClassName('main-sidebar-nav')[0].scrollTop; }) document.addEventListener('turbo:load', function(event) { var anchors = document.querySelectorAll('.anchor-link'); for (const anchor of anchors) { anchor.setAttribute('data-turbo', 'false'); } if (document.getElementsByClassName('desktop-toc').length > 0) { var tocanchors = document.getElementsByClassName('desktop-toc')[0].getElementsByTagName('a') for (const tocanchor of tocanchors) { tocanchor.setAttribute('data-turbo', 'false'); } } if (document.getElementsByClassName('mobile-table-of-contents').length > 0) { var mobtocanchors = document.getElementsByClassName('mobile-table-of-contents')[0].getElementsByTagName('a') for (const mobtocanchor of mobtocanchors) { mobtocanchor.setAttribute('data-turbo', 'false'); } } var sidebarlinksdesktop = document.getElementsByClassName('main-sidebar-nav')[0].getElementsByTagName('a'); var sidebardirsdesktop = document.getElementsByClassName('main-sidebar-nav')[0].getElementsByTagName('h2'); var sidebarlinksmobile = document.getElementsByClassName('main-sidebar-nav')[1].getElementsByTagName('a'); var sidebardirsmobile = document.getElementsByClassName('main-sidebar-nav')[1].getElementsByTagName('h2'); initialSidebarSetup(sidebardirsdesktop); initialSidebarSetup(sidebardirsmobile); // setup initial state and actions for directories function initialSidebarSetup(sidebardirs) { for (const dir of sidebardirs) { dir.onclick = function(e) { if (e.target.closest('li').classList.contains('collapsed')) { e.target.closest('li').classList.replace('collapsed', 'expanded'); } else { e.target.closest('li').classList.replace('expanded', 'collapsed'); } } } } // remove all active classes from links and directories removeLinkActiveClass(sidebardirsdesktop, sidebarlinksdesktop); removeLinkActiveClass(sidebardirsmobile, sidebarlinksmobile); initialStateSetup(sidebarlinksdesktop); initialStateSetup(sidebarlinksmobile); // setup initial state and actions for links function initialStateSetup(sidebarlinks) { for (const link of sidebarlinks) { link.onclick = function(e) { if (e.target.tagName === 'A') { e.target.classList.add('active'); } else { e.target.closest('a').classList.add('active'); } } // check if current link is active // location.protocol+'//'+location.host+location.pathname is used to get the current url without the hash or parameters if (link.href == location.protocol+'//'+location.host+location.pathname) { // add active class to link link.classList.add('active'); // add active class to parent directories if (link.parentElement.closest('li.directory') != null) { activeParent(link.parentElement.closest('li.directory')); } } } } function removeLinkActiveClass(sidebardirs, sidebarlinks) { // remove all active classes from links for (const link of sidebarlinks) { link.classList.remove('active'); } // remove all active classes from directories for (const dir of sidebardirs) { dir.closest('li.directory').classList.remove('active'); } } // recursive function that adds active class to parent directories function activeParent(directory) { directory.classList.replace('collapsed', 'expanded'); directory.classList.add('active'); if (directory.parentElement.closest('li.directory') != null) { activeParent(directory.parentElement.closest('li.directory')); } } }); </script> </aside> <main class="block w-full max-w-full pt-6 pb-8 bg-white lg:max-w-5xl overflow-clip lg:px-6 dark:bg-slate-900 md:z-10 "> <article class="px-6 flex flex-col justify-between h-full"> <div class="relative"> <header class="space-y-1"> <div class="breadcrumbs mb-6"> <nav class="flex flex-wrap" aria-label="Breadcrumb"> <ol role="list" class="flex items-center flex-wrap gap-2" itemscope="" itemtype="http://schema.org/BreadcrumbList"> <li itemprop="name" class="hidden">HAProxy Enterprise Documentation</li> <li itemprop="itemListElement" itemscope="" itemtype="http://schema.org/ListItem"> <a href="/documentation/" class="text-slate-400 dark:text-slate-300 hover:text-primary-blue-600 dark:hover:text-primary-blue-500" itemscope="" itemtype="http://schema.org/Thing" itemprop="item" itemid="/" title="Home"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="h-4 w-4 flex-shrink-0" aria-hidden="true"> <path fill-rule="evenodd" d="M9.293 2.293a1 1 0 011.414 0l7 7A1 1 0 0117 11h-1v6a1 1 0 01-1 1h-2a1 1 0 01-1-1v-3a1 1 0 00-1-1H9a1 1 0 00-1 1v3a1 1 0 01-1 1H5a1 1 0 01-1-1v-6H3a1 1 0 01-.707-1.707l7-7z" clip-rule="evenodd"></path> </svg> <span itemprop="name" class="sr-only">Home</span> </a> <meta itemprop="position" content="1"></li> <li itemprop="itemListElement" itemscope="" itemtype="http://schema.org/ListItem" class="flex items-center flex-wrap"> <svg class="h-4 w-4 flex-shrink-0 text-slate-400 dark:text-slate-300 " viewBox="0 0 20 20" fill="currentColor" aria-hidden="true"> <path fill-rule="evenodd" d="M7.21 14.77a.75.75 0 01.02-1.06L11.168 10 7.23 6.29a.75.75 0 111.04-1.08l4.5 4.25a.75.75 0 010 1.08l-4.5 4.25a.75.75 0 01-1.06-.02z" clip-rule="evenodd"></path> </svg> <a href="/documentation/haproxy-enterprise/" class="!text-primary-blue-600 dark:!text-primary-blue-500 !font-semibold text-xs font-medium text-slate-500 dark:text-slate-300 hover:text-slate-700" itemscope="" itemtype="http://schema.org/Thing" itemprop="item" itemid="/haproxy-enterprise/" title="HAProxy Enterprise"> HAProxy Enterprise <span class="hidden" itemprop="name">HAProxy Enterprise</span> </a> <meta itemprop="position" content="2"></li> </ol> </nav> </div> <p class="parent-title font-display text-sm font-medium text-primary-blue-500 dark:text-primary-blue-500" data-pagefind-meta="parent">HAProxy Enterprise</p> <h1 class="font-display text-3xl tracking-tight text-slate-900 dark:text-white !mb-3" data-section="HAProxy Enterprise">HAProxy Enterprise</h1> </header> <div class="mobile-table-of-contents lg:hidden z-[1000]"> </div> <main class="prose prose-slate max-w-none dark:prose-invert dark:text-slate-400 prose-headings:scroll-mt-14 prose-headings:mb-3 prose-headings:font-display prose-headings:font-normal lg:prose-headings:scroll-mt-[2rem] prose-lead:text-slate-500 dark:prose-lead:text-slate-400 prose-a:font-semibold prose-a:text-primary-blue-600 dark:prose-a:text-primary-blue-500 prose-a:no-underline prose-a:shadow-[inset_0_-2px_0_0_var(--tw-prose-background,#fff), inset_0_calc(-1*(var(--tw-prose-underline-size,4px)+2px))_0_0_var(--tw-prose-underline,theme(colors.sky.300))] hover:prose-a:[--tw-prose-underline-size:6px] dark:[--tw-prose-background:theme(colors.slate.900)] dark:prose-a:shadow-[inset_0_calc(-1*var(--tw-prose-underline-size,2px))_0_0_var(--tw-prose-underline,theme(colors.sky.800))] dark:hover:prose-a:[--tw-prose-underline-size:6px] dark:prose-hr:border-slate-800 prose-img:!rounded-none relative"> <p>HAProxy Enterprise is the industry鈥檚 leading software load balancer. It powers modern application delivery at any scale and in any environment, providing the utmost performance, observability and security.</p> <ul class="list-none !pl-0"> <li class="!my-5 !pl-0"> <a href="/documentation/haproxy-enterprise/changelog/">Changelog </a> <p class="!mt-0">View the log of recent changes.</p> </li> <li class="!my-5 !pl-0"> <a href="/documentation/haproxy-enterprise/release-notes/">Release notes </a> <p class="!mt-0">View the release notes for HAProxy Enterprise.</p> </li> <li class="!my-5 !pl-0"> <a href="/documentation/haproxy-enterprise/end-of-life-dates/">End-of-life dates </a> <p class="!mt-0">Review HAProxy Enterprise release dates and end-of-life dates.</p> </li> <li class="!my-5 !pl-0"> <a href="/documentation/haproxy-enterprise/getting-started/">Getting started </a> </li> <li class="!my-5 !pl-0"> <a href="/documentation/haproxy-enterprise/administration/">Administration </a> <p class="!mt-0">Learn about administration features in HAProxy Enterprise.</p> </li> <li class="!my-5 !pl-0"> <a href="/documentation/haproxy-configuration-tutorials/">Configuration tutorials </a> <p class="!mt-0">See examples of configuring the load balancer for common use cases.</p> </li> <li class="!my-5 !pl-0"> <a href="https://customer-docs.haproxy.com/bot-management/">Bot management </a> </li> <li class="!my-5 !pl-0"> <a href="https://customer-docs.haproxy.com/web-application-firewall/">Web Application Firewall </a> </li> <li class="!my-5 !pl-0"> <a href="/documentation/haproxy-enterprise/enterprise-modules/">Enterprise modules </a> <p class="!mt-0">Learn about HAProxy Enterprise modules.</p> </li> <li class="!my-5 !pl-0"> <a href="/documentation/haproxy-enterprise/integrations/">Integrations </a> </li> <li class="!my-5 !pl-0"> <a href="/documentation/haproxy-data-plane-api/">Data Plane API </a> <p class="!mt-0">The Data Plane API lets you configure the load balancer using HTTP RESTful commands.</p> </li> <li class="!my-5 !pl-0"> <a href="/documentation/haproxy-lua-api/">Lua API </a> <p class="!mt-0">Use the Lua API to extend the load balancer&#39;s functionality.</p> </li> <li class="!my-5 !pl-0"> <a href="/documentation/haproxy-runtime-api/">Runtime API </a> <p class="!mt-0">Use the Runtime API to update the load balancer&#39;s configuration in memory without requiring a reload.</p> </li> <li class="!my-5 !pl-0"> <a href="/documentation/haproxy-enterprise/licensing/">Licensing </a> <p class="!mt-0">Review the HAProxy Enterprise license information.</p> </li> <li class="!my-5 !pl-0"> <a href="https://www.haproxy.com/documentation/haproxy-configuration-manual/latest/">Configuration reference </a> <p class="!mt-0">HAProxy Configuration Manual</p> </li> </ul> </main> </div> <div class="print:hidden pdf:hidden mt-auto mb-0" data-turbo-permanent=""> <div x-data="modalform"> <div class="modal flex fixed top-0 left-0 right-0 z-50 w-full p-4 overflow-x-hidden overflow-y-auto md:inset-0 h-full max-h-full bg-[#00000099]" role="dialog" tabindex="-1" x-show="feedbackDialog" x-init="loadCaptcha()" style="display: none;" @keydown.window.escape="feedbackDialog = false"> <div class="relative w-full max-w-2xl max-h-full m-auto transition-opacity duration-300" x-on:click.away="feedbackDialog = false" x-transition=""> <!-- Modal content --> <div id="feedbackdlg" class="relative bg-white border rounded shadow-md dark:bg-slate-900 border-primary-gray-100 dark:border-primary-gray-700"> <!-- Modal header --> <div class="flex items-start justify-between p-4 border-b rounded-t dark:border-gray-600"> <h3 class="text-xl font-semibold text-gray-900 dark:text-white"> Your feedback is important to us! </h3> <button type="button" class="inline-flex items-center justify-center w-8 h-8 ml-auto text-sm text-gray-400 bg-transparent rounded hover:bg-gray-200 hover:text-gray-900 dark:hover:bg-primary-blue-900 dark:hover:text-white" @click="feedbackDialog = false"> <svg class="w-3 h-3" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" fill="none" viewbox="0 0 14 14"> <path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="m1 1 6 6m0 0 6 6M7 7l6-6M7 7l-6 6"></path> </svg> <span class="sr-only">Close modal</span> </button> </div> <!-- Modal body --> <div class="py-4 modal-body text-slate-900 dark:text-white"> <div x-show="message" style="display:none;" class="p-4 mx-4 rounded-md bg-green-50"> <div class="flex"> <div class="flex-shrink-0"> <svg class="w-5 h-5 text-green-400" viewBox="0 0 20 20" fill="currentColor" aria-hidden="true"> <path fill-rule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.857-9.809a.75.75 0 00-1.214-.882l-3.483 4.79-1.88-1.88a.75.75 0 10-1.06 1.061l2.5 2.5a.75.75 0 001.137-.089l4-5.5z" clip-rule="evenodd"></path> </svg> </div> <div class="flex-1 ml-3 md:flex md:justify-between"> <p class="text-sm text-green-700" x-text="message"></p> </div> </div> </div> <div x-show="error" style="display:none;" class="p-4 mx-4 mb-4 rounded-md bg-red-50"> <div class="flex"> <div class="flex-shrink-0"> <svg class="w-5 h-5 text-red-400" viewBox="0 0 20 20" fill="currentColor" aria-hidden="true"> <path fill-rule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zM8.28 7.22a.75.75 0 00-1.06 1.06L8.94 10l-1.72 1.72a.75.75 0 101.06 1.06L10 11.06l1.72 1.72a.75.75 0 101.06-1.06L11.06 10l1.72-1.72a.75.75 0 00-1.06-1.06L10 8.94 8.28 7.22z" clip-rule="evenodd"></path> </svg> </div> <div class="flex-1 ml-3 md:flex md:justify-between"> <p class="text-sm text-red-700" x-text="error"></p> </div> </div> </div> <form x-show="!message" id="feedback-form" x-ref="feedbackForm" method="post" style="overflow: hidden;" class="px-6 text-slate-900 dark:text-white" @submit.prevent="submitForm()"> <input type="hidden" name="address" value=""> <div class="mb-4"> <label class="block text-sm font-medium leading-6 text-gray-900 pb-1.5 dark:text-white" for="name"> Name: (optional) </label> <input class="bg-gray-50 border border-gray-300 text-gray-900 text-sm rounded focus:outline-none focus:border-primary-blue-500 block w-full p-2.5 dark:bg-gray-700 dark:border-gray-600 dark:placeholder-gray-400 dark:text-white dark:focus:border-primary-blue-500" name="name" type="text" placeholder="Name" x-model="formData.name" x-ref="nameInput"> </div> <div class="mb-4"> <label class="block text-sm font-medium leading-6 text-gray-900 pb-1.5 dark:text-white" for="email"> Email: (optional) </label> <input class="bg-gray-50 border border-gray-300 text-gray-900 text-sm rounded focus:outline-none focus:border-primary-blue-500 block w-full p-2.5 dark:bg-gray-700 dark:border-gray-600 dark:placeholder-gray-400 dark:text-white dark:focus:border-primary-blue-500" name="email" type="email" placeholder="Email" x-model="formData.email"> </div> <div> <label class="block text-sm font-medium leading-6 text-gray-900 pb-1.5 dark:text-white" for="suggestion"> Feedback: </label> <textarea name="suggestion" x-model="formData.suggestion" class="bg-gray-50 border border-gray-300 text-gray-900 text-sm rounded focus:outline-none focus:border-primary-blue-500 block w-full p-2.5 dark:bg-gray-700 dark:border-gray-600 dark:placeholder-gray-400 dark:text-white dark:focus:border-primary-blue-500" rows="8" cols="50" maxlength="400" placeholder="Do you have any suggestions on how we can improve the content of this page?" required=""></textarea> </div> <div id="captcha" class="hidden"></div> <div class="pt-3 pb-6 text-xs text-primary-gray-600">This site is protected by reCAPTCHA and the <a class="underline" href="https://policies.google.com/privacy" target="_blank">Google Privacy Policy</a> and <a class="underline" href="https://policies.google.com/terms" target="_blank">Terms of Service</a> apply.</div> <!-- Modal footer --> <div class="flex items-center justify-end pt-4 pb-1 space-x-2 text-right border-t border-gray-200 rounded-b modal-footer dark:border-gray-600"> <button @click.prevent="feedbackDialog = false" type="button" class="text-gray-500 bg-white hover:bg-gray-100 focus:ring-4 focus:outline-none focus:ring-primary-blue-300 rounded border border-gray-200 text-sm font-medium px-5 py-2.5 hover:text-gray-900 focus:z-10 dark:bg-gray-700 dark:text-gray-300 dark:border-gray-500 dark:hover:text-white dark:hover:bg-gray-600 dark:focus:ring-gray-600"> Cancel</button> <button type="submit" :disabled="loading" class="text-white bg-primary-blue-600 hover:bg-primary-blue-700 focus:ring-4 focus:outline-none focus:ring-primary-blue-300 font-medium rounded text-sm px-5 py-2.5 text-center dark:bg-primary-blue-600 dark:hover:bg-primary-blue-700 dark:focus:ring-primary-blue-800 flex gap-2 items-center"> <svg x-show="loading" class="w-5 h-5 mr-3 -ml-1 text-white animate-spin" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24"> <circle class="opacity-25" cx="12" cy="12" r="10" stroke="currentColor" stroke-width="4"></circle> <path class="opacity-75" fill="currentColor" d="M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"></path> </svg> <span x-text="loading ? 'Submitting...' : 'Submit'"></span> </button> </div> </form> </div> </div> </div> </div> <script> document.addEventListener('alpine:init', () => { Alpine.data('modalform', function () { return { message: '', error: '', loading: false, formData: { name: '', email: '', suggestion: '' }, loadCaptcha() { const script = document.createElement('script'); script.src = 'https://www.google.com/recaptcha/api.js?render=6LeH17UbAAAAAB5YRdbxpgtOrCo_SOt_yKEF0dZw'; script.async = true; script.onload = () => { grecaptcha.ready(() => { this.captcha().then((token) => {}); }); }; document.head.appendChild(script); }, submitForm() { this.loading = true; this.captcha().then((token) => { const form = this.$refs.feedbackForm; const formData = new FormData(form); const url = "https://forms.haproxy.com/wp-content/tools/feedback/" formData.append('address', window.location.href); formData.append('token', token); formData.append('action', 'feedback_form'); fetch(url, { method: 'POST', body: formData, headers: {} }).then((response) => { if (response.status == 200) { this.loading = false; this.message = 'Thank you for the feedback!' setTimeout(() => { this.feedbackDialog = false; this.resetForm(); }, 3000); } else { throw new Error('An error occurred, please reload the page and try again!'); } }).catch((error) => { this.loading = false; this.error = error; console.error(error); setTimeout(() => { this.error = ''; }, 5000); }); }); }, captcha() { return new Promise((resolve) => { grecaptcha.execute('6LeH17UbAAAAAB5YRdbxpgtOrCo_SOt_yKEF0dZw', {action: 'feedback_form'}).then((token) => { resolve(token); }); }); }, resetForm() { this.message = ''; this.error = ''; this.formData = { name: '', email: '', suggestion: '' }; } } }) }); </script><div id="feedback-form" class="block w-full border-t border-primary-gray-100 dark:border-primary-gray-700 py-3 my-6 xl:hidden"> <div class="flex w-full xl:hidden"> <p class="text-slate-900 dark:text-white pb-3"><i>Do you have any suggestions on how we can improve the content of this page?</i></p> </div> <div class="flex flex-col flex-wrap w-full"><div class="flex xl:hidden"> <button class="text-white ml-auto bg-primary-blue-600 hover:bg-primary-blue-700 focus:ring-4 focus:outline-none focus:ring-blue-300 font-medium text-sm px-5 py-2.5 text-center dark:bg-blue-600 dark:hover:bg-blue-700 dark:focus:ring-blue-800" @click.prevent="feedbackDialog = !feedbackDialog, $nextTick(() => $refs.nameInput.focus())"> <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="w-5 h-5 inline-block"> <path stroke-linecap="round" stroke-linejoin="round" d="M12 18v-5.25m0 0a6.01 6.01 0 001.5-.189m-1.5.189a6.01 6.01 0 01-1.5-.189m3.75 7.478a12.06 12.06 0 01-4.5 0m3.75 2.383a14.406 14.406 0 01-3 0M14.25 18v-.192c0-.983.658-1.823 1.508-2.316a7.5 7.5 0 10-7.517 0c.85.493 1.509 1.333 1.509 2.316V18"></path> </svg> Feedback? </button> </div></div> </div> </div> <div class="print:hidden pdf:hidden flex justify-between flex-wrap md:flex-nowrap gap-4 flex-col-reverse md:flex-row my-4"> <a class="nextprev flex mr-0 ml-auto flex-col md:items-end justify-start px-5 py-4 border border-primary-gray-100 dark:border-primary-gray-700 rounded w-full md:w-1/2 hover:border-primary-blue-600" href="/documentation/haproxy-enterprise/changelog/"> <span class="text-xs font-medium mb-1 text-primary-gray-600 dark:text-primary-gray-300"> Next page </span> <span class="text-primary-blue-600 dark:text-primary-blue-400 text-lg flex items-center gap-1"> Changelog </span> </a> </div> </div></article> </main> <sidebar class="hidden xl:block w-[300px] min-h-[calc(100vh-160px)] flex-shrink-0 relative px-4 py-4 bg-white dark:bg-slate-900" data-pagefind-ignore=""> <div class="lg:sticky overflow-y-auto h-auto md:top-[100px] py-3 customscroll md:max-h-[calc(100vh-116px)]"> <div class="print:hidden pdf:hidden mt-auto mb-0" data-turbo-permanent=""> <div class="hidden xl:block mb-5 pl-4"> <button class="text-white bg-primary-blue-600 hover:bg-primary-blue-700 focus:ring-4 focus:outline-none focus:ring-blue-300 font-medium text-sm px-5 py-2.5 text-center dark:bg-blue-600 dark:hover:bg-blue-700 dark:focus:ring-blue-800" @click.prevent="feedbackDialog = !feedbackDialog, $nextTick(() => $refs.nameInput.focus())"> <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="w-5 h-5 inline-block"> <path stroke-linecap="round" stroke-linejoin="round" d="M12 18v-5.25m0 0a6.01 6.01 0 001.5-.189m-1.5.189a6.01 6.01 0 01-1.5-.189m3.75 7.478a12.06 12.06 0 01-4.5 0m3.75 2.383a14.406 14.406 0 01-3 0M14.25 18v-.192c0-.983.658-1.823 1.508-2.316a7.5 7.5 0 10-7.517 0c.85.493 1.509 1.333 1.509 2.316V18"></path> </svg> Feedback? </button> </div> </div> </div> </sidebar> </div> </div> <div class="py-5 px-6 bg-primary-gray-50 text-primary-gray-500 dark:bg-slate-800 text-xs text-center" data-pagefind-ignore="" id="footer" data-turbo-permanent=""> 漏 2025 HAProxy Technologies, LLC. All Rights Reserved <div class="text-center text-xs mx-auto mt-1"> <span x-data="" x-cloak=""> <span ax-init="Alpine.store('cookieBannerConsent', JSON.parse(localStorage.getItem('cookieBannerConsent')) === null ? false : true);" x-show="Alpine.store('cookieBannerConsent') === true"> <a class="underline cursor-pointer" @click.prevent="localStorage.setItem('cookieBannerConsent', null); Alpine.store('cookieBannerConsent', JSON.parse(localStorage.getItem('cookieBannerConsent')) === null ? false : true)" href="#">Manage Cookie Preferences</a> </span> </span> </div> </div> <div id="cookie-banner" data-turbo-permanent="" class="dark:bg-gray-900 dark:border-gray-600 bg-primary-gray-50 border border-primary-gray-400 rounded w-full md:w-[500px] fixed shadow-lg z-50 px-default p-5 gap-4 bottom-0 md:bottom-[20px] md:right-[20px] md:left-auto" x-init=" if (localStorage.getItem('cookieBannerConsent') === null) { localStorage.setItem('cookieBannerConsent', null); } if (localStorage.getItem('cookieBannerConsentDate') === null) { localStorage.setItem('cookieBannerConsentDate', null); } if (localStorage.getItem('cookieBannerAdStorage') === null) { localStorage.setItem('cookieBannerAdStorage', false); } if (localStorage.getItem('cookieBannerAnalyticsStorage') === null) { localStorage.setItem('cookieBannerAnalyticsStorage', false); } if (localStorage.getItem('cookieBannerAdUserData') === null) { localStorage.setItem('cookieBannerAdUserData', false); } if (localStorage.getItem('cookieBannerAdPersonalization') === null) { localStorage.setItem('cookieBannerAdPersonalization', false); } cookieBannerStorager(); if($store.cookieBanner.checkDates(cookieConsentDate) && (!adStorage || !analyticsStorage)){ $store.cookieBanner.set(null) } if (localStorage.getItem('cookieUserId') === null || localStorage.getItem('cookieUserId') === '') { const newId = Alpine.store('cookieBanner').uniqueId() localStorage.setItem('cookieUserId', newId); userId = newId; } Alpine.store('cookieBannerConsent', JSON.parse(localStorage.getItem('cookieBannerConsent')) === null ? false : true); " x-show="getCookie('GDIR') != 'pass' && Alpine.store('cookieBannerConsent') != true" style="display: none;" x-data="{ cookieBannerConsent: JSON.parse(localStorage.getItem('cookieBannerConsent')) === null ? false : true, info: false, adStorage: (JSON.parse(localStorage.getItem('cookieBannerAdStorage')) === null || JSON.parse(localStorage.getItem('cookieBannerAdStorage')) === true) ? true : false, analyticsStorage: (JSON.parse(localStorage.getItem('cookieBannerAnalyticsStorage')) === null || JSON.parse(localStorage.getItem('cookieBannerAnalyticsStorage')) === true) ? true : false, adUserData: (JSON.parse(localStorage.getItem('cookieBannerAdUserData')) === null || JSON.parse(localStorage.getItem('cookieBannerAdUserData')) === true) ? true : false, adPersonalization: (JSON.parse(localStorage.getItem('cookieBannerAdPersonalization')) === null || JSON.parse(localStorage.getItem('cookieBannerAdPersonalization')) === true) ? true : false, cookieConsentDate: JSON.parse(localStorage.getItem('cookieBannerConsentDate')), userId: localStorage.getItem('cookieUserId') ?? '', }"> <div class="px-2 text-sm"> <h2 class="mt-0 mb-3 text-sm font-semibold text-primary-blue-800 dark:text-primary-blue-50">Privacy Settings</h2> <span class="text-primary-gray-600 dark:text-primary-blue-100">HAProxy's website uses cookies. By proceeding, you consent to our cookie usage. Please see our Privacy Policy and Cookie Policy for cookie usage details and instructions on how to disable cookies.</span> <div class="pt-3 space-x-2"> <a class="text-xs font-semibold text-primary-gray-500 dark:text-primary-blue-50" href="https://www.haproxy.com/legal/privacy-policy/">Privacy and Cookie Policy</a> <a class="text-xs font-semibold text-primary-gray-500 dark:text-primary-blue-50" @click.prevent="info = !info" href="#"> More information </a> </div> </div> <div x-show="info" x-transition:enter="transition ease-out duration-150" x-transition:enter-start="opacity-0" x-transition:enter-end="opacity-100" x-transition:leave="transition ease-in duration-0" x-transition:leave-start="opacity-100" x-transition:leave-end="opacity-0" class="px-2 mx-2 mt-4 border-t-2 border-gray-100 dark:border-primary-gray-600"> <div class="flex flex-col mt-4 space-y-4"> <label class="flex items-center justify-between space-x-4"> <span class="flex flex-col flex-1"> <span class="text-xs font-bold dark:text-primary-blue-50">Functional</span> <span class="text-xs text-gray-600 dark:text-primary-blue-100">Cookies that make the website usable.</span> </span> <input class="w-5 h-5 mr-3 rounded opacity-50 border-gray text-primary focus:outline-none focus-visible:ring focus-visible:ring-primary motion-safe:transition" type="checkbox" name="functional" checked="checked" disabled="disabled"></label> <label class="flex items-center justify-between space-x-4"> <span class="flex flex-col flex-1"> <span class="text-xs font-bold dark:text-primary-blue-50">Analytics</span> <span class="text-xs text-gray-600 dark:text-primary-blue-100">Help website owners understand how visitors interact with websites.</span> </span> <input class="w-5 h-5 mr-3 rounded border-gray text-primary focus:outline-none focus-visible:ring focus-visible:ring-primary motion-safe:transition" type="checkbox" name="analytics_storage" x-model="analyticsStorage"></label> <label class="flex items-center justify-between space-x-4"> <span class="flex flex-col flex-1"> <span class="text-xs font-bold dark:text-primary-blue-50">Ads</span> <span class="text-xs text-gray-600 dark:text-primary-blue-100">Enables advertising related storage.</span> </span> <input class="w-5 h-5 mr-3 rounded border-gray text-primary focus:outline-none focus-visible:ring focus-visible:ring-primary motion-safe:transition" type="checkbox" name="ad_storage" x-model="adStorage"></label> <label class="flex items-center justify-between space-x-4"> <span class="flex flex-col flex-1"> <span class="text-xs font-bold dark:text-primary-blue-50">User data</span> <span class="text-xs text-gray-600 dark:text-primary-blue-100">Consent for sending user data to Google for advertising purposes.</span> </span> <input class="w-5 h-5 mr-3 rounded border-gray text-primary focus:outline-none focus-visible:ring focus-visible:ring-primary motion-safe:transition" type="checkbox" name="ad_user_data" x-model="adUserData"></label> <label class="flex items-center justify-between space-x-4"> <span class="flex flex-col flex-1"> <span class="text-xs font-bold dark:text-primary-blue-50">Ad personalization</span> <span class="text-xs text-gray-600 dark:text-primary-blue-100">Consent for personalized advertising.</span> </span> <input class="w-5 h-5 mr-3 rounded border-gray text-primary focus:outline-none focus-visible:ring focus-visible:ring-primary motion-safe:transition" type="checkbox" name="ad_personalization" x-model="adPersonalization"></label> </div> <div class="mt-4" x-data="{ show: false }"> <div x-show="cookieConsentDate"> <div class="cursor-pointer" @click="show = !show"> <span class="pt-2 text-xs font-medium text-gray-600 dark:text-primary-blue-50"> Show details </span> <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.0" stroke="currentColor" class="text-gray-600 dark:text-primary-blue-50 duration-300 w-[16px] h-[16px] inline-block group-hover:hidden -mt-[3px]" x-bind:class="show ? 'transform rotate-180' : ''"> <path stroke-linecap="round" stroke-linejoin="round" d="M19.5 8.25l-7.5 7.5-7.5-7.5"></path> </svg> </div> <div x-show="show && cookieConsentDate"> <div class="p-3 mt-1 space-y-2 text-sm border rounded-lg bg-gray-50 dark:bg-gray-800 dark:border-gray-900"> <div> <span class="block text-xs dark:text-primary-blue-50"> <b> Consent date: </b> </span> <span class="block text-xs text-gray-600 dark:text-primary-blue-100" x-text="(new Date(cookieConsentDate)).toString() ?? ''"></span> </div> <div> <span class="block text-xs dark:text-primary-blue-50"> <b> User Unique Id: </b> </span> <span class="block text-xs text-gray-600 dark:text-primary-blue-100" x-text="userId"></span> </div> </div> </div> </div> </div> </div> <div class="flex flex-wrap items-center gap-3 mt-6"> <div class="w-full text-center md:flex-1"> <a class="p-0 m-0 text-sm text-gray-600 btn-transparent dark:text-gray-200" href="#" @click.prevent="localStorage.setItem('cookieBannerConsent', true), Alpine.store('cookieBannerConsent', true), gtag('consent', 'update', { 'analytics_storage': 'denied', 'functionality_storage': 'granted', 'ad_storage': 'denied', 'ad_user_data': 'denied', 'ad_personalization': 'denied' }), analyticsStorage = false, adStorage = false, adUserData = false, adPersonalization = false, cookieConsentDate = Alpine.store('cookieBanner').now(), userId = localStorage.getItem('cookieUserId') != null ? localStorage.getItem('cookieUserId') : Alpine.store('cookieBanner').uniqueId() , info = false, localStorage.setItem('cookieBannerConsentDate', cookieConsentDate), localStorage.setItem('cookieBannerAdStorage', adStorage), localStorage.setItem('cookieBannerAnalyticsStorage', analyticsStorage), localStorage.setItem('cookieBannerAdUserData', adUserData), localStorage.setItem('cookieBannerAdPersonalization', adPersonalization), localStorage.setItem('cookieUserId', userId) "> Deny </a> </div> <a x-show="info" class="w-full px-4 py-2 my-0 text-sm text-center text-gray-600 bg-gray-100 border border-gray-100 rounded md:flex-1 dark:text-gray-200 dark:bg-gray-800 dark:border-gray-900" href="#" @click.prevent="localStorage.setItem('cookieBannerConsent', 'true'), Alpine.store('cookieBannerConsent', true), cookieConsentDate = Alpine.store('cookieBanner').now(), userId = localStorage.getItem('cookieUserId') != null ? localStorage.getItem('cookieUserId') : Alpine.store('cookieBanner').uniqueId() , info = false, localStorage.setItem('cookieBannerConsentDate', cookieConsentDate), localStorage.setItem('cookieBannerAdStorage', adStorage), localStorage.setItem('cookieBannerAdUserData', adUserData), localStorage.setItem('cookieBannerAdPersonalization', adPersonalization), localStorage.setItem('cookieBannerAnalyticsStorage', analyticsStorage), localStorage.setItem('cookieUserId', userId) gtag('consent', 'update', { 'ad_user_data': adUserData ? 'granted' : 'denied', 'ad_personalization': adPersonalization ? 'granted' : 'denied', 'ad_storage': adStorage ? 'granted' : 'denied', 'analytics_storage': analyticsStorage ? 'granted' : 'denied', 'functionality_storage': 'granted' }); "> Save </a> <a class="w-full px-4 py-2 my-0 text-sm text-center rounded bg-primary-blue-500 text-primary-blue-50 md:flex-1" href="#" @click.prevent=" localStorage.setItem('cookieBannerConsent', 'true'), Alpine.store('cookieBannerConsent', true), gtag('consent', 'update', { 'analytics_storage': 'granted', 'functionality_storage': 'granted', 'ad_storage': 'granted', 'ad_user_data': 'granted', 'ad_personalization': 'granted' }), analyticsStorage = true, adStorage = true, adUserData = true, adPersonalization = true, cookieConsentDate = Alpine.store('cookieBanner').now(), userId = localStorage.getItem('cookieUserId') != null ? localStorage.getItem('cookieUserId') : Alpine.store('cookieBanner').uniqueId() , info = false, localStorage.setItem('cookieBannerConsentDate', cookieConsentDate), localStorage.setItem('cookieBannerAdStorage', adStorage), localStorage.setItem('cookieBannerAdUserData', adUserData), localStorage.setItem('cookieBannerAdPersonalization', adPersonalization), localStorage.setItem('cookieBannerAnalyticsStorage', analyticsStorage), localStorage.setItem('cookieUserId', userId) "> Accept and close </a> </div> </div> <script> function cookieBannerStorager() { const cookieBannerStore = { consent: JSON.parse(localStorage.getItem('cookieBannerConsent')) || null, set(value) { this.consent = value; localStorage.setItem('cookieBannerConsent', JSON.stringify(value)); }, uniqueId() { const dateString = Date.now().toString(36); const randomness = Math.random().toString(36).substr(2); return dateString + randomness; }, now() { return String(Date.now()); }, checkDates(dateString){ if(!dateString){ return true } const givenDate = new Date(dateString); if(givenDate == "Invalid Date"){ return true } const days = 1; const today = Date.now(); const timeDiff = today - givenDate; const diffInDays = timeDiff / (1000 * 3600 * 24); if (diffInDays > days) { return true } else { return false } } }; Alpine.store('cookieBanner', cookieBannerStore); } </script> <div class="relative z-50" aria-labelledby="slide-over-title" role="dialog" aria-modal="true"> <div x-show="mobileNav" style="display: none;" class="fixed inset-0 bg-primary-gray-500 bg-opacity-75 transition-opacity" x-transition:enter="ease-in-out duration-150" x-transition:enter-start="opacity-0" x-transition:enter-end="opacity-100" x-transition:leave="ease-in-out duration-75" x-transition:leave-start="opacity-100" x-transition:leave-end="opacity-0"></div> <div x-show="mobileNav" style="display: none;" class="fixed inset-0 overflow-hidden"> <div class="absolute inset-0 overflow-hidden"> <div class="pointer-events-none fixed inset-y-0 left-0 flex max-w-full"> <div x-show="mobileNav" style="display: none;" class="pointer-events-auto w-screen max-w-md" @click.away="mobileNav = false" @keydown.window.escape="mobileNav = false" x-transition:enter="transform transition ease-in-out duration-150" x-transition:enter-start="-translate-x-full" x-transition:enter-end="translate-x-0" x-transition:leave="ease-in-out duration-75" x-transition:leave-start="opacity-100" x-transition:leave-end="opacity-0"> <div class="flex h-full flex-col overflow-y-scroll bg-white dark:bg-slate-900 py-4 shadow-xl"> <div class="px-4 border-b pb-4"> <div class="flex items-center justify-between"> <a aria-label="Home page" href="/documentation/" data-turbo="false" class="block h-[49px] w-auto pr-2"> <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 377 89" class="h-full dark-mode-logo"> <path fill="#fff" d="M126.07 63.93V48.17h-19.26v15.76H99.8V25.41h7.01v15.76h19.26V25.41h7v38.52h-7ZM169.67 56.05h-19.8l-3.61 7.88h-7.72l17.28-38.52h7.85l17.26 38.52h-7.79l-3.47-7.88Zm-9.93-23.36-7.12 16.35h14.27l-7.15-16.35ZM204.86 52.55h-11.38v11.38h-7V25.41l18.3-.07c18.76 0 18.8 27.17 0 27.17m-11.26-6.96h11.16c9.54 0 9.46-14.01 0-14.01h-11.2l.04 14.01Zm64.28 18.38h-7.22L239.1 50.8H232v13.13h-7V25.41l17.61.07c8.74.07 13.35 6.08 13.35 12.74 0 5.29-2.32 10.62-9.36 12.1l11.23 13.14-.03.47ZM232 31.54V43.8h11c4.59 0 6.56-3.05 6.56-6.13s-2.01-6.13-6.56-6.13h-11Zm68.3 12.92c-.11 9.92-6.22 19.87-19.69 19.87-13.47 0-19.77-9.7-19.77-19.8 0-10.1 6.47-20.23 19.77-20.23s19.8 10.13 19.69 20.16Zm-32.31.18c.18 6.33 3.56 13.05 12.61 13.05 9.05 0 12.47-6.79 12.58-13.12.11-6.33-3.52-13.73-12.58-13.73s-12.79 7.33-12.61 13.8Z"></path> <path fill="#fff" d="M327.39 25.41h7.91v-.04l-12.97 18.66 13.85 19.19v.71h-8.57l-9.81-14.91-9.85 14.91h-8.54v-.71l13.79-19.19-12.91-18.66v.04h7.91l9.6 13.94 9.59-13.94Zm29.96 15.9 10.28-15.9h8.82v.32l-14.88 22.29v15.91h-7.88V48.02l-14.88-22.29v-.32h8.69l9.85 15.9ZM35.156 22.428l.27-.238 9.234 10.456-.27.238-9.234-10.456Z"></path> <path fill="#fff" d="m15.45 24.71 7.26 10.49-.15.11-7.26-10.5.15-.1Zm28.94 7.95 9.2-10.5.27.24-9.2 10.5-.27-.24Zm11.088 11.66 10.892-9.203.232.275-10.892 9.204-.232-.275Z"></path> <path fill="#fff" d="m55.71 44.32 10.89 9.56-.24.27-10.89-9.56.24-.27ZM44.383 55.899l.267-.241 9.235 10.241-.268.241-9.234-10.24Z"></path> <path fill="#fff" d="m35.191 65.894 9.202-10.244.268.24-9.202 10.245-.268-.24ZM22.52 53.442l10.492-9.163.237.272-10.492 9.162-.237-.27Z"></path> <path fill="#fff" d="m22.519 35.397.237-.271 10.492 9.162-.237.272-10.492-9.163Z"></path> <path fill="#fff" d="m44.54 32.96-21.88 2.48-.04-.36L44.5 32.6l.04.36Z"></path> <path fill="#fff" d="m44.54 32.6 21.96 2.48-.04.36-21.96-2.48.04-.36Z"></path> <path fill="#fff" d="M55.41 44.47 53.54 22.3l.37-.03 1.86 22.17-.36.03Z"></path> <path fill="#fff" d="m55.77 44.47-1.83 21.56-.36-.03 1.83-21.56.36.03Z"></path> <path fill="#fff" d="m66.5 54.2-21.96 1.76-.03-.36 21.96-1.76.03.36Z"></path> <path fill="#fff" d="m22.621 53.77.036-.359 21.89 2.193-.035.358-21.89-2.192Z"></path> <path fill="#fff" d="m35.14 66.04-2.19-21.6.36-.04L35.5 66l-.36.04Z"></path> <path fill="#fff" d="m35.47 22.34-2.16 22.1-.36-.04 2.16-22.1.36.04ZM12.55 38.01l10.06-2.84.05.17-10.06 2.84-.05-.17Z"></path> <path fill="#fff" d="m24.698 14.92.104-.147 10.528 7.473-.105.147-10.527-7.473Z"></path> <path fill="#fff" d="m35.2 22.298 2.407-12.215.177.035-2.408 12.215-.176-.035Z"></path> <path fill="#fff" d="m37.64 10.165.108-.143 16.026 12.182-.109.143L37.64 10.165Z"></path> <path fill="#fff" d="m51.41 10.08 2.4 12.18-.18.04-2.4-12.18.18-.04Z"></path> <path fill="#fff" d="m64.31 14.92-10.53 7.44-.11-.15 10.53-7.44.11.15Z"></path> <path fill="#fff" d="m73.66 24.85-19.95-2.48.03-.18 19.94 2.48-.02.18Z"></path> <path fill="#fff" d="m66.41 35.2 7.18-10.49.16.1-7.19 10.5-.15-.11Z"></path> <path fill="#fff" d="m66.51 35.17 10.24 2.84-.05.17-10.24-2.84.05-.17Z"></path> <path fill="#fff" d="m66.56 35.21 9.99 15.31-.15.1-9.99-15.31.15-.1ZM51.37 10.17 35.34 22.39l-.11-.14 16.03-12.22.11.14Z"></path> <path fill="#fff" d="m66.39 35.27-2.23-20.42.19-.02 2.22 20.42-.18.02Zm.06 18.66 9.99-3.45.06.17-9.99 3.45-.06-.17Z"></path> <path fill="#fff" d="m66.4 53.961 10.24-15.92.152.097-10.24 15.92-.152-.097Z"></path> <path fill="#fff" d="m66.56 53.96 7.18 9.74-.14.11-7.19-9.74.15-.11Z"></path> <path fill="#fff" d="m64.196 73.653 2.191-19.658.179.02-2.191 19.658-.18-.02Z"></path> <path fill="#fff" d="m53.81 65.95 10.53 7.65-.1.15-10.53-7.66.1-.14Z"></path> <path fill="#fff" d="m53.75 65.93 19.91-2.27.02.19-19.91 2.26-.02-.18Z"></path> <path fill="#fff" d="m53.85 66.04-2.41 12.4-.18-.04L53.67 66l.18.04Z"></path> <path fill="#fff" d="m53.82 66.09-16.03 12.4-.11-.14 16.02-12.4.12.14Z"></path> <path fill="#fff" d="m35.41 66 2.41 12.4-.18.04-2.41-12.4.18-.04Z"></path> <path fill="#fff" d="m35.274 66.086.11-.143L51.41 78.338l-.11.143-16.026-12.395Z"></path> <path fill="#fff" d="m35.38 66.09-10.53 7.66-.11-.15 10.53-7.65.11.14Z"></path> <path fill="#fff" d="m35.31 66.11-19.94-2.19.02-.18 19.94 2.19-.02.18Z"></path> <path fill="#fff" d="m22.71 53.64-7.26 10.24-.15-.11 7.26-10.24.15.11Z"></path> <path fill="#fff" d="m22.541 53.592.18-.02 2.157 20.095-.179.02-2.158-20.095Z"></path> <path fill="#fff" d="m22.61 53.67-10.1-3.16.06-.17 10.09 3.16-.05.17Z"></path> <path fill="#fff" d="M22.71 35.31 12.62 50.47l-.16-.1 10.1-15.16.15.1Z"></path> <path fill="#fff" d="M22.56 53.63 12.5 38.15l.15-.1 10.06 15.49-.15.09Zm2.29-38.78-2.12 20.42-.18-.02 2.12-20.42.18.02Z"></path> <path fill="#fff" d="m15.364 24.67 19.91-2.444.022.178-19.91 2.445-.022-.178Zm1.642-13.473.06-.126 7.73 3.703-.061.127-7.73-3.704Z"></path> <path fill="#fff" d="m24.114 6.364.14-.01.575 8.481-.14.01-.575-8.48Z"></path> <path fill="#fff" d="M37.68 10.17 24.16 6.43l.04-.13 13.51 3.73-.03.14Z"></path> <path fill="#fff" d="m31.892 2.955.11-.087 5.747 7.184-.11.087-5.747-7.184Z"></path> <path fill="#fff" d="m37.63 10.08 2.44-8.52.14.04-2.45 8.52-.13-.04Zm-12.925 4.726 7.19-11.932.12.073-7.19 11.931-.12-.072Z"></path> <path fill="#fff" d="m40.1 1.633.084-.111 11.175 8.516-.085.111L40.1 1.633Z"></path> <path fill="#fff" d="m51.25 10.12-2.51-8.84.13-.04 2.51 8.84-.13.04Z"></path> <path fill="#fff" d="M37.658 10.045 48.76 1.207l.087.11-11.102 8.837-.087-.11Zm13.602.015 5.83-7.19.1.08-5.82 7.19-.11-.08Z"></path> <path fill="#fff" d="m57.082 2.943.12-.071 7.115 11.93-.12.071-7.115-11.93Z"></path> <path fill="#fff" d="m64.19 14.84.75-8.48.14.01-.76 8.48-.13-.01Z"></path> <path fill="#fff" d="m51.306 10.022 13.69-3.738.036.136-13.689 3.737-.037-.135ZM64.22 14.78l7.91-4.09.06.12-7.9 4.09-.07-.12Z"></path> <path fill="#fff" d="m64.26 14.78 13.8 2.08-.02.14-13.8-2.09.02-.13Z"></path> <path fill="#fff" d="M73.61 24.73 78 16.89l.11.07-4.38 7.84-.12-.07Z"></path> <path fill="#fff" d="m73.6 24.77-1.51-14.02.14-.01 1.51 14.02-.14.01Z"></path> <path fill="#fff" d="m73.654 24.704 9.059-.754.011.14-9.058.754-.012-.14Z"></path> <path fill="#fff" d="m73.7 24.7 12.44 7.05-.07.12-12.43-7.05.06-.12Z"></path> <path fill="#fff" d="m76.66 38.07 6-14.09.13.05-6 14.09-.13-.05Z"></path> <path fill="#fff" d="m76.688 38.037 9.377-6.287.078.116-9.377 6.287-.078-.116Z"></path> <path fill="#fff" d="m76.74 38.03 10.46 2.12-.03.13-10.46-2.12.03-.13Z"></path> <path fill="#fff" d="m76.43 50.52 10.71-10.35.09.1-10.71 10.35-.09-.1Z"></path> <path fill="#fff" d="m76.46 50.49 10.96-2.049.026.138-10.96 2.049-.025-.138Z"></path> <path fill="#fff" d="m76.674 38.145.097-.1 10.707 10.419-.097.1-10.707-10.42Zm-.23 12.475.077-.117 9.377 6.251-.077.117-9.377-6.252Z"></path> <path fill="#fff" d="m73.64 63.7 12.18-6.94.07.12-12.19 6.93-.06-.11Z"></path> <path fill="#fff" d="m73.663 63.827.014-.14 8.985.899-.014.139-8.985-.898Z"></path> <path fill="#fff" d="m76.54 50.54 6.18 14.09-.13.05-6.18-14.09.13-.05Zm-2.931 13.246.123-.066 4.276 7.942-.123.066-4.276-7.941Z"></path> <path fill="#fff" d="m71.985 77.622 1.617-13.876.14.016-1.618 13.876-.14-.016Z"></path> <path fill="#fff" d="m64.26 73.745.064-.124 7.761 3.953-.063.124-7.762-3.953Z"></path> <path fill="#fff" d="m64.36 73.67.61 8.7-.14.01-.61-8.7.14-.01Z"></path> <path fill="#fff" d="m64.28 73.61 13.66-1.98.02.14-13.66 1.97-.02-.13Z"></path> <path fill="#fff" d="m57.078 85.749 7.154-12.116.12.071L57.2 85.82l-.12-.071Z"></path> <path fill="#fff" d="m51.41 78.38 5.78 7.36-.1.09-5.79-7.37.11-.08Z"></path> <path fill="#fff" d="m51.37 78.35 13.55 3.96-.04.13-13.55-3.96.04-.13Z"></path> <path fill="#fff" d="m51.42 78.44-2.55 9.02-.13-.04 2.55-9.02.13.04Z"></path> <path fill="#fff" d="m51.39 78.47-11.17 9.02-.09-.1 11.18-9.02.08.1Z"></path> <path fill="#fff" d="m37.8 78.4 2.44 9.02-.13.04-2.44-9.02.13-.04Z"></path> <path fill="#fff" d="m37.691 78.474.088-.109 11.07 9.022-.088.108-11.07-9.022Z"></path> <path fill="#fff" d="m31.925 85.746 5.753-7.37.11.086-5.752 7.37-.11-.086Z"></path> <path fill="#fff" d="m24.85 73.64 7.19 12.11-.12.07-7.18-12.11.11-.07Z"></path> <path fill="#fff" d="m37.75 78.48-13.62 4.17-.04-.13 13.62-4.17.04.13Z"></path> <path fill="#fff" d="m24.86 73.68-.68 8.91-.14-.01.69-8.91.13.01Z"></path> <path fill="#fff" d="m24.83 73.73-7.87 4.28-.07-.12 7.87-4.28.07.12Z"></path> <path fill="#fff" d="m15.45 63.82 1.54 14.12-.13.02-1.55-14.13.14-.01Z"></path> <path fill="#fff" d="m24.79 73.74-13.77-1.87.02-.13 13.76 1.87-.01.13Z"></path> <path fill="#fff" d="m10.973 71.777 4.35-7.982.123.067-4.35 7.982-.123-.067Z"></path> <path fill="#fff" d="m15.38 63.9-8.98.86-.01-.14 8.98-.86.01.14Z"></path> <path fill="#fff" d="M15.34 63.89 2.95 56.95l.06-.12 12.4 6.94-.07.12Z"></path> <path fill="#fff" d="m2.945 56.835 9.557-6.468.079.116-9.557 6.468-.079-.116Z"></path> <path fill="#fff" d="m12.53 50.49-10.86-1.9.03-.14 10.85 1.9-.02.14Z"></path> <path fill="#fff" d="M12.6 50.45 6.46 64.72l-.13-.06 6.15-14.26.12.05Zm.02-12.31L1.73 48.57l-.09-.1 10.89-10.42.09.09Z"></path> <path fill="#fff" d="M12.49 50.47 1.6 40.27l.1-.1 10.89 10.2-.1.1Zm.05-12.32-9.31-6.18.07-.11 9.31 6.18-.07.11Z"></path> <path fill="#fff" d="m1.637 40.15 10.926-2.12.027.137-10.926 2.12-.027-.138Z"></path> <path fill="#fff" d="M12.51 38.12 6.37 24.11l.12-.06 6.15 14.02-.13.05Z"></path> <path fill="#fff" d="m6.417 24.137.01-.14 8.944.682-.01.14-8.944-.682Z"></path> <path fill="#fff" d="m3.235 31.859 12.116-7.154.071.12L3.307 31.98l-.072-.12Z"></path> <path fill="#fff" d="m11.078 17.322.122-.07 4.239 7.472-.122.069-4.239-7.471Z"></path> <path fill="#fff" d="m15.31 24.75 1.65-13.62.14.02-1.65 13.62-.14-.02Z"></path> <path fill="#fff" d="m11.132 17.221 13.622-2.444.025.138-13.622 2.444-.025-.138ZM39.4 37.59l.07-10.43 10.43.07-.07 10.43-10.43-.07ZM28.02 49.85l.07-10.43 10.43.07-.07 10.43-10.43-.07ZM39.4 61.23l.07-10.43 10.43.07-.07 10.43-10.43-.07Zm11.38-11.38.07-10.43 10.43.07-.07 10.43-10.43-.07ZM19.26 38.49l.05-6.95 6.96.05-.05 6.96-6.96-.05v-.01Zm12.26-13.13.05-6.96 6.96.05-.05 6.96-6.96-.05Zm18.38 0 .05-6.96 6.95.05-.05 6.96-6.96-.05h.01Zm13.13 13.11.07-6.93 6.93.07-.07 6.93-6.93-.07Zm0 18.41.05-6.96 6.96.05-.05 6.96-6.96-.05ZM49.9 70.01l.05-6.96 6.96.05-.05 6.96-6.96-.05Zm-18.38 0 .05-6.96 6.96.05-.05 6.96-6.95-.05h-.01ZM19.26 56.86l.07-6.93 6.93.07-.07 6.93-6.93-.07Z"></path> <path fill="#fff" d="m13.13 27.12.04-5.22 5.22.04-.04 5.22-5.22-.04Zm8.75-9.63.04-5.22 5.22.04-.04 5.22-5.22-.04Zm13.13-4.38.04-5.22 5.22.04-.04 5.22-5.22-.04Zm13.98-5.22 4.41-.03.03 4.41-4.41.03-.03-4.41Zm13.13 4.38 4.41-.03.03 4.41-4.41.03-.03-4.41Zm9.63 10.51 4.41-.03.03 4.41-4.41.03-.03-4.41Zm2.63 13.13 4.41-.03.03 4.41-4.41.03-.03-4.41Zm-.84 17.47.04-5.22 5.22.04-.04 5.22-5.22-.04Zm-2.63 13.13.04-5.22 5.22.04-.04 5.22-5.22-.04Zm-9.63 9.63.04-5.22 5.22.04-.04 5.22-5.22-.04Zm-12.26 5.25.04-5.22 5.22.04-.04 5.22-5.22-.04Zm-13.16-5.22 4.41-.03.03 4.41-4.41.03-.03-4.41Zm-13.13-4.38 4.41-.03.03 4.41-4.41.03-.03-4.41ZM13.1 61.28l4.41-.03.03 4.41-4.41.03-.03-4.41Zm-2.63-13.13 4.41-.03.03 4.41-4.41.03-.03-4.41Zm.03-7.04.03-5.22 4.35.04-.03 5.22-4.35-.04ZM15.76 12.26l.02-2.61 2.61.02-.02 2.61-2.61-.02Zm-6.13 6.13.02-2.61 2.61.02-.02 2.61-2.61-.02Zm-4.38 7 .02-2.61 2.61.02-.02 2.61-2.61-.02Zm-3.5 7.88.02-2.61 2.61.02-.02 2.61-2.61-.02ZM0 41.15l.02-2.61 2.61.02-.02 2.61L0 41.15Zm0 8.76.02-2.61 2.61.02-.02 2.61L0 49.91Zm1.75 7.88.02-2.61 2.61.02-.02 2.61-2.61-.02Zm3.5 7.88.02-2.61 2.61.02-.02 2.61-2.61-.02Zm4.38 7 .02-2.61 2.61.02-.02 2.61-2.61-.02Zm6.13 6.13.02-2.61 2.61.02-.02 2.61-2.61-.02Zm7 5.25.02-2.61 2.61.02-.02 2.61-2.61-.02Zm7.88 2.63.02-2.61 2.61.02-.02 2.61-2.61-.02Zm8.75 1.75.02-2.61 2.61.02-.02 2.61-2.61-.02Zm7.88-2.61h2.63v2.63h-2.63v-2.63Zm8.75.86.02-2.61 2.61.02-.02 2.61-2.61-.02Zm7.86-5.23 2.64-.02.02 2.64-2.65.02-.02-2.65.01.01Zm7.02-2.64.02-2.61 2.61.02-.02 2.61-2.61-.02Zm6.13-6.13.02-2.61 2.61.02-.02 2.61-2.61-.02Zm4.38-7 .02-2.61 2.61.02-.02 2.61-2.61-.02Zm3.5-7.88.02-2.61 2.61.02-.02 2.61-2.61-.02Zm.88-7.88.02-2.61 2.61.02-.02 2.61-2.61-.02Zm0-8.75.02-2.61 2.61.02-.02 2.61-2.61-.02Zm-.88-7.88.02-2.61 2.61.02-.02 2.61-2.61-.02Zm-3.5-7.88.02-2.61 2.61.02-.02 2.61-2.61-.02Zm-4.38-7 .02-2.61 2.61.02-.02 2.61-2.61-.02Zm-6.13-6.13.02-2.61 2.61.02-.02 2.61-2.61-.02Zm-7-4.38.02-2.61 2.61.02-.02 2.61-2.61-.02Zm-7.88-3.5.02-2.61 2.61.02-.02 2.61-2.61-.02Zm-8.75-1.75.02-2.61h2.61l-.02 2.63-2.61-.02ZM39.38.02 42.02 0l.02 2.65-2.65.02-.02-2.64.01-.01Zm-8.74 4.36.02-2.61 2.61.02-.02 2.61-2.61-.02Zm-7.9.89 2.64-.02.02 2.65-2.64.02-.02-2.64v-.01Z"></path> </svg> <svg viewBox="0 0 377 89" fill="none" xmlns="http://www.w3.org/2000/svg" class="h-full light-mode-logo"> <path d="M126.07 63.93V48.17h-19.26v15.76H99.8V25.41h7.01v15.76h19.26V25.41h7v38.52h-7Z" fill="#5899D4"></path> <path d="M169.67 56.05h-19.8l-3.61 7.88h-7.72l17.28-38.52h7.85l17.26 38.52h-7.79l-3.47-7.88Zm-9.93-23.36-7.12 16.35h14.27l-7.15-16.35Z" fill="#3D6DA5"></path> <path d="M204.86 52.55h-11.38v11.38h-7V25.41l18.3-.07c18.76 0 18.8 27.17 0 27.17m-11.26-6.96h11.16c9.54 0 9.46-14.01 0-14.01h-11.2l.04 14.01Zm64.28 18.38h-7.22L239.1 50.8H232v13.13h-7V25.41l17.61.07c8.74.07 13.35 6.08 13.35 12.74 0 5.29-2.32 10.62-9.36 12.1l11.23 13.14-.03.47ZM232 31.54V43.8h11c4.59 0 6.56-3.05 6.56-6.13s-2.01-6.13-6.56-6.13h-11Zm68.3 12.92c-.11 9.92-6.22 19.87-19.69 19.87-13.47 0-19.77-9.7-19.77-19.8 0-10.1 6.47-20.23 19.77-20.23s19.8 10.13 19.69 20.16Zm-32.31.18c.18 6.33 3.56 13.05 12.61 13.05 9.05 0 12.47-6.79 12.58-13.12.11-6.33-3.52-13.73-12.58-13.73s-12.79 7.33-12.61 13.8Z" fill="#26405F"></path> <path d="M327.39 25.41h7.91v-.04l-12.97 18.66 13.85 19.19v.71h-8.57l-9.81-14.91-9.85 14.91h-8.54v-.71l13.79-19.19-12.91-18.66v.04h7.91l9.6 13.94 9.59-13.94Zm29.96 15.9 10.28-15.9h8.82v.32l-14.88 22.29v15.91h-7.88V48.02l-14.88-22.29v-.32h8.69l9.85 15.9Z" fill="#26405F"></path> <path d="m35.156 22.428.27-.238 9.234 10.456-.27.238-9.234-10.456Z" fill="#2A4A6C"></path> <path d="m15.45 24.71 7.26 10.49-.15.11-7.26-10.5.15-.1Zm28.94 7.95 9.2-10.5.27.24-9.2 10.5-.27-.24ZM55.478 44.32l10.892-9.203.232.275-10.892 9.204-.232-.275Z" fill="#2A4A6C"></path> <path d="m55.71 44.32 10.89 9.56-.24.27-10.89-9.56.24-.27ZM44.383 55.899l.267-.241 9.235 10.241-.268.241L44.383 55.9Z" fill="#2A4A6C"></path> <path d="m35.191 65.894 9.202-10.244.268.24-9.202 10.245-.268-.24ZM22.52 53.442l10.492-9.163.237.272-10.492 9.162-.237-.27Z" fill="#2A4A6C"></path> <path d="m22.519 35.397.237-.271 10.492 9.162-.237.272-10.492-9.163Z" fill="#2A4A6C"></path> <path d="m44.54 32.96-21.88 2.48-.04-.36L44.5 32.6l.04.36Z" fill="#2A4A6C"></path> <path d="m44.54 32.6 21.96 2.48-.04.36-21.96-2.48.04-.36Z" fill="#2A4A6C"></path> <path d="M55.41 44.47 53.54 22.3l.37-.03 1.86 22.17-.36.03Z" fill="#2A4A6C"></path> <path d="m55.77 44.47-1.83 21.56-.36-.03 1.83-21.56.36.03Z" fill="#2A4A6C"></path> <path d="m66.5 54.2-21.96 1.76-.03-.36 21.96-1.76.03.36Z" fill="#2A4A6C"></path> <path d="m22.621 53.77.036-.359 21.89 2.193-.035.358-21.89-2.192Z" fill="#2A4A6C"></path> <path d="m35.14 66.04-2.19-21.6.36-.04L35.5 66l-.36.04Z" fill="#2A4A6C"></path> <path d="m35.47 22.34-2.16 22.1-.36-.04 2.16-22.1.36.04ZM12.55 38.01l10.06-2.84.05.17-10.06 2.84-.05-.17Z" fill="#2A4A6C"></path> <path d="m24.698 14.92.104-.147 10.528 7.473-.105.147-10.527-7.473Z" fill="#2A4A6C"></path> <path d="m35.2 22.298 2.407-12.215.177.035-2.408 12.215-.176-.035Z" fill="#2A4A6C"></path> <path d="m37.64 10.165.108-.143 16.026 12.182-.109.143L37.64 10.165Z" fill="#2A4A6C"></path> <path d="m51.41 10.08 2.4 12.18-.18.04-2.4-12.18.18-.04Z" fill="#2A4A6C"></path> <path d="m64.31 14.92-10.53 7.44-.11-.15 10.53-7.44.11.15Z" fill="#2A4A6C"></path> <path d="m73.66 24.85-19.95-2.48.03-.18 19.94 2.48-.02.18Z" fill="#2A4A6C"></path> <path d="m66.41 35.2 7.18-10.49.16.1-7.19 10.5-.15-.11Z" fill="#2A4A6C"></path> <path d="m66.51 35.17 10.24 2.84-.05.17-10.24-2.84.05-.17Z" fill="#2A4A6C"></path> <path d="m66.56 35.21 9.99 15.31-.15.1-9.99-15.31.15-.1ZM51.37 10.17 35.34 22.39l-.11-.14 16.03-12.22.11.14Z" fill="#2A4A6C"></path> <path d="m66.39 35.27-2.23-20.42.19-.02 2.22 20.42-.18.02Zm.06 18.66 9.99-3.45.06.17-9.99 3.45-.06-.17Z" fill="#2A4A6C"></path> <path d="m66.4 53.961 10.24-15.92.152.097-10.24 15.92-.152-.097Z" fill="#2A4A6C"></path> <path d="m66.56 53.96 7.18 9.74-.14.11-7.19-9.74.15-.11Z" fill="#2A4A6C"></path> <path d="m64.196 73.653 2.191-19.658.179.02-2.191 19.658-.18-.02Z" fill="#2A4A6C"></path> <path d="m53.81 65.95 10.53 7.65-.1.15-10.53-7.66.1-.14Z" fill="#2A4A6C"></path> <path d="m53.75 65.93 19.91-2.27.02.19-19.91 2.26-.02-.18Z" fill="#2A4A6C"></path> <path d="m53.85 66.04-2.41 12.4-.18-.04L53.67 66l.18.04Z" fill="#2A4A6C"></path> <path d="m53.82 66.09-16.03 12.4-.11-.14 16.02-12.4.12.14Z" fill="#2A4A6C"></path> <path d="m35.41 66 2.41 12.4-.18.04-2.41-12.4.18-.04Z" fill="#2A4A6C"></path> <path d="m35.274 66.086.11-.143L51.41 78.338l-.11.143-16.026-12.395Z" fill="#2A4A6C"></path> <path d="m35.38 66.09-10.53 7.66-.11-.15 10.53-7.65.11.14Z" fill="#2A4A6C"></path> <path d="m35.31 66.11-19.94-2.19.02-.18 19.94 2.19-.02.18Z" fill="#2A4A6C"></path> <path d="m22.71 53.64-7.26 10.24-.15-.11 7.26-10.24.15.11Z" fill="#2A4A6C"></path> <path d="m22.541 53.592.18-.02 2.157 20.095-.179.02-2.158-20.095Z" fill="#2A4A6C"></path> <path d="m22.61 53.67-10.1-3.16.06-.17 10.09 3.16-.05.17Z" fill="#2A4A6C"></path> <path d="M22.71 35.31 12.62 50.47l-.16-.1 10.1-15.16.15.1Z" fill="#2A4A6C"></path> <path d="M22.56 53.63 12.5 38.15l.15-.1 10.06 15.49-.15.09Zm2.29-38.78-2.12 20.42-.18-.02 2.12-20.42.18.02Z" fill="#2A4A6C"></path> <path d="m15.364 24.67 19.91-2.444.022.178-19.91 2.445-.022-.178ZM17.006 11.197l.06-.126 7.73 3.703-.061.127-7.73-3.704Z" fill="#2A4A6C"></path> <path d="m24.114 6.364.14-.01.575 8.481-.14.01-.575-8.48Z" fill="#2A4A6C"></path> <path d="M37.68 10.17 24.16 6.43l.04-.13 13.51 3.73-.03.14Z" fill="#2A4A6C"></path> <path d="m31.892 2.955.11-.087 5.747 7.184-.11.087-5.747-7.184Z" fill="#2A4A6C"></path> <path d="m37.63 10.08 2.44-8.52.14.04-2.45 8.52-.13-.04ZM24.705 14.806l7.19-11.932.12.073-7.19 11.931-.12-.072Z" fill="#2A4A6C"></path> <path d="m40.1 1.633.084-.111 11.175 8.516-.085.111L40.1 1.633Z" fill="#2A4A6C"></path> <path d="m51.25 10.12-2.51-8.84.13-.04 2.51 8.84-.13.04Z" fill="#2A4A6C"></path> <path d="M37.658 10.045 48.76 1.207l.087.11-11.102 8.837-.087-.11ZM51.26 10.06l5.83-7.19.1.08-5.82 7.19-.11-.08Z" fill="#2A4A6C"></path> <path d="m57.082 2.943.12-.071 7.115 11.93-.12.071-7.115-11.93Z" fill="#2A4A6C"></path> <path d="m64.19 14.84.75-8.48.14.01-.76 8.48-.13-.01Z" fill="#2A4A6C"></path> <path d="m51.306 10.022 13.69-3.738.036.136-13.689 3.737-.037-.135ZM64.22 14.78l7.91-4.09.06.12-7.9 4.09-.07-.12Z" fill="#2A4A6C"></path> <path d="m64.26 14.78 13.8 2.08-.02.14-13.8-2.09.02-.13Z" fill="#2A4A6C"></path> <path d="M73.61 24.73 78 16.89l.11.07-4.38 7.84-.12-.07Z" fill="#2A4A6C"></path> <path d="m73.6 24.77-1.51-14.02.14-.01 1.51 14.02-.14.01Z" fill="#2A4A6C"></path> <path d="m73.654 24.704 9.059-.754.011.14-9.058.754-.012-.14Z" fill="#2A4A6C"></path> <path d="m73.7 24.7 12.44 7.05-.07.12-12.43-7.05.06-.12Z" fill="#2A4A6C"></path> <path d="m76.66 38.07 6-14.09.13.05-6 14.09-.13-.05Z" fill="#2A4A6C"></path> <path d="m76.688 38.037 9.377-6.287.078.116-9.377 6.287-.078-.116Z" fill="#2A4A6C"></path> <path d="m76.74 38.03 10.46 2.12-.03.13-10.46-2.12.03-.13Z" fill="#2A4A6C"></path> <path d="m76.43 50.52 10.71-10.35.09.1-10.71 10.35-.09-.1Z" fill="#2A4A6C"></path> <path d="m76.46 50.49 10.96-2.049.026.138-10.96 2.049-.025-.138Z" fill="#2A4A6C"></path> <path d="m76.674 38.145.097-.1 10.707 10.419-.097.1-10.707-10.42ZM76.444 50.62l.077-.117 9.377 6.251-.077.117-9.377-6.252Z" fill="#2A4A6C"></path> <path d="m73.64 63.7 12.18-6.94.07.12-12.19 6.93-.06-.11Z" fill="#2A4A6C"></path> <path d="m73.663 63.827.014-.14 8.985.899-.014.139-8.985-.898Z" fill="#2A4A6C"></path> <path d="m76.54 50.54 6.18 14.09-.13.05-6.18-14.09.13-.05ZM73.609 63.786l.123-.066 4.276 7.942-.123.066-4.276-7.941Z" fill="#2A4A6C"></path> <path d="m71.985 77.622 1.617-13.876.14.016-1.618 13.876-.14-.016Z" fill="#2A4A6C"></path> <path d="m64.26 73.745.064-.124 7.761 3.953-.063.124-7.762-3.953Z" fill="#2A4A6C"></path> <path d="m64.36 73.67.61 8.7-.14.01-.61-8.7.14-.01Z" fill="#2A4A6C"></path> <path d="m64.28 73.61 13.66-1.98.02.14-13.66 1.97-.02-.13Z" fill="#2A4A6C"></path> <path d="m57.078 85.749 7.154-12.116.12.071L57.2 85.82l-.12-.071Z" fill="#2A4A6C"></path> <path d="m51.41 78.38 5.78 7.36-.1.09-5.79-7.37.11-.08Z" fill="#2A4A6C"></path> <path d="m51.37 78.35 13.55 3.96-.04.13-13.55-3.96.04-.13Z" fill="#2A4A6C"></path> <path d="m51.42 78.44-2.55 9.02-.13-.04 2.55-9.02.13.04Z" fill="#2A4A6C"></path> <path d="m51.39 78.47-11.17 9.02-.09-.1 11.18-9.02.08.1Z" fill="#2A4A6C"></path> <path d="m37.8 78.4 2.44 9.02-.13.04-2.44-9.02.13-.04Z" fill="#2A4A6C"></path> <path d="m37.691 78.474.088-.109 11.07 9.022-.088.108-11.07-9.022Z" fill="#2A4A6C"></path> <path d="m31.925 85.746 5.753-7.37.11.086-5.752 7.37-.11-.086Z" fill="#2A4A6C"></path> <path d="m24.85 73.64 7.19 12.11-.12.07-7.18-12.11.11-.07Z" fill="#2A4A6C"></path> <path d="m37.75 78.48-13.62 4.17-.04-.13 13.62-4.17.04.13Z" fill="#2A4A6C"></path> <path d="m24.86 73.68-.68 8.91-.14-.01.69-8.91.13.01Z" fill="#2A4A6C"></path> <path d="m24.83 73.73-7.87 4.28-.07-.12 7.87-4.28.07.12Z" fill="#2A4A6C"></path> <path d="m15.45 63.82 1.54 14.12-.13.02-1.55-14.13.14-.01Z" fill="#2A4A6C"></path> <path d="m24.79 73.74-13.77-1.87.02-.13 13.76 1.87-.01.13Z" fill="#2A4A6C"></path> <path d="m10.973 71.777 4.35-7.982.123.067-4.35 7.982-.123-.067Z" fill="#2A4A6C"></path> <path d="m15.38 63.9-8.98.86-.01-.14 8.98-.86.01.14Z" fill="#2A4A6C"></path> <path d="M15.34 63.89 2.95 56.95l.06-.12 12.4 6.94-.07.12Z" fill="#2A4A6C"></path> <path d="m2.945 56.835 9.557-6.468.079.116-9.557 6.468-.079-.116Z" fill="#2A4A6C"></path> <path d="m12.53 50.49-10.86-1.9.03-.14 10.85 1.9-.02.14Z" fill="#2A4A6C"></path> <path d="M12.6 50.45 6.46 64.72l-.13-.06 6.15-14.26.12.05Zm.02-12.31L1.73 48.57l-.09-.1 10.89-10.42.09.09Z" fill="#2A4A6C"></path> <path d="M12.49 50.47 1.6 40.27l.1-.1 10.89 10.2-.1.1Zm.05-12.32-9.31-6.18.07-.11 9.31 6.18-.07.11Z" fill="#2A4A6C"></path> <path d="m1.637 40.15 10.926-2.12.027.137-10.926 2.12-.027-.138Z" fill="#2A4A6C"></path> <path d="M12.51 38.12 6.37 24.11l.12-.06 6.15 14.02-.13.05Z" fill="#2A4A6C"></path> <path d="m6.417 24.137.01-.14 8.944.682-.01.14-8.944-.682Z" fill="#2A4A6C"></path> <path d="m3.235 31.859 12.116-7.154.071.12L3.307 31.98l-.072-.12Z" fill="#2A4A6C"></path> <path d="m11.078 17.322.122-.07 4.239 7.472-.122.069-4.239-7.471Z" fill="#2A4A6C"></path> <path d="m15.31 24.75 1.65-13.62.14.02-1.65 13.62-.14-.02Z" fill="#2A4A6C"></path> <path d="m11.132 17.221 13.622-2.444.025.138-13.622 2.444-.025-.138Z" fill="#2A4A6C"></path> <path d="m39.4 37.59.07-10.43 10.43.07-.07 10.43-10.43-.07ZM28.02 49.85l.07-10.43 10.43.07-.07 10.43-10.43-.07ZM39.4 61.23l.07-10.43 10.43.07-.07 10.43-10.43-.07Zm11.38-11.38.07-10.43 10.43.07-.07 10.43-10.43-.07Z" fill="#3D6DA5"></path> <path d="m19.26 38.49.05-6.95 6.96.05-.05 6.96-6.96-.05v-.01Zm12.26-13.13.05-6.96 6.96.05-.05 6.96-6.96-.05Zm18.38 0 .05-6.96 6.95.05-.05 6.96-6.96-.05h.01Zm13.13 13.11.07-6.93 6.93.07-.07 6.93-6.93-.07Zm0 18.41.05-6.96 6.96.05-.05 6.96-6.96-.05ZM49.9 70.01l.05-6.96 6.96.05-.05 6.96-6.96-.05Zm-18.38 0 .05-6.96 6.96.05-.05 6.96-6.95-.05h-.01ZM19.26 56.86l.07-6.93 6.93.07-.07 6.93-6.93-.07Z" fill="#4D76B9"></path> <path d="m13.13 27.12.04-5.22 5.22.04-.04 5.22-5.22-.04Zm8.75-9.63.04-5.22 5.22.04-.04 5.22-5.22-.04Zm13.13-4.38.04-5.22 5.22.04-.04 5.22-5.22-.04Zm13.98-5.22 4.41-.03.03 4.41-4.41.03-.03-4.41Zm13.13 4.38 4.41-.03.03 4.41-4.41.03-.03-4.41Zm9.63 10.51 4.41-.03.03 4.41-4.41.03-.03-4.41Zm2.63 13.13 4.41-.03.03 4.41-4.41.03-.03-4.41Zm-.84 17.47.04-5.22 5.22.04-.04 5.22-5.22-.04Zm-2.63 13.13.04-5.22 5.22.04-.04 5.22-5.22-.04Zm-9.63 9.63.04-5.22 5.22.04-.04 5.22-5.22-.04Zm-12.26 5.25.04-5.22 5.22.04-.04 5.22-5.22-.04Zm-13.16-5.22 4.41-.03.03 4.41-4.41.03-.03-4.41Zm-13.13-4.38 4.41-.03.03 4.41-4.41.03-.03-4.41ZM13.1 61.28l4.41-.03.03 4.41-4.41.03-.03-4.41Zm-2.63-13.13 4.41-.03.03 4.41-4.41.03-.03-4.41Zm.03-7.04.03-5.22 4.35.04-.03 5.22-4.35-.04Z" fill="#5899D4"></path> <path d="m15.76 12.26.02-2.61 2.61.02-.02 2.61-2.61-.02Zm-6.13 6.13.02-2.61 2.61.02-.02 2.61-2.61-.02Zm-4.38 7 .02-2.61 2.61.02-.02 2.61-2.61-.02Zm-3.5 7.88.02-2.61 2.61.02-.02 2.61-2.61-.02ZM0 41.15l.02-2.61 2.61.02-.02 2.61L0 41.15Zm0 8.76.02-2.61 2.61.02-.02 2.61L0 49.91Zm1.75 7.88.02-2.61 2.61.02-.02 2.61-2.61-.02Zm3.5 7.88.02-2.61 2.61.02-.02 2.61-2.61-.02Zm4.38 7 .02-2.61 2.61.02-.02 2.61-2.61-.02Zm6.13 6.13.02-2.61 2.61.02-.02 2.61-2.61-.02Zm7 5.25.02-2.61 2.61.02-.02 2.61-2.61-.02Zm7.88 2.63.02-2.61 2.61.02-.02 2.61-2.61-.02Zm8.75 1.75.02-2.61 2.61.02-.02 2.61-2.61-.02Zm7.88-2.61h2.63v2.63h-2.63v-2.63Zm8.75.86.02-2.61 2.61.02-.02 2.61-2.61-.02Zm7.86-5.23 2.64-.02.02 2.64-2.65.02-.02-2.65.01.01Zm7.02-2.64.02-2.61 2.61.02-.02 2.61-2.61-.02Zm6.13-6.13.02-2.61 2.61.02-.02 2.61-2.61-.02Zm4.38-7 .02-2.61 2.61.02-.02 2.61-2.61-.02Zm3.5-7.88.02-2.61 2.61.02-.02 2.61-2.61-.02Zm.88-7.88.02-2.61 2.61.02-.02 2.61-2.61-.02Zm0-8.75.02-2.61 2.61.02-.02 2.61-2.61-.02Zm-.88-7.88.02-2.61 2.61.02-.02 2.61-2.61-.02Zm-3.5-7.88.02-2.61 2.61.02-.02 2.61-2.61-.02Zm-4.38-7 .02-2.61 2.61.02-.02 2.61-2.61-.02Zm-6.13-6.13.02-2.61 2.61.02-.02 2.61-2.61-.02Zm-7-4.38.02-2.61 2.61.02-.02 2.61-2.61-.02Zm-7.88-3.5.02-2.61 2.61.02-.02 2.61-2.61-.02Zm-8.75-1.75.02-2.61h2.61l-.02 2.63-2.61-.02ZM39.38.02 42.02 0l.02 2.65-2.65.02-.02-2.64.01-.01Zm-8.74 4.36.02-2.61 2.61.02-.02 2.61-2.61-.02Zm-7.9.89 2.64-.02.02 2.65-2.64.02-.02-2.64v-.01Z" fill="#5EA8D9"></path> </svg> </a> <div class="ml-3 flex h-7 items-center"> <button @click.prevent="mobileNav = false" type="button" class="relative rounded-md bg-white text-slate-400 hover:text-slate-500 dark:bg-slate-800 dark:text-slate-200 focus:outline-none focus:ring-2 focus:ring-primary-blue-500 focus:ring-offset-2"> <span class="absolute -inset-2.5"></span> <span class="sr-only">Close panel</span> <svg class="h-6 w-6" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" aria-hidden="true"> <path stroke-linecap="round" stroke-linejoin="round" d="M6 18L18 6M6 6l12 12"></path> </svg> </button> </div> </div> </div> <div class="relative flex-1 p-2 mt-2"> <nav class="main-sidebar-nav mobile--main-sidebar-nav"> <ul role="list" class="flex flex-col pb-2 mb-2 border-b dark:border-gray-800"> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 active " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/';"> <span>HAProxy Enterprise</span> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/changelog/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/changelog/';"> <span>Changelog</span> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/release-notes/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/release-notes/';"> <span>Release notes</span> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/end-of-life-dates/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/end-of-life-dates/';"> <span>End-of-life dates</span> </a> </li> <li class="py-1 text-primary-gray-500 directory collapsed"> <h2 class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded hover:duration-75 font-display text-base font-medium text-primary-gray-600 flex justify-between items-center cursor-pointer select-none " @click="() => $el.closest('li').classList.toggle('collapsed')"> <span>Getting started</span> <svg class="w-4 h-4 duration-75 arrow" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor"> <path stroke-linecap="round" stroke-linejoin="round" d="M8.25 4.5l7.5 7.5-7.5 7.5"></path> </svg> </h2> <ul class="pl-2"> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/getting-started/01-overview/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/getting-started/01-overview/';"> <span>Overview</span> </a> </li> <li class="py-1 text-primary-gray-500 directory collapsed"> <h2 class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded hover:duration-75 font-display text-base font-medium text-primary-gray-600 flex justify-between items-center cursor-pointer select-none " @click="() => $el.closest('li').classList.toggle('collapsed')"> <span>Installation</span> <svg class="w-4 h-4 duration-75 arrow" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor"> <path stroke-linecap="round" stroke-linejoin="round" d="M8.25 4.5l7.5 7.5-7.5 7.5"></path> </svg> </h2> <ul class="pl-2"> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/getting-started/installation/aws/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/getting-started/installation/aws/';"> <span>AWS</span> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/getting-started/installation/azure/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/getting-started/installation/azure/';"> <span>Azure</span> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/getting-started/installation/bsd/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/getting-started/installation/bsd/';"> <span>BSD</span> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/getting-started/installation/docker/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/getting-started/installation/docker/';"> <span>Docker</span> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/getting-started/installation/install-vm-image/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/getting-started/installation/install-vm-image/';"> <span>Install the VM image</span> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/getting-started/installation/linux/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/getting-started/installation/linux/';"> <span>Linux</span> </a> </li> </ul></li> <li class="py-1 text-primary-gray-500 directory collapsed"> <h2 class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded hover:duration-75 font-display text-base font-medium text-primary-gray-600 flex justify-between items-center cursor-pointer select-none " @click="() => $el.closest('li').classList.toggle('collapsed')"> <span>Migration</span> <svg class="w-4 h-4 duration-75 arrow" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor"> <path stroke-linecap="round" stroke-linejoin="round" d="M8.25 4.5l7.5 7.5-7.5 7.5"></path> </svg> </h2> <ul class="pl-2"> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/getting-started/migration/migrate-from-haproxy/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/getting-started/migration/migrate-from-haproxy/';"> <span>Migrate from HAProxy</span> </a> </li> </ul></li> <li class="py-1 text-primary-gray-500 directory collapsed"> <h2 class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded hover:duration-75 font-display text-base font-medium text-primary-gray-600 flex justify-between items-center cursor-pointer select-none " @click="() => $el.closest('li').classList.toggle('collapsed')"> <span>Tutorials</span> <svg class="w-4 h-4 duration-75 arrow" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor"> <path stroke-linecap="round" stroke-linejoin="round" d="M8.25 4.5l7.5 7.5-7.5 7.5"></path> </svg> </h2> <ul class="pl-2"> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/getting-started/tutorials/docker-tutorial/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/getting-started/tutorials/docker-tutorial/';"> <span>Docker tutorial</span> </a> </li> </ul></li> <li class="py-1 text-primary-gray-500 directory collapsed"> <h2 class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded hover:duration-75 font-display text-base font-medium text-primary-gray-600 flex justify-between items-center cursor-pointer select-none " @click="() => $el.closest('li').classList.toggle('collapsed')"> <span>Uninstallation</span> <svg class="w-4 h-4 duration-75 arrow" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor"> <path stroke-linecap="round" stroke-linejoin="round" d="M8.25 4.5l7.5 7.5-7.5 7.5"></path> </svg> </h2> <ul class="pl-2"> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/getting-started/uninstallation/bsd/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/getting-started/uninstallation/bsd/';"> <span>BSD</span> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/getting-started/uninstallation/docker/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/getting-started/uninstallation/docker/';"> <span>Docker</span> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/getting-started/uninstallation/linux/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/getting-started/uninstallation/linux/';"> <span>Linux</span> </a> </li> </ul></li> <li class="py-1 text-primary-gray-500 directory collapsed"> <h2 class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded hover:duration-75 font-display text-base font-medium text-primary-gray-600 flex justify-between items-center cursor-pointer select-none " @click="() => $el.closest('li').classList.toggle('collapsed')"> <span>Upgrade</span> <svg class="w-4 h-4 duration-75 arrow" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor"> <path stroke-linecap="round" stroke-linejoin="round" d="M8.25 4.5l7.5 7.5-7.5 7.5"></path> </svg> </h2> <ul class="pl-2"> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/getting-started/upgrade/aws/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/getting-started/upgrade/aws/';"> <span>AWS</span> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/getting-started/upgrade/bsd/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/getting-started/upgrade/bsd/';"> <span>BSD</span> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/getting-started/upgrade/docker/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/getting-started/upgrade/docker/';"> <span>Docker</span> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/getting-started/upgrade/linux/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/getting-started/upgrade/linux/';"> <span>Linux</span> </a> </li> </ul></li> </ul></li> <li class="py-1 text-primary-gray-500 directory collapsed"> <h2 class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded hover:duration-75 font-display text-base font-medium text-primary-gray-600 flex justify-between items-center cursor-pointer select-none " @click="() => $el.closest('li').classList.toggle('collapsed')"> <span>Administration</span> <svg class="w-4 h-4 duration-75 arrow" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor"> <path stroke-linecap="round" stroke-linejoin="round" d="M8.25 4.5l7.5 7.5-7.5 7.5"></path> </svg> </h2> <ul class="pl-2"> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/administration/configuration-files/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/administration/configuration-files/';"> <span>Configuration files</span> </a> </li> <li class="py-1 text-primary-gray-500 directory collapsed"> <h2 class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded hover:duration-75 font-display text-base font-medium text-primary-gray-600 flex justify-between items-center cursor-pointer select-none " @click="() => $el.closest('li').classList.toggle('collapsed')"> <span>High availability</span> <svg class="w-4 h-4 duration-75 arrow" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor"> <path stroke-linecap="round" stroke-linejoin="round" d="M8.25 4.5l7.5 7.5-7.5 7.5"></path> </svg> </h2> <ul class="pl-2"> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/administration/high-availability/active-active/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/administration/high-availability/active-active/';"> <span>Active/Active clustering</span> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/administration/high-availability/active-standby/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/administration/high-availability/active-standby/';"> <span>Active/Standby clustering</span> </a> </li> </ul></li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/administration/license-keys/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/administration/license-keys/';"> <span>License keys</span> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/administration/logs/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/administration/logs/';"> <span>Logs</span> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/administration/manage-service/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/administration/manage-service/';"> <span>Manage the service</span> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/administration/manage-ssl-certs/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/administration/manage-ssl-certs/';"> <span>Manage SSL certificates</span> </a> </li> <li class="py-1 text-primary-gray-500 directory collapsed"> <h2 class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded hover:duration-75 font-display text-base font-medium text-primary-gray-600 flex justify-between items-center cursor-pointer select-none " @click="() => $el.closest('li').classList.toggle('collapsed')"> <span>Troubleshooting</span> <svg class="w-4 h-4 duration-75 arrow" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor"> <path stroke-linecap="round" stroke-linejoin="round" d="M8.25 4.5l7.5 7.5-7.5 7.5"></path> </svg> </h2> <ul class="pl-2"> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/administration/troubleshooting/common-questions/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/administration/troubleshooting/common-questions/';"> <span>Common questions</span> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/administration/troubleshooting/contact-us/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/administration/troubleshooting/contact-us/';"> <span>Contact Us</span> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/administration/troubleshooting/debugging/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/administration/troubleshooting/debugging/';"> <span>Debugging</span> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/administration/troubleshooting/decrypt-tls-traffic/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/administration/troubleshooting/decrypt-tls-traffic/';"> <span>Decrypt TLS traffic</span> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/administration/troubleshooting/enable-core-dumps/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/administration/troubleshooting/enable-core-dumps/';"> <span>Enable core dumps</span> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/administration/troubleshooting/enable-diagnostic-archive/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/administration/troubleshooting/enable-diagnostic-archive/';"> <span>Enable diagnostic archive</span> </a> </li> </ul></li> </ul></li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-configuration-tutorials/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " target="_blank" rel="noopener noreferrer"> <span>Configuration tutorials</span> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="ml-1 w-4 h-4"> <path fill-rule="evenodd" d="M4.25 5.5a.75.75 0 00-.75.75v8.5c0 .414.336.75.75.75h8.5a.75.75 0 00.75-.75v-4a.75.75 0 011.5 0v4A2.25 2.25 0 0112.75 17h-8.5A2.25 2.25 0 012 14.75v-8.5A2.25 2.25 0 014.25 4h5a.75.75 0 010 1.5h-5z" clip-rule="evenodd"></path> <path fill-rule="evenodd" d="M6.194 12.753a.75.75 0 001.06.053L16.5 4.44v2.81a.75.75 0 001.5 0v-4.5a.75.75 0 00-.75-.75h-4.5a.75.75 0 000 1.5h2.553l-9.056 8.194a.75.75 0 00-.053 1.06z" clip-rule="evenodd"></path> </svg> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="https://customer-docs.haproxy.com/bot-management/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " target="_blank" rel="noopener noreferrer"> <span>Bot management</span> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="ml-1 w-4 h-4"> <path fill-rule="evenodd" d="M4.25 5.5a.75.75 0 00-.75.75v8.5c0 .414.336.75.75.75h8.5a.75.75 0 00.75-.75v-4a.75.75 0 011.5 0v4A2.25 2.25 0 0112.75 17h-8.5A2.25 2.25 0 012 14.75v-8.5A2.25 2.25 0 014.25 4h5a.75.75 0 010 1.5h-5z" clip-rule="evenodd"></path> <path fill-rule="evenodd" d="M6.194 12.753a.75.75 0 001.06.053L16.5 4.44v2.81a.75.75 0 001.5 0v-4.5a.75.75 0 00-.75-.75h-4.5a.75.75 0 000 1.5h2.553l-9.056 8.194a.75.75 0 00-.053 1.06z" clip-rule="evenodd"></path> </svg> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="https://customer-docs.haproxy.com/web-application-firewall/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " target="_blank" rel="noopener noreferrer"> <span>Web Application Firewall</span> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="ml-1 w-4 h-4"> <path fill-rule="evenodd" d="M4.25 5.5a.75.75 0 00-.75.75v8.5c0 .414.336.75.75.75h8.5a.75.75 0 00.75-.75v-4a.75.75 0 011.5 0v4A2.25 2.25 0 0112.75 17h-8.5A2.25 2.25 0 012 14.75v-8.5A2.25 2.25 0 014.25 4h5a.75.75 0 010 1.5h-5z" clip-rule="evenodd"></path> <path fill-rule="evenodd" d="M6.194 12.753a.75.75 0 001.06.053L16.5 4.44v2.81a.75.75 0 001.5 0v-4.5a.75.75 0 00-.75-.75h-4.5a.75.75 0 000 1.5h2.553l-9.056 8.194a.75.75 0 00-.053 1.06z" clip-rule="evenodd"></path> </svg> </a> </li> <li class="py-1 text-primary-gray-500 directory collapsed"> <h2 class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded hover:duration-75 font-display text-base font-medium text-primary-gray-600 flex justify-between items-center cursor-pointer select-none " @click="() => $el.closest('li').classList.toggle('collapsed')"> <span>Enterprise modules</span> <svg class="w-4 h-4 duration-75 arrow" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor"> <path stroke-linecap="round" stroke-linejoin="round" d="M8.25 4.5l7.5 7.5-7.5 7.5"></path> </svg> </h2> <ul class="pl-2"> <li class="py-1 text-primary-gray-500 directory collapsed"> <h2 class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded hover:duration-75 font-display text-base font-medium text-primary-gray-600 flex justify-between items-center cursor-pointer select-none " @click="() => $el.closest('li').classList.toggle('collapsed')"> <span>Device detection</span> <svg class="w-4 h-4 duration-75 arrow" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor"> <path stroke-linecap="round" stroke-linejoin="round" d="M8.25 4.5l7.5 7.5-7.5 7.5"></path> </svg> </h2> <ul class="pl-2"> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/enterprise-modules/device-detection/51degrees/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/enterprise-modules/device-detection/51degrees/';"> <span>51Degrees</span> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/enterprise-modules/device-detection/deviceatlas/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/enterprise-modules/device-detection/deviceatlas/';"> <span>DeviceAtlas</span> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/enterprise-modules/device-detection/scientiamobile/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/enterprise-modules/device-detection/scientiamobile/';"> <span>ScientiaMobile</span> </a> </li> </ul></li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/enterprise-modules/dynamic-updates/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/enterprise-modules/dynamic-updates/';"> <span>Dynamic updates</span> </a> </li> <li class="py-1 text-primary-gray-500 directory collapsed"> <h2 class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded hover:duration-75 font-display text-base font-medium text-primary-gray-600 flex justify-between items-center cursor-pointer select-none " @click="() => $el.closest('li').classList.toggle('collapsed')"> <span>Geolocation</span> <svg class="w-4 h-4 duration-75 arrow" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor"> <path stroke-linecap="round" stroke-linejoin="round" d="M8.25 4.5l7.5 7.5-7.5 7.5"></path> </svg> </h2> <ul class="pl-2"> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/enterprise-modules/geolocation/digitalelement/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/enterprise-modules/geolocation/digitalelement/';"> <span>Digital Element</span> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/enterprise-modules/geolocation/maxmind/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/enterprise-modules/geolocation/maxmind/';"> <span>MaxMind</span> </a> </li> </ul></li> <li class="py-1 text-primary-gray-500 directory collapsed"> <h2 class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded hover:duration-75 font-display text-base font-medium text-primary-gray-600 flex justify-between items-center cursor-pointer select-none " @click="() => $el.closest('li').classList.toggle('collapsed')"> <span>Global Profiling Engine</span> <svg class="w-4 h-4 duration-75 arrow" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor"> <path stroke-linecap="round" stroke-linejoin="round" d="M8.25 4.5l7.5 7.5-7.5 7.5"></path> </svg> </h2> <ul class="pl-2"> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/enterprise-modules/global-profiling-engine/overview/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/enterprise-modules/global-profiling-engine/overview/';"> <span>Overview</span> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/enterprise-modules/global-profiling-engine/installation/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/enterprise-modules/global-profiling-engine/installation/';"> <span>Installation</span> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/enterprise-modules/global-profiling-engine/real-time-aggregation/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/enterprise-modules/global-profiling-engine/real-time-aggregation/';"> <span>Real-time aggregation</span> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/enterprise-modules/global-profiling-engine/historical-aggregation/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/enterprise-modules/global-profiling-engine/historical-aggregation/';"> <span>Historical aggregation</span> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/enterprise-modules/global-profiling-engine/reference/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/enterprise-modules/global-profiling-engine/reference/';"> <span>Reference</span> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/enterprise-modules/global-profiling-engine/troubleshooting/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/enterprise-modules/global-profiling-engine/troubleshooting/';"> <span>Troubleshooting</span> </a> </li> </ul></li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/enterprise-modules/global-server-load-balancing/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/enterprise-modules/global-server-load-balancing/';"> <span>GSLB</span> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/enterprise-modules/real-time-dashboard/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/enterprise-modules/real-time-dashboard/';"> <span>Real-time Dashboard</span> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/enterprise-modules/response-body-injection/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/enterprise-modules/response-body-injection/';"> <span>Response body injection</span> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/enterprise-modules/route-health-injection/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/enterprise-modules/route-health-injection/';"> <span>Route health injection</span> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/enterprise-modules/send-metrics/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/enterprise-modules/send-metrics/';"> <span>Send metrics</span> </a> </li> <li class="py-1 text-primary-gray-500 directory collapsed"> <h2 class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded hover:duration-75 font-display text-base font-medium text-primary-gray-600 flex justify-between items-center cursor-pointer select-none " @click="() => $el.closest('li').classList.toggle('collapsed')"> <span>Single sign-on</span> <svg class="w-4 h-4 duration-75 arrow" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor"> <path stroke-linecap="round" stroke-linejoin="round" d="M8.25 4.5l7.5 7.5-7.5 7.5"></path> </svg> </h2> <ul class="pl-2"> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/enterprise-modules/single-sign-on/sso-kerberos/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/enterprise-modules/single-sign-on/sso-kerberos/';"> <span>Kerberos</span> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/enterprise-modules/single-sign-on/sso-saml-native/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/enterprise-modules/single-sign-on/sso-saml-native/';"> <span>SAML</span> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/enterprise-modules/single-sign-on/sso-saml/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/enterprise-modules/single-sign-on/sso-saml/';"> <span>SAML (legacy)</span> </a> </li> </ul></li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/enterprise-modules/snmp/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/enterprise-modules/snmp/';"> <span>SNMP</span> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/enterprise-modules/ssl-crl/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/enterprise-modules/ssl-crl/';"> <span>SSL-CRL</span> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/enterprise-modules/traffic-mirroring/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/enterprise-modules/traffic-mirroring/';"> <span>Traffic mirroring</span> </a> </li> <li class="py-1 text-primary-gray-500 directory collapsed"> <h2 class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded hover:duration-75 font-display text-base font-medium text-primary-gray-600 flex justify-between items-center cursor-pointer select-none " @click="() => $el.closest('li').classList.toggle('collapsed')"> <span>UDP load balancing</span> <svg class="w-4 h-4 duration-75 arrow" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor"> <path stroke-linecap="round" stroke-linejoin="round" d="M8.25 4.5l7.5 7.5-7.5 7.5"></path> </svg> </h2> <ul class="pl-2"> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/enterprise-modules/udp-load-balancing/overview/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/enterprise-modules/udp-load-balancing/overview/';"> <span>Overview</span> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/enterprise-modules/udp-load-balancing/installation/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/enterprise-modules/udp-load-balancing/installation/';"> <span>Installation and examples</span> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/enterprise-modules/udp-load-balancing/reference/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/enterprise-modules/udp-load-balancing/reference/';"> <span>Reference</span> </a> </li> </ul></li> </ul></li> <li class="py-1 text-primary-gray-500 directory collapsed"> <h2 class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded hover:duration-75 font-display text-base font-medium text-primary-gray-600 flex justify-between items-center cursor-pointer select-none " @click="() => $el.closest('li').classList.toggle('collapsed')"> <span>Integrations</span> <svg class="w-4 h-4 duration-75 arrow" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor"> <path stroke-linecap="round" stroke-linejoin="round" d="M8.25 4.5l7.5 7.5-7.5 7.5"></path> </svg> </h2> <ul class="pl-2"> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/integrations/ansible/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/integrations/ansible/';"> <span>Ansible</span> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/integrations/consul-service-mesh/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/integrations/consul-service-mesh/';"> <span>Consul service mesh</span> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/integrations/elastic-stack/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/integrations/elastic-stack/';"> <span>Elastic Stack</span> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/integrations/grafana/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/integrations/grafana/';"> <span>Grafana</span> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/integrations/influxdb-telegraf/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/integrations/influxdb-telegraf/';"> <span>InfluxDB</span> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/integrations/ns1/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/integrations/ns1/';"> <span>NS1</span> </a> </li> </ul></li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-data-plane-api/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " target="_blank" rel="noopener noreferrer"> <span>Data Plane API</span> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="ml-1 w-4 h-4"> <path fill-rule="evenodd" d="M4.25 5.5a.75.75 0 00-.75.75v8.5c0 .414.336.75.75.75h8.5a.75.75 0 00.75-.75v-4a.75.75 0 011.5 0v4A2.25 2.25 0 0112.75 17h-8.5A2.25 2.25 0 012 14.75v-8.5A2.25 2.25 0 014.25 4h5a.75.75 0 010 1.5h-5z" clip-rule="evenodd"></path> <path fill-rule="evenodd" d="M6.194 12.753a.75.75 0 001.06.053L16.5 4.44v2.81a.75.75 0 001.5 0v-4.5a.75.75 0 00-.75-.75h-4.5a.75.75 0 000 1.5h2.553l-9.056 8.194a.75.75 0 00-.053 1.06z" clip-rule="evenodd"></path> </svg> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-lua-api/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " target="_blank" rel="noopener noreferrer"> <span>Lua API</span> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="ml-1 w-4 h-4"> <path fill-rule="evenodd" d="M4.25 5.5a.75.75 0 00-.75.75v8.5c0 .414.336.75.75.75h8.5a.75.75 0 00.75-.75v-4a.75.75 0 011.5 0v4A2.25 2.25 0 0112.75 17h-8.5A2.25 2.25 0 012 14.75v-8.5A2.25 2.25 0 014.25 4h5a.75.75 0 010 1.5h-5z" clip-rule="evenodd"></path> <path fill-rule="evenodd" d="M6.194 12.753a.75.75 0 001.06.053L16.5 4.44v2.81a.75.75 0 001.5 0v-4.5a.75.75 0 00-.75-.75h-4.5a.75.75 0 000 1.5h2.553l-9.056 8.194a.75.75 0 00-.053 1.06z" clip-rule="evenodd"></path> </svg> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-runtime-api/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " target="_blank" rel="noopener noreferrer"> <span>Runtime API</span> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="ml-1 w-4 h-4"> <path fill-rule="evenodd" d="M4.25 5.5a.75.75 0 00-.75.75v8.5c0 .414.336.75.75.75h8.5a.75.75 0 00.75-.75v-4a.75.75 0 011.5 0v4A2.25 2.25 0 0112.75 17h-8.5A2.25 2.25 0 012 14.75v-8.5A2.25 2.25 0 014.25 4h5a.75.75 0 010 1.5h-5z" clip-rule="evenodd"></path> <path fill-rule="evenodd" d="M6.194 12.753a.75.75 0 001.06.053L16.5 4.44v2.81a.75.75 0 001.5 0v-4.5a.75.75 0 00-.75-.75h-4.5a.75.75 0 000 1.5h2.553l-9.056 8.194a.75.75 0 00-.053 1.06z" clip-rule="evenodd"></path> </svg> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="/documentation/haproxy-enterprise/licensing/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " @click.prevent="mobileNav = false; window.location = window.location.origin + '/documentation/haproxy-enterprise/licensing/';"> <span>Licensing</span> </a> </li> <li class="py-1 text-primary-gray-500 file "> <a href="https://www.haproxy.com/documentation/haproxy-configuration-manual/latest/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " target="_blank" rel="noopener noreferrer"> <span>Configuration reference</span> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="ml-1 w-4 h-4"> <path fill-rule="evenodd" d="M4.25 5.5a.75.75 0 00-.75.75v8.5c0 .414.336.75.75.75h8.5a.75.75 0 00.75-.75v-4a.75.75 0 011.5 0v4A2.25 2.25 0 0112.75 17h-8.5A2.25 2.25 0 012 14.75v-8.5A2.25 2.25 0 014.25 4h5a.75.75 0 010 1.5h-5z" clip-rule="evenodd"></path> <path fill-rule="evenodd" d="M6.194 12.753a.75.75 0 001.06.053L16.5 4.44v2.81a.75.75 0 001.5 0v-4.5a.75.75 0 00-.75-.75h-4.5a.75.75 0 000 1.5h2.553l-9.056 8.194a.75.75 0 00-.053 1.06z" clip-rule="evenodd"></path> </svg> </a> </li></ul> </nav> <nav class="mobile--main-sidebar-nav"> <h2 class="p-2">Products Documentation</h2> <ul role="list" class="flex flex-col pb-2 mb-2 border-b dark:border-gray-800"> <li> <a href="/documentation/haproxy-enterprise/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> HAProxy Enterprise </a> </li> <li> <a href="/documentation/haproxy-aloha/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> HAProxy ALOHA </a> </li> <li> <a href="https://customer-docs.haproxy.com/haproxy-fusion/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " target="_blank" rel="noopener noreferrer"> HAProxy Fusion Control Plane </a> </li> <li> <a href="/documentation/kubernetes-ingress/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> HAProxy Kubernetes Ingress Controller </a> </li> <li> <a href="https://customer-docs.haproxy.com/haproxy-edge/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " target="_blank" rel="noopener noreferrer"> HAProxy Edge </a> </li> </ul> <h2 class="p-2">API Documentation</h2> <ul role="list" class="flex flex-col pb-2 mb-2 border-b dark:border-gray-800"> <li> <a href="/documentation/haproxy-data-plane-api/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> HAProxy Data Plane API </a> </li> <li> <a href="https://customer-docs.haproxy.com/haproxy-fusion-api/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " target="_blank" rel="noopener noreferrer"> HAProxy Fusion API </a> </li> <li> <a href="/documentation/haproxy-runtime-api/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> HAProxy Runtime API </a> </li> <li> <a href="/documentation/haproxy-lua-api/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> HAProxy LUA API </a> </li> </ul> <h2 class="p-2">Configuration Documentation</h2> <ul role="list" class="flex flex-col pb-2 mb-2 border-b dark:border-gray-800"> <li> <a href="/documentation/haproxy-configuration-tutorials/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 "> Tutorials and examples </a> </li> <li> <a href="/documentation/haproxy-configuration-manual/latest/" class="px-2 py-0.5 hover:bg-primary-blue-50 dark:hover:bg-primary-blue-800 dark:hover:text-primary-blue-50 rounded text-base font-medium flex items-center text-primary-gray-600 hover:text-primary-blue-500 " data-turbo="false"> Configuration Manual </a> </li> </ul> </nav> </div> </div> </div> </div> </div> </div> </div> <div id="backToTopButton" style="display: none" class="print:hidden fixed bottom-3 right-3 md:bottom-5 md:right-8 bg-primary-blue-600 dark:bg-slate-500 opacity-40 hover:opacity-100 h-11 w-11 flex justify-center items-center shadow-sm z-10"> <a href="#"> <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="w-7 h-7 text-white dark:text-slate-200"> <path stroke-linecap="round" stroke-linejoin="round" d="M4.5 15.75l7.5-7.5 7.5 7.5"></path> </svg> </a> </div> <script defer="" src="https://cdn.haproxy.com/documentation/assets/search/search.js?v=1740149478257"></script> </body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10