CINXE.COM

High Orbit Ion Cannon (HOIC)

<!doctype html> <html lang="en-US"> <head> <meta charset="utf-8"> <meta http-equiv="x-ua-compatible" content="ie=edge"> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> <meta name="zd-site-verification" content="zbchuxl9kjemdkdydvjh49" /> <meta name='robots' content='index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1' /> <title>High Orbit Ion Cannon (HOIC)</title> <meta name="description" content="The High Orbit Ion Cannon (HOIC) is a denial-of-service attack tool designed to overwhelm web servers by flooding a targeted website with HTTP GET and POST requests. Learn about HOIC attacks and ways to protect against them." /> <link rel="canonical" href="https://www.invicti.com/learn/high-orbit-ion-cannon-hoic/" /> <meta property="og:locale" content="en_US" /> <meta property="og:type" content="article" /> <meta property="og:title" content="High Orbit Ion Cannon (HOIC)" /> <meta property="og:description" content="The High Orbit Ion Cannon (HOIC) is a denial-of-service attack tool designed to overwhelm web servers by flooding a targeted website with HTTP GET and POST requests. Learn about HOIC attacks and ways to protect against them." /> <meta property="og:url" content="https://www.invicti.com/learn/high-orbit-ion-cannon-hoic/" /> <meta property="og:site_name" content="Invicti" /> <meta property="article:published_time" content="2023-05-29T13:59:08+00:00" /> <meta property="article:modified_time" content="2023-05-29T14:43:56+00:00" /> <meta property="og:image" content="https://cdn.invicti.com/app/uploads/2022/06/28120437/NS-28-Blog-Image.png" /> <meta property="og:image:width" content="1200" /> <meta property="og:image:height" content="630" /> <meta property="og:image:type" content="image/png" /> <meta name="twitter:card" content="summary_large_image" /> <meta name="twitter:label1" content="Est. reading time" /> <meta name="twitter:data1" content="3 minutes" /> <script type="application/ld+json" class="yoast-schema-graph">{"@context":"https://schema.org","@graph":[{"@type":"WebPage","@id":"https://www.invicti.com/learn/high-orbit-ion-cannon-hoic/","url":"https://www.invicti.com/learn/high-orbit-ion-cannon-hoic/","name":"High Orbit Ion Cannon (HOIC)","isPartOf":{"@id":"https://www.invicti.com/#website"},"primaryImageOfPage":{"@id":"https://www.invicti.com/learn/high-orbit-ion-cannon-hoic/#primaryimage"},"image":{"@id":"https://www.invicti.com/learn/high-orbit-ion-cannon-hoic/#primaryimage"},"thumbnailUrl":"https://cdn.invicti.com/app/uploads/2022/06/28120437/NS-28-Blog-Image.png","datePublished":"2023-05-29T13:59:08+00:00","dateModified":"2023-05-29T14:43:56+00:00","description":"The High Orbit Ion Cannon (HOIC) is a denial-of-service attack tool designed to overwhelm web servers by flooding a targeted website with HTTP GET and POST requests. Learn about HOIC attacks and ways to protect against them.","breadcrumb":{"@id":"https://www.invicti.com/learn/high-orbit-ion-cannon-hoic/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https://www.invicti.com/learn/high-orbit-ion-cannon-hoic/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https://www.invicti.com/learn/high-orbit-ion-cannon-hoic/#primaryimage","url":"https://cdn.invicti.com/app/uploads/2022/06/28120437/NS-28-Blog-Image.png","contentUrl":"https://cdn.invicti.com/app/uploads/2022/06/28120437/NS-28-Blog-Image.png","width":1200,"height":630},{"@type":"BreadcrumbList","@id":"https://www.invicti.com/learn/high-orbit-ion-cannon-hoic/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://www.invicti.com/"},{"@type":"ListItem","position":2,"name":"High Orbit Ion Cannon (HOIC)"}]},{"@type":"WebSite","@id":"https://www.invicti.com/#website","url":"https://www.invicti.com/","name":"Invicti","description":"Web Application and API Security For Enterprise","publisher":{"@id":"https://www.invicti.com/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://www.invicti.com/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@context":"http://schema.org","@type":"Organization","name":"Invicti","logo":"https://cdn.invicti.com/branding/invicti-logo-black.svg","image":"https://cdn.invicti.com/branding/invicti-logo-black.svg","telephone":["+1 737-263-3333"],"email":"contact@invicti.com","url":"https://www.invicti.com","sameAs":["https://facebook.com/Invicti-Security-100090617259790/","https://twitter.com/InvictiSecurity","https://www.linkedin.com/company/invicti-security"],"address":{"@type":"PostalAddress","streetAddress":"1000 N Lamar Blvd Suite 300","addressLocality":"Austin","addressRegion":"Texas","addressCountry":"United States","postalCode":"78703"}}]}</script> <link rel='dns-prefetch' href='//www.googletagmanager.com' /> <style id='classic-theme-styles-inline-css' type='text/css'> /*! This file is auto-generated */ .wp-block-button__link{color:#fff;background-color:#32373c;border-radius:9999px;box-shadow:none;text-decoration:none;padding:calc(.667em + 2px) calc(1.333em + 2px);font-size:1.125em}.wp-block-file__button{background:#32373c;color:#fff;text-decoration:none} </style> <style id='global-styles-inline-css' type='text/css'> :root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgba(6,147,227,1) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgba(252,185,0,1) 0%,rgba(255,105,0,1) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgba(255,105,0,1) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 13px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 36px;--wp--preset--font-size--x-large: 42px;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgba(255, 255, 255, 1), 6px 6px rgba(0, 0, 0, 1);--wp--preset--shadow--crisp: 6px 6px 0px rgba(0, 0, 0, 1);}:where(.is-layout-flex){gap: 0.5em;}:where(.is-layout-grid){gap: 0.5em;}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}:where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;}:where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;} :where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;} :where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;} :root :where(.wp-block-pullquote){font-size: 1.5em;line-height: 1.6;} </style> <meta name="generator" content="Site Kit by Google 1.136.0" /><meta name="google-site-verification" content="ceMUxhM6CVvCVJcqefKlgIRfKWEkgktxWLDpqhgSIkM"> <!-- Google Tag Manager snippet added by Site Kit --> <script type="text/javascript"> /* <![CDATA[ */ ( 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-M7R7MXJ' ); /* ]]> */ </script> <!-- End Google Tag Manager snippet added by Site Kit --> <link rel="icon" href="https://cdn.invicti.com/app/uploads/2022/03/08125959/cropped-favicon-32x32.png" sizes="32x32" /> <link rel="icon" href="https://cdn.invicti.com/app/uploads/2022/03/08125959/cropped-favicon-192x192.png" sizes="192x192" /> <link rel="apple-touch-icon" href="https://cdn.invicti.com/app/uploads/2022/03/08125959/cropped-favicon-180x180.png" /> <meta name="msapplication-TileImage" content="https://cdn.invicti.com/app/uploads/2022/03/08125959/cropped-favicon-270x270.png" /> <style id="theme-css-assets">/*! tailwindcss v3.0.18 | MIT License | https://tailwindcss.com*/*,:after,:before{border:0 solid #e5e5e5;box-sizing:border-box}:after,:before{--tw-content:""}html{-webkit-text-size-adjust:100%;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{color:inherit;font-family:inherit;font-size:100%;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#a3a3a3;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]{display:none}.container-small{margin-left:auto;margin-right:auto}@media (min-width:1200px){.container-small{margin-top:6.25rem;padding-left:375px;padding-right:375px;width:100%}@media (min-width:992px){.container-small{margin-top:0;padding-left:5rem;padding-right:5rem}}.container-small{max-width:1100px!important}}*,:after,:before{--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246/0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }.container{margin-left:auto;margin-right:auto;padding-left:25px;padding-right:25px;width:100%}@media (min-width:100%){.container{max-width:100%;padding-left:25px;padding-right:25px}}@media (min-width:1380px){.container{max-width:1380px;padding-left:30px;padding-right:30px}}@media (min-width:1460px){.container{max-width:1460px;padding-left:30px;padding-right:30px}}@media (min-width:1560px){.container{max-width:1560px;padding-left:30px;padding-right:30px}}.visible{visibility:visible}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.top-10{top:.625rem}.left-10{left:.625rem}.isolate{isolation:isolate}.z-\[99\]{z-index:99}.order-2{order:2}.col-span-9{grid-column:span 9/span 9}.mb-10{margin-bottom:.625rem}.mb-60{margin-bottom:3.75rem}.mt-50{margin-top:3.125rem}.mt-6{margin-top:.375rem}.mt-32{margin-top:2rem}.mb-32{margin-bottom:2rem}.mt-20{margin-top:1.25rem}.mt-15{margin-top:.9375rem}.mb-34{margin-bottom:2.125rem}.mt-10{margin-top:.625rem}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.table{display:table}.grid{display:grid}.contents{display:contents}.hidden{display:none}.h-\[36px\]{height:36px}.h-48{height:3rem}.min-h-screen{min-height:100vh}.w-1\/5{width:20%}.w-1\/4{width:25%}.w-1\/3{width:33.333333%}.w-2\/5{width:40%}.w-2\/4{width:50%}.w-3\/5{width:60%}.w-2\/3{width:66.666667%}.w-3\/4{width:75%}.w-4\/5{width:80%}.w-10\/12{width:83.333333%}.w-11\/12{width:91.666667%}.w-full{width:100%}.w-48{width:3rem}.w-1\/2{width:50%}.grow{flex-grow:1}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.resize{resize:both}.grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.gap-4{gap:.25rem}.gap-20{gap:1.25rem}.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.3125rem*var(--tw-space-y-reverse));margin-top:calc(.3125rem*(1 - var(--tw-space-y-reverse)))}.self-center{align-self:center}.overflow-hidden{overflow:hidden}.rounded-sm{border-radius:.125rem}.rounded{border-radius:.25rem}.rounded-t-xl{border-top-left-radius:.75rem;border-top-right-radius:.75rem}.border{border-width:1px}.border-gray-200{--tw-border-opacity:1;border-color:rgb(229 229 229/var(--tw-border-opacity))}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.bg-primary-invictipurple{--tw-bg-opacity:1;background-color:rgb(89 23 105/var(--tw-bg-opacity))}.bg-secondary-darkpurple{--tw-bg-opacity:1;background-color:rgb(60 16 83/var(--tw-bg-opacity))}.bg-gray-200{--tw-bg-opacity:1;background-color:rgb(229 229 229/var(--tw-bg-opacity))}.bg-neutral-bone,.bg-sky{--tw-bg-opacity:1;background-color:rgb(250 249 247/var(--tw-bg-opacity))}.bg-dark{--tw-bg-opacity:1;background-color:rgb(16 24 32/var(--tw-bg-opacity))}.bg-nsgray{--tw-bg-opacity:1;background-color:rgb(99 101 105/var(--tw-bg-opacity))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.fill-dark{fill:#101820}.p-10{padding:.625rem}.px-16{padding-left:1rem;padding-right:1rem}.px-0{padding-left:0;padding-right:0}.px-15{padding-left:.9375rem;padding-right:.9375rem}.py-18{padding-bottom:1.125rem;padding-top:1.125rem}.pt-20{padding-top:1.25rem}.pb-10{padding-bottom:.625rem}.pt-40{padding-top:2.5rem}.text-center{text-align:center}.font-circular{font-family:Circular XX,Helvetica Neue,Helvetica,Arial,sans-serif}.text-\[13px\]{font-size:13px}.text-h-xs{font-size:2rem}.text-h-sm{font-size:2.125rem}.text-h-md{font-size:2.25rem}.text-h-lg{font-size:2.375rem}.text-h-xl{font-size:2.5rem}.text-h-2xl{font-size:2.625rem}.text-h-3xl{font-size:2.75rem}.text-h-4xl{font-size:2.875rem}.text-xs{font-size:.75rem}.text-sm{font-size:.875rem}.text-base{font-size:1rem}.text-lg{font-size:1.125rem}.text-xl{font-size:1.25rem}.text-2xl{font-size:1.375rem}.text-3xl{font-size:1.5rem}.text-4xl{font-size:1.625rem}.text-5xl{font-size:1.75rem}.text-6xl{font-size:1.875rem}.font-medium{font-weight:500}.font-bold{font-weight:700}.italic{font-style:italic}.text-gray-500{--tw-text-opacity:1;color:rgb(115 115 115/var(--tw-text-opacity))}.text-red-900{--tw-text-opacity:1;color:rgb(136 19 55/var(--tw-text-opacity))}.text-primary-invictipurple{--tw-text-opacity:1;color:rgb(89 23 105/var(--tw-text-opacity))}.text-dark{--tw-text-opacity:1;color:rgb(16 24 32/var(--tw-text-opacity))}.text-nsgray{--tw-text-opacity:1;color:rgb(99 101 105/var(--tw-text-opacity))}.text-customcolors-32{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.underline{-webkit-text-decoration-line:underline;text-decoration-line:underline}.opacity-80{opacity:.8}.shadow-sm{--tw-shadow:0 0.0625rem 0.125rem 0 rgba(0,0,0,0.05);--tw-shadow-colored:0 0.0625rem 0.125rem 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.blur{--tw-blur:blur(8px)}.blur,.grayscale{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.grayscale{--tw-grayscale:grayscale(100%)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-duration:.15s;transition-property:color,background-color,border-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-text-decoration-color,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-text-decoration-color,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-500{transition-duration:.5s}.hover\:border-secondary-darkpurple:hover{--tw-border-opacity:1;border-color:rgb(60 16 83/var(--tw-border-opacity))}.hover\:text-secondary-darkpurple:hover{--tw-text-opacity:1;color:rgb(60 16 83/var(--tw-text-opacity))}.hover\:text-dark:hover{--tw-text-opacity:1;color:rgb(16 24 32/var(--tw-text-opacity))}.hover\:text-white:hover{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.hover\:opacity-80:hover{opacity:.8}.hover\:transition-opacity:hover{transition-duration:.15s;transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1)}@media (min-width:576px){.sm\:block{display:block}.sm\:hidden{display:none}.sm\:w-full{width:100%}}@media (min-width:767px){.md\:ml-15{margin-left:.9375rem}.md\:block{display:block}.md\:flex{display:flex}.md\:hidden{display:none}.md\:w-1\/5{width:20%}.md\:w-1\/4{width:25%}.md\:w-1\/3{width:33.333333%}.md\:w-2\/5{width:40%}.md\:w-2\/4{width:50%}.md\:w-3\/5{width:60%}.md\:w-2\/3{width:66.666667%}.md\:w-3\/4{width:75%}.md\:w-4\/5{width:80%}.md\:w-10\/12{width:83.333333%}.md\:w-11\/12{width:91.666667%}.md\:w-full{width:100%}.md\:w-6\/12{width:50%}.md\:flex-row{flex-direction:row}.md\:px-25{padding-left:1.5625rem;padding-right:1.5625rem}.md\:pr-15{padding-right:.9375rem}.md\:pl-15{padding-left:.9375rem}.md\:text-sm{font-size:.875rem}}@media (min-width:769px){.md2\:block{display:block}.md2\:hidden{display:none}}@media (min-width:992px){.lg\:order-2{order:2}.lg\:mt-60{margin-top:3.75rem}.lg\:mb-60{margin-bottom:3.75rem}.lg\:block{display:block}.lg\:hidden{display:none}.lg\:w-1\/5{width:20%}.lg\:w-1\/4{width:25%}.lg\:w-1\/3{width:33.333333%}.lg\:w-2\/5{width:40%}.lg\:w-2\/4{width:50%}.lg\:w-3\/5{width:60%}.lg\:w-2\/3{width:66.666667%}.lg\:w-3\/4{width:75%}.lg\:w-4\/5{width:80%}.lg\:w-10\/12{width:83.333333%}.lg\:w-11\/12{width:91.666667%}.lg\:w-full{width:100%}.lg\:w-7\/12{width:58.333333%}.lg\:w-5\/12{width:41.666667%}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:flex-row{flex-direction:row}.lg\:gap-10{gap:.625rem}.lg\:px-0{padding-left:0;padding-right:0}}@media (min-width:1200px){.xl\:block{display:block}.xl\:hidden{display:none}.xl\:pt-60{padding-top:3.75rem}}@media (min-width:1400px){.\32xl\:block{display:block}.\32xl\:hidden{display:none}}@media (min-width:1620px){.\33xl\:block{display:block}.\33xl\:hidden{display:none}} :root{--color-nsblue-default:#591769;--color-nsblue-dark:#3c1053;--color-nsblue-lightest:#faf9f7;--color-sky-default:#faf9f7;--color-sky-light:#faf9f7;--color-sky-lightest:#faf9f7;--color-nsgray-default:#636569;--color-nsgray-lightest:#faf9f7;--color-nsdark:#101820;--color-acunetix:#fa4216;--color-blue:#591769;--color-dark-blue:#3c1053;--color-dark:#101820;--body-font:Circular XX,Helvetica Neue,Helvetica,Arial,sans-serif;--heading-font:Circular XX,Helvetica Neue,Helvetica,Arial,sans-serif;--box-shadow-1:0 3px 15px 0 rgb(0 0 0/10%);--box-shadow-2:0 5px 50px -1px rgb(0 0 0/5%);--color-entrycontent-default:#636569;--color-entrycontent-heading:#101820;--color-entrycontent-light:#636569;--color-sky-more:#cc8bdb;--color-nsblue-medium:#7a2582;--color-customcolors-1:#d9d8d6;--color-customcolors-2:#fff;--color-customcolors-3:#3c1053;--color-customcolors-4:#636569;--color-customcolors-5:#3c1053;--color-customcolors-6:#faf9f7;--color-customcolors-7:#636569;--color-customcolors-8:#b1b1b2;--color-customcolors-9:#636569;--color-customcolors-10:#b1b1b2;--color-customcolors-11:#b1b1b2;--color-customcolors-12:#faf9f7;--color-customcolors-13:#d73829;--color-customcolors-14:#faf9f7;--color-customcolors-15:#b1b1b2;--color-customcolors-16:#f15d2a;--color-customcolors-17:#636569;--color-customcolors-18:#f15d2a;--color-customcolors-19:#faf9f7;--color-customcolors-20:#cc8bdb;--color-customcolors-21:#ff8001;--color-customcolors-22:#cc8bdb;--color-customcolors-23:#f15d2a;--color-customcolors-24:#636569;--color-customcolors-25:#d9d8d6;--color-customcolors-26:#b1b1b2;--color-customcolors-27:#636569;--color-customcolors-28:#d9d8d6;--color-customcolors-29:#b1b1b2;--color-customcolors-30:rgba(8,49,126,0);--color-customcolors-31:#fff;--color-customcolors-32:#fff;--color-customcolors-33:#cc8bdb;--color-customcolors-34:#636569;--color-customcolors-35:#b1b1b2;--color-customcolors-36:#faf9f7;--color-customcolors-37:invert(43%) sepia(32%) saturate(1361%) hue-rotate(245deg) brightness(91%) contrast(67%);--color-customcolors-38:#faf9f7;--color-customcolors-39:#faf9f7;--color-customcolors-40:#faf9f7;--color-customcolors-41:#faf9f7;--color-customcolors-42:#3c1053;--color-customcolors-43:#2c51bd;--color-customcolors-44:#636569;--color-customcolors-45:#101820;--color-customcolors-46:rgba(204,139,219,0.05);--color-primary-invictipurple:#591769;--color-secondary-darkpurple:#3c1053;--color-secondary-mediumpurple:#7a2582;--color-secondary-mauve:#a35eb4;--color-secondary-lightmauve:#cc8bdb;--color-secondary-magenta:#c554d0;--color-secondary-grape:#422991;--color-secondary-softpurple:#fdfafe;--color-secondary-periwinkle:#5d40bd;--color-neutral-invictiblack:#101820;--color-neutral-darkgray:#636569;--color-neutral-mediumgray:#b1b1b2;--color-neutral-lightgray:#d9d8d6;--color-neutral-bone:#faf9f7;--color-accent-darkred:#910710;--color-accent-darkorange:#d73829;--color-accent-brightorange:#f15d2a;--color-accent-lightorange:#ff8001;--color-accent-darkblue:#202b7b;--color-accent-mediumblue:#2c51bd;--color-accent-brightblue:#06aeef;--color-accent-lightblue:#05d5ff;--color-gradient-purple:linear-gradient(90deg,#3c1053,#7a2582);--color-gradient-purple-reverse:linear-gradient(90deg,#7a2582,#3c1053);--color-gradient-purple-radial:radial-gradient(circle,#3c1053 0%,#7a2582 100%);--color-gradient-purple-radial-reverse:radial-gradient(circle,#7a2582 0%,#3c1053 100%);--color-gradient-darksteel:linear-gradient(90deg,#101820,#636569);--color-gradient-darksteel-reverse:linear-gradient(90deg,#636569,#101820);--color-gradient-darksteel-radial:radial-gradient(circle,#101820 0%,#636569 100%);--color-gradient-darksteel-radial-reverse:radial-gradient(circle,#636569 0%,#101820 100%);--font-weight-thin:100;--font-weight-extralight:200;--font-weight-light:300;--font-weight-regular:400;--font-weight-book:450;--font-weight-medium:500;--font-weight-semibold:500;--font-weight-bold:700;--font-weight-extrabold:900;--font-weight-black:900;--font-weight-extrablack:950}@font-face{font-display:swap;font-family:Circular XX;font-stretch:100%;font-style:normal;font-weight:950;src:url(/app/themes/netsparker/public/fonts/circular/CircularXXWeb-ExtraBlack.woff2) format("woff2")}@font-face{font-display:swap;font-family:Circular XX;font-stretch:100%;font-style:italic;font-weight:950;src:url(/app/themes/netsparker/public/fonts/circular/CircularXXWeb-ExtraBlackItalic.woff2) format("woff2")}@font-face{font-display:swap;font-family:Circular XX;font-stretch:100%;font-style:normal;font-weight:900;src:url(/app/themes/netsparker/public/fonts/circular/CircularXXWeb-Black.woff2) format("woff2")}@font-face{font-display:swap;font-family:Circular XX;font-stretch:100%;font-style:italic;font-weight:900;src:url(/app/themes/netsparker/public/fonts/circular/CircularXXWeb-BlackItalic.woff2) format("woff2")}@font-face{font-display:swap;font-family:Circular XX;font-stretch:100%;font-style:normal;font-weight:700;src:url(/app/themes/netsparker/public/fonts/circular/CircularXXWeb-Bold.woff2) format("woff2")}@font-face{font-display:swap;font-family:Circular XX;font-stretch:100%;font-style:italic;font-weight:700;src:url(/app/themes/netsparker/public/fonts/circular/CircularXXWeb-BoldItalic.woff2) format("woff2")}@font-face{font-display:swap;font-family:Circular XX;font-stretch:100%;font-style:normal;font-weight:500;src:url(/app/themes/netsparker/public/fonts/circular/CircularXXWeb-Medium.woff2) format("woff2")}@font-face{font-display:swap;font-family:Circular XX;font-stretch:100%;font-style:italic;font-weight:500;src:url(/app/themes/netsparker/public/fonts/circular/CircularXXWeb-MediumItalic.woff2) format("woff2")}@font-face{font-display:swap;font-family:Circular XX;font-stretch:100%;font-style:normal;font-weight:450;src:url(/app/themes/netsparker/public/fonts/circular/CircularXXWeb-Book.woff2) format("woff2")}@font-face{font-display:swap;font-family:Circular XX;font-stretch:100%;font-style:italic;font-weight:450;src:url(/app/themes/netsparker/public/fonts/circular/CircularXXWeb-BookItalic.woff2) format("woff2")}@font-face{font-display:swap;font-family:Circular XX;font-stretch:100%;font-style:normal;font-weight:400;src:url(/app/themes/netsparker/public/fonts/circular/CircularXXWeb-Regular.woff2) format("woff2")}@font-face{font-display:swap;font-family:Circular XX;font-stretch:100%;font-style:italic;font-weight:400;src:url(/app/themes/netsparker/public/fonts/circular/CircularXXWeb-Italic.woff2) format("woff2")}@font-face{font-display:swap;font-family:Circular XX;font-stretch:100%;font-style:normal;font-weight:300;src:url(/app/themes/netsparker/public/fonts/circular/CircularXXWeb-Light.woff2) format("woff2")}@font-face{font-display:swap;font-family:Circular XX;font-stretch:100%;font-style:italic;font-weight:300;src:url(/app/themes/netsparker/public/fonts/circular/CircularXXWeb-LightItalic.woff2) format("woff2")}@font-face{font-display:swap;font-family:Circular XX;font-stretch:100%;font-style:normal;font-weight:100;src:url(/app/themes/netsparker/public/fonts/circular/CircularXXWeb-Thin.woff2) format("woff2")}@font-face{font-display:swap;font-family:Circular XX;font-stretch:100%;font-style:italic;font-weight:100;src:url(/app/themes/netsparker/public/fonts/circular/CircularXXWeb-ThinItalic.woff2) format("woff2")}*,:after,:before{word-wrap:break-word;box-sizing:border-box;overflow-wrap:break-word}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Circular XX,Helvetica Neue,Helvetica,Arial,sans-serif;scroll-behavior:smooth}body{--tw-text-opacity:1;color:rgb(16 24 32/var(--tw-text-opacity));font-weight:400;min-height:100vh}@media (min-width:576px){body{font-size:1rem}}@media (min-width:769px){body{font-size:1.25rem}}pre{overflow:auto}img,video{min-width:1px}.block-editor-writing-flow{font-size:1rem;line-height:1.5}.site-main{margin-bottom:3rem;margin-top:3rem}.content{min-height:calc(100vh - var(--add-height, 50vh));overflow-x:clip}.content .wp-block-quote.is-style-default{--tw-border-opacity:1;border-color:rgb(204 139 219/var(--tw-border-opacity))}address,blockquote,dl,iframe,ol,pre,table,ul{margin-bottom:1rem}a{--tw-text-opacity:1;color:rgb(122 37 130/var(--tw-text-opacity));font-family:Circular XX,Helvetica Neue,Helvetica,Arial,sans-serif}a.sm{font-size:.75rem}a.md{font-size:16px}a.xl{font-size:1.25rem;font-weight:700}@media (min-width:767px){a.xl{font-size:1.5rem}}a svg{display:inline-block}a:hover{--tw-text-opacity:1;color:rgb(60 16 83/var(--tw-text-opacity))}.block-padding-large{padding-bottom:3.125rem;padding-top:3.125rem}@media (min-width:769px){.block-padding-large{padding-bottom:6.25rem;padding-top:6.25rem}}.block-bg-light-gary,.block-bg-sk{--tw-bg-opacity:1;background-color:rgb(250 249 247/var(--tw-bg-opacity))}.block-bg-nsblue,.block-bg-primary-invictipurple{--tw-bg-opacity:1;background-color:rgb(89 23 105/var(--tw-bg-opacity))}.block-bg-secondary-darkpurple{--tw-bg-opacity:1;background-color:rgb(60 16 83/var(--tw-bg-opacity))}.block-bg-secondary-mediumpurple{--tw-bg-opacity:1;background-color:rgb(122 37 130/var(--tw-bg-opacity))}.block-bg-secondary-mauve{--tw-bg-opacity:1;background-color:rgb(163 94 180/var(--tw-bg-opacity))}.block-bg-secondary-lightmauve{--tw-bg-opacity:1;background-color:rgb(204 139 219/var(--tw-bg-opacity))}.block-bg-secondary-magenta{--tw-bg-opacity:1;background-color:rgb(197 84 208/var(--tw-bg-opacity))}.block-bg-secondary-grape{--tw-bg-opacity:1;background-color:rgb(66 41 145/var(--tw-bg-opacity))}.block-bg-secondary-periwinkle{--tw-bg-opacity:1;background-color:rgb(93 64 189/var(--tw-bg-opacity))}.block-bg-secondary-softpurple{--tw-bg-opacity:1;background-color:rgb(253 250 254/var(--tw-bg-opacity))}.block-bg-neutral-invictiblack{--tw-bg-opacity:1;background-color:rgb(16 24 32/var(--tw-bg-opacity))}.block-bg-neutral-darkgray{--tw-bg-opacity:1;background-color:rgb(99 101 105/var(--tw-bg-opacity))}.block-bg-neutral-mediumgray{--tw-bg-opacity:1;background-color:rgb(177 177 178/var(--tw-bg-opacity))}.block-bg-neutral-lightgray{--tw-bg-opacity:1;background-color:rgb(217 216 214/var(--tw-bg-opacity))}.block-bg-neutral-bone{--tw-bg-opacity:1;background-color:rgb(250 249 247/var(--tw-bg-opacity))}.block-bg-accent-darkred{--tw-bg-opacity:1;background-color:rgb(145 7 16/var(--tw-bg-opacity))}.block-bg-accent-darkorange{--tw-bg-opacity:1;background-color:rgb(215 56 41/var(--tw-bg-opacity))}.block-bg-accent-brightorange{--tw-bg-opacity:1;background-color:rgb(241 93 42/var(--tw-bg-opacity))}.block-bg-accent-lightorange{--tw-bg-opacity:1;background-color:rgb(255 128 1/var(--tw-bg-opacity))}.block-bg-accent-darkblue{--tw-bg-opacity:1;background-color:rgb(32 43 123/var(--tw-bg-opacity))}.block-bg-accent-mediumblue{--tw-bg-opacity:1;background-color:rgb(44 81 189/var(--tw-bg-opacity))}.block-bg-accent-brightblue{--tw-bg-opacity:1;background-color:rgb(6 174 239/var(--tw-bg-opacity))}.block-bg-accent-lightblue{--tw-bg-opacity:1;background-color:rgb(5 213 255/var(--tw-bg-opacity))}.screen-reader-text{clip:rect(1px,1px,1px,1px);word-wrap:normal!important;border:0;-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.smaller-container{max-width:1024px}.small-container{max-width:1280px}.full-container{max-width:100%}.stretch-wrapper{left:50%;margin-left:-50vw;position:relative;width:100vw}.normal-vspace{padding-bottom:37px;padding-top:37px}@media (min-width:992px){.normal-vspace{padding-bottom:75px;padding-top:75px}}.small-vspace{padding-bottom:25px;padding-top:25px}@media (min-width:992px){.small-vspace{padding-bottom:50px;padding-top:50px}}.large-vspace{padding-bottom:50px;padding-top:50px}@media (min-width:992px){.large-vspace{padding-bottom:150px;padding-top:150px}}.lg-hidden{display:none}@media (min-width:992px){.lg-hidden{display:block}}.md-hidden{display:none}@media (min-width:767px){.md-hidden{display:block}}.sm-hidden{display:none}@media (min-width:576px){.sm-hidden{display:block}}.lg-break-hidden br{display:none}@media (min-width:992px){.lg-break-hidden br{display:block}}.md-break-hidden br{display:none}@media (min-width:767px){.md-break-hidden br{display:block}}.sm-break-hidden br{display:none}@media (min-width:576px){.sm-break-hidden br{display:block}}.lg-visible{display:block}@media (min-width:992px){.lg-visible{display:none}}.md-visible{display:block}@media (min-width:767px){.md-visible{display:none}}.sm-visible{display:block}@media (min-width:576px){.sm-visible{display:none}}.wp-block-image.is-style-rounded img{border-radius:50%}.alignleft{float:left;margin-bottom:1rem;margin-right:1rem}.alignright{float:right;margin-bottom:1rem;margin-left:1rem}.aligncenter{margin:1rem auto}.alignnone{margin-bottom:1rem}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{font-family:Circular XX,Helvetica Neue,Helvetica,Arial,sans-serif;line-height:1.16}.h1,h1{font-size:1.75rem;font-weight:700;margin-bottom:2rem}@media (min-width:767px){.h1,h1{font-size:2.5rem}}.h2,h2{font-size:1.75rem;font-weight:700;margin-bottom:1.5rem}@media (min-width:769px){.h2,h2{font-size:2.25rem}}.h3,h3{font-size:1.375rem;margin-bottom:1rem}@media (min-width:767px){.h3,h3{font-size:1.75rem}}.h4,h4{font-size:1.375rem;margin-bottom:.75rem}.h5,h5{font-size:.875rem}.svg-sprite-wrapper{display:none}.btn{border-radius:.25rem;font-family:Circular XX,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:1.125rem;font-weight:500;line-height:1.5rem;padding:.625rem 1.75rem;text-align:center}.btn--primary{background-color:rgb(122 37 130/var(--tw-bg-opacity));border-color:rgb(122 37 130/var(--tw-border-opacity));border-width:2px}.btn--primary,.btn--primary:hover{--tw-border-opacity:1;--tw-bg-opacity:1;--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.btn--primary:hover{background-color:rgb(89 23 105/var(--tw-bg-opacity));border-color:rgb(89 23 105/var(--tw-border-opacity))}.btn--primary-light{--tw-border-opacity:1;--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity));border-color:rgb(255 255 255/var(--tw-border-opacity));border-width:2px;color:rgb(16 24 32/var(--tw-text-opacity))}.btn--primary-light:hover{--tw-text-opacity:1;color:rgb(122 37 130/var(--tw-text-opacity))}.btn--secondary{background-color:rgb(255 255 255/var(--tw-bg-opacity));border-width:2px;color:rgb(89 23 105/var(--tw-text-opacity));display:inline-block}.btn--secondary,.btn--secondary:hover{--tw-border-opacity:1;--tw-bg-opacity:1;--tw-text-opacity:1;border-color:rgb(122 37 130/var(--tw-border-opacity))}.btn--secondary:hover{background-color:rgb(122 37 130/var(--tw-bg-opacity));color:rgb(255 255 255/var(--tw-text-opacity))}.btn--border{--tw-border-opacity:1;--tw-text-opacity:1;border-color:rgb(122 37 130/var(--tw-border-opacity));border-width:2px;color:rgb(122 37 130/var(--tw-text-opacity))}.btn--border:hover{--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(122 37 130/var(--tw-bg-opacity));color:rgb(255 255 255/var(--tw-text-opacity))}.btn--border-light{--tw-border-opacity:1;--tw-text-opacity:1;border-color:rgb(255 255 255/var(--tw-border-opacity));border-width:2px;color:rgb(255 255 255/var(--tw-text-opacity))}.btn--border-light:hover{--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity));color:rgb(122 37 130/var(--tw-text-opacity))}.btn--full{display:block;width:100%}.btn--hero{display:inline-block;margin-top:1.875rem}.button{padding:1rem}input:not(.button),textarea{padding:.5rem .75rem}@media (min-width:767px){input:not(.button),textarea{padding-bottom:.625rem;padding-top:.625rem}}label{display:block;font-weight:500;margin-bottom:1rem}.search-form{position:relative;width:100%}.search-form .search-field{--tw-text-opacity:1;background-color:transparent;border-radius:.5rem;border-width:1px;color:rgb(0 0 0/var(--tw-text-opacity));padding:.75rem;width:100%}.search-form button{height:100%;padding-left:1rem;padding-right:1rem;position:absolute;right:0;text-align:center;top:0}.search-form button svg{font-size:1rem;height:1rem}.content-form{--tw-bg-opacity:1;--tw-shadow:rgb(0 0 0/15%) 0 7px 29px 0;--tw-shadow-colored:0 7px 29px 0 var(--tw-shadow-color);background-color:rgb(255 255 255/var(--tw-bg-opacity));border-radius:.25rem;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);margin-left:auto;margin-right:auto;padding:1.75rem}@media (min-width:767px){.content-form{padding-bottom:2.875rem;padding-left:38px;padding-right:38px;padding-top:2.875rem}}@media (min-width:992px){.content-form{margin-left:0;margin-right:0;max-width:500px}}.content-form__heading{font-family:Circular XX,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:1.25rem;font-weight:300;margin-bottom:1.875rem;text-align:center}@media (min-width:767px){.content-form__heading{font-size:2.25rem}}.ns-form>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(1.25rem*var(--tw-space-y-reverse));margin-top:calc(1.25rem*(1 - var(--tw-space-y-reverse)))}.ns-form{text-align:center}.form-group .iti{font-size:1rem;width:100%}@media (max-width:500px){.form-group .iti .iti__country-list{min-width:80vw}}.form-group .iti__flag-container:focus{--tw-border-opacity:1;border-color:rgb(16 24 32/var(--tw-border-opacity));outline:2px solid transparent;outline-offset:2px}.form-group.optin{align-items:flex-start;display:flex;gap:.5rem;justify-content:center;margin-top:1.25rem}@media (min-width:767px){.form-group.optin{align-items:center}}.form-group.optin input{-webkit-appearance:none;appearance:none;background-color:rgb(255 255 255/var(--tw-bg-opacity));background-position:50%;background-repeat:no-repeat;background-size:contain;border-color:rgb(212 212 212/var(--tw-border-opacity));border-radius:.125rem;border-width:1px;cursor:pointer;flex:none;height:12px;margin-right:.125rem;margin-top:.1875rem;padding:0;transition-duration:.2s;transition-property:color,background-color,border-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-text-decoration-color,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-text-decoration-color,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);vertical-align:top;width:12px}.form-group.optin input,.form-group.optin input:checked{--tw-border-opacity:1;--tw-bg-opacity:1}.form-group.optin input:checked{background-color:rgb(89 23 105/var(--tw-bg-opacity));border-color:rgb(89 23 105/var(--tw-border-opacity))}.form-group.optin input:focus{outline:2px solid transparent;outline-offset:2px}@media (min-width:767px){.form-group.optin input{margin-top:.25rem}}.form-group.optin input:checked{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3E%3C/svg%3E")}.form-group.optin label{font-size:13px!important;margin-bottom:0!important;text-align:center!important}input[type=email],input[type=number],input[type=tel],input[type=text],select,textarea{--tw-border-opacity:1;border:1px solid rgb(212 212 212/var(--tw-border-opacity));border-radius:.25rem;font-size:.875rem;font-weight:400;height:3.125rem;outline:2px solid transparent;outline-offset:2px;width:100%}input[type=email]:focus,input[type=number]:focus,input[type=tel]:focus,input[type=text]:focus,select:focus,textarea:focus{--tw-border-opacity:1;border-color:rgb(16 24 32/var(--tw-border-opacity))}input[type=email]:focus::placeholder,input[type=number]:focus::placeholder,input[type=tel]:focus::placeholder,input[type=text]:focus::placeholder,select:focus::placeholder,textarea:focus::placeholder{--tw-placeholder-opacity:1;color:rgb(163 163 163/var(--tw-placeholder-opacity))}@media (min-width:767px){input[type=email],input[type=number],input[type=tel],input[type=text],select,textarea{font-size:1rem}}textarea{height:auto}select{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity));background-image:none;cursor:default;display:block;font-size:1rem;line-height:48px;margin:0;padding:0 .75rem;text-transform:none;white-space:pre;width:100%}select:focus{outline:2px solid transparent;outline-offset:2px}form .btn{padding-bottom:13px;padding-top:13px}form label.error{--tw-text-opacity:1;color:rgb(244 63 94/var(--tw-text-opacity));font-size:13.6px;font-weight:500;margin-top:.3125rem;text-align:left}form .error:not(label){--tw-border-opacity:1;--tw-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #1665fb;--tw-shadow-colored:inset 0 1px 1px var(--tw-shadow-color),0 0 6px var(--tw-shadow-color);border-color:rgb(89 23 105/var(--tw-border-opacity));box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.page-pricing-data .content-form .btn{margin-left:auto;margin-right:auto;margin-top:3rem;width:auto}#pardot-err{--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(220 38 38/var(--tw-bg-opacity));border-radius:.125rem;color:rgb(255 255 255/var(--tw-text-opacity));padding:1.25rem;text-align:left}#pardot-err h5{display:flex;font-size:.875rem;font-weight:500;gap:.3125rem;margin-bottom:.4375rem}#pardot-err p{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity));font-size:.875rem;margin-bottom:.125rem}.modal{bottom:0;display:none;left:0;overflow:hidden;position:fixed;right:0;top:0;z-index:1050}.modal.modal-open{display:block;overflow-x:hidden;overflow-y:auto}.modal .modal-dialog{--tw-translate-x:-50%;--tw-translate-y:-50%;left:50%;position:absolute;top:50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));width:auto}.modal .modal-content{--tw-bg-opacity:1;background-clip:padding-box;background-color:rgb(255 255 255/var(--tw-bg-opacity));outline:2px solid transparent;outline-offset:2px;padding:1.5rem;position:relative}.modal .modal-content .modal-header{text-align:center}.modal .modal-content .modal-body,.modal .modal-content .modal-footer{position:relative}.modal .fluid-embed embed,.modal .fluid-embed iframe,.modal .fluid-embed object{border-style:none}.close{--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity));color:rgb(255 255 255/var(--tw-text-opacity));cursor:pointer;display:block;margin-top:.5rem;outline:2px solid transparent;outline-offset:2px;padding:.5rem}.site-header{--tw-bg-opacity:1;align-items:center;background-color:rgb(255 255 255/var(--tw-bg-opacity));display:flex;font-size:1.125rem;left:0;padding-bottom:.9375rem;padding-top:.9375rem;position:sticky;right:0;top:0;transition-duration:.2s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);width:100%;z-index:50}@media (min-width:767px){.site-header{padding-bottom:1.375rem;padding-top:1.375rem}}@media (min-width:992px){.site-header{font-size:1rem;padding-bottom:1.125rem;padding-top:1.125rem}}@media (min-width:1400px){.site-header{font-size:1.125rem}}@media (min-width:992px){.site-header{height:100px}.site-header>.container{align-items:center;display:flex;justify-content:space-between}}.site-header .btn-get-demo{--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(122 37 130/var(--tw-bg-opacity));border-radius:.25rem;color:rgb(255 255 255/var(--tw-text-opacity));display:none;float:right;font-family:Circular XX,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:1rem;font-weight:700;margin-left:.9375rem;padding:.375rem 1.125rem}.site-header .btn-get-demo:hover{--tw-bg-opacity:1;background-color:rgb(89 23 105/var(--tw-bg-opacity))}@media (min-width:767px){.site-header .btn-get-demo{display:block}}.site-header .btn-get-demo{letter-spacing:.3px}@media (min-width:992px){.site-header .btn-get-demo{height:max-content;order:3}}.site-header .mobile-logo,.site-header .sticky-logo{display:none}.site-header.no-sticky,.site-header.no-sticky .top-slogan{position:relative}.site-header.centered-logo .navigation-header{align-items:center;display:flex;flex-direction:column;justify-content:center;width:100%}.site-header.centered-logo .navigation-header .logo{height:auto;margin-left:auto;margin-right:auto;width:6.25rem}@media (min-width:767px){.site-header.centered-logo .navigation-header .logo{width:120px}}@media (min-width:992px){.site-header.centered-logo .navigation-header .logo{width:150px}}.site-header.centered-logo .navigation-header .top-slogan{--tw-text-opacity:1;color:rgb(16 24 32/var(--tw-text-opacity));font-family:Circular XX,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:9px;font-weight:300;text-align:center}@media (min-width:767px){.site-header.centered-logo .navigation-header .top-slogan{font-size:11px}}@media (min-width:992px){.site-header.centered-logo .navigation-header .top-slogan{font-size:14px}}.site-header.centered-logo .top-slogan{display:block}.site-header.purple-header .navigation-header .navbar-toggle-open path[fill],.site-header.transparent-header .navigation-header .navbar-toggle-open path[fill]{fill:#faf9f7}.site-header.purple-header .navigation-header .top-slogan,.site-header.purple-header .primary-menu-wrapper .primary-menu>li>a,.site-header.transparent-header .navigation-header .top-slogan,.site-header.transparent-header .primary-menu-wrapper .primary-menu>li>a{--tw-text-opacity:1;color:rgb(250 249 247/var(--tw-text-opacity))}.site-header.purple-header .primary-menu-wrapper .primary-menu>li>a:after,.site-header.transparent-header .primary-menu-wrapper .primary-menu>li>a:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='11' height='7' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m10.72 1.637-4.53 4.53s-.008.007-.008.015a.978.978 0 0 1-.682.278.978.978 0 0 1-.682-.278s-.007-.008-.007-.015L.28 1.637A.96.96 0 0 1 .957 0c.255 0 .499.1.679.28L5.5 4.144 9.363.28A.96.96 0 0 1 11 .958a.96.96 0 0 1-.28.679Z' fill='%23FAF9F7'/%3E%3C/svg%3E")}.site-header.purple-header .primary-menu-wrapper .primary-menu>li:hover>a,.site-header.transparent-header .primary-menu-wrapper .primary-menu>li:hover>a{--tw-text-opacity:1;color:rgb(204 139 219/var(--tw-text-opacity))}.site-header.purple-header .primary-menu-wrapper .primary-menu>li:hover>a:after,.site-header.transparent-header .primary-menu-wrapper .primary-menu>li:hover>a:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='11' height='7' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m10.72 1.637-4.53 4.53s-.008.007-.008.015a.978.978 0 0 1-.682.278.978.978 0 0 1-.682-.278s-.007-.008-.007-.015L.28 1.637A.96.96 0 0 1 .957 0c.255 0 .499.1.679.28L5.5 4.144 9.363.28A.96.96 0 0 1 11 .958a.96.96 0 0 1-.28.679Z' fill='%23CC8BDB'/%3E%3C/svg%3E")}.site-header.purple-header .btn-get-demo,.site-header.transparent-header .btn-get-demo{--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(250 249 247/var(--tw-bg-opacity));color:rgb(16 24 32/var(--tw-text-opacity));transition-duration:.2s}.site-header.purple-header .btn-get-demo:hover,.site-header.transparent-header .btn-get-demo:hover{--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(122 37 130/var(--tw-bg-opacity));color:rgb(250 249 247/var(--tw-text-opacity))}.site-header.transparent-header{background-color:transparent;position:absolute}.site-header.purple-header{--tw-bg-opacity:1;background-color:rgb(89 23 105/var(--tw-bg-opacity))}.site-header.white-header .navbar-toggle-open path[fill]{fill:#101820}body.sticky-header:not(.mobile-menu-active) .site-header .top-logo{display:none}@media (min-width:767px){body.sticky-header:not(.mobile-menu-active) .site-header .sticky-logo{display:block}}body.sticky-header:not(.mobile-menu-active) .site-header.white-sticky-header{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}body.sticky-header:not(.mobile-menu-active) .site-header.white-sticky-header .navigation-header .navbar-toggle-open path[fill]{fill:#101820}body.sticky-header:not(.mobile-menu-active) .site-header.white-sticky-header .primary-menu-wrapper .primary-menu>li>a{--tw-text-opacity:1;color:rgb(16 24 32/var(--tw-text-opacity))}body.sticky-header:not(.mobile-menu-active) .site-header.white-sticky-header .primary-menu-wrapper .primary-menu>li>a:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='11' height='7' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m10.72 1.637-4.53 4.53s-.008.007-.008.015a.978.978 0 0 1-.682.278.978.978 0 0 1-.682-.278s-.007-.008-.007-.015L.28 1.637A.96.96 0 0 1 .957 0c.255 0 .499.1.679.28L5.5 4.144 9.363.28A.96.96 0 0 1 11 .958a.96.96 0 0 1-.28.679Z' fill='%23101820'/%3E%3C/svg%3E")}body.sticky-header:not(.mobile-menu-active) .site-header.white-sticky-header .primary-menu-wrapper .primary-menu>li:hover>a{--tw-text-opacity:1;color:rgb(89 23 105/var(--tw-text-opacity))}body.sticky-header:not(.mobile-menu-active) .site-header.white-sticky-header .primary-menu-wrapper .primary-menu>li:hover>a:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='11' height='7' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m10.72 1.637-4.53 4.53s-.008.007-.008.015a.978.978 0 0 1-.682.278.978.978 0 0 1-.682-.278s-.007-.008-.007-.015L.28 1.637A.96.96 0 0 1 .957 0c.255 0 .499.1.679.28L5.5 4.144 9.363.28A.96.96 0 0 1 11 .958a.96.96 0 0 1-.28.679Z' fill='%23591769'/%3E%3C/svg%3E")}body.sticky-header:not(.mobile-menu-active) .site-header.white-sticky-header .btn-get-demo{--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(122 37 130/var(--tw-bg-opacity));color:rgb(250 249 247/var(--tw-text-opacity));transition-duration:.2s}body.sticky-header:not(.mobile-menu-active) .site-header.purple-sticky-header,body.sticky-header:not(.mobile-menu-active) .site-header.white-sticky-header .btn-get-demo:hover{--tw-bg-opacity:1;background-color:rgb(89 23 105/var(--tw-bg-opacity))}body.sticky-header:not(.mobile-menu-active) .site-header.purple-sticky-header .navigation-header .sticky-header-btn{--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(250 249 247/var(--tw-bg-opacity));color:rgb(89 23 105/var(--tw-text-opacity))}body.sticky-header:not(.mobile-menu-active) .site-header.purple-sticky-header .navigation-header .navbar-toggle-open path[fill]{fill:#faf9f7}body.sticky-header:not(.mobile-menu-active) .site-header.purple-sticky-header .primary-menu-wrapper .primary-menu>li>a{--tw-text-opacity:1;color:rgb(250 249 247/var(--tw-text-opacity))}body.sticky-header:not(.mobile-menu-active) .site-header.purple-sticky-header .primary-menu-wrapper .primary-menu>li>a:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='11' height='7' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m10.72 1.637-4.53 4.53s-.008.007-.008.015a.978.978 0 0 1-.682.278.978.978 0 0 1-.682-.278s-.007-.008-.007-.015L.28 1.637A.96.96 0 0 1 .957 0c.255 0 .499.1.679.28L5.5 4.144 9.363.28A.96.96 0 0 1 11 .958a.96.96 0 0 1-.28.679Z' fill='%23FAF9F7'/%3E%3C/svg%3E")}body.sticky-header:not(.mobile-menu-active) .site-header.purple-sticky-header .primary-menu-wrapper .primary-menu>li:hover>a{--tw-text-opacity:1;color:rgb(163 94 180/var(--tw-text-opacity))}body.sticky-header:not(.mobile-menu-active) .site-header.purple-sticky-header .primary-menu-wrapper .primary-menu>li:hover>a:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='11' height='7' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m10.72 1.637-4.53 4.53s-.008.007-.008.015a.978.978 0 0 1-.682.278.978.978 0 0 1-.682-.278s-.007-.008-.007-.015L.28 1.637A.96.96 0 0 1 .957 0c.255 0 .499.1.679.28L5.5 4.144 9.363.28A.96.96 0 0 1 11 .958a.96.96 0 0 1-.28.679Z' fill='%23A35EB4'/%3E%3C/svg%3E")}body.sticky-header:not(.mobile-menu-active) .site-header.purple-sticky-header .btn-get-demo{--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(250 249 247/var(--tw-bg-opacity));color:rgb(16 24 32/var(--tw-text-opacity));transition-duration:.2s}body.sticky-header:not(.mobile-menu-active) .site-header.purple-sticky-header .btn-get-demo:hover{--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(122 37 130/var(--tw-bg-opacity));color:rgb(250 249 247/var(--tw-text-opacity))}body:not(.sticky-header) .site-header:not(.centered-logo) .logo{margin-top:-.4375rem}body:not(.sticky-header) .site-header.transparent-header+.content>main>:first-child{padding-top:71px}@media (min-width:767px){body:not(.sticky-header) .site-header.transparent-header+.content>main>:first-child{padding-top:5rem}}@media (min-width:992px){body:not(.sticky-header) .site-header.transparent-header+.content>main>:first-child{padding-top:6.25rem}}.sticky-header-enabled .site-header{padding-bottom:1.25rem}@media (min-width:767px){.sticky-header-enabled .site-header{padding-bottom:1.875rem}}.sticky-header-enabled.sticky-header .site-header{--tw-shadow:0 1px 6px rgb(0 0 0/15%);--tw-shadow-colored:0 1px 6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);padding-bottom:.625rem;padding-top:.625rem;transition-duration:.2s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}@media (min-width:767px){.sticky-header-enabled.sticky-header .site-header{padding-bottom:.9375rem;padding-top:.9375rem}}@media (min-width:992px){.sticky-header-enabled.sticky-header .site-header{height:63px}}.sticky-header-enabled.sticky-header .site-header.transparent-header{position:fixed}.sticky-header-enabled.sticky-header .site-header .navigation-header,.sticky-header-enabled.sticky-header .site-header .primary-menu-wrapper .primary-menu li a{transition-duration:.2s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}body.pricing .site-header{border-bottom:1px solid #e8e8e9}.invicti-bar{display:none;position:relative;z-index:1}.invicti-bar .bar-close{--tw-text-opacity:1;align-items:center;color:rgb(255 255 255/var(--tw-text-opacity));cursor:pointer;display:flex;height:1.25rem;justify-content:center;position:absolute;right:1.5rem;width:1.25rem}.invicti-bar .bar-close:hover{opacity:.5}.invicti-bar .bar-close svg{height:1.125rem;width:1.125rem}.invicti-bar .transition-message{--tw-bg-opacity:1;align-items:center;background-color:rgb(122 37 130/var(--tw-bg-opacity));display:flex;flex-wrap:wrap;font-family:Circular XX,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:1rem;font-weight:500;gap:.125rem;height:45px;justify-content:center;padding-left:1.25rem;padding-right:1.25rem}.invicti-bar .transition-message,.invicti-bar a{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity));width:100%}.invicti-bar a{text-align:center}.invicti-bar a:hover{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity));-webkit-text-decoration-line:underline;text-decoration-line:underline}body.invicti-bar-active .invicti-bar{display:block}.transparent-header-active:not(.mobile-menu-active){margin-top:2.8125rem}.transparent-header-active:not(.mobile-menu-active) .invicti-bar{margin-top:-2.8125rem}.transparent-header-active:not(.mobile-menu-active) .transparent-header{top:2.8125rem}.transparent-header-active:not(.mobile-menu-active).sticky-header,.transparent-header-active:not(.mobile-menu-active).sticky-header .invicti-bar{margin-top:0}.transparent-header-active:not(.mobile-menu-active).sticky-header .transparent-header{top:0}.site-footer{--tw-bg-opacity:1;background-color:rgb(250 249 247/var(--tw-bg-opacity));font-family:Circular XX,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:.9375rem;padding-bottom:1.25rem;padding-top:1.25rem}.site-footer .copyright-mobile{margin-bottom:.625rem}@media (min-width:767px){.site-footer .copyright-mobile{display:none;margin-left:.9375rem;margin-right:.9375rem}}.site-footer .company-info-wrapper .footerlogo{margin-bottom:.9375rem}@media (min-width:992px){.site-footer .company-info-wrapper .company-info{line-height:21.4286px}}.site-footer .company-info-wrapper .copyright{display:none}@media (min-width:767px){.site-footer .company-info-wrapper .copyright{display:block;margin-top:1.25rem}}@media (min-width:992px){.site-footer .company-info-wrapper .copyright{display:none}}@media (min-width:1200px){.site-footer .company-info-wrapper .copyright{display:block}}.site-footer .company-info-wrapper br{display:none}@media (min-width:767px){.site-footer .company-info-wrapper br{display:block}}.site-footer .company-info-wrapper .social-icons{margin-bottom:1.375rem}.site-footer .company-info-wrapper .social-icons>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(1.25rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(1.25rem*var(--tw-space-x-reverse))}.site-footer .company-info-wrapper .social-icons{zoom:.9}.site-footer .company-info-wrapper .social-icons a{transition-duration:.3s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.site-footer .company-info-wrapper .social-icons a:hover{--tw-text-opacity:1;color:rgb(16 24 32/var(--tw-text-opacity))}.site-footer .primary-footer{display:grid;gap:1.875rem;justify-content:space-between;padding-bottom:1.5625rem;padding-top:1.5625rem}@media (min-width:767px){.site-footer .primary-footer{gap:3.75rem;grid-template-columns:max-content minmax(min-content,540px)}}@media (min-width:992px){.site-footer .primary-footer{grid-template-columns:max-content minmax(min-content,1140px)}}.site-footer .footer-primary-menu{display:grid;gap:1.875rem;grid-template-columns:repeat(1,minmax(0,1fr));grid-template-columns:repeat(1,1fr);grid-template-rows:auto;justify-content:space-between;margin:0;padding:0}@media (min-width:610px){.site-footer .footer-primary-menu{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(2,auto)}}@media (min-width:992px){.site-footer .footer-primary-menu{grid-template-columns:repeat(5,auto);grid-template-rows:auto}}.site-footer .footer-primary-menu>li>a{--tw-text-opacity:1;color:rgb(16 24 32/var(--tw-text-opacity));display:block;font-size:.75rem;font-weight:700;margin-bottom:.625rem}.site-footer .footer-primary-menu .sub-menu{font-size:14px;margin:0}@media (min-width:992px){.site-footer .footer-primary-menu .sub-menu{margin-top:.375rem}}.site-footer .footer-primary-menu .sub-menu li{line-height:1.25rem;margin-bottom:.4375rem}@media (min-width:992px){.site-footer .footer-primary-menu .sub-menu li{margin-bottom:.3125rem}}.site-footer .footer-primary-menu .sub-menu li:last-child{margin-bottom:0}.site-footer .footer-primary-menu .sub-menu li a{--tw-text-opacity:1;color:rgb(16 24 32/var(--tw-text-opacity));font-weight:400;letter-spacing:.5px}.site-footer .footer-primary-menu .sub-menu li a:hover{--tw-border-opacity:1;border-bottom-width:1px;border-color:rgb(16 24 32/var(--tw-border-opacity))}.site-footer .footer-bottom-menu{display:flex;flex-wrap:wrap;margin-bottom:0;padding:0}@media (min-width:767px){.site-footer .footer-bottom-menu{display:inline-flex;line-height:1rem}}.site-footer .footer-bottom-menu li{width:100%}@media (min-width:767px){.site-footer .footer-bottom-menu li{margin-right:.625rem;width:auto}}@media (min-width:992px){.site-footer .footer-bottom-menu li{margin-right:1.75rem}}.site-footer .footer-bottom-menu li a{--tw-text-opacity:1;color:rgb(16 24 32/var(--tw-text-opacity));font-size:.75rem;font-weight:700;letter-spacing:.5px}.site-footer .footer-bottom-menu li a:hover{--tw-border-opacity:1;border-bottom-width:1px;border-color:rgb(16 24 32/var(--tw-border-opacity))}.landing-page .site-footer{padding-bottom:0;padding-top:0}.gallery-caption figcaption,.wp-caption-text{font-size:.875rem}ul.checkmark-bullets{list-style:none!important;padding-left:2.5rem}ul.checkmark-bullets li{position:relative}ul.checkmark-bullets li:not(:last-child){margin-bottom:.3125rem}ul.checkmark-bullets li:before{background-repeat:no-repeat;background-size:contain;content:"";display:block;float:left;height:14px;left:-38px;position:absolute;top:8px;width:19px}ul.checkmark-bullets--blue li:before{background-image:url(https://cdn.invicti.com/app/uploads/2024/01/29150338/checkmark-blue.svg)}ul.general-list>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.9375rem*var(--tw-space-y-reverse));margin-top:calc(.9375rem*(1 - var(--tw-space-y-reverse)))}ul.general-list{padding-left:31px}ul.general-list li{position:relative}.fas-li{--tw-bg-opacity:1;background-color:rgb(89 23 105/var(--tw-bg-opacity));border-radius:9999px;height:.5rem;left:-1.5em;position:absolute;text-align:center;top:9px;width:.5rem}.main ul{list-style-position:outside;list-style-type:disc;overflow-wrap:break-word;padding-left:2.5rem}.main ul ul{list-style-type:circle}.main ul ul ul{list-style-type:square}.main ol{list-style-position:outside;list-style-type:decimal;overflow-wrap:break-word;padding-left:2.5rem}.main ol ol{list-style:lower-alpha}.main ol ol ol{list-style-type:lower-roman}.main ol,.main ul{overflow-wrap:break-word}.main ol ol,.main ol ul,.main ul ol,.main ul ul{margin-top:1rem}.main ol li,.main ul li{margin-bottom:.5rem}.cookie-notice{--tw-border-opacity:1;--tw-bg-opacity:1;align-items:center;background-color:rgb(251 251 251/var(--tw-bg-opacity));border-color:rgb(235 235 235/var(--tw-border-opacity));border-top-width:1px;bottom:0;display:none;font-size:.75rem;justify-content:center;padding:.9375rem;position:fixed;width:100%;z-index:999}@media (min-width:767px){.cookie-notice{font-size:.875rem}}.cookie-notice.active{display:flex}.cookie-notice p a{--tw-text-opacity:1;color:rgb(44 81 189/var(--tw-text-opacity));font-family:Circular XX,Helvetica Neue,Helvetica,Arial,sans-serif;font-weight:500}.cookie-notice p a:hover{--tw-text-opacity:1;color:rgb(60 16 83/var(--tw-text-opacity))}.cookie-notice .cookie-notice-button{--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(122 37 130/var(--tw-bg-opacity));border-radius:.25rem;color:rgb(255 255 255/var(--tw-text-opacity));cursor:pointer;font-weight:700;margin-bottom:-.625rem;margin-left:.625rem;margin-top:-.625rem;padding:.4375rem 1.5625rem}.cookie-notice .cookie-notice-button:hover{--tw-bg-opacity:1;background-color:rgb(89 23 105/var(--tw-bg-opacity))}.entry-content>*{font-size:1.125rem}.entry-content>h1,.entry-content>h2,.entry-content>h3,.entry-content>h4,.entry-content>h5,.entry-content>h6{font-family:Circular XX,Helvetica Neue,Helvetica,Arial,sans-serif;font-weight:500}.entry-content>h1:first-child,.entry-content>h2:first-child,.entry-content>h3:first-child,.entry-content>h4:first-child,.entry-content>h5:first-child,.entry-content>h6:first-child{margin-top:0}.entry-content>h1,.entry-content>h2{font-weight:700;margin-bottom:1.875rem;margin-top:3.125rem}.entry-content>h3,.entry-content>h4,.entry-content>h5,.entry-content>h6{margin-bottom:1.125rem;margin-top:2rem}.entry-content>h1{font-size:1.75rem}@media (min-width:767px){.entry-content>h1{font-size:2.25rem}}.entry-content>h2{font-size:1.625rem}@media (min-width:767px){.entry-content>h2{font-size:2rem}}.entry-content>h3{font-size:1.5rem}@media (min-width:767px){.entry-content>h3{font-size:1.75rem}}.entry-content>h4{font-size:1.375rem}.entry-content>h5{font-size:1.25rem}.entry-content>h6{font-size:1.125rem}.entry-content>address,.entry-content>dl,.entry-content>figure,.entry-content>iframe,.entry-content>img,.entry-content>p,.entry-content>pre,.entry-content>table{margin-bottom:1.5625rem}.entry-content>figure,.entry-content>iframe,.entry-content>img{margin-bottom:3rem;margin-top:3rem}.entry-content>blockquote.wp-block-quote{margin-bottom:3.125rem;margin-top:3.125rem}.entry-content>.wp-block-quote.is-style-default{--tw-border-opacity:1;border-color:rgb(204 139 219/var(--tw-border-opacity))}.entry-content>.wp-block-table{margin-top:2rem}.entry-content a{font-family:Circular XX,Helvetica Neue,Helvetica,Arial,sans-serif;font-weight:500}.entry-content code{--tw-bg-opacity:1;--tw-text-opacity:1;color:rgb(215 56 41/var(--tw-text-opacity));font-size:90%;padding:.125rem .25rem;white-space:pre-wrap}.entry-content code,.entry-content pre{background-color:rgb(250 249 247/var(--tw-bg-opacity));border-radius:.25rem}.entry-content pre{--tw-border-opacity:1;--tw-bg-opacity:1;--tw-text-opacity:1;border-color:rgb(177 177 178/var(--tw-border-opacity));border-width:1px;color:rgb(16 24 32/var(--tw-text-opacity));font-size:13px;line-height:1.42857143;padding:.625rem}.entry-content pre>code{--tw-text-opacity:1;background-color:transparent;border-style:none;color:rgb(16 24 32/var(--tw-text-opacity));font-size:14px;margin:0;padding:0;white-space:pre-wrap}.entry-content>p a{font-family:Circular XX,Helvetica Neue,Helvetica,Arial,sans-serif;font-weight:500}.entry-content .wp-block-table thead{border-style:none}.entry-content .wp-block-table thead th{border-bottom-width:2px}.entry-content .wp-block-table tbody td,.entry-content .wp-block-table thead th{--tw-border-opacity:1;border-color:rgb(99 101 105/var(--tw-border-opacity))}.entry-content .image-block,.entry-content .wp-block-image{margin-bottom:3rem;margin-top:3rem}.entry-content .image-block img,.entry-content .wp-block-image img{margin-bottom:0;margin-top:0}.archive-description{margin-bottom:1.5rem}.page-template-template-sidebar-right .site-main{display:grid;gap:5rem;grid-template-columns:repeat(1,minmax(0,1fr))}@media (min-width:992px){.page-template-template-sidebar-right .site-main{grid-template-columns:repeat(3,minmax(0,1fr))}.page-template-template-sidebar-right .content-container{grid-column:span 2/span 2}} </style><script type='application/ld+json'>{"@context":"https:\/\/schema.org","@type":"FAQPage","mainEntity":[{"@type":"Question","name":"What is the High Orbit Ion Cannon?","acceptedAnswer":{"@type":"Answer","text":"<p>The High Orbit Ion Cannon is a denial-of-service attack application designed by the hacktivist group Anonymous. The tool works by flooding the target website with HTTP GET and POST requests. It was developed on the basis of an older tool called the Low Orbit Ion Cannon.<br \/>\n&nbsp;<br \/>\n<a href=\"https:\/\/www.invicti.com\/learn\/low-orbit-ion-cannon-loic\/\">Learn more about the Low Orbit Ion Cannon \u2013 the predecessor of the High Orbit Ion Cannon<\/a><\/p>\n"}},{"@type":"Question","name":"How dangerous is the High Orbit Ion Cannon?","acceptedAnswer":{"@type":"Answer","text":"<p>The High Orbit Ion Cannon was designed by hacktivists with application-layer attacks in mind and can be used for this purpose by cybercriminals, but it can also serve as a stress-testing tool. Its impact depends on how it is used, by how many people at once, and with what intent \u2013 the HOIC application itself is only dangerous when used with malicious intent.<br \/>\n&nbsp;<br \/>\n<a href=\"https:\/\/www.invicti.com\/blog\/web-security\/6-application-layer-ddos-attacks-signals-and-indicators\/\">Find out more about different application-layer attacks<\/a><\/p>\n"}},{"@type":"Question","name":"How to mitigate HOIC attacks?","acceptedAnswer":{"@type":"Answer","text":"<p>Attacks conducted using the HOIC tool are simple floods of HTTP GET and HTTP POST requests. They do not exploit any vulnerabilities, so typical DoS\/DDoS protection mechanisms offered by hosting providers and load balancers are your best hope for mitigation. However, note that event-based servers such as Nginx are less sensitive to the High Orbit Ion Cannon than thread-based servers like Apache, which are also vulnerable to other application-layer attacks such as Slowloris and R.U.D.Y.<br \/>\n&nbsp;<br \/>\n<a href=\"https:\/\/www.invicti.com\/learn\/slowloris-attack\/\">Read about the Slowloris attack, which affects thread-based web servers<\/a><\/p>\n"}}]}</script> <!-- Start Mutiny Code --> <script type="text/javascript" nonce="wo123jejr234982dfn"> (function(){var a=window.mutiny=window.mutiny||{}; if(!window.mutiny.client){a.client={_queue:{}}; var b=["identify","trackConversion"]; var c=[].concat(b,["defaultOptOut","optOut","optIn"]); var d=function factory(c){return function(){for(var d=arguments.length,e=new Array(d),f=0; f<d;f++){e[f]=arguments[f]}a.client._queue[c]=a.client._queue[c]||[]; if(b.includes(c)){return new Promise(function(b,d){a.client._queue[c].push({args:e,resolve:b,reject:d}); setTimeout(d,500)})}else{a.client._queue[c].push({args:e})}}};c.forEach(function(b){a.client[b]=d(b)})}})(); </script> <script data-cfasync="false" src="https://client-registry.mutinycdn.com/personalize/client/55f18a1f30252c8e.js"></script> <!-- End Mutiny Code --> <!-- TrenDemon Code --> <script type="text/javascript" id="trd-flame-load"> TRD_ACC_ID = 2632; (function (w, d) { function go() { var trdti = setInterval(function () { if (document.readyState === "complete") { var bi = document.createElement("script"); bi.type = "text/javascript"; bi.async = true; bi.src = "https://assets.trendemon.com/tag/trends.min.js"; bi.id = "trdflame"; var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bi, s); clearInterval(trdti); } }, 500); }; go(); }(window, document)); </script> <!-- End of TrenDemon Code --> <style id="page-dynamic-css">.splide__container{box-sizing:border-box;position:relative}.splide__list{-webkit-backface-visibility:hidden;backface-visibility:hidden;display:-ms-flexbox;display:flex;height:100%;margin:0!important;padding:0!important;transform-style:preserve-3d}.splide.is-initialized:not(.is-active) .splide__list{display:block}.splide__pagination{-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-pack:center;justify-content:center;margin:0;pointer-events:none}.splide__pagination li{display:inline-block;line-height:1;list-style-type:none;margin:0;pointer-events:auto}.splide__progress__bar{width:0}.splide{outline:0;position:relative;visibility:hidden}.splide.is-initialized,.splide.is-rendered{visibility:visible}.splide__slide{-webkit-backface-visibility:hidden;backface-visibility:hidden;box-sizing:border-box;-ms-flex-negative:0;flex-shrink:0;list-style-type:none!important;margin:0;outline:0;position:relative}.splide__slide img{vertical-align:bottom}.splide__slider{position:relative}.splide__spinner{animation:splide-loading 1s linear infinite;border:2px solid #999;border-left-color:transparent;border-radius:50%;bottom:0;contain:strict;display:inline-block;height:20px;left:0;margin:auto;position:absolute;right:0;top:0;width:20px}.splide__track{overflow:hidden;position:relative;z-index:0}@keyframes splide-loading{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.splide--draggable>.splide__slider>.splide__track,.splide--draggable>.splide__track{-webkit-user-select:none;-ms-user-select:none;user-select:none}.splide--fade>.splide__slider>.splide__track>.splide__list,.splide--fade>.splide__track>.splide__list{display:block}.splide--fade>.splide__slider>.splide__track>.splide__list>.splide__slide,.splide--fade>.splide__track>.splide__list>.splide__slide{left:0;opacity:0;position:absolute;top:0;z-index:0}.splide--fade>.splide__slider>.splide__track>.splide__list>.splide__slide.is-active,.splide--fade>.splide__track>.splide__list>.splide__slide.is-active{opacity:1;position:relative;z-index:1}.splide--rtl{direction:rtl}.splide--ttb.is-active>.splide__slider>.splide__track>.splide__list,.splide--ttb.is-active>.splide__track>.splide__list{display:block}.splide__arrow{-ms-flex-align:center;align-items:center;background:#ccc;border:0;border-radius:50%;cursor:pointer;display:-ms-flexbox;display:flex;height:2em;-ms-flex-pack:center;justify-content:center;opacity:.7;padding:0;position:absolute;top:50%;transform:translateY(-50%);width:2em;z-index:1}.splide__arrow svg{fill:#000;height:1.2em;width:1.2em}.splide__arrow:hover{opacity:.9}.splide__arrow:focus{outline:0}.splide__arrow--prev{left:1em}.splide__arrow--prev svg{transform:scaleX(-1)}.splide__arrow--next{right:1em}.splide__pagination{bottom:.5em;left:0;padding:0 1em;position:absolute;right:0;z-index:1}.splide__pagination__page{background:#ccc;border:0;border-radius:50%;display:inline-block;height:8px;margin:3px;opacity:.7;padding:0;transition:transform .2s linear;width:8px}.splide__pagination__page.is-active{background:#fff;transform:scale(1.4)}.splide__pagination__page:hover{cursor:pointer;opacity:.9}.splide__pagination__page:focus{outline:0}.splide__progress__bar{background:#ccc;height:3px}.splide--nav>.splide__slider>.splide__track>.splide__list>.splide__slide,.splide--nav>.splide__track>.splide__list>.splide__slide{border:3px solid transparent;cursor:pointer}.splide--nav>.splide__slider>.splide__track>.splide__list>.splide__slide.is-active,.splide--nav>.splide__track>.splide__list>.splide__slide.is-active{border:3px solid #000}.splide--nav>.splide__slider>.splide__track>.splide__list>.splide__slide:focus,.splide--nav>.splide__track>.splide__list>.splide__slide:focus{outline:0}.splide--rtl>.splide__arrows .splide__arrow--prev,.splide--rtl>.splide__slider>.splide__track>.splide__arrows .splide__arrow--prev,.splide--rtl>.splide__track>.splide__arrows .splide__arrow--prev{left:auto;right:1em}.splide--rtl>.splide__arrows .splide__arrow--prev svg,.splide--rtl>.splide__slider>.splide__track>.splide__arrows .splide__arrow--prev svg,.splide--rtl>.splide__track>.splide__arrows .splide__arrow--prev svg{transform:scaleX(1)}.splide--rtl>.splide__arrows .splide__arrow--next,.splide--rtl>.splide__slider>.splide__track>.splide__arrows .splide__arrow--next,.splide--rtl>.splide__track>.splide__arrows .splide__arrow--next{left:1em;right:auto}.splide--rtl>.splide__arrows .splide__arrow--next svg,.splide--rtl>.splide__slider>.splide__track>.splide__arrows .splide__arrow--next svg,.splide--rtl>.splide__track>.splide__arrows .splide__arrow--next svg{transform:scaleX(-1)}.splide--ttb>.splide__arrows .splide__arrow,.splide--ttb>.splide__slider>.splide__track>.splide__arrows .splide__arrow,.splide--ttb>.splide__track>.splide__arrows .splide__arrow{left:50%;transform:translate(-50%)}.splide--ttb>.splide__arrows .splide__arrow--prev,.splide--ttb>.splide__slider>.splide__track>.splide__arrows .splide__arrow--prev,.splide--ttb>.splide__track>.splide__arrows .splide__arrow--prev{top:1em}.splide--ttb>.splide__arrows .splide__arrow--prev svg,.splide--ttb>.splide__slider>.splide__track>.splide__arrows .splide__arrow--prev svg,.splide--ttb>.splide__track>.splide__arrows .splide__arrow--prev svg{transform:rotate(-90deg)}.splide--ttb>.splide__arrows .splide__arrow--next,.splide--ttb>.splide__slider>.splide__track>.splide__arrows .splide__arrow--next,.splide--ttb>.splide__track>.splide__arrows .splide__arrow--next{bottom:1em;top:auto}.splide--ttb>.splide__arrows .splide__arrow--next svg,.splide--ttb>.splide__slider>.splide__track>.splide__arrows .splide__arrow--next svg,.splide--ttb>.splide__track>.splide__arrows .splide__arrow--next svg{transform:rotate(90deg)}.splide--ttb>.splide__pagination,.splide--ttb>.splide__slider>.splide__pagination{bottom:0;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;left:auto;padding:1em 0;right:.5em;top:0}.invicti-block.accordion{align-items:center;display:flex;flex-direction:column}.invicti-block.accordion .accordion-section{width:100%}.invicti-block.accordion.style-one .accordion-heading{align-items:baseline;cursor:pointer;display:flex;justify-content:space-between;margin:0;padding-bottom:1.25rem;padding-top:1.25rem}.invicti-block.accordion.style-one .accordion-heading:hover{--tw-text-opacity:1;color:rgb(89 23 105/var(--tw-text-opacity))}.invicti-block.accordion.style-one .accordion-heading{font-family:revert;font-size:revert;font-weight:revert;line-height:revert}.invicti-block.accordion.style-one .accordion-heading:after{background-image:url(/app/themes/netsparker/public/images/icons/purple-plus.svg);background-position:50%;background-repeat:no-repeat;background-size:contain;content:"";display:block;height:1em;margin-left:1.25rem;min-width:1em;position:relative;top:.1875em;width:1em}.invicti-block.accordion.style-one .accordion-text-holder{height:0;overflow:hidden;transition-duration:.3s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-timing-function:cubic-bezier(0,0,.2,1)}.invicti-block.accordion.style-one .accordion-text{--tw-border-opacity:1;border-bottom-width:1px;border-color:rgb(99 101 105/var(--tw-border-opacity));margin-bottom:1.25rem;padding:.3125rem 0 2.5rem}@media (min-width:767px){.invicti-block.accordion.style-one .accordion-text{padding-left:2.5rem;padding-right:2.5rem}}.invicti-block.accordion.style-one .accordion-text a{--tw-text-opacity:1;color:rgb(44 81 189/var(--tw-text-opacity))}.invicti-block.accordion.style-one .accordion-text a:hover{--tw-text-opacity:1;color:rgb(60 16 83/var(--tw-text-opacity))}.invicti-block.accordion.style-one .active.accordion-section .accordion-heading{--tw-text-opacity:1;color:rgb(89 23 105/var(--tw-text-opacity))}.invicti-block.accordion.style-one .active.accordion-section .accordion-heading:after{background-image:url(/app/themes/netsparker/public/images/icons/purple-minus.svg)}.invicti-block.accordion.style-one .active.accordion-section .accordion-text-holder{height:var(--accordion-height)}#accordion_6742882e0bd73{font-family:var(--body-font);}.navigation-header{align-items:center;display:flex;justify-content:space-between;min-height:36px}.navigation-header .logo{transition-duration:.2s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);width:79px}@media (min-width:1200px){.navigation-header .logo{width:6.25rem}}.navigation-header .mobile-logo-icon{display:none;height:2rem;margin-left:auto;margin-right:auto}.navigation-header .top-slogan{--tw-text-opacity:1;color:rgb(16 24 32/var(--tw-text-opacity));display:block;font-family:Circular XX,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:7.5px;font-weight:300;position:absolute;transition-delay:.2s;transition-duration:.2s;transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-timing-function:linear}@media (min-width:1200px){.navigation-header .top-slogan{font-size:9.4px}}.navigation-header .sticky-header-btn{--tw-translate-x:-50%;--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(89 23 105/var(--tw-bg-opacity));border-radius:.25rem;color:rgb(250 249 247/var(--tw-text-opacity));display:none;font-family:Circular XX,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:1rem;font-weight:700;left:50%;line-height:1.25rem;padding:.375rem 1.125rem;position:absolute;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@media (min-width:767px){.navigation-header .sticky-header-btn{padding-left:2.5rem;padding-right:2.5rem}}.navigation-header .navbar-toggle{cursor:pointer;margin-bottom:0;outline:2px solid transparent;outline-offset:2px;padding:0}@media (min-width:767px){.navigation-header .navbar-toggle{margin-right:.625rem}}@media (min-width:992px){.navigation-header .navbar-toggle{display:none}}.navigation-header .navbar-toggle-close{display:none}.primary-menu-wrapper{height:0;overflow-y:auto;transition-duration:.2s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}@media (min-width:992px){.primary-menu-wrapper{display:inline-block;height:auto;margin-left:auto;margin-right:0}}.primary-menu-wrapper .btn{--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity));border-radius:.25rem;color:rgb(16 24 32/var(--tw-text-opacity));display:none;font-size:1rem;font-weight:700;line-height:1.25rem;padding-bottom:.9375rem;padding-top:.9375rem;position:relative;width:100%;z-index:1}.primary-menu-wrapper .primary-menu{display:flex;flex-direction:column;margin-bottom:0;margin-top:1.25rem;width:100%}.primary-menu-wrapper .primary-menu>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-bottom-width:calc(1px*var(--tw-divide-y-reverse));border-color:rgb(255 255 255/.2);border-top-width:calc(1px*(1 - var(--tw-divide-y-reverse)))}@media (min-width:992px){.primary-menu-wrapper .primary-menu{display:inline-flex;flex-direction:row;margin-top:0}.primary-menu-wrapper .primary-menu>:not([hidden])~:not([hidden]){border-style:none}@media (min-width:992px){.primary-menu-wrapper .primary-menu{padding-left:0;padding-right:0}}}.primary-menu-wrapper .primary-menu li a{--tw-text-opacity:1;align-items:center;color:rgb(250 249 247/var(--tw-text-opacity));display:flex;font-size:42px;font-weight:300;justify-content:space-between;padding:1.25rem 0;transition-duration:.2s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}@media (min-width:992px){.primary-menu-wrapper .primary-menu li a{--tw-text-opacity:1;color:rgb(16 24 32/var(--tw-text-opacity));font-size:.9375rem;font-weight:500;line-height:1.25rem;padding-bottom:1.25rem;padding-left:14px;padding-right:14px;padding-top:1.25rem}}@media (min-width:1200px){.primary-menu-wrapper .primary-menu li a{font-size:1.125rem;padding-left:1.125rem;padding-right:1.125rem}}.primary-menu-wrapper .primary-menu li.partners-custom{position:relative}.primary-menu-wrapper .primary-menu li.partners-custom .sub-menu.level--2{right:100%;top:-.4375rem}.primary-menu-wrapper .primary-menu .menu-item-has-children{backface-visibility:hidden;-webkit-backface-visibility:hidden}.primary-menu-wrapper .primary-menu .menu-item-has-children>a:after{background-size:cover;display:block;height:9px;position:relative;transform-origin:center;transition-duration:.1s;transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);width:16px}@media (min-width:992px){.primary-menu-wrapper .primary-menu .menu-item-has-children>a:after{background-size:contain;height:.75rem;width:.75rem}}.primary-menu-wrapper .primary-menu .menu-item-has-children>a:after{backface-visibility:hidden;-webkit-backface-visibility:hidden;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='11' height='7' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m10.72 1.637-4.53 4.53s-.008.007-.008.015a.978.978 0 0 1-.682.278.978.978 0 0 1-.682-.278s-.007-.008-.007-.015L.28 1.637A.96.96 0 0 1 .957 0c.255 0 .499.1.679.28L5.5 4.144 9.363.28A.96.96 0 0 1 11 .958a.96.96 0 0 1-.28.679Z' fill='%23FAF9F7'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;content:"";-webkit-transform-style:preserve-3d}@media (min-width:992px){.primary-menu-wrapper .primary-menu .menu-item-has-children>a:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='11' height='7' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m10.72 1.637-4.53 4.53s-.008.007-.008.015a.978.978 0 0 1-.682.278.978.978 0 0 1-.682-.278s-.007-.008-.007-.015L.28 1.637A.96.96 0 0 1 .957 0c.255 0 .499.1.679.28L5.5 4.144 9.363.28A.96.96 0 0 1 11 .958a.96.96 0 0 1-.28.679Z' fill='%23101820'/%3E%3C/svg%3E");margin-left:.375rem;margin-right:0;top:.0625rem}}.primary-menu-wrapper .primary-menu .menu-item-has-children .active-sub-menu>a:after{--tw-rotate:180deg;position:relative;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}@media (min-width:992px){@media (min-width:992px){.primary-menu-wrapper .primary-menu .menu-item-has-children:hover>a{--tw-text-opacity:1;color:rgb(122 37 130/var(--tw-text-opacity))}}.primary-menu-wrapper .primary-menu .menu-item-has-children:hover>a:after{--tw-rotate:180deg;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='11' height='7' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m10.72 1.637-4.53 4.53s-.008.007-.008.015a.978.978 0 0 1-.682.278.978.978 0 0 1-.682-.278s-.007-.008-.007-.015L.28 1.637A.96.96 0 0 1 .957 0c.255 0 .499.1.679.28L5.5 4.144 9.363.28A.96.96 0 0 1 11 .958a.96.96 0 0 1-.28.679Z' fill='%237A2582'/%3E%3C/svg%3E");transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.primary-menu-wrapper .primary-menu .menu-item-has-children:hover>.sub-menu{display:block}@media (min-width:992px){.primary-menu-wrapper .primary-menu .menu-item-has-children:hover.has-3rd-level>.sub-menu{display:flex;left:100%;padding-bottom:5px;top:0}.primary-menu-wrapper .primary-menu .menu-item-has-children:hover.has-3rd-level>.sub-menu li a{padding-bottom:.125rem;padding-top:.125rem}}.primary-menu-wrapper .primary-menu .menu-item-has-children:hover.has-3rd-level:hover>a:after{--tw-rotate:-90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.primary-menu-wrapper .primary-menu .menu-item-has-children:hover.has-3rd-level .sub-menu>li>a:after{display:none}}.primary-menu-wrapper .primary-menu .menu-item-has-children.has-3rd-level .sub-menu>li>a:after{display:none}.primary-menu-wrapper .primary-menu .menu-item-has-children.has-3rd-level>.sub-menu .sub-menu{display:block;opacity:.8}@media (min-width:992px){.primary-menu-wrapper .primary-menu .menu-item-has-children.has-3rd-level>.sub-menu .sub-menu{opacity:1}}.primary-menu-wrapper .primary-menu .menu-item-has-children.has-3rd-level>.sub-menu li.menu-item-has-children{padding-left:2.5rem}@media (min-width:992px){.primary-menu-wrapper .primary-menu .menu-item-has-children.has-3rd-level>.sub-menu li.menu-item-has-children{padding-left:0}.primary-menu-wrapper .primary-menu li.menu-item-18>.sub-menu{width:200px}.primary-menu-wrapper .primary-menu li.menu-item-14>.sub-menu{width:260px}}.primary-menu-wrapper .primary-menu .sub-menu{display:none}@media (min-width:992px){.primary-menu-wrapper .primary-menu .sub-menu{--tw-bg-opacity:1;--tw-shadow:0 0.25rem 0.375rem -0.0625rem rgba(0,0,0,0.1),0 0.125rem 0.25rem -0.0625rem rgba(0,0,0,0.06);--tw-shadow-colored:0 0.25rem 0.375rem -0.0625rem var(--tw-shadow-color),0 0.125rem 0.25rem -0.0625rem var(--tw-shadow-color);background-color:rgb(250 249 247/var(--tw-bg-opacity));border-radius:.25rem;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);padding-bottom:.5rem;padding-top:.5rem;position:absolute;width:auto;z-index:50}.primary-menu-wrapper .primary-menu .sub-menu li.menu-col{width:max-content}}.primary-menu-wrapper .primary-menu .sub-menu li.menu-col>a{--tw-text-opacity:1;color:rgb(122 37 130/var(--tw-text-opacity));font-family:Circular XX,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:.75rem;font-weight:700;margin-bottom:-.9375rem;margin-left:-.9375rem;margin-right:-.9375rem;text-transform:uppercase}@media (min-width:992px){.primary-menu-wrapper .primary-menu .sub-menu li.menu-col>a{font-weight:700;margin-left:0}}.primary-menu-wrapper .primary-menu .sub-menu li.menu-col .sub-menu{margin-left:-.9375rem;margin-right:-.9375rem}@media (min-width:992px){.primary-menu-wrapper .primary-menu .sub-menu li.menu-col .sub-menu{--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);display:block;margin-bottom:0;margin-left:0;margin-right:0;padding-left:0;padding-right:0;position:static}}.primary-menu-wrapper .primary-menu .sub-menu li a{font-weight:500;line-height:1.75rem;padding-bottom:.4375rem;padding-top:.4375rem}@media (min-width:992px){.primary-menu-wrapper .primary-menu .sub-menu li a{padding-bottom:.3125rem;padding-top:.3125rem}.primary-menu-wrapper .primary-menu .sub-menu li a:hover{--tw-text-opacity:1;color:rgb(122 37 130/var(--tw-text-opacity))}}.primary-menu-wrapper .primary-menu .sub-menu li.new-promotion a:after{background:#05d5ff;border-radius:2px;color:#101820;content:"NEW";font-size:12px;font-weight:700;line-height:1;margin-left:5px;padding:2px 3px}@media (max-width:991px){.primary-menu-wrapper .primary-menu .sub-menu li.new-promotion a{display:inline-block}}.mobile-menu-active{overflow:hidden}.mobile-menu-active .site-header{background:radial-gradient(81.5% 67% at 39% 50%,#431658 0,#3f1353 25%,#180427 100%)}.mobile-menu-active .site-header .btn-get-demo{--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(250 249 247/var(--tw-bg-opacity));color:rgb(16 24 32/var(--tw-text-opacity));transition-duration:.2s}.mobile-menu-active .site-header .btn-get-demo:hover{--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(122 37 130/var(--tw-bg-opacity));color:rgb(250 249 247/var(--tw-text-opacity))}.mobile-menu-active .site-header .navigation-header{min-height:50px}.mobile-menu-active .site-header .navigation-header .logo.mobile-logo{display:block}.mobile-menu-active .site-header .navigation-header .logo.sticky-logo,.mobile-menu-active .site-header .navigation-header .logo.top-logo,.mobile-menu-active .site-header .navigation-header .mobile-logo-icon{display:none}.mobile-menu-active .site-header .navigation-header .navbar-toggle-close path[fill],.mobile-menu-active .site-header .navigation-header .navbar-toggle-open path[fill]{fill:#faf9f7}.mobile-menu-active .site-header .navigation-header .top-slogan{--tw-text-opacity:1;color:rgb(250 249 247/var(--tw-text-opacity))}.mobile-menu-active .site-header .navigation-header .navbar-toggle-open,.mobile-menu-active .site-header .navigation-header .sticky-header-btn{display:none}.mobile-menu-active .site-header .navigation-header .navbar-toggle-close{display:block}.mobile-menu-active .site-header .primary-menu-wrapper{height:100vh;padding-top:3.125rem;position:relative}@media (min-width:992px){.mobile-menu-active .site-header .primary-menu-wrapper{height:auto}}.mobile-menu-active .site-header .primary-menu-wrapper:after{height:150px;left:0;opacity:.2;position:absolute;top:0;width:100%}@media (min-width:767px){.mobile-menu-active .site-header .primary-menu-wrapper:after{display:none}}.mobile-menu-active .site-header .primary-menu-wrapper:after{background:radial-gradient(50% 50% at 50% 50%,#c554d0 0,rgba(63,20,83,0) 100%);content:""}.mobile-menu-active .site-header .primary-menu-wrapper .btn{display:block}@media (min-width:767px){.mobile-menu-active .site-header .primary-menu-wrapper .btn{display:none}}.mobile-menu-active .site-header .primary-menu-wrapper .primary-menu li.menu-item-has-children.active-sub-menu>a{--tw-text-opacity:1;color:rgb(250 249 247/var(--tw-text-opacity))}.mobile-menu-active .site-header .primary-menu-wrapper .primary-menu li.menu-item-has-children.active-sub-menu>a:after{--tw-rotate:180deg;position:relative;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.mobile-menu-active .site-header .primary-menu-wrapper .primary-menu li.menu-item-has-children.active-sub-menu>.sub-menu{display:block;padding-left:.9375rem}.mobile-menu-active .site-header .primary-menu-wrapper .primary-menu li.menu-item-has-children.active-sub-menu>.sub-menu a{font-size:1.125rem;font-weight:700}.mobile-menu-active .site-header .primary-menu-wrapper .primary-menu li.menu-item-has-children.active-sub-menu>.sub-menu .sub-menu{padding-left:.9375rem}.mobile-menu-active .site-header .primary-menu-wrapper .primary-menu li.menu-item-has-children.active-sub-menu>.sub-menu .sub-menu li{padding-left:0}.mobile-menu-active .site-header .primary-menu-wrapper .primary-menu li.menu-item-has-children.active-sub-menu>.sub-menu .sub-menu li>a{padding-left:.9375rem}.mobile-menu-active .site-header .primary-menu-wrapper .primary-menu li.menu-item-has-children.active-sub-menu>.sub-menu .sub-menu li.menu-col>a{--tw-text-opacity:1;color:rgb(204 139 219/var(--tw-text-opacity))}.mobile-menu-active .site-header .primary-menu-wrapper .primary-menu li.menu-item-has-children.active-sub-menu>.sub-menu .sub-menu li>.sub-menu{padding-left:0;padding-top:.9375rem}.sticky-header .site-header .logo{display:none}@media (min-width:767px){.sticky-header .site-header .logo{display:block}.sticky-header .site-header .logo.mobile-logo{display:none}}.sticky-header .site-header .top-slogan{opacity:0;transition-delay:0ms;transition-duration:75ms;transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1)}.sticky-header .site-header .mobile-logo-icon{display:block}@media (min-width:767px){.sticky-header .site-header .mobile-logo-icon{display:none}}.sticky-header .site-header .sticky-header-btn{display:block;text-align:center}@media (min-width:767px){.sticky-header .site-header .sticky-header-btn{display:none}}.single-hub .site-header{--tw-border-opacity:1;border-bottom-width:1px;border-color:rgb(250 249 247/var(--tw-border-opacity))}.single-hub .content{overflow:hidden;padding-bottom:5rem;padding-top:5rem}@media (min-width:767px){.single-hub .content{padding-bottom:3.125rem;padding-top:2.125rem}}.single-hub .content aside{--tw-bg-opacity:1;background-color:rgb(248 248 248/var(--tw-bg-opacity));left:0;position:absolute;right:0;top:3.5rem;z-index:20}@media (min-width:767px){.single-hub .content aside{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity));min-width:220px;padding-left:0;padding-right:0;position:relative;top:0}}@media (min-width:992px){.single-hub .content aside{min-width:250px}}@media (min-width:1200px){.single-hub .content aside{min-width:337px}}.single-hub .content aside.active{--tw-shadow:0px 4px 10px rgba(0,0,0,0.1);--tw-shadow-colored:0px 4px 10px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}@media (min-width:767px){.single-hub .content aside.active{--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}}.single-hub .content aside .sidebar-contents{--tw-border-opacity:1;--tw-bg-opacity:1;align-items:center;background-color:rgb(255 255 255/var(--tw-bg-opacity));border-bottom-width:1px;border-color:rgb(250 249 247/var(--tw-border-opacity));display:flex;font-family:Circular XX,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:1rem;font-weight:700;height:55px;padding-left:1.5625rem;padding-right:1.5625rem;position:relative}@media (min-width:767px){.single-hub .content aside .sidebar-contents{display:none}}.single-hub .content aside .sidebar-contents:before{--tw-translate-y:-50%;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='10' height='8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1.175.912 5 4.73 8.825.912 10 2.087l-5 5-5-5L1.175.912Z' fill='%23C2C9D1'/%3E%3Cpath d='M1.175.912 5 4.73 8.825.912 10 2.087l-5 5-5-5L1.175.912Z' fill='%23000' fill-opacity='.25'/%3E%3C/svg%3E");content:"";height:.4375rem;position:absolute;right:1.5625rem;top:50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));width:.625rem}.single-hub .content aside .sidebar-menu{display:none}@media (min-width:767px){.single-hub .content aside .sidebar-menu{display:block}}.single-hub .content aside .sidebar-menu.active{display:block}.single-hub .content aside .sidebar-button{display:none}@media (min-width:767px){.single-hub .content aside .sidebar-button{display:block}}.single-hub .content aside .menu{list-style-type:none;margin:0}.single-hub .content aside .menu>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;--tw-divide-opacity:1;border-bottom-width:calc(1px*var(--tw-divide-y-reverse));border-color:rgb(250 249 247/var(--tw-divide-opacity));border-top-width:calc(1px*(1 - var(--tw-divide-y-reverse)))}.single-hub .content aside .menu{border-bottom-width:0;padding-left:1.5625rem;padding-right:1.5625rem}@media (min-width:767px){.single-hub .content aside .menu{--tw-border-opacity:1;border-bottom-width:1px;border-color:rgb(250 249 247/var(--tw-border-opacity));padding-left:0;padding-right:0}}.single-hub .content aside .menu a[href="#"]{cursor:default}.single-hub .content aside .menu .menu-item-block{align-items:stretch;display:flex;justify-content:space-between}.single-hub .content aside .menu .menu-item-block>a{--tw-text-opacity:1;align-items:center;color:rgb(0 0 0/var(--tw-text-opacity));display:flex;flex-grow:1;font-size:16px;font-weight:500;padding-bottom:.5rem;padding-top:.5rem;position:relative;-webkit-text-decoration-line:none;text-decoration-line:none}.single-hub .content aside .menu .menu-item-block span.menu-expander{--tw-text-opacity:0.25;align-items:center;color:rgb(0 0 0/var(--tw-text-opacity));cursor:pointer;display:flex}.single-hub .content aside .menu .menu-item-block span.menu-expander:hover{--tw-text-opacity:0.6}.single-hub .content aside .menu>.menu-item{padding-bottom:.625rem;padding-top:.625rem}.single-hub .content aside .menu>.menu-item>a{--tw-text-opacity:1;align-items:center;color:rgb(0 0 0/var(--tw-text-opacity));display:flex;font-size:16px;font-weight:500;padding-bottom:.5rem;padding-top:.5rem;position:relative;-webkit-text-decoration-line:none;text-decoration-line:none}.single-hub .content aside .menu>.menu-item>.menu-item-block span.menu-expander{display:none}.single-hub .content aside .menu .menu-item.menu-item-has-children.active>.menu-item-block span.menu-expander{--tw-rotate:180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.single-hub .content aside .menu .menu-item.menu-item-has-children.active>.sub-menu{display:block;list-style-type:none;padding-bottom:10px;padding-left:0}.single-hub .content aside .menu .menu-item.menu-item-has-children.active>.sub-menu.level--2{padding-bottom:0}.single-hub .content aside .menu .menu-item .sub-menu{display:none;list-style-type:none;margin-bottom:0}.single-hub .content aside .menu .menu-item .sub-menu>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.625rem*var(--tw-space-y-reverse));margin-top:calc(.625rem*(1 - var(--tw-space-y-reverse)))}.single-hub .content aside .menu .menu-item .sub-menu{padding-bottom:1.25rem}.single-hub .content aside .menu .menu-item .sub-menu.level--1{display:block}.single-hub .content aside .menu .menu-item .sub-menu.level--2{margin-left:1.25rem;margin-top:.3125rem;padding-bottom:0}.single-hub .content aside .menu .menu-item .sub-menu li{border-style:none;line-height:1}.single-hub .content aside .menu .menu-item .sub-menu li.menu-item-has-children .menu-item-block>a{padding-bottom:.1875rem;padding-top:.1875rem}.single-hub .content aside .menu .menu-item .sub-menu li.current-menu-item>.menu-item-block a,.single-hub .content aside .menu .menu-item .sub-menu li.current-menu-item>.menu-item-block span.menu-expander,.single-hub .content aside .menu .menu-item .sub-menu li.current-menu-item>a{--tw-text-opacity:1;color:rgb(44 81 189/var(--tw-text-opacity))}.single-hub .content aside .menu .menu-item .sub-menu li.current-menu-item>.menu-item-block span.menu-expander{--tw-rotate:90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.single-hub .content aside .menu .menu-item .sub-menu li.current-menu-item>.sub-menu.level--2{display:block}.single-hub .content aside .menu .menu-item .sub-menu li a{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity));font-family:Circular XX,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:14px;font-weight:400;transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.single-hub .content aside .menu .menu-item .sub-menu li a:hover{--tw-text-opacity:1;color:rgb(89 23 105/var(--tw-text-opacity))}.single-hub .content aside .menu .menu-item .sub-menu li.current-menu-item,.single-hub .content aside .menu .menu-item .sub-menu li.menu-item-has-children{padding-bottom:0;padding-top:0}.single-hub .content aside .menu .menu-item .sub-menu li ul{padding-bottom:0}.single-hub .content .entry-content a{--tw-text-opacity:1;color:rgb(44 81 189/var(--tw-text-opacity));font-family:Circular XX,Helvetica Neue,Helvetica,Arial,sans-serif;font-weight:500}.single-hub .content .entry-content a:hover{--tw-text-opacity:1;color:rgb(60 16 83/var(--tw-text-opacity))}.single-hub .content main{max-width:100%;padding-left:0;padding-top:16px}@media (min-width:767px){.single-hub .content main{padding-left:50px}}@media (min-width:992px){.single-hub .content main{padding-left:90px}}@media (min-width:1200px){.single-hub .content main{padding-left:110px}}.single-hub .content main{word-break:break-word}@media (min-width:767px){.single-hub .content main{max-width:calc(100% - 220px)}}@media (min-width:992px){.single-hub .content main{max-width:calc(100% - 250px)}}@media (min-width:1200px){.single-hub .content main{max-width:calc(100% - 340px)}}@media (max-width:766px){.single-hub.invicti-bar-active .content aside{top:calc(3.5rem + 45px)}}</style></head> <body class="hub-template-default single single-hub postid-44743 single-format-standard high-orbit-ion-cannon-hoic sticky-header-enabled app-data index-data singular-data single-data single-hub-data single-hub-high-orbit-ion-cannon-hoic-data"> <!-- Google Tag Manager (noscript) snippet added by Site Kit --> <noscript> <iframe src="https://www.googletagmanager.com/ns.html?id=GTM-M7R7MXJ" height="0" width="0" style="display:none;visibility:hidden"></iframe> </noscript> <!-- End Google Tag Manager (noscript) snippet added by Site Kit --> <div class="sticky-header-observer"></div> <div class="invicti-bar" hidden> <div class="transition-message"> <a href="https://www.invicti.com/blog/news/netsparker-is-now-invicti-signaling-a-new-era-for-modern-appsec/" title="Netsparker is now Invicti">Netsparker is now Invicti</a> <button class="bar-close" title="Hello bar close button"> <svg width="30" height="30" viewBox="0 0 30 30" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M15 13.5858L1.41422 0L0 1.41422L13.5858 15L0.150757 28.435L1.56497 29.8492L15 16.4142L28.2843 29.6985L29.6985 28.2843L16.4142 15L29.8492 1.56497L28.435 0.150757L15 13.5858Z" fill="currentColor"></path> </svg> </button> </div> </div> <header class="site-header"> <div class="container"> <a href="https://www.invicti.com/get-demo/" class="btn-get-demo">Get a demo</a> <div class="navigation-header"> <a href="https://www.invicti.com/" rel="noreferrer"> <img class="logo-icon logo top-logo" src="https://cdn.invicti.com/branding/invicti-logo-black.svg" alt="Invicti Logo - The Largest Dynamic Application Security Solutions Provider In The World" width="100" height="28" /> <img class="logo-icon logo sticky-logo" src="https://cdn.invicti.com/branding/invicti-logo-black.svg" alt="Invicti Logo - The Largest Dynamic Application Security Solutions Provider In The World" width="100" height="28" /> <img class="logo-icon logo mobile-logo" src="https://cdn.invicti.com/branding/invicti-logo-bone.svg" alt="Invicti Logo - The Largest Dynamic Application Security Solutions Provider In The World" width="100" height="28" /> <span class="top-slogan">AppSec with Zero Noise</span> <img class="logo-icon mobile-logo-icon" src="https://cdn.invicti.com/branding/invicti-logo-icon.svg" alt="Invicti Logo - The Largest Dynamic Application Security Solutions Provider In The World" width="32" height="32" /> </a> <a href="https://www.invicti.com/get-demo/" class="sticky-header-btn">Get a demo</a> <svg class="navbar-toggle navbar-toggle-open" xmlns="http://www.w3.org/2000/svg" width="22" height="13" fill="none"><path fill="black" fill-rule="evenodd" d="M22 0H0v3h22V0Zm0 10H0v3h22v-3Z" clip-rule="evenodd"/></svg> <svg class="navbar-toggle navbar-toggle-close" xmlns="http://www.w3.org/2000/svg" width="17" height="17" fill="none"><path fill="black" fill-rule="evenodd" d="M9 6.718 2.282 0 .162 2.121 6.878 8.84.16 15.556l2.121 2.122L9 10.96l6.717 6.718 2.122-2.122L11.12 8.84 17.84 2.12 15.718 0 9 6.718Z" clip-rule="evenodd"/></svg> </div> <nav id="site-navigation" class="primary-menu-wrapper navigation-menu" aria-label="Main Navigation"> <a href="https://www.invicti.com/get-demo/" class="btn">Get a demo</a> <ul id="primary-menu" class="primary-menu"><li id="menu-item-14" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-14"><a href="#">Product</a> <ul class="sub-menu level--1"> <li id="menu-item-55161" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-55161"><a href="https://www.invicti.com/product/">Web Application Security</a></li> <li id="menu-item-15" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-15"><a href="https://www.invicti.com/product/api-security/">API Security</a></li> <li id="menu-item-16" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-16"><a href="https://www.invicti.com/features/">Features</a></li> <li id="menu-item-55889" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-55889"><a href="https://www.invicti.com/product/dast/">DAST</a></li> <li id="menu-item-55937" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-55937"><a href="https://www.invicti.com/product/sast/">SAST</a></li> </ul> </li> <li id="menu-item-18" class="solution menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-18"><a href="#">Why Us?</a> <ul class="sub-menu level--1"> <li id="menu-item-394" class="has-3rd-level menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-394"><a href="#">Solutions</a> <ul class="sub-menu level--2"> <li id="menu-item-48" class="menu-col menu-col1 menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-48"><a href="#">Industries</a> <ul class="sub-menu level--3"> <li id="menu-item-19" class="industries menu-item menu-item-type-custom menu-item-object-custom menu-item-19"><a href="https://www.invicti.com/solutions/it-and-telecom/">IT &amp; Telecom</a></li> <li id="menu-item-20" class="industries menu-item menu-item-type-custom menu-item-object-custom menu-item-20"><a href="https://www.invicti.com/solutions/government/">Government</a></li> <li id="menu-item-21" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-21"><a href="https://www.invicti.com/solutions/financial-services/">Financial Services</a></li> <li id="menu-item-22" class="industries menu-item menu-item-type-custom menu-item-object-custom menu-item-22"><a href="https://www.invicti.com/solutions/higher-education/">Education</a></li> <li id="menu-item-23" class="industries menu-item menu-item-type-custom menu-item-object-custom menu-item-23"><a href="https://www.invicti.com/solutions/healthcare/">Healthcare</a></li> </ul> </li> <li id="menu-item-49" class="menu-col menu-col1 menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-49"><a href="#">Roles</a> <ul class="sub-menu level--3"> <li id="menu-item-24" class="roles menu-item menu-item-type-custom menu-item-object-custom menu-item-24"><a href="https://www.invicti.com/solutions/cto-ciso/">CTO &amp; CISO</a></li> <li id="menu-item-25" class="roles menu-item menu-item-type-custom menu-item-object-custom menu-item-25"><a href="https://www.invicti.com/solutions/engineering-manager/">Engineering Manager</a></li> <li id="menu-item-26" class="roles menu-item menu-item-type-custom menu-item-object-custom menu-item-26"><a href="https://www.invicti.com/solutions/security-engineer/">Security Engineer</a></li> <li id="menu-item-27" class="roles menu-item menu-item-type-custom menu-item-object-custom menu-item-27"><a href="https://www.invicti.com/solutions/devsecops/">DevSecOps</a></li> </ul> </li> </ul> </li> <li id="menu-item-402" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-402"><a href="https://www.invicti.com/vulnerability-scanner-comparison/">Comparison</a></li> <li id="menu-item-401" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-401"><a href="https://www.invicti.com/case-studies/">Case studies</a></li> <li id="menu-item-400" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-400"><a href="https://www.invicti.com/customers/">Customers</a></li> <li id="menu-item-399" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-399"><a href="https://www.invicti.com/testimonials/">Testimonials</a></li> </ul> </li> <li id="menu-item-28" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-28"><a href="https://www.invicti.com/pricing/">Pricing</a></li> <li id="menu-item-29" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-29"><a href="#">About Us</a> <ul class="sub-menu level--1"> <li id="menu-item-395" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-395"><a href="https://www.invicti.com/about/">Our Story</a></li> <li id="menu-item-398" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-398"><a href="https://www.invicti.com/blog/news/">In the news</a></li> <li id="menu-item-397" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-397"><a href="https://www.invicti.com/careers/">Careers</a></li> <li id="menu-item-396" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-396"><a href="https://www.invicti.com/contact/">Contact us</a></li> </ul> </li> <li id="menu-item-30" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-30"><a href="#">Resources</a> <ul class="sub-menu level--1"> <li id="menu-item-31" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-31"><a href="https://www.invicti.com/blog/">Blog</a></li> <li id="menu-item-33" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-33"><a href="https://www.invicti.com/white-papers/">White Papers</a></li> <li id="menu-item-10430" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-10430"><a href="https://www.invicti.com/webinars/">Webinars</a></li> <li id="menu-item-56654" class="new-promotion menu-item menu-item-type-post_type menu-item-object-page menu-item-56654"><a href="https://www.invicti.com/podcasts/">Podcasts</a></li> <li id="menu-item-27789" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-27789"><a href="https://www.invicti.com/learn/">Invicti Learn</a></li> <li id="menu-item-34" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-34"><a href="https://www.invicti.com/resources/">Resource Library</a></li> <li id="menu-item-37" class="partners-custom menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-37"><a href="#">Partners</a> <ul class="sub-menu level--2"> <li id="menu-item-27215" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-27215"><a href="https://www.invicti.com/partners/">Channel</a></li> <li id="menu-item-27218" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-27218"><a href="https://www.invicti.com/clp/managed-security-service-provider/">MSSP</a></li> </ul> </li> <li id="menu-item-38" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-38"><a href="https://www.invicti.com/support/">Support</a></li> </ul> </li> </ul> </nav><!-- #site-navigation--> </div> </header><!-- .site-header--> <div class="content"> <div class="container flex"> <aside class="sidebar"> <div class="sidebar-contents">Table of Contents</div> <div class="sidebar-menu"> <div class="menu-learn-sidebar-menu-container"><ul id="menu-learn-sidebar-menu" class="menu"><li class=' menu-item menu-item-type-post_type menu-item-object-hub menu-item-has-children' data-val='Vulnerabilities'><div class="menu-item-block"><a href="https://www.invicti.com/learn/vulnerabilities/">Vulnerabilities</a><span class="menu-expander"><svg width="10" height="8" fill="none" xmlns="http://www.w3.org/2000/svg"> <path d="M1.175.912 5 4.73 8.825.912 10 2.087l-5 5-5-5L1.175.912Z" fill="currentColor"/> <path d="M1.175.912 5 4.73 8.825.912 10 2.087l-5 5-5-5L1.175.912Z" fill="currentColor" fill-opacity=".25"/></svg></span></div> <ul class="sub-menu level--1"> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='Remote code execution (RCE)'><a href="https://www.invicti.com/learn/remote-code-execution-rce/">Remote code execution (RCE)</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='OS command injection'><a href="https://www.invicti.com/learn/os-command-injection/">OS command injection</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='Server-side request forgery (SSRF)'><a href="https://www.invicti.com/learn/server-side-request-forgery-ssrf/">Server-side request forgery (SSRF)</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub menu-item-has-children' data-val='SQL injection (SQLi)'><div class="menu-item-block"><a href="https://www.invicti.com/learn/sql-injection-sqli/">SQL injection (SQLi)</a><span class="menu-expander"><svg width="10" height="8" fill="none" xmlns="http://www.w3.org/2000/svg"> <path d="M1.175.912 5 4.73 8.825.912 10 2.087l-5 5-5-5L1.175.912Z" fill="currentColor"/> <path d="M1.175.912 5 4.73 8.825.912 10 2.087l-5 5-5-5L1.175.912Z" fill="currentColor" fill-opacity=".25"/></svg></span></div> <ul class="sub-menu level--2"> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='In-band SQL injection'><a href="https://www.invicti.com/learn/in-band-sql-injection/">In-band SQL injection</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='Blind SQL injection'><a href="https://www.invicti.com/learn/blind-sql-injection/">Blind SQL injection</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='Out-of-band SQL injection'><a href="https://www.invicti.com/learn/out-of-band-sql-injection-oob-sqli/">Out-of-band SQL injection</a></li> </ul> </li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='Local file inclusion (LFI)'><a href="https://www.invicti.com/learn/local-file-inclusion-lfi/">Local file inclusion (LFI)</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='Remote file inclusion (RFI)'><a href="https://www.invicti.com/learn/remote-file-inclusion-rfi/">Remote file inclusion (RFI)</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='Directory traversal'><a href="https://www.invicti.com/learn/directory-traversal-path-traversal/">Directory traversal</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub menu-item-has-children' data-val='Cross-site scripting (XSS)'><div class="menu-item-block"><a href="https://www.invicti.com/learn/cross-site-scripting-xss/">Cross-site scripting (XSS)</a><span class="menu-expander"><svg width="10" height="8" fill="none" xmlns="http://www.w3.org/2000/svg"> <path d="M1.175.912 5 4.73 8.825.912 10 2.087l-5 5-5-5L1.175.912Z" fill="currentColor"/> <path d="M1.175.912 5 4.73 8.825.912 10 2.087l-5 5-5-5L1.175.912Z" fill="currentColor" fill-opacity=".25"/></svg></span></div> <ul class="sub-menu level--2"> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='Stored/persistent cross-site scripting'><a href="https://www.invicti.com/learn/stored-xss-persistent-cross-site-scripting/">Stored/persistent cross-site scripting</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='Reflected/non-persistent cross-site scripting'><a href="https://www.invicti.com/learn/reflected-xss-non-persistent-cross-site-scripting/">Reflected/non-persistent cross-site scripting</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='DOM-based cross-site scripting'><a href="https://www.invicti.com/learn/dom-based-cross-site-scripting-dom-xss/">DOM-based cross-site scripting</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='Blind cross-site scripting'><a href="https://www.invicti.com/learn/blind-cross-site-scripting/">Blind cross-site scripting</a></li> </ul> </li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='Cross-site request forgery (CSRF)'><a href="https://www.invicti.com/learn/cross-site-request-forgery-csrf/">Cross-site request forgery (CSRF)</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub menu-item-has-children' data-val='XML external entity (XXE)'><div class="menu-item-block"><a href="https://www.invicti.com/learn/xml-external-entity-xxe/">XML external entity (XXE)</a><span class="menu-expander"><svg width="10" height="8" fill="none" xmlns="http://www.w3.org/2000/svg"> <path d="M1.175.912 5 4.73 8.825.912 10 2.087l-5 5-5-5L1.175.912Z" fill="currentColor"/> <path d="M1.175.912 5 4.73 8.825.912 10 2.087l-5 5-5-5L1.175.912Z" fill="currentColor" fill-opacity=".25"/></svg></span></div> <ul class="sub-menu level--2"> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='Out-of-band XML external entity (OOB XXE)'><a href="https://www.invicti.com/learn/out-of-band-xml-external-entity-oob-xxe/">Out-of-band XML external entity (OOB XXE)</a></li> </ul> </li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='CRLF injection'><a href="https://www.invicti.com/learn/crlf-injection/">CRLF injection</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='Email injection'><a href="https://www.invicti.com/learn/email-injection/">Email injection</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='HTML injection'><a href="https://www.invicti.com/learn/html-injection/">HTML injection</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='NoSQL injection'><a href="https://www.invicti.com/learn/nosql-injection/">NoSQL injection</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='JSON Injection'><a href="https://www.invicti.com/learn/json-injection/">JSON Injection</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='Insecure direct object references (IDOR)'><a href="https://www.invicti.com/learn/insecure-direct-object-references-idor/">Insecure direct object references (IDOR)</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub menu-item-has-children' data-val='Unvalidated redirects and forwards'><div class="menu-item-block"><a href="https://www.invicti.com/learn/unvalidated-redirects-and-forwards/">Unvalidated redirects and forwards</a><span class="menu-expander"><svg width="10" height="8" fill="none" xmlns="http://www.w3.org/2000/svg"> <path d="M1.175.912 5 4.73 8.825.912 10 2.087l-5 5-5-5L1.175.912Z" fill="currentColor"/> <path d="M1.175.912 5 4.73 8.825.912 10 2.087l-5 5-5-5L1.175.912Z" fill="currentColor" fill-opacity=".25"/></svg></span></div> <ul class="sub-menu level--2"> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='Open redirect'><a href="https://www.invicti.com/learn/open-redirect-open-redirection/">Open redirect</a></li> </ul> </li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='Directory listing'><a href="https://www.invicti.com/learn/directory-listing/">Directory listing</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='Password reset poisoning'><a href="https://www.invicti.com/learn/password-reset-poisoning/">Password reset poisoning</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='Buffer overflow'><a href="https://www.invicti.com/learn/buffer-overflow-stack-overflow-heap-overflow/">Buffer overflow</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='Integer overflow'><a href="https://www.invicti.com/learn/integer-overflow/">Integer overflow</a></li> </ul> </li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub current-menu-ancestor current-menu-parent menu-item-has-children' data-val='Attacks'><div class="menu-item-block"><a href="https://www.invicti.com/learn/attacks/">Attacks</a><span class="menu-expander"><svg width="10" height="8" fill="none" xmlns="http://www.w3.org/2000/svg"> <path d="M1.175.912 5 4.73 8.825.912 10 2.087l-5 5-5-5L1.175.912Z" fill="currentColor"/> <path d="M1.175.912 5 4.73 8.825.912 10 2.087l-5 5-5-5L1.175.912Z" fill="currentColor" fill-opacity=".25"/></svg></span></div> <ul class="sub-menu level--1"> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='Session hijacking'><a href="https://www.invicti.com/learn/session-hijacking/">Session hijacking</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='Session fixation'><a href="https://www.invicti.com/learn/session-fixation/">Session fixation</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='Session prediction'><a href="https://www.invicti.com/learn/session-prediction/">Session prediction</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='Cookie hijacking'><a href="https://www.invicti.com/learn/cookie-hijacking/">Cookie hijacking</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='Cookie poisoning'><a href="https://www.invicti.com/learn/cookie-poisoning/">Cookie poisoning</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='Clickjacking'><a href="https://www.invicti.com/learn/clickjacking/">Clickjacking</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='Forced browsing'><a href="https://www.invicti.com/learn/forced-browsing/">Forced browsing</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='XSS filter evasion'><a href="https://www.invicti.com/learn/xss-filter-evasion/">XSS filter evasion</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='Source code disclosure'><a href="https://www.invicti.com/learn/source-code-disclosure/">Source code disclosure</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='Host header attacks'><a href="https://www.invicti.com/learn/host-header-attacks/">Host header attacks</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='Web cache poisoning'><a href="https://www.invicti.com/learn/web-cache-poisoning/">Web cache poisoning</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='Privilege escalation'><a href="https://www.invicti.com/learn/privilege-escalation/">Privilege escalation</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='Web shell'><a href="https://www.invicti.com/learn/web-shell/">Web shell</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='Reverse shell'><a href="https://www.invicti.com/learn/reverse-shell/">Reverse shell</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='Cross-frame scripting (XFS)'><a href="https://www.invicti.com/learn/cross-frame-scripting-xfs/">Cross-frame scripting (XFS)</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='Broken link hijacking'><a href="https://www.invicti.com/learn/broken-link-hijacking-blh/">Broken link hijacking</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='SEO poisoning'><a href="https://www.invicti.com/learn/seo-poisoning/">SEO poisoning</a></li> <li class=' menu-item menu-item-type-custom menu-item-object-custom' data-val='Low Orbit Ion Cannon (LOIC)'><a href="https://www.invicti.com/learn/low-orbit-ion-cannon-loic/">Low Orbit Ion Cannon (LOIC)</a></li> <li class=' menu-item menu-item-type-custom menu-item-object-custom current-menu-item' data-val='High Orbit Ion Cannon (HOIC)'><a href="https://www.invicti.com/learn/high-orbit-ion-cannon-hoic/">High Orbit Ion Cannon (HOIC)</a></li> <li class=' menu-item menu-item-type-custom menu-item-object-custom' data-val='Slowloris attack'><a href="https://www.invicti.com/learn/slowloris-attack/">Slowloris attack</a></li> <li class=' menu-item menu-item-type-custom menu-item-object-custom' data-val='R.U.D.Y. attack'><a href="https://www.invicti.com/learn/rudy-attack/">R.U.D.Y. attack</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub menu-item-has-children' data-val='Man-in-the-middle attacks (MITM)'><div class="menu-item-block"><a href="https://www.invicti.com/learn/man-in-the-middle-attacks-mitm/">Man-in-the-middle attacks (MITM)</a><span class="menu-expander"><svg width="10" height="8" fill="none" xmlns="http://www.w3.org/2000/svg"> <path d="M1.175.912 5 4.73 8.825.912 10 2.087l-5 5-5-5L1.175.912Z" fill="currentColor"/> <path d="M1.175.912 5 4.73 8.825.912 10 2.087l-5 5-5-5L1.175.912Z" fill="currentColor" fill-opacity=".25"/></svg></span></div> <ul class="sub-menu level--2"> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='ARP spoofing'><a href="https://www.invicti.com/learn/mitm-arp-spoofing/">ARP spoofing</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='IP spoofing'><a href="https://www.invicti.com/learn/mitm-ip-spoofing-ip-address-spoofing/">IP spoofing</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='DNS cache poisoning'><a href="https://www.invicti.com/learn/mitm-dns-spoofing-dns-cache-poisoning/">DNS cache poisoning</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='HTTP spoofing'><a href="https://www.invicti.com/learn/mitm-https-spoofing-idn-homograph-attack/">HTTP spoofing</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='SSL hijacking'><a href="https://www.invicti.com/learn/mitm-ssl-hijacking/">SSL hijacking</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='SSL stripping'><a href="https://www.invicti.com/learn/mitm-ssl-stripping/">SSL stripping</a></li> </ul> </li> </ul> </li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub menu-item-has-children' data-val='Protection'><div class="menu-item-block"><a href="https://www.invicti.com/learn/protection/">Protection</a><span class="menu-expander"><svg width="10" height="8" fill="none" xmlns="http://www.w3.org/2000/svg"> <path d="M1.175.912 5 4.73 8.825.912 10 2.087l-5 5-5-5L1.175.912Z" fill="currentColor"/> <path d="M1.175.912 5 4.73 8.825.912 10 2.087l-5 5-5-5L1.175.912Z" fill="currentColor" fill-opacity=".25"/></svg></span></div> <ul class="sub-menu level--1"> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='Same-origin policy (SOP)'><a href="https://www.invicti.com/learn/same-origin-policy-sop/">Same-origin policy (SOP)</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='HTTP Strict Transport Security (HSTS)'><a href="https://www.invicti.com/learn/http-strict-transport-security-hsts/">HTTP Strict Transport Security (HSTS)</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='Cookie security flags'><a href="https://www.invicti.com/learn/cookie-security-flags/">Cookie security flags</a></li> </ul> </li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub menu-item-has-children' data-val='Tools'><div class="menu-item-block"><a href="https://www.invicti.com/learn/tools/">Tools</a><span class="menu-expander"><svg width="10" height="8" fill="none" xmlns="http://www.w3.org/2000/svg"> <path d="M1.175.912 5 4.73 8.825.912 10 2.087l-5 5-5-5L1.175.912Z" fill="currentColor"/> <path d="M1.175.912 5 4.73 8.825.912 10 2.087l-5 5-5-5L1.175.912Z" fill="currentColor" fill-opacity=".25"/></svg></span></div> <ul class="sub-menu level--1"> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='Dynamic application security testing (DAST)'><a href="https://www.invicti.com/learn/dynamic-application-security-testing-dast/">Dynamic application security testing (DAST)</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='Static application security testing (SAST)'><a href="https://www.invicti.com/learn/static-application-security-testing-sast/">Static application security testing (SAST)</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='Interactive application security testing (IAST)'><a href="https://www.invicti.com/learn/interactive-application-security-testing-iast/">Interactive application security testing (IAST)</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='Software composition analysis (SCA)'><a href="https://www.invicti.com/learn/software-composition-analysis-sca/">Software composition analysis (SCA)</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='Web application firewall (WAF)'><a href="https://www.invicti.com/learn/web-application-firewall-waf/">Web application firewall (WAF)</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='Web asset discovery'><a href="https://www.invicti.com/learn/web-asset-discovery/">Web asset discovery</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='Vulnerability management'><a href="https://www.invicti.com/learn/vulnerability-management/">Vulnerability management</a></li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='Vulnerability assessment'><a href="https://www.invicti.com/learn/vulnerability-assessment/">Vulnerability assessment</a></li> </ul> </li> <li class=' menu-item menu-item-type-post_type menu-item-object-hub' data-val='About Invicti Learn'><a href="https://www.invicti.com/learn/about/">About Invicti Learn</a></li> </ul></div> </div> <div class="sidebar-button"> </div> </aside> <main class="main entry-content col-span-9"> <h1 class="wp-block-heading">High Orbit Ion Cannon (HOIC)</h1> <figure class="wp-block-image size-large is-style-default"><picture><source srcset="https://cdn.invicti.com/app/uploads/2022/03/15153927/Learn_03_banner-1024x131.webp 1024w,https://cdn.invicti.com/app/uploads/2022/03/15153927/Learn_03_banner-300x38.webp 300w,https://cdn.invicti.com/app/uploads/2022/03/15153927/Learn_03_banner-768x98.webp 768w,https://cdn.invicti.com/app/uploads/2022/03/15153927/Learn_03_banner.webp 1053w" sizes="(max-width: 1024px) 100vw, 1024px" type="image/webp"><img src="https://cdn.invicti.com/app/uploads/2022/03/15153927/Learn_03_banner-1024x131.png" height="131" width="1024" srcset="https://cdn.invicti.com/app/uploads/2022/03/15153927/Learn_03_banner-1024x131.png 1024w, https://cdn.invicti.com/app/uploads/2022/03/15153927/Learn_03_banner-300x38.png 300w, https://cdn.invicti.com/app/uploads/2022/03/15153927/Learn_03_banner-768x98.png 768w, https://cdn.invicti.com/app/uploads/2022/03/15153927/Learn_03_banner.png 1053w" sizes="(max-width: 1024px) 100vw, 1024px" class="wp-image-37078 sp-no-webp" alt="" fetchpriority="high" > </picture></figure> <h2 class="wp-block-heading">What is the High Orbit Ion Cannon?</h2> <p>The High Orbit Ion Cannon (HOIC) is a denial-of-service attack application often used by malicious hackers and activists. It is the successor of the<a href="https://www.invicti.com/learn/low-orbit-ion-cannon-loic/"> Low Orbit Ion Cannon (LOIC)</a> application, which was originally designed as an open-source network stress testing tool.</p> <p>HOIC was developed by the hacktivist collective Anonymous during the final stages of Operation Payback. The tool is available on Sourceforge only for Windows but it can be ported to Linux and Mac. The names of both LOIC and HOIC were inspired by fictional weapons used in several video games, primarily <em>Command &amp; Conquer</em>.</p> <h2 class="wp-block-heading">How does the High Orbit Ion Cannon work?</h2> <p>HOIC is an application-layer attack tool. It is more advanced than LOIC and designed to work using only HTTP floods (unlike LOIC, which uses TCP/UDP floods as well), sending HTTP POST and GET requests. It can attack up to 256 domains or IP addresses simultaneously using a large number of threads. It is especially effective against thread-based web servers such as Apache, particularly those that are not configured to mitigate application-layer attacks such as <a href="https://www.invicti.com/learn/slowloris-attack/">Slowloris</a> and<a href="https://www.invicti.com/learn/rudy-attack/"> R.U.D.Y</a>.</p> <p>The key feature of HOIC is the ability to use booster scripts to increase DoS output. These custom scripts randomize headers, such as <em>User-Agent</em>, and introduce multiple attack targets (e.g. subdomains or specific pages). This makes DoS detection much more difficult but is still not enough to anonymize the attacker.</p> <p>As an attack tool, HOIC is much more powerful than LOIC, but it lacks certain features of its predecessor. It is designed as a standalone application and has limited coordination capabilities. It works in GUI mode only and has no API, so it cannot be used in a botnet. While it is estimated that 50 HOIC users are enough to perform a major distributed denial-of-service attack (DDoS attack), it still has to be coordinated manually.</p> <p>This tool was used by Anonymous for attacks on the Motion Picture Association of America (MPAA), the Recording Industry Association of America (RIAA), and the US Department of Justice (in retaliation for closing the file-sharing website Megaupload).</p> <h2 class="wp-block-heading">How to mitigate HOIC attacks?</h2> <p>Even a website with no vulnerabilities may fall victim to denial of service by HOIC, so web or network vulnerability scanners are not effective mitigation tools. Since HOIC randomizes headers,<a href="https://www.invicti.com/learn/web-application-firewall-waf/"> web application firewalls (WAFs)</a> may have problems detecting such attacks. The best bet to detect such attacks early and raise an alarm is to use an intrusion detection system (IDS).</p> <p>However, no locally installed tool can be as useful for DDoS attack mitigation as a resilient network infrastructure that can handle a lot of requests. That is why many companies choose to host their websites and application with cloud providers. Such cloud infrastructures combined with load balancing and traffic filtering will usually provide sufficient DDoS protection both due to the tools available and the sheer bandwidth for absorbing attack traffic.</p> <p>The limited capabilities of HOIC also mean it cannot be remotely installed and effectively used on your web server by a malicious actor, even if a web vulnerability such as<a href="https://www.invicti.com/learn/remote-code-execution-rce/"> remote code execution (RCE)</a> is found and successfully exploited. Since there is no JavaScript version of the tool, you are also safe from having it injected as a result of<a href="https://www.invicti.com/learn/cross-site-scripting-xss/"> cross-site scripting</a>.</p> <h2 class="wp-block-heading">Frequently asked questions</h2> <div class="invicti-block accordion style-one" id="accordion_6742882e0bd73"> <div class="accordion-section"> <h4 class="accordion-heading">What is the High Orbit Ion Cannon?</h4> <div class="accordion-text-holder"> <div class="accordion-text"><p>The High Orbit Ion Cannon is a denial-of-service attack application designed by the hacktivist group Anonymous. The tool works by flooding the target website with HTTP GET and POST requests. It was developed on the basis of an older tool called the Low Orbit Ion Cannon.<br /> &nbsp;<br /> <a href="https://www.invicti.com/learn/low-orbit-ion-cannon-loic/">Learn more about the Low Orbit Ion Cannon – the predecessor of the High Orbit Ion Cannon</a></p> </div> </div> </div> <div class="accordion-section"> <h4 class="accordion-heading">How dangerous is the High Orbit Ion Cannon?</h4> <div class="accordion-text-holder"> <div class="accordion-text"><p>The High Orbit Ion Cannon was designed by hacktivists with application-layer attacks in mind and can be used for this purpose by cybercriminals, but it can also serve as a stress-testing tool. Its impact depends on how it is used, by how many people at once, and with what intent – the HOIC application itself is only dangerous when used with malicious intent.<br /> &nbsp;<br /> <a href="https://www.invicti.com/blog/web-security/6-application-layer-ddos-attacks-signals-and-indicators/">Find out more about different application-layer attacks</a></p> </div> </div> </div> <div class="accordion-section"> <h4 class="accordion-heading">How to mitigate HOIC attacks?</h4> <div class="accordion-text-holder"> <div class="accordion-text"><p>Attacks conducted using the HOIC tool are simple floods of HTTP GET and HTTP POST requests. They do not exploit any vulnerabilities, so typical DoS/DDoS protection mechanisms offered by hosting providers and load balancers are your best hope for mitigation. However, note that event-based servers such as Nginx are less sensitive to the High Orbit Ion Cannon than thread-based servers like Apache, which are also vulnerable to other application-layer attacks such as Slowloris and R.U.D.Y.<br /> &nbsp;<br /> <a href="https://www.invicti.com/learn/slowloris-attack/">Read about the Slowloris attack, which affects thread-based web servers</a></p> </div> </div> </div> </div> <p></p> <hr class="wp-block-separator has-alpha-channel-opacity is-style-wide" /> <p></p> <p class="has-small-font-size"><em><a href="https://www.invicti.com/learn/about/">Written by: Tomasz Andrzej Nidecki, reviewed by: Zbigniew Banach</a></em></p> </main> </div> </div> <footer class="site-footer"> <div class="container primary-footer"> <div class="company-info-wrapper"> <figure> <img class="logo-icon footerlogo" src="https://cdn.invicti.com/branding/invicti-logo-black.svg" alt="Invicti Logo - The Largest Dynamic Application Security Solutions Provider In The World" width="128" height="36" /> </figure> <div class="social-icons"> <a href="https://twitter.com/InvictiSecurity" aria-label="Twitter" target="_blank" rel="noopener noreferrer" title="Twitter"> <svg xmlns="http://www.w3.org/2000/svg" width="20.616" height="16.969"> <path d="M20.532 2.035a8.514 8.514 0 01-2.085.595c.336-.057.827-.663 1.025-.909a3.838 3.838 0 00.693-1.262c.017-.036.031-.081-.005-.109a.119.119 0 00-.111.009 10.543 10.543 0 01-2.472.946.168.168 0 01-.171-.044 1.845 1.845 0 00-.216-.221 4.377 4.377 0 00-1.2-.734 4.167 4.167 0 00-1.836-.3 4.4 4.4 0 00-1.743.493 4.473 4.473 0 00-1.405 1.148 4.316 4.316 0 00-.84 1.682 4.557 4.557 0 00-.044 1.775c.013.1 0 .112-.085.1A13.2 13.2 0 011.543.881c-.1-.112-.154-.112-.235.009a4.307 4.307 0 00.734 5.089c.167.158.339.315.522.46a4.342 4.342 0 01-1.639-.46c-.1-.062-.149-.026-.158.087a2.622 2.622 0 00.027.486 4.357 4.357 0 002.683 3.473 2.548 2.548 0 00.544.165 4.841 4.841 0 01-1.608.05c-.116-.022-.162.036-.116.149a4.523 4.523 0 003.38 2.829c.154.026.306.026.46.062-.009.014-.018.014-.027.027a5.364 5.364 0 01-2.306 1.223 8.282 8.282 0 01-3.5.449c-.189-.028-.228-.026-.279 0s-.006.076.054.125c.239.158.482.3.729.433a11.571 11.571 0 002.343.936 12.471 12.471 0 0012.106-2.831c2.481-2.465 3.351-5.866 3.351-9.27 0-.133.158-.207.251-.278a8.157 8.157 0 001.648-1.713.518.518 0 00.109-.328v-.018c0-.054 0-.039-.084 0z" fill="currentColor"/> </svg> </a> <a href="https://facebook.com/Invicti-Security-100090617259790/" aria-label="Facebook" target="_blank" rel="noopener noreferrer" title="Facebook"> <svg xmlns="http://www.w3.org/2000/svg" width="11.862" height="22.315"> <path d="M11.085 12.457l.615-4.008H7.854v-2.6a2 2 0 012.26-2.165h1.748V.272a21.277 21.277 0 00-3.1-.271c-3.167 0-5.237 1.92-5.237 5.395v3.055H.003v4.008h3.522v9.69a14.013 14.013 0 002.166.168 14.013 14.013 0 002.166-.168v-9.69z" fill="currentColor"/> </svg> </a> <a href="https://www.linkedin.com/company/invicti-security" aria-label="Linkedin" target="_blank" rel="noopener noreferrer" title="Linkedin"> <svg xmlns="http://www.w3.org/2000/svg" width="20.636" height="20.588"> <path d="M.342 6.834h4.282v13.754H.342zM2.483-.002a2.478 2.478 0 012.478 2.477 2.48 2.48 0 01-2.478 2.481 2.482 2.482 0 01-2.481-2.48A2.48 2.48 0 012.483-.002M7.305 6.834h4.1v1.882h.056a4.5 4.5 0 014.049-2.219c4.329 0 5.125 2.847 5.125 6.551v7.543h-4.271v-6.686c0-1.6-.032-3.648-2.223-3.648-2.226 0-2.564 1.737-2.564 3.53v6.8H7.305z" fill="currentColor"/> </svg> </a> <a href="https://www.invicti.com/blog/feed/" aria-label="RSS Feed" target="_blank" rel="noopener noreferrer" title="RSS Feed"> <svg width="20" height="20" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"> <path d="M1 6.34887C6.05667 6.08303 9.25 9.2772 8.985 14.3339" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"></path> <path d="M1.83333 14.3339C2.29357 14.3339 2.66667 13.9608 2.66667 13.5005C2.66667 13.0403 2.29357 12.6672 1.83333 12.6672C1.3731 12.6672 1 13.0403 1 13.5005C1 13.9608 1.3731 14.3339 1.83333 14.3339Z" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"></path> <path d="M1 1.02553C9.42833 0.583866 14.7508 5.90637 14.3083 14.3339" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"></path> </svg> </a> </div> <div class="company-info"> <p>Invicti Security Corp <br>1000 N Lamar Blvd Suite 300 <br>Austin, TX 78703, US</p> </div> <div class="copyright hidden-md"> <p>© Invicti 2024</p> </div> </div> <ul id="footer-primary-menu" class="footer-primary-menu"><li id="menu-item-50" class="footer-menu-title menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-50"><a href="#">RESOURCES</a> <ul class="sub-menu level--1"> <li id="menu-item-51" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-51"><a href="https://www.invicti.com/features/">Features</a></li> <li id="menu-item-52" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-52"><a href="https://www.invicti.com/integrations/">Integrations</a></li> <li id="menu-item-53" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-53"><a href="https://www.invicti.com/plans/">Plans</a></li> <li id="menu-item-54" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-54"><a href="https://www.invicti.com/case-studies/">Case Studies</a></li> <li id="menu-item-55" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-55"><a href="https://www.invicti.com/changelogs/">Changelogs</a></li> <li id="menu-item-22395" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-22395"><a href="https://www.invicti.com/learn/welcome/">Invicti Learn</a></li> </ul> </li> <li id="menu-item-57" class="footer-menu-title menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-57"><a href="#">USE CASES</a> <ul class="sub-menu level--1"> <li id="menu-item-58" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-58"><a href="https://www.invicti.com/penetration-testing-software/">Penetration Testing Software</a></li> <li id="menu-item-59" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-59"><a href="https://www.invicti.com/website-security-scanner/">Website Security Scanner</a></li> <li id="menu-item-60" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-60"><a href="https://www.invicti.com/ethical-hacking-software/">Ethical Hacking Software</a></li> <li id="menu-item-61" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-61"><a href="https://www.invicti.com/web-vulnerability-scanner/">Web Vulnerability Scanner</a></li> <li id="menu-item-62" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-62"><a href="https://www.invicti.com/vulnerability-scanner-comparison/">Comparisons</a></li> <li id="menu-item-63" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-63"><a href="https://www.invicti.com/online-web-application-security-scanner/">Online Application Scanner</a></li> </ul> </li> <li id="menu-item-64" class="footer-menu-title menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-64"><a href="#">WEB SECURITY</a> <ul class="sub-menu level--1"> <li id="menu-item-70" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-70"><a href="https://www.invicti.com/blog/web-security/false-positives-web-application-security/">The Problem with False Positives</a></li> <li id="menu-item-69" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-69"><a href="https://www.invicti.com/blog/web-security/comparison-commercial-non-commercial-web-application-security-scanner/">Why Pay for Web Scanners</a></li> <li id="menu-item-68" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-68"><a href="https://www.invicti.com/blog/web-security/sql-injection-cheat-sheet/">SQL Injection Cheat Sheet</a></li> <li id="menu-item-67" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-67"><a href="https://www.invicti.com/blog/web-security/getting-started-web-application-security/">Getting Started with Web Security</a></li> <li id="menu-item-66" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-66"><a href="https://www.invicti.com/web-vulnerability-scanner/vulnerabilities/">Vulnerability Index</a></li> <li id="menu-item-65" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-65"><a href="https://www.invicti.com/blog/web-security/content-security-policy/">Using Content Security Policy to Secure Web Applications</a></li> </ul> </li> <li id="menu-item-55407" class="footer-menu-title menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-55407"><a href="#">COMPARISON</a> <ul class="sub-menu level--1"> <li id="menu-item-55408" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-55408"><a href="https://www.invicti.com/vulnerability-scanner-comparison/invicti-vs-burp-suite/">Burp Suite vs. Invicti</a></li> <li id="menu-item-55409" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-55409"><a href="https://www.invicti.com/vulnerability-scanner-comparison/invicti-vs-probely/">Probely vs. Invicti</a></li> <li id="menu-item-55410" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-55410"><a href="https://www.invicti.com/vulnerability-scanner-comparison/invicti-vs-acunetix/">Acunetix vs. Invicti</a></li> <li id="menu-item-55411" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-55411"><a href="https://www.invicti.com/vulnerability-scanner-comparison/invicti-vs-qualys/">Qualys vs. Invicti</a></li> <li id="menu-item-55412" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-55412"><a href="https://www.invicti.com/vulnerability-scanner-comparison/invicti-vs-nessus/">Tenable Nessus vs. Invicti</a></li> </ul> </li> <li id="menu-item-71" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-has-children menu-item-71"><a href="#">COMPANY</a> <ul class="sub-menu level--1"> <li id="menu-item-72" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-72"><a href="https://www.invicti.com/about/">About Us</a></li> <li id="menu-item-73" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-73"><a href="https://www.invicti.com/contact/">Contact Us</a></li> <li id="menu-item-74" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-74"><a href="https://www.invicti.com/support/">Support</a></li> <li id="menu-item-75" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-75"><a href="https://www.invicti.com/careers/">Careers</a></li> <li id="menu-item-76" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-76"><a href="https://www.invicti.com/resources/">Resources</a></li> <li id="menu-item-77" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-77"><a href="https://www.invicti.com/partners/">Partners</a></li> </ul> </li> </ul> </div> <div class="container copyright-mobile"> © Invicti 2024 </div> <div class="container"> <ul id="footer-bottom-menu" class="footer-bottom-menu"><li id="menu-item-55180" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-55180"><a href="https://www.invicti.com/compliance/">Compliance</a></li> <li id="menu-item-78" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-78"><a href="https://www.invicti.com/legal/">Legal</a></li> <li id="menu-item-79" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-79"><a href="https://www.invicti.com/compliance/privacy-policy/">Privacy Policy</a></li> <li id="menu-item-8973" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-8973"><a href="https://www.invicti.com/compliance/california-privacy-rights/">California Privacy Rights</a></li> <li id="menu-item-80" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-80"><a href="https://www.invicti.com/legal/terms/">Terms of Use</a></li> <li id="menu-item-81" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-81"><a href="https://www.invicti.com/accessibility/">Accessibility</a></li> <li id="menu-item-82" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-82"><a href="https://www.invicti.com/sitemap/">Sitemap</a></li> </ul> </div> </footer> <div class="cookie-notice" id="cookie-notice-bar"> <p> By using this website you agree with our use of cookies to improve its performance and enhance your experience. More information in our <a href="https://www.invicti.com/privacy-policy" rel="noreferrer">Privacy Policy</a>. </p> <button class="cookie-notice-button" title="OK">OK</button> </div><link rel='stylesheet' id='wp-block-library-css' href='https://www.invicti.com/wp/wp-includes/css/dist/block-library/style.min.css' type='text/css' media='all' /> <style id='wp-block-library-inline-css' type='text/css'> .is-style-quote-primary.wp-block-quote{--tw-border-opacity:1;--tw-text-opacity:1;border-color:rgb(204 139 219/var(--tw-border-opacity));border-left-width:0;color:rgb(16 24 32/var(--tw-text-opacity));margin-bottom:0;margin-left:2.5rem;padding-left:1.25rem;position:relative}@media (min-width:767px){.is-style-quote-primary.wp-block-quote{border-left-width:5px;margin-left:65px;padding-bottom:.1875rem;padding-left:2.5rem;padding-top:.1875rem}}.is-style-quote-primary.wp-block-quote a{--tw-text-opacity:1;color:rgb(16 24 32/var(--tw-text-opacity));-webkit-text-decoration-line:underline;text-decoration-line:underline}.is-style-quote-primary.wp-block-quote cite{--tw-text-opacity:1;color:rgb(16 24 32/var(--tw-text-opacity));display:block;font-size:.75rem;font-weight:500;margin-top:.625rem}@media (min-width:576px){.is-style-quote-primary.wp-block-quote cite{font-size:.875rem}}.is-style-quote-primary.wp-block-quote:before{--tw-bg-opacity:1;background-color:rgb(89 23 105/var(--tw-bg-opacity));height:100%;left:-45px;position:absolute;top:0;width:37px}@media (min-width:767px){.is-style-quote-primary.wp-block-quote:before{--tw-bg-opacity:1;background-color:rgb(204 139 219/var(--tw-bg-opacity));left:-65px;width:21px}}.is-style-quote-primary.wp-block-quote:before{content:"";-webkit-mask:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M464 32H336c-26.5 0-48 21.5-48 48v128c0 26.5 21.5 48 48 48h80v64c0 35.3-28.7 64-64 64h-8c-13.3 0-24 10.7-24 24v48c0 13.3 10.7 24 24 24h8c88.4 0 160-71.6 160-160V80c0-26.5-21.5-48-48-48zm-288 0H48C21.5 32 0 53.5 0 80v128c0 26.5 21.5 48 48 48h80v64c0 35.3-28.7 64-64 64h-8c-13.3 0-24 10.7-24 24v48c0 13.3 10.7 24 24 24h8c88.4 0 160-71.6 160-160V80c0-26.5-21.5-48-48-48z'/%3E%3C/svg%3E") top/contain no-repeat;mask:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M464 32H336c-26.5 0-48 21.5-48 48v128c0 26.5 21.5 48 48 48h80v64c0 35.3-28.7 64-64 64h-8c-13.3 0-24 10.7-24 24v48c0 13.3 10.7 24 24 24h8c88.4 0 160-71.6 160-160V80c0-26.5-21.5-48-48-48zm-288 0H48C21.5 32 0 53.5 0 80v128c0 26.5 21.5 48 48 48h80v64c0 35.3-28.7 64-64 64h-8c-13.3 0-24 10.7-24 24v48c0 13.3 10.7 24 24 24h8c88.4 0 160-71.6 160-160V80c0-26.5-21.5-48-48-48z'/%3E%3C/svg%3E") top/contain no-repeat}@media (min-width:767px){.is-style-quote-primary.wp-block-quote:before{-webkit-mask-position:center;mask-position:center}} .is-style-quote-warning.wp-block-quote,blockquote.warning{--tw-border-opacity:1;--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(242 222 222/var(--tw-bg-opacity));border-color:rgb(235 204 209/var(--tw-border-opacity));border-width:1px;color:rgb(169 68 66/var(--tw-text-opacity));font-size:1rem;margin-bottom:0;padding:1.25rem 1.5625rem 1.25rem 4rem;position:relative}.is-style-quote-warning.wp-block-quote a,blockquote.warning a{--tw-text-opacity:1;color:rgb(169 68 66/var(--tw-text-opacity));-webkit-text-decoration-line:underline;text-decoration-line:underline}.is-style-quote-warning.wp-block-quote a:hover,blockquote.warning a:hover{--tw-text-opacity:1;color:rgb(109 36 35/var(--tw-text-opacity))}.is-style-quote-warning.wp-block-quote:before,blockquote.warning:before{--tw-bg-opacity:1;background-color:rgb(169 68 66/var(--tw-bg-opacity));content:"";height:100%;left:17px;-webkit-mask:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-2 -3 24 24'%3E%3Cpath fill='currentColor' d='m12.8 1.613 6.701 11.161c.963 1.603.49 3.712-1.057 4.71a3.213 3.213 0 0 1-1.743.516H3.298C1.477 18 0 16.47 0 14.581c0-.639.173-1.264.498-1.807L7.2 1.613C8.162.01 10.196-.481 11.743.517c.428.276.79.651 1.057 1.096zm-2.22.839a1.077 1.077 0 0 0-1.514.365L2.365 13.98a1.17 1.17 0 0 0-.166.602c0 .63.492 1.14 1.1 1.14H16.7c.206 0 .407-.06.581-.172a1.164 1.164 0 0 0 .353-1.57L10.933 2.817a1.12 1.12 0 0 0-.352-.365zM10 14a1 1 0 1 1 0-2 1 1 0 0 1 0 2zm0-9a1 1 0 0 1 1 1v4a1 1 0 0 1-2 0V6a1 1 0 0 1 1-1z'/%3E%3C/svg%3E") top/contain no-repeat;mask:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-2 -3 24 24'%3E%3Cpath fill='currentColor' d='m12.8 1.613 6.701 11.161c.963 1.603.49 3.712-1.057 4.71a3.213 3.213 0 0 1-1.743.516H3.298C1.477 18 0 16.47 0 14.581c0-.639.173-1.264.498-1.807L7.2 1.613C8.162.01 10.196-.481 11.743.517c.428.276.79.651 1.057 1.096zm-2.22.839a1.077 1.077 0 0 0-1.514.365L2.365 13.98a1.17 1.17 0 0 0-.166.602c0 .63.492 1.14 1.1 1.14H16.7c.206 0 .407-.06.581-.172a1.164 1.164 0 0 0 .353-1.57L10.933 2.817a1.12 1.12 0 0 0-.352-.365zM10 14a1 1 0 1 1 0-2 1 1 0 0 1 0 2zm0-9a1 1 0 0 1 1 1v4a1 1 0 0 1-2 0V6a1 1 0 0 1 1-1z'/%3E%3C/svg%3E") top/contain no-repeat;-webkit-mask-position:top;mask-position:top;position:absolute;width:30px} .is-style-quote-info.wp-block-quote,blockquote.info{--tw-border-opacity:1;--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(217 237 247/var(--tw-bg-opacity));border-color:rgb(188 232 241/var(--tw-border-opacity));border-width:1px;color:rgb(49 112 143/var(--tw-text-opacity));font-size:1rem;margin-bottom:0;padding:1.25rem 1.5625rem 1.25rem 4rem;position:relative}.is-style-quote-info.wp-block-quote a,blockquote.info a{--tw-text-opacity:1;color:rgb(49 112 143/var(--tw-text-opacity));-webkit-text-decoration-line:underline;text-decoration-line:underline}.is-style-quote-info.wp-block-quote a:hover,blockquote.info a:hover{--tw-text-opacity:1;color:rgb(19 69 95/var(--tw-text-opacity))}.is-style-quote-info.wp-block-quote:before,blockquote.info:before{--tw-bg-opacity:1;background-color:rgb(49 112 143/var(--tw-bg-opacity));content:"";height:100%;left:20px;-webkit-mask:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' fill='%2331708f'%3E%3Cpath d='M256 0C114.6 0 0 114.6 0 256s114.6 256 256 256 256-114.6 256-256S397.4 0 256 0zm0 128c17.67 0 32 14.33 32 32s-14.33 32-32 32-32-14.3-32-32 14.3-32 32-32zm40 256h-80c-13.2 0-24-10.7-24-24s10.75-24 24-24h16v-64h-8c-13.25 0-24-10.75-24-24s10.8-24 24-24h32c13.25 0 24 10.75 24 24v88h16c13.25 0 24 10.75 24 24s-10.7 24-24 24z'/%3E%3C/svg%3E") top/contain no-repeat;mask:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' fill='%2331708f'%3E%3Cpath d='M256 0C114.6 0 0 114.6 0 256s114.6 256 256 256 256-114.6 256-256S397.4 0 256 0zm0 128c17.67 0 32 14.33 32 32s-14.33 32-32 32-32-14.3-32-32 14.3-32 32-32zm40 256h-80c-13.2 0-24-10.7-24-24s10.75-24 24-24h16v-64h-8c-13.25 0-24-10.75-24-24s10.8-24 24-24h32c13.25 0 24 10.75 24 24v88h16c13.25 0 24 10.75 24 24s-10.7 24-24 24z'/%3E%3C/svg%3E") top/contain no-repeat;-webkit-mask-position:top;mask-position:top;position:absolute;width:25px} .is-style-quote-tips.wp-block-quote,blockquote.tips{--tw-border-opacity:1;--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(255 254 250/var(--tw-bg-opacity));border-color:rgb(255 243 204/var(--tw-border-opacity));border-width:1px;color:rgb(121 108 16/var(--tw-text-opacity));font-size:1rem;margin-bottom:0;padding:1.25rem 1.5625rem 1.25rem 4rem;position:relative}.is-style-quote-tips.wp-block-quote a,blockquote.tips a{--tw-text-opacity:1;color:rgb(121 108 16/var(--tw-text-opacity));-webkit-text-decoration-line:underline;text-decoration-line:underline}.is-style-quote-tips.wp-block-quote a:hover,blockquote.tips a:hover{--tw-text-opacity:1;color:rgb(77 70 14/var(--tw-text-opacity))}.is-style-quote-tips.wp-block-quote:before,blockquote.tips:before{--tw-bg-opacity:1;background-color:rgb(255 196 0/var(--tw-bg-opacity));content:"";height:100%;left:23px;-webkit-mask:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1024 1536'%3E%3Cpath d='M736 448q0 13-9.5 22.5T704 480t-22.5-9.5T672 448q0-46-54-71t-106-25q-13 0-22.5-9.5T480 320t9.5-22.5T512 288q50 0 99.5 16t87 54 37.5 90zm160 0q0-72-34.5-134t-90-101.5-123-62T512 128t-136.5 22.5-123 62-90 101.5T128 448q0 101 68 180 10 11 30.5 33t30.5 33q128 153 141 298h228q13-145 141-298 10-11 30.5-33t30.5-33q68-79 68-180zm128 0q0 155-103 268-45 49-74.5 87T787 898.5 753 1006q47 28 47 82 0 37-25 64 25 27 25 64 0 52-45 81 13 23 13 47 0 46-31.5 71t-77.5 25q-20 44-60 70t-87 26-87-26-60-70q-46 0-77.5-25t-31.5-71q0-24 13-47-45-29-45-81 0-37 25-64-25-27-25-64 0-54 47-82-4-50-34-107.5T177.5 803 103 716Q0 603 0 448q0-99 44.5-184.5t117-142 164-89T512 0t186.5 32.5 164 89 117 142T1024 448z'/%3E%3C/svg%3E") top/contain no-repeat;mask:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1024 1536'%3E%3Cpath d='M736 448q0 13-9.5 22.5T704 480t-22.5-9.5T672 448q0-46-54-71t-106-25q-13 0-22.5-9.5T480 320t9.5-22.5T512 288q50 0 99.5 16t87 54 37.5 90zm160 0q0-72-34.5-134t-90-101.5-123-62T512 128t-136.5 22.5-123 62-90 101.5T128 448q0 101 68 180 10 11 30.5 33t30.5 33q128 153 141 298h228q13-145 141-298 10-11 30.5-33t30.5-33q68-79 68-180zm128 0q0 155-103 268-45 49-74.5 87T787 898.5 753 1006q47 28 47 82 0 37-25 64 25 27 25 64 0 52-45 81 13 23 13 47 0 46-31.5 71t-77.5 25q-20 44-60 70t-87 26-87-26-60-70q-46 0-77.5-25t-31.5-71q0-24 13-47-45-29-45-81 0-37 25-64-25-27-25-64 0-54 47-82-4-50-34-107.5T177.5 803 103 716Q0 603 0 448q0-99 44.5-184.5t117-142 164-89T512 0t186.5 32.5 164 89 117 142T1024 448z'/%3E%3C/svg%3E") top/contain no-repeat;-webkit-mask-position:top;mask-position:top;position:absolute;width:20px} .wp-block-group.is-style-group-info{--tw-border-opacity:1;border-color:rgb(250 249 247/var(--tw-border-opacity));border-width:1px;padding:1.5625rem} .is-style-whitepaper-primary-query.wp-block-query .is-layout-flow{list-style-type:none;padding:0}.is-style-whitepaper-primary-query.wp-block-query li .wp-block-group{padding:0!important}.is-style-whitepaper-primary-query.wp-block-query li .wp-block-post-title{font-size:1.125rem;font-style:normal;font-weight:500;margin-top:1rem}.is-style-whitepaper-primary-query.wp-block-query li .wp-block-post-title a{color:#1d1c29!important}.is-style-whitepaper-primary-query.wp-block-query li .wp-block-post-title a:hover{color:var(--color-primary-invictipurple)!important}@media (max-width:766px){.is-style-whitepaper-primary-query.wp-block-query .wp-block-post-template.is-flex-container.is-flex-container.columns-4>li{width:100%}}@media (min-width:767px) and (max-width:991px){.is-style-whitepaper-primary-query.wp-block-query .wp-block-post-template.is-flex-container.is-flex-container.columns-4>li{width:calc(50% - .9375em)}} .is-style-whitepaper-featured-query.wp-block-query .is-layout-flow{list-style-type:none;padding:0}.is-style-whitepaper-featured-query.wp-block-query li .wp-block-group{padding:0!important}.is-style-whitepaper-featured-query.wp-block-query li .wp-block-post-title{font-size:1.625rem;font-style:normal;font-weight:500;line-height:1.16;margin-bottom:0;margin-top:.625rem}.is-style-whitepaper-featured-query.wp-block-query li .wp-block-post-title a{color:#1d1c29!important}.is-style-whitepaper-featured-query.wp-block-query li .wp-block-post-title a:hover{color:var(--color-primary-invictipurple)!important}.is-style-whitepaper-featured-query.wp-block-query .wp-block-post-excerpt__excerpt{--tw-text-opacity:1;color:rgb(99 101 105/var(--tw-text-opacity));font-family:Circular XX,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:1rem;font-style:normal;font-weight:400;line-height:1.36;padding-bottom:1.875rem;padding-top:1.25rem} .is-style-webinar-primary-query.wp-block-query ul{list-style-type:none;padding-left:0}.is-style-webinar-primary-query.wp-block-query ul li{margin-bottom:2rem}.is-style-webinar-primary-query.wp-block-query .is-layout-flow{list-style-type:none;padding:0}.is-style-webinar-primary-query.wp-block-query li .wp-block-post-featured-image{min-height:160px}.is-style-webinar-primary-query.wp-block-query li .wp-block-post-title{font-size:1.125rem;font-style:normal;font-weight:500;margin-bottom:.3125rem;margin-top:1rem}.is-style-webinar-primary-query.wp-block-query li .wp-block-post-title a{--tw-text-opacity:1;color:rgb(16 24 32/var(--tw-text-opacity));transition-duration:.3s}.is-style-webinar-primary-query.wp-block-query li .wp-block-post-title a:hover{--tw-text-opacity:1;color:rgb(89 23 105/var(--tw-text-opacity))}@media (max-width:766px){.is-style-webinar-primary-query.wp-block-query .wp-block-post-template.is-flex-container.is-flex-container.columns-4>li{width:100%}}@media (min-width:767px) and (max-width:991px){.is-style-webinar-primary-query.wp-block-query .wp-block-post-template.is-flex-container.is-flex-container.columns-4>li{width:calc(50% - .9375em)}} @charset "UTF-8";.is-style-webinar-featured-query.wp-block-query .is-layout-flow{list-style-type:none;padding:0}.is-style-webinar-featured-query.wp-block-query li .wp-block-post-featured-image{margin-left:auto;margin-right:auto;max-width:600px}.is-style-webinar-featured-query.wp-block-query li .wp-block-post-title{font-size:1.25rem;font-style:normal;font-weight:500;line-height:1.16;margin-bottom:.625rem;margin-top:1.25rem}@media (min-width:767px){.is-style-webinar-featured-query.wp-block-query li .wp-block-post-title{margin-top:0}}@media (min-width:992px){.is-style-webinar-featured-query.wp-block-query li .wp-block-post-title{font-size:1.625rem}}.is-style-webinar-featured-query.wp-block-query li .wp-block-post-title a{--tw-text-opacity:1;color:rgb(16 24 32/var(--tw-text-opacity));transition-duration:.3s}.is-style-webinar-featured-query.wp-block-query li .wp-block-post-title a:hover{--tw-text-opacity:1;color:rgb(89 23 105/var(--tw-text-opacity))}.is-style-webinar-featured-query.wp-block-query li .wp-block-post-excerpt{margin-bottom:1.25rem;margin-top:1.25rem}.is-style-webinar-featured-query.wp-block-query li .wp-block-post-excerpt p{line-height:1.5}@media (min-width:992px){.is-style-webinar-featured-query.wp-block-query li .wp-block-post-excerpt p{font-size:.9375rem}}@media (min-width:1200px){.is-style-webinar-featured-query.wp-block-query li .wp-block-post-excerpt p{font-size:1rem}}.is-style-webinar-featured-query.wp-block-query li .wp-block-read-more{--tw-text-opacity:1;color:rgb(44 81 189/var(--tw-text-opacity));font-family:Circular XX,Helvetica Neue,Helvetica,Arial,sans-serif;font-weight:700;margin-bottom:0;position:relative}.is-style-webinar-featured-query.wp-block-query li .wp-block-read-more:hover{--tw-text-opacity:1;color:rgb(60 16 83/var(--tw-text-opacity))}.is-style-webinar-featured-query.wp-block-query li .wp-block-read-more:after{content:"▶";font-size:.875rem;margin-left:.3125rem} .wp-block-code.is-style-code-highlighter>code{border-style:none;padding:.625rem 0}.wp-block-code.is-style-code-highlighter>code .punctuation{--tw-text-opacity:1;color:rgb(16 24 32/var(--tw-text-opacity))}.wp-block-code.is-style-code-highlighter>code .line-numbers-rows{padding-bottom:.625rem;padding-top:.625rem}.wp-block-code.is-style-code-highlighter+.toolbar{right:.3em}.wp-block-code.is-style-code-highlighter+.toolbar>.toolbar-item>button{--tw-bg-opacity:1;--tw-text-opacity:1;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;background-color:rgb(177 177 178/var(--tw-bg-opacity));border-radius:.25rem;border-width:0;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow);color:rgb(255 255 255/var(--tw-text-opacity));line-height:1;padding:.25rem .625rem;text-transform:lowercase} </style> <style id='wp-block-library-theme-inline-css' type='text/css'> .wp-block-audio :where(figcaption){color:#555;font-size:13px;text-align:center}.is-dark-theme .wp-block-audio :where(figcaption){color:#ffffffa6}.wp-block-audio{margin:0 0 1em}.wp-block-code{border:1px solid #ccc;border-radius:4px;font-family:Menlo,Consolas,monaco,monospace;padding:.8em 1em}.wp-block-embed :where(figcaption){color:#555;font-size:13px;text-align:center}.is-dark-theme .wp-block-embed :where(figcaption){color:#ffffffa6}.wp-block-embed{margin:0 0 1em}.blocks-gallery-caption{color:#555;font-size:13px;text-align:center}.is-dark-theme .blocks-gallery-caption{color:#ffffffa6}:root :where(.wp-block-image figcaption){color:#555;font-size:13px;text-align:center}.is-dark-theme :root :where(.wp-block-image figcaption){color:#ffffffa6}.wp-block-image{margin:0 0 1em}.wp-block-pullquote{border-bottom:4px solid;border-top:4px solid;color:currentColor;margin-bottom:1.75em}.wp-block-pullquote cite,.wp-block-pullquote footer,.wp-block-pullquote__citation{color:currentColor;font-size:.8125em;font-style:normal;text-transform:uppercase}.wp-block-quote{border-left:.25em solid;margin:0 0 1.75em;padding-left:1em}.wp-block-quote cite,.wp-block-quote footer{color:currentColor;font-size:.8125em;font-style:normal;position:relative}.wp-block-quote.has-text-align-right{border-left:none;border-right:.25em solid;padding-left:0;padding-right:1em}.wp-block-quote.has-text-align-center{border:none;padding-left:0}.wp-block-quote.is-large,.wp-block-quote.is-style-large,.wp-block-quote.is-style-plain{border:none}.wp-block-search .wp-block-search__label{font-weight:700}.wp-block-search__button{border:1px solid #ccc;padding:.375em .625em}:where(.wp-block-group.has-background){padding:1.25em 2.375em}.wp-block-separator.has-css-opacity{opacity:.4}.wp-block-separator{border:none;border-bottom:2px solid;margin-left:auto;margin-right:auto}.wp-block-separator.has-alpha-channel-opacity{opacity:1}.wp-block-separator:not(.is-style-wide):not(.is-style-dots){width:100px}.wp-block-separator.has-background:not(.is-style-dots){border-bottom:none;height:1px}.wp-block-separator.has-background:not(.is-style-wide):not(.is-style-dots){height:2px}.wp-block-table{margin:0 0 1em}.wp-block-table td,.wp-block-table th{word-break:normal}.wp-block-table :where(figcaption){color:#555;font-size:13px;text-align:center}.is-dark-theme .wp-block-table :where(figcaption){color:#ffffffa6}.wp-block-video :where(figcaption){color:#555;font-size:13px;text-align:center}.is-dark-theme .wp-block-video :where(figcaption){color:#ffffffa6}.wp-block-video{margin:0 0 1em}:root :where(.wp-block-template-part.has-background){margin-bottom:0;margin-top:0;padding:1.25em 2.375em} </style> <script type="text/javascript" id="app-footer-js" nonce="wo123jejr234982dfn">!function(){"use strict";var r,n={},t={};function e(r){var o=t[r];if(void 0!==o)return o.exports;var u=t[r]={exports:{}};return n[r](u,u.exports,e),u.exports}e.m=n,r=[],e.O=function(n,t,o,u){if(!t){var i=1/0;for(s=0;s<r.length;s++){t=r[s][0],o=r[s][1],u=r[s][2];for(var f=!0,c=0;c<t.length;c++)(!1&u||i>=u)&&Object.keys(e.O).every((function(r){return e.O[r](t[c])}))?t.splice(c--,1):(f=!1,u<i&&(i=u));if(f){r.splice(s--,1);var a=o();void 0!==a&&(n=a)}}return n}u=u||0;for(var s=r.length;s>0&&r[s-1][2]>u;s--)r[s]=r[s-1];r[s]=[t,o,u]},e.o=function(r,n){return Object.prototype.hasOwnProperty.call(r,n)},function(){var r={8546:0,8138:0,9049:0,4522:0,8056:0,3626:0,2917:0,7260:0,7484:0,995:0,5398:0,1697:0,3896:0,687:0,7555:0,3206:0,9484:0,1120:0,4167:0,9774:0,3615:0,2229:0,9944:0,1785:0,196:0,896:0,1548:0,2651:0,1739:0,7532:0,1891:0,9047:0,7368:0,6469:0,2078:0,3415:0,8320:0,1010:0,4906:0,2855:0,4098:0,973:0,8201:0,7089:0,6840:0,3770:0,8043:0,4216:0,226:0,383:0,2285:0,6045:0,6567:0,1575:0,1855:0,9489:0,7215:0,4674:0,5177:0,9190:0,9402:0,4346:0,175:0,1121:0,6231:0,4055:0,5517:0,4298:0,7695:0,7916:0,8947:0,4915:0,547:0,7258:0,8624:0,2039:0,7381:0,7123:0,5839:0,3501:0,2132:0,1518:0,530:0,148:0,1909:0,5605:0,3375:0,188:0,1981:0,6362:0,798:0,2212:0,5950:0,8517:0,7991:0,5551:0,2125:0,1099:0,9331:0,5760:0,2126:0,4692:0,495:0,4777:0,961:0,9598:0,2845:0,2019:0,2879:0,2365:0};e.O.j=function(n){return 0===r[n]};var n=function(n,t){var o,u,i=t[0],f=t[1],c=t[2],a=0;if(i.some((function(n){return 0!==r[n]}))){for(o in f)e.o(f,o)&&(e.m[o]=f[o]);if(c)var s=c(e)}for(n&&n(t);a<i.length;a++)u=i[a],e.o(r,u)&&r[u]&&r[u][0](),r[i[a]]=0;return e.O(s)},t=self.webpackChunk=self.webpackChunk||[];t.forEach(n.bind(null,0)),t.push=n.bind(null,t.push.bind(t))}()}(); !function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):t.lozad=e()}(this,(function(){"use strict";var t="undefined"!=typeof document&&document.documentMode,e={rootMargin:"0px",threshold:0,load:function(e){if("picture"===e.nodeName.toLowerCase()){var r=e.querySelector("img"),a=!1;null===r&&(r=document.createElement("img"),a=!0),t&&e.getAttribute("data-iesrc")&&(r.src=e.getAttribute("data-iesrc")),e.getAttribute("data-alt")&&(r.alt=e.getAttribute("data-alt")),a&&e.append(r)}if("video"===e.nodeName.toLowerCase()&&!e.getAttribute("data-src")&&e.children){for(var o=e.children,i=void 0,n=0;n<=o.length-1;n++)(i=o[n].getAttribute("data-src"))&&(o[n].src=i);e.load()}e.getAttribute("data-poster")&&(e.poster=e.getAttribute("data-poster")),e.getAttribute("data-src")&&(e.src=e.getAttribute("data-src")),e.getAttribute("data-srcset")&&e.setAttribute("srcset",e.getAttribute("data-srcset"));var d=",";if(e.getAttribute("data-background-delimiter")&&(d=e.getAttribute("data-background-delimiter")),e.getAttribute("data-background-image"))e.style.backgroundImage="url('"+e.getAttribute("data-background-image").split(d).join("'),url('")+"')";else if(e.getAttribute("data-background-image-set")){var u=e.getAttribute("data-background-image-set").split(d),g=u[0].substr(0,u[0].indexOf(" "))||u[0];g=-1===g.indexOf("url(")?"url("+g+")":g,1===u.length?e.style.backgroundImage=g:e.setAttribute("style",(e.getAttribute("style")||"")+"background-image: "+g+"; background-image: -webkit-image-set("+u+"); background-image: image-set("+u+")")}e.getAttribute("data-toggle-class")&&e.classList.toggle(e.getAttribute("data-toggle-class"))},loaded:function(){}};function r(t){t.setAttribute("data-loaded",!0)}var a=function(t){return"true"===t.getAttribute("data-loaded")},o=function(t){var e=1<arguments.length&&void 0!==arguments[1]?arguments[1]:document;return t instanceof Element?[t]:t instanceof NodeList?t:e.querySelectorAll(t)};return function(){var t,i,n=0<arguments.length&&void 0!==arguments[0]?arguments[0]:".lozad",d=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{},u=Object.assign({},e,d),g=u.root,s=u.rootMargin,c=u.threshold,l=u.load,b=u.loaded,f=void 0;"undefined"!=typeof window&&window.IntersectionObserver&&(f=new IntersectionObserver((t=l,i=b,function(e,o){e.forEach((function(e){(0<e.intersectionRatio||e.isIntersecting)&&(o.unobserve(e.target),a(e.target)||(t(e.target),r(e.target),i(e.target)))}))}),{root:g,rootMargin:s,threshold:c}));for(var A,m=o(n,g),v=0;v<m.length;v++)(A=m[v]).getAttribute("data-placeholder-background")&&(A.style.background=A.getAttribute("data-placeholder-background"));return{observe:function(){for(var t=o(n,g),e=0;e<t.length;e++)a(t[e])||(f?f.observe(t[e]):(l(t[e]),r(t[e]),b(t[e])))},triggerLoad:function(t){a(t)||(l(t),r(t),b(t))},observer:f}}})); !function(e){var n;if("function"==typeof define&&define.amd&&(define(e),n=!0),"object"==typeof exports&&(module.exports=e(),n=!0),!n){var t=window.Cookies,o=window.Cookies=e();o.noConflict=function(){return window.Cookies=t,o}}}((function(){function e(){for(var e=0,n={};e<arguments.length;e++){var t=arguments[e];for(var o in t)n[o]=t[o]}return n}function n(e){return e.replace(/(%[0-9A-Z]{2})+/g,decodeURIComponent)}return function t(o){function r(){}function i(n,t,i){if("undefined"!=typeof document){"number"==typeof(i=e({path:"/"},r.defaults,i)).expires&&(i.expires=new Date(1*new Date+864e5*i.expires)),i.expires=i.expires?i.expires.toUTCString():"";try{var c=JSON.stringify(t);/^[\{\[]/.test(c)&&(t=c)}catch(e){}t=o.write?o.write(t,n):encodeURIComponent(String(t)).replace(/%(23|24|26|2B|3A|3C|3E|3D|2F|3F|40|5B|5D|5E|60|7B|7D|7C)/g,decodeURIComponent),n=encodeURIComponent(String(n)).replace(/%(23|24|26|2B|5E|60|7C)/g,decodeURIComponent).replace(/[\(\)]/g,escape);var f="";for(var u in i)i[u]&&(f+="; "+u,!0!==i[u]&&(f+="="+i[u].split(";")[0]));return document.cookie=n+"="+t+f}}function c(e,t){if("undefined"!=typeof document){for(var r={},i=document.cookie?document.cookie.split("; "):[],c=0;c<i.length;c++){var f=i[c].split("="),u=f.slice(1).join("=");t||'"'!==u.charAt(0)||(u=u.slice(1,-1));try{var a=n(f[0]);if(u=(o.read||o)(u,a)||n(u),t)try{u=JSON.parse(u)}catch(e){}if(r[a]=u,e===a)break}catch(e){}}return e?r[e]:r}}return r.set=i,r.get=function(e){return c(e,!1)},r.getJSON=function(e){return c(e,!0)},r.remove=function(n,t){i(n,"",e(t,{expires:-1}))},r.defaults={},r.withConverter=t,r}((function(){}))})); (self.webpackChunk=self.webpackChunk||[]).push([[9742],{4006:function(){var e=function(){"use strict";var e={},t=[];return e.extend=function(t,o){e[t]=o},e.init=function(e){t.push(e)},e.getAll=function(){return e},e.on=function(e,t,o,n){if(!e)throw new Error("Please provide an element to attach the event to.");if(!t)throw new Error("Please provide an event to listen for.");if(!o||"function"!=typeof o)throw new Error("Please provide a valid callback function to run");e.addEventListener(t,o,n||!1)},e.off=function(e,t){e.removeEventListener(t,t)},e.imageLazyLoading=function(){lozad(".lozad",{rootMargin:"300px",threshold:0}).observe()},e.pageSettings=function(){var e=0,t=document.querySelector(":root"),o=document.querySelector(".site-footer"),n=document.querySelector(".site-header");if(n){var i=n.offsetHeight;e+=i,t.style.setProperty("--header-height",i+"px")}if(o){var a=o.offsetHeight;e+=a,t.style.setProperty("--footer-height",a+"px")}t.style.setProperty("--add-height",e+"px")},e.ready=function(){var e=new Event("ready");document.dispatchEvent(e)},document.addEventListener("DOMContentLoaded",e.ready),e.init(e.imageLazyLoading),e.init(e.pageSettings),window.onload=function(){e.pageSettings()},window.onresize=function(){e.pageSettings()},document.addEventListener("DOMContentLoaded",(function(){t.forEach((function(e){e.call()}))})),e}();window.App=e,e.init((function(){var e=document.getElementById("cookie-notice-bar"),t=e.getElementsByClassName("cookie-notice-button")[0],o=new Event("cookiesAllowed");Cookies.get("cookiebar")||e.classList.add("active"),t.onclick=function(){Cookies.set("cookiebar","hide",{expires:999}),window.dispatchEvent(o)},window.addEventListener("cookiesAllowed",(function(t){t.preventDefault(),e.classList.remove("active")}),!1)})),e.extend("utm",{nsUtmKeys:["utm_source","utm_campaign","utm_medium","utm_content","utm_term","utm_concept","vwo_id","vwo_variation","gclid"],localStoragePrefix:"",localStorageLandingPageKey:"ns_landing_page_key",localStorageReferrerKey:"referrerUrl",saveUtmDataToLocalStorage:function(){var e=this;try{var t=new URLSearchParams(window.location.search);this.nsUtmKeys.forEach((function(o){!0===t.has(o)&&null!=t.get(o)&&"null"!=t.get(o)&&localStorage.setItem(e.localStoragePrefix+o,t.get(o))})),Cookies.get(this.localStorageLandingPageKey)||(Cookies.set(this.localStorageLandingPageKey,window.location.protocol+"//"+window.location.host+window.location.pathname,{expires:1/48}),e.saveReferrer())}catch(e){console.error(e)}},saveReferrer:function(){var e=this,t=document.referrer;""!==t&&(t=(t=(t=(t=t.replace("http://","")).replace("https://","")).replace("www.","")).replace("/","")),localStorage.setItem(this.localStorageReferrerKey,t);var o=localStorage.getItem(e.localStoragePrefix+"utm_source");if(""!==t&&(null===o||""==o)){var n=e.getSearchEngine(t);localStorage.setItem(e.localStoragePrefix+"utm_source",n),localStorage.setItem(e.localStoragePrefix+"utm_medium",n!=t?"organic":"referral")}""!==t&&-1===t.indexOf("invicti.com")||null!==o&&""!=o||(localStorage.setItem(e.localStoragePrefix+"utm_source","direct"),localStorage.setItem(e.localStoragePrefix+"utm_medium","direct"))},getSearchEngine:function(e){return null==e?e:-1!=e.indexOf("google")?"google":-1!=e.indexOf("bing.com")?"bing":-1!=e.indexOf("duckduckgo.com")?"duckduckgo":-1!=e.indexOf("yahoo")?"yahoo":-1!=e.indexOf("baidu.com")?"baidu":-1!=e.indexOf("ecosia.org")?"ecosia.org ":-1!=e.indexOf("yandex")?"yandex":-1!=e.indexOf("qwant.com")?"qwant":-1!=e.indexOf("naver.com")?"naver":-1!=e.indexOf("ask")?"ask.com ":-1!=e.indexOf("so.com")?"so.com ":-1!=e.indexOf("sogou.com")?"sogou":e},vwoInit:function(){window.VWO=window.VWO||[],window.VWO.push(["onVariationApplied",function(e){if(e){var t=e[1],o=e[2];if(void 0!==window._vwo_exp[t].comb_n[o]&&["VISUAL_AB","VISUAL","SPLIT_URL","SURVEY"].indexOf(window._vwo_exp[t].type)>-1){var n=parseInt(sessionStorage.getItem("ns_vwo_id"),10);(isNaN(n)||n>t)&&(sessionStorage.setItem("ns_vwo_id",t),sessionStorage.setItem("ns_vwo_variation",o))}}}])},init:function(){var t=e.utm;t.vwoInit(),t.saveUtmDataToLocalStorage()}}),e.init(e.utm.init),e.init((function(){"function"==typeof WOW&&new WOW({boxClass:"wow",animateClass:"animated",offset:165,mobile:!1,live:!1}).init()})),e.init((function(){var e=document.querySelector(".invicti-bar"),t=localStorage.getItem("hello_bar");if(e&&(null==t||"hide"!==t)){var o=document.querySelector(".bar-close"),n=document.querySelector("body"),i=document.querySelector(".transparent-header");n.classList.add("invicti-bar-active"),i&&n.classList.add("transparent-header-active"),o.addEventListener("click",(function(){localStorage.setItem("hello_bar","hide"),n.classList.remove("invicti-bar-active"),n.classList.remove("transparent-header-active")}))}}))}},function(e){var t;t=4006,e(e.s=t)}]); /* PrismJS 1.29.0 https://prismjs.com/download.html#themes=prism&languages=markup+css+clike+javascript+aspnet+c+csharp+graphql+java+json+json5+jsonp+markup-templating+nginx+php+python+regex+ruby+sql&plugins=line-numbers+toolbar+copy-to-clipboard */ var _self="undefined"!=typeof window?window:"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?self:{},Prism=function(e){var n=/(?:^|\s)lang(?:uage)?-([\w-]+)(?=\s|$)/i,t=0,r={},a={manual:e.Prism&&e.Prism.manual,disableWorkerMessageHandler:e.Prism&&e.Prism.disableWorkerMessageHandler,util:{encode:function e(n){return n instanceof i?new i(n.type,e(n.content),n.alias):Array.isArray(n)?n.map(e):n.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/\u00a0/g," ")},type:function(e){return Object.prototype.toString.call(e).slice(8,-1)},objId:function(e){return e.__id||Object.defineProperty(e,"__id",{value:++t}),e.__id},clone:function e(n,t){var r,i;switch(t=t||{},a.util.type(n)){case"Object":if(i=a.util.objId(n),t[i])return t[i];for(var l in r={},t[i]=r,n)n.hasOwnProperty(l)&&(r[l]=e(n[l],t));return r;case"Array":return i=a.util.objId(n),t[i]?t[i]:(r=[],t[i]=r,n.forEach((function(n,a){r[a]=e(n,t)})),r);default:return n}},getLanguage:function(e){for(;e;){var t=n.exec(e.className);if(t)return t[1].toLowerCase();e=e.parentElement}return"none"},setLanguage:function(e,t){e.className=e.className.replace(RegExp(n,"gi"),""),e.classList.add("language-"+t)},currentScript:function(){if("undefined"==typeof document)return null;if("currentScript"in document)return document.currentScript;try{throw new Error}catch(r){var e=(/at [^(\r\n]*\((.*):[^:]+:[^:]+\)$/i.exec(r.stack)||[])[1];if(e){var n=document.getElementsByTagName("script");for(var t in n)if(n[t].src==e)return n[t]}return null}},isActive:function(e,n,t){for(var r="no-"+n;e;){var a=e.classList;if(a.contains(n))return!0;if(a.contains(r))return!1;e=e.parentElement}return!!t}},languages:{plain:r,plaintext:r,text:r,txt:r,extend:function(e,n){var t=a.util.clone(a.languages[e]);for(var r in n)t[r]=n[r];return t},insertBefore:function(e,n,t,r){var i=(r=r||a.languages)[e],l={};for(var o in i)if(i.hasOwnProperty(o)){if(o==n)for(var s in t)t.hasOwnProperty(s)&&(l[s]=t[s]);t.hasOwnProperty(o)||(l[o]=i[o])}var u=r[e];return r[e]=l,a.languages.DFS(a.languages,(function(n,t){t===u&&n!=e&&(this[n]=l)})),l},DFS:function e(n,t,r,i){i=i||{};var l=a.util.objId;for(var o in n)if(n.hasOwnProperty(o)){t.call(n,o,n[o],r||o);var s=n[o],u=a.util.type(s);"Object"!==u||i[l(s)]?"Array"!==u||i[l(s)]||(i[l(s)]=!0,e(s,t,o,i)):(i[l(s)]=!0,e(s,t,null,i))}}},plugins:{},highlightAll:function(e,n){a.highlightAllUnder(document,e,n)},highlightAllUnder:function(e,n,t){var r={callback:t,container:e,selector:'code[class*="language-"], [class*="language-"] code, code[class*="lang-"], [class*="lang-"] code'};a.hooks.run("before-highlightall",r),r.elements=Array.prototype.slice.apply(r.container.querySelectorAll(r.selector)),a.hooks.run("before-all-elements-highlight",r);for(var i,l=0;i=r.elements[l++];)a.highlightElement(i,!0===n,r.callback)},highlightElement:function(n,t,r){var i=a.util.getLanguage(n),l=a.languages[i];a.util.setLanguage(n,i);var o=n.parentElement;o&&"pre"===o.nodeName.toLowerCase()&&a.util.setLanguage(o,i);var s={element:n,language:i,grammar:l,code:n.textContent};function u(e){s.highlightedCode=e,a.hooks.run("before-insert",s),s.element.innerHTML=s.highlightedCode,a.hooks.run("after-highlight",s),a.hooks.run("complete",s),r&&r.call(s.element)}if(a.hooks.run("before-sanity-check",s),(o=s.element.parentElement)&&"pre"===o.nodeName.toLowerCase()&&!o.hasAttribute("tabindex")&&o.setAttribute("tabindex","0"),!s.code)return a.hooks.run("complete",s),void(r&&r.call(s.element));if(a.hooks.run("before-highlight",s),s.grammar)if(t&&e.Worker){var c=new Worker(a.filename);c.onmessage=function(e){u(e.data)},c.postMessage(JSON.stringify({language:s.language,code:s.code,immediateClose:!0}))}else u(a.highlight(s.code,s.grammar,s.language));else u(a.util.encode(s.code))},highlight:function(e,n,t){var r={code:e,grammar:n,language:t};if(a.hooks.run("before-tokenize",r),!r.grammar)throw new Error('The language "'+r.language+'" has no grammar.');return r.tokens=a.tokenize(r.code,r.grammar),a.hooks.run("after-tokenize",r),i.stringify(a.util.encode(r.tokens),r.language)},tokenize:function(e,n){var t=n.rest;if(t){for(var r in t)n[r]=t[r];delete n.rest}var a=new s;return u(a,a.head,e),o(e,a,n,a.head,0),function(e){for(var n=[],t=e.head.next;t!==e.tail;)n.push(t.value),t=t.next;return n}(a)},hooks:{all:{},add:function(e,n){var t=a.hooks.all;t[e]=t[e]||[],t[e].push(n)},run:function(e,n){var t=a.hooks.all[e];if(t&&t.length)for(var r,i=0;r=t[i++];)r(n)}},Token:i};function i(e,n,t,r){this.type=e,this.content=n,this.alias=t,this.length=0|(r||"").length}function l(e,n,t,r){e.lastIndex=n;var a=e.exec(t);if(a&&r&&a[1]){var i=a[1].length;a.index+=i,a[0]=a[0].slice(i)}return a}function o(e,n,t,r,s,g){for(var f in t)if(t.hasOwnProperty(f)&&t[f]){var h=t[f];h=Array.isArray(h)?h:[h];for(var d=0;d<h.length;++d){if(g&&g.cause==f+","+d)return;var v=h[d],p=v.inside,m=!!v.lookbehind,y=!!v.greedy,k=v.alias;if(y&&!v.pattern.global){var x=v.pattern.toString().match(/[imsuy]*$/)[0];v.pattern=RegExp(v.pattern.source,x+"g")}for(var b=v.pattern||v,w=r.next,A=s;w!==n.tail&&!(g&&A>=g.reach);A+=w.value.length,w=w.next){var E=w.value;if(n.length>e.length)return;if(!(E instanceof i)){var P,L=1;if(y){if(!(P=l(b,A,e,m))||P.index>=e.length)break;var S=P.index,O=P.index+P[0].length,j=A;for(j+=w.value.length;S>=j;)j+=(w=w.next).value.length;if(A=j-=w.value.length,w.value instanceof i)continue;for(var C=w;C!==n.tail&&(j<O||"string"==typeof C.value);C=C.next)L++,j+=C.value.length;L--,E=e.slice(A,j),P.index-=A}else if(!(P=l(b,0,E,m)))continue;S=P.index;var N=P[0],_=E.slice(0,S),M=E.slice(S+N.length),W=A+E.length;g&&W>g.reach&&(g.reach=W);var z=w.prev;if(_&&(z=u(n,z,_),A+=_.length),c(n,z,L),w=u(n,z,new i(f,p?a.tokenize(N,p):N,k,N)),M&&u(n,w,M),L>1){var I={cause:f+","+d,reach:W};o(e,n,t,w.prev,A,I),g&&I.reach>g.reach&&(g.reach=I.reach)}}}}}}function s(){var e={value:null,prev:null,next:null},n={value:null,prev:e,next:null};e.next=n,this.head=e,this.tail=n,this.length=0}function u(e,n,t){var r=n.next,a={value:t,prev:n,next:r};return n.next=a,r.prev=a,e.length++,a}function c(e,n,t){for(var r=n.next,a=0;a<t&&r!==e.tail;a++)r=r.next;n.next=r,r.prev=n,e.length-=a}if(e.Prism=a,i.stringify=function e(n,t){if("string"==typeof n)return n;if(Array.isArray(n)){var r="";return n.forEach((function(n){r+=e(n,t)})),r}var i={type:n.type,content:e(n.content,t),tag:"span",classes:["token",n.type],attributes:{},language:t},l=n.alias;l&&(Array.isArray(l)?Array.prototype.push.apply(i.classes,l):i.classes.push(l)),a.hooks.run("wrap",i);var o="";for(var s in i.attributes)o+=" "+s+'="'+(i.attributes[s]||"").replace(/"/g,"&quot;")+'"';return"<"+i.tag+' class="'+i.classes.join(" ")+'"'+o+">"+i.content+"</"+i.tag+">"},!e.document)return e.addEventListener?(a.disableWorkerMessageHandler||e.addEventListener("message",(function(n){var t=JSON.parse(n.data),r=t.language,i=t.code,l=t.immediateClose;e.postMessage(a.highlight(i,a.languages[r],r)),l&&e.close()}),!1),a):a;var g=a.util.currentScript();function f(){a.manual||a.highlightAll()}if(g&&(a.filename=g.src,g.hasAttribute("data-manual")&&(a.manual=!0)),!a.manual){var h=document.readyState;"loading"===h||"interactive"===h&&g&&g.defer?document.addEventListener("DOMContentLoaded",f):window.requestAnimationFrame?window.requestAnimationFrame(f):window.setTimeout(f,16)}return a}(_self);"undefined"!=typeof module&&module.exports&&(module.exports=Prism),"undefined"!=typeof global&&(global.Prism=Prism); Prism.languages.markup={comment:{pattern:/<!--(?:(?!<!--)[\s\S])*?-->/,greedy:!0},prolog:{pattern:/<\?[\s\S]+?\?>/,greedy:!0},doctype:{pattern:/<!DOCTYPE(?:[^>"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:[^<"'\]]|"[^"]*"|'[^']*'|<(?!!--)|<!--(?:[^-]|-(?!->))*-->)*\]\s*)?>/i,greedy:!0,inside:{"internal-subset":{pattern:/(^[^\[]*\[)[\s\S]+(?=\]>$)/,lookbehind:!0,greedy:!0,inside:null},string:{pattern:/"[^"]*"|'[^']*'/,greedy:!0},punctuation:/^<!|>$|[[\]]/,"doctype-tag":/^DOCTYPE/i,name:/[^\s<>'"]+/}},cdata:{pattern:/<!\[CDATA\[[\s\S]*?\]\]>/i,greedy:!0},tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/,greedy:!0,inside:{tag:{pattern:/^<\/?[^\s>\/]+/,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"special-attr":[],"attr-value":{pattern:/=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/,inside:{punctuation:[{pattern:/^=/,alias:"attr-equals"},{pattern:/^(\s*)["']|["']$/,lookbehind:!0}]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:[{pattern:/&[\da-z]{1,8};/i,alias:"named-entity"},/&#x?[\da-f]{1,8};/i]},Prism.languages.markup.tag.inside["attr-value"].inside.entity=Prism.languages.markup.entity,Prism.languages.markup.doctype.inside["internal-subset"].inside=Prism.languages.markup,Prism.hooks.add("wrap",(function(a){"entity"===a.type&&(a.attributes.title=a.content.replace(/&amp;/,"&"))})),Object.defineProperty(Prism.languages.markup.tag,"addInlined",{value:function(a,e){var s={};s["language-"+e]={pattern:/(^<!\[CDATA\[)[\s\S]+?(?=\]\]>$)/i,lookbehind:!0,inside:Prism.languages[e]},s.cdata=/^<!\[CDATA\[|\]\]>$/i;var t={"included-cdata":{pattern:/<!\[CDATA\[[\s\S]*?\]\]>/i,inside:s}};t["language-"+e]={pattern:/[\s\S]+/,inside:Prism.languages[e]};var n={};n[a]={pattern:RegExp("(<__[^>]*>)(?:<!\\[CDATA\\[(?:[^\\]]|\\](?!\\]>))*\\]\\]>|(?!<!\\[CDATA\\[)[^])*?(?=</__>)".replace(/__/g,(function(){return a})),"i"),lookbehind:!0,greedy:!0,inside:t},Prism.languages.insertBefore("markup","cdata",n)}}),Object.defineProperty(Prism.languages.markup.tag,"addAttribute",{value:function(a,e){Prism.languages.markup.tag.inside["special-attr"].push({pattern:RegExp("(^|[\"'\\s])(?:"+a+")\\s*=\\s*(?:\"[^\"]*\"|'[^']*'|[^\\s'\">=]+(?=[\\s>]))","i"),lookbehind:!0,inside:{"attr-name":/^[^\s=]+/,"attr-value":{pattern:/=[\s\S]+/,inside:{value:{pattern:/(^=\s*(["']|(?!["'])))\S[\s\S]*(?=\2$)/,lookbehind:!0,alias:[e,"language-"+e],inside:Prism.languages[e]},punctuation:[{pattern:/^=/,alias:"attr-equals"},/"|'/]}}}})}}),Prism.languages.html=Prism.languages.markup,Prism.languages.mathml=Prism.languages.markup,Prism.languages.svg=Prism.languages.markup,Prism.languages.xml=Prism.languages.extend("markup",{}),Prism.languages.ssml=Prism.languages.xml,Prism.languages.atom=Prism.languages.xml,Prism.languages.rss=Prism.languages.xml; !function(s){var e=/(?:"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n])*')/;s.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:RegExp("@[\\w-](?:[^;{\\s\"']|\\s+(?!\\s)|"+e.source+")*?(?:;|(?=\\s*\\{))"),inside:{rule:/^@[\w-]+/,"selector-function-argument":{pattern:/(\bselector\s*\(\s*(?![\s)]))(?:[^()\s]|\s+(?![\s)])|\((?:[^()]|\([^()]*\))*\))+(?=\s*\))/,lookbehind:!0,alias:"selector"},keyword:{pattern:/(^|[^\w-])(?:and|not|only|or)(?![\w-])/,lookbehind:!0}}},url:{pattern:RegExp("\\burl\\((?:"+e.source+"|(?:[^\\\\\r\n()\"']|\\\\[^])*)\\)","i"),greedy:!0,inside:{function:/^url/i,punctuation:/^\(|\)$/,string:{pattern:RegExp("^"+e.source+"$"),alias:"url"}}},selector:{pattern:RegExp("(^|[{}\\s])[^{}\\s](?:[^{};\"'\\s]|\\s+(?![\\s{])|"+e.source+")*(?=\\s*\\{)"),lookbehind:!0},string:{pattern:e,greedy:!0},property:{pattern:/(^|[^-\w\xA0-\uFFFF])(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*(?=\s*:)/i,lookbehind:!0},important:/!important\b/i,function:{pattern:/(^|[^-a-z0-9])[-a-z0-9]+(?=\()/i,lookbehind:!0},punctuation:/[(){};:,]/},s.languages.css.atrule.inside.rest=s.languages.css;var t=s.languages.markup;t&&(t.tag.addInlined("style","css"),t.tag.addAttribute("style","css"))}(Prism); Prism.languages.clike={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:!0,greedy:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"class-name":{pattern:/(\b(?:class|extends|implements|instanceof|interface|new|trait)\s+|\bcatch\s+\()[\w.\\]+/i,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:break|catch|continue|do|else|finally|for|function|if|in|instanceof|new|null|return|throw|try|while)\b/,boolean:/\b(?:false|true)\b/,function:/\b\w+(?=\()/,number:/\b0x[\da-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?/i,operator:/[<>]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/,punctuation:/[{}[\];(),.:]/}; Prism.languages.javascript=Prism.languages.extend("clike",{"class-name":[Prism.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$A-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\.(?:constructor|prototype))/,lookbehind:!0}],keyword:[{pattern:/((?:^|\})\s*)catch\b/,lookbehind:!0},{pattern:/(^|[^.]|\.\.\.\s*)\b(?:as|assert(?=\s*\{)|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally(?=\s*(?:\{|$))|for|from(?=\s*(?:['"]|$))|function|(?:get|set)(?=\s*(?:[#\[$\w\xA0-\uFFFF]|$))|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],function:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,number:{pattern:RegExp("(^|[^\\w$])(?:NaN|Infinity|0[bB][01]+(?:_[01]+)*n?|0[oO][0-7]+(?:_[0-7]+)*n?|0[xX][\\dA-Fa-f]+(?:_[\\dA-Fa-f]+)*n?|\\d+(?:_\\d+)*n|(?:\\d+(?:_\\d+)*(?:\\.(?:\\d+(?:_\\d+)*)?)?|\\.\\d+(?:_\\d+)*)(?:[Ee][+-]?\\d+(?:_\\d+)*)?)(?![\\w$])"),lookbehind:!0},operator:/--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/}),Prism.languages.javascript["class-name"][0].pattern=/(\b(?:class|extends|implements|instanceof|interface|new)\s+)[\w.\\]+/,Prism.languages.insertBefore("javascript","keyword",{regex:{pattern:RegExp("((?:^|[^$\\w\\xA0-\\uFFFF.\"'\\])\\s]|\\b(?:return|yield))\\s*)/(?:(?:\\[(?:[^\\]\\\\\r\n]|\\\\.)*\\]|\\\\.|[^/\\\\\\[\r\n])+/[dgimyus]{0,7}|(?:\\[(?:[^[\\]\\\\\r\n]|\\\\.|\\[(?:[^[\\]\\\\\r\n]|\\\\.|\\[(?:[^[\\]\\\\\r\n]|\\\\.)*\\])*\\])*\\]|\\\\.|[^/\\\\\\[\r\n])+/[dgimyus]{0,7}v[dgimyus]{0,7})(?=(?:\\s|/\\*(?:[^*]|\\*(?!/))*\\*/)*(?:$|[\r\n,.;:})\\]]|//))"),lookbehind:!0,greedy:!0,inside:{"regex-source":{pattern:/^(\/)[\s\S]+(?=\/[a-z]*$)/,lookbehind:!0,alias:"language-regex",inside:Prism.languages.regex},"regex-delimiter":/^\/|\/$/,"regex-flags":/^[a-z]+$/}},"function-variable":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)?\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\))/,lookbehind:!0,inside:Prism.languages.javascript},{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,lookbehind:!0,inside:Prism.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,lookbehind:!0,inside:Prism.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*)\(\s*|\]\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*\{)/,lookbehind:!0,inside:Prism.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/}),Prism.languages.insertBefore("javascript","string",{hashbang:{pattern:/^#!.*/,greedy:!0,alias:"comment"},"template-string":{pattern:/`(?:\\[\s\S]|\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}|(?!\$\{)[^\\`])*`/,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},rest:Prism.languages.javascript}},string:/[\s\S]+/}},"string-property":{pattern:/((?:^|[,{])[ \t]*)(["'])(?:\\(?:\r\n|[\s\S])|(?!\2)[^\\\r\n])*\2(?=\s*:)/m,lookbehind:!0,greedy:!0,alias:"property"}}),Prism.languages.insertBefore("javascript","operator",{"literal-property":{pattern:/((?:^|[,{])[ \t]*)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/m,lookbehind:!0,alias:"property"}}),Prism.languages.markup&&(Prism.languages.markup.tag.addInlined("script","javascript"),Prism.languages.markup.tag.addAttribute("on(?:abort|blur|change|click|composition(?:end|start|update)|dblclick|error|focus(?:in|out)?|key(?:down|up)|load|mouse(?:down|enter|leave|move|out|over|up)|reset|resize|scroll|select|slotchange|submit|unload|wheel)","javascript")),Prism.languages.js=Prism.languages.javascript; !function(e){function n(e,n){return e.replace(/<<(\d+)>>/g,(function(e,s){return"(?:"+n[+s]+")"}))}function s(e,s,a){return RegExp(n(e,s),a||"")}function a(e,n){for(var s=0;s<n;s++)e=e.replace(/<<self>>/g,(function(){return"(?:"+e+")"}));return e.replace(/<<self>>/g,"[^\\s\\S]")}var t="bool byte char decimal double dynamic float int long object sbyte short string uint ulong ushort var void",r="class enum interface record struct",i="add alias and ascending async await by descending from(?=\\s*(?:\\w|$)) get global group into init(?=\\s*;) join let nameof not notnull on or orderby partial remove select set unmanaged value when where with(?=\\s*{)",o="abstract as base break case catch checked const continue default delegate do else event explicit extern finally fixed for foreach goto if implicit in internal is lock namespace new null operator out override params private protected public readonly ref return sealed sizeof stackalloc static switch this throw try typeof unchecked unsafe using virtual volatile while yield";function l(e){return"\\b(?:"+e.trim().replace(/ /g,"|")+")\\b"}var d=l(r),p=RegExp(l(t+" "+r+" "+i+" "+o)),c=l(r+" "+i+" "+o),u=l(t+" "+r+" "+o),g=a("<(?:[^<>;=+\\-*/%&|^]|<<self>>)*>",2),b=a("\\((?:[^()]|<<self>>)*\\)",2),h="@?\\b[A-Za-z_]\\w*\\b",f=n("<<0>>(?:\\s*<<1>>)?",[h,g]),m=n("(?!<<0>>)<<1>>(?:\\s*\\.\\s*<<1>>)*",[c,f]),k="\\[\\s*(?:,\\s*)*\\]",y=n("<<0>>(?:\\s*(?:\\?\\s*)?<<1>>)*(?:\\s*\\?)?",[m,k]),w=n("[^,()<>[\\];=+\\-*/%&|^]|<<0>>|<<1>>|<<2>>",[g,b,k]),v=n("\\(<<0>>+(?:,<<0>>+)+\\)",[w]),x=n("(?:<<0>>|<<1>>)(?:\\s*(?:\\?\\s*)?<<2>>)*(?:\\s*\\?)?",[v,m,k]),$={keyword:p,punctuation:/[<>()?,.:[\]]/},_="'(?:[^\r\n'\\\\]|\\\\.|\\\\[Uux][\\da-fA-F]{1,8})'",B='"(?:\\\\.|[^\\\\"\r\n])*"';e.languages.csharp=e.languages.extend("clike",{string:[{pattern:s("(^|[^$\\\\])<<0>>",['@"(?:""|\\\\[^]|[^\\\\"])*"(?!")']),lookbehind:!0,greedy:!0},{pattern:s("(^|[^@$\\\\])<<0>>",[B]),lookbehind:!0,greedy:!0}],"class-name":[{pattern:s("(\\busing\\s+static\\s+)<<0>>(?=\\s*;)",[m]),lookbehind:!0,inside:$},{pattern:s("(\\busing\\s+<<0>>\\s*=\\s*)<<1>>(?=\\s*;)",[h,x]),lookbehind:!0,inside:$},{pattern:s("(\\busing\\s+)<<0>>(?=\\s*=)",[h]),lookbehind:!0},{pattern:s("(\\b<<0>>\\s+)<<1>>",[d,f]),lookbehind:!0,inside:$},{pattern:s("(\\bcatch\\s*\\(\\s*)<<0>>",[m]),lookbehind:!0,inside:$},{pattern:s("(\\bwhere\\s+)<<0>>",[h]),lookbehind:!0},{pattern:s("(\\b(?:is(?:\\s+not)?|as)\\s+)<<0>>",[y]),lookbehind:!0,inside:$},{pattern:s("\\b<<0>>(?=\\s+(?!<<1>>|with\\s*\\{)<<2>>(?:\\s*[=,;:{)\\]]|\\s+(?:in|when)\\b))",[x,u,h]),inside:$}],keyword:p,number:/(?:\b0(?:x[\da-f_]*[\da-f]|b[01_]*[01])|(?:\B\.\d+(?:_+\d+)*|\b\d+(?:_+\d+)*(?:\.\d+(?:_+\d+)*)?)(?:e[-+]?\d+(?:_+\d+)*)?)(?:[dflmu]|lu|ul)?\b/i,operator:/>>=?|<<=?|[-=]>|([-+&|])\1|~|\?\?=?|[-+*/%&|^!=<>]=?/,punctuation:/\?\.?|::|[{}[\];(),.:]/}),e.languages.insertBefore("csharp","number",{range:{pattern:/\.\./,alias:"operator"}}),e.languages.insertBefore("csharp","punctuation",{"named-parameter":{pattern:s("([(,]\\s*)<<0>>(?=\\s*:)",[h]),lookbehind:!0,alias:"punctuation"}}),e.languages.insertBefore("csharp","class-name",{namespace:{pattern:s("(\\b(?:namespace|using)\\s+)<<0>>(?:\\s*\\.\\s*<<0>>)*(?=\\s*[;{])",[h]),lookbehind:!0,inside:{punctuation:/\./}},"type-expression":{pattern:s("(\\b(?:default|sizeof|typeof)\\s*\\(\\s*(?!\\s))(?:[^()\\s]|\\s(?!\\s)|<<0>>)*(?=\\s*\\))",[b]),lookbehind:!0,alias:"class-name",inside:$},"return-type":{pattern:s("<<0>>(?=\\s+(?:<<1>>\\s*(?:=>|[({]|\\.\\s*this\\s*\\[)|this\\s*\\[))",[x,m]),inside:$,alias:"class-name"},"constructor-invocation":{pattern:s("(\\bnew\\s+)<<0>>(?=\\s*[[({])",[x]),lookbehind:!0,inside:$,alias:"class-name"},"generic-method":{pattern:s("<<0>>\\s*<<1>>(?=\\s*\\()",[h,g]),inside:{function:s("^<<0>>",[h]),generic:{pattern:RegExp(g),alias:"class-name",inside:$}}},"type-list":{pattern:s("\\b((?:<<0>>\\s+<<1>>|record\\s+<<1>>\\s*<<5>>|where\\s+<<2>>)\\s*:\\s*)(?:<<3>>|<<4>>|<<1>>\\s*<<5>>|<<6>>)(?:\\s*,\\s*(?:<<3>>|<<4>>|<<6>>))*(?=\\s*(?:where|[{;]|=>|$))",[d,f,h,x,p.source,b,"\\bnew\\s*\\(\\s*\\)"]),lookbehind:!0,inside:{"record-arguments":{pattern:s("(^(?!new\\s*\\()<<0>>\\s*)<<1>>",[f,b]),lookbehind:!0,greedy:!0,inside:e.languages.csharp},keyword:p,"class-name":{pattern:RegExp(x),greedy:!0,inside:$},punctuation:/[,()]/}},preprocessor:{pattern:/(^[\t ]*)#.*/m,lookbehind:!0,alias:"property",inside:{directive:{pattern:/(#)\b(?:define|elif|else|endif|endregion|error|if|line|nullable|pragma|region|undef|warning)\b/,lookbehind:!0,alias:"keyword"}}}});var E=B+"|"+_,R=n("/(?![*/])|//[^\r\n]*[\r\n]|/\\*(?:[^*]|\\*(?!/))*\\*/|<<0>>",[E]),z=a(n("[^\"'/()]|<<0>>|\\(<<self>>*\\)",[R]),2),S="\\b(?:assembly|event|field|method|module|param|property|return|type)\\b",j=n("<<0>>(?:\\s*\\(<<1>>*\\))?",[m,z]);e.languages.insertBefore("csharp","class-name",{attribute:{pattern:s("((?:^|[^\\s\\w>)?])\\s*\\[\\s*)(?:<<0>>\\s*:\\s*)?<<1>>(?:\\s*,\\s*<<1>>)*(?=\\s*\\])",[S,j]),lookbehind:!0,greedy:!0,inside:{target:{pattern:s("^<<0>>(?=\\s*:)",[S]),alias:"keyword"},"attribute-arguments":{pattern:s("\\(<<0>>*\\)",[z]),inside:e.languages.csharp},"class-name":{pattern:RegExp(m),inside:{punctuation:/\./}},punctuation:/[:,]/}}});var A=":[^}\r\n]+",F=a(n("[^\"'/()]|<<0>>|\\(<<self>>*\\)",[R]),2),P=n("\\{(?!\\{)(?:(?![}:])<<0>>)*<<1>>?\\}",[F,A]),U=a(n("[^\"'/()]|/(?!\\*)|/\\*(?:[^*]|\\*(?!/))*\\*/|<<0>>|\\(<<self>>*\\)",[E]),2),Z=n("\\{(?!\\{)(?:(?![}:])<<0>>)*<<1>>?\\}",[U,A]);function q(n,a){return{interpolation:{pattern:s("((?:^|[^{])(?:\\{\\{)*)<<0>>",[n]),lookbehind:!0,inside:{"format-string":{pattern:s("(^\\{(?:(?![}:])<<0>>)*)<<1>>(?=\\}$)",[a,A]),lookbehind:!0,inside:{punctuation:/^:/}},punctuation:/^\{|\}$/,expression:{pattern:/[\s\S]+/,alias:"language-csharp",inside:e.languages.csharp}}},string:/[\s\S]+/}}e.languages.insertBefore("csharp","string",{"interpolation-string":[{pattern:s('(^|[^\\\\])(?:\\$@|@\\$)"(?:""|\\\\[^]|\\{\\{|<<0>>|[^\\\\{"])*"',[P]),lookbehind:!0,greedy:!0,inside:q(P,F)},{pattern:s('(^|[^@\\\\])\\$"(?:\\\\.|\\{\\{|<<0>>|[^\\\\"{])*"',[Z]),lookbehind:!0,greedy:!0,inside:q(Z,U)}],char:{pattern:RegExp(_),greedy:!0}}),e.languages.dotnet=e.languages.cs=e.languages.csharp}(Prism); Prism.languages.aspnet=Prism.languages.extend("markup",{"page-directive":{pattern:/<%\s*@.*%>/,alias:"tag",inside:{"page-directive":{pattern:/<%\s*@\s*(?:Assembly|Control|Implements|Import|Master(?:Type)?|OutputCache|Page|PreviousPageType|Reference|Register)?|%>/i,alias:"tag"},rest:Prism.languages.markup.tag.inside}},directive:{pattern:/<%.*%>/,alias:"tag",inside:{directive:{pattern:/<%\s*?[$=%#:]{0,2}|%>/,alias:"tag"},rest:Prism.languages.csharp}}}),Prism.languages.aspnet.tag.pattern=/<(?!%)\/?[^\s>\/]+(?:\s+[^\s>\/=]+(?:=(?:("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|[^\s'">=]+))?)*\s*\/?>/,Prism.languages.insertBefore("inside","punctuation",{directive:Prism.languages.aspnet.directive},Prism.languages.aspnet.tag.inside["attr-value"]),Prism.languages.insertBefore("aspnet","comment",{"asp-comment":{pattern:/<%--[\s\S]*?--%>/,alias:["asp","comment"]}}),Prism.languages.insertBefore("aspnet",Prism.languages.javascript?"script":"tag",{"asp-script":{pattern:/(<script(?=.*runat=['"]?server\b)[^>]*>)[\s\S]*?(?=<\/script>)/i,lookbehind:!0,alias:["asp","script"],inside:Prism.languages.csharp||{}}}); Prism.languages.c=Prism.languages.extend("clike",{comment:{pattern:/\/\/(?:[^\r\n\\]|\\(?:\r\n?|\n|(?![\r\n])))*|\/\*[\s\S]*?(?:\*\/|$)/,greedy:!0},string:{pattern:/"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"/,greedy:!0},"class-name":{pattern:/(\b(?:enum|struct)\s+(?:__attribute__\s*\(\([\s\S]*?\)\)\s*)?)\w+|\b[a-z]\w*_t\b/,lookbehind:!0},keyword:/\b(?:_Alignas|_Alignof|_Atomic|_Bool|_Complex|_Generic|_Imaginary|_Noreturn|_Static_assert|_Thread_local|__attribute__|asm|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|inline|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|typeof|union|unsigned|void|volatile|while)\b/,function:/\b[a-z_]\w*(?=\s*\()/i,number:/(?:\b0x(?:[\da-f]+(?:\.[\da-f]*)?|\.[\da-f]+)(?:p[+-]?\d+)?|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?)[ful]{0,4}/i,operator:/>>=?|<<=?|->|([-+&|:])\1|[?:~]|[-+*/%&|^!=<>]=?/}),Prism.languages.insertBefore("c","string",{char:{pattern:/'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n]){0,32}'/,greedy:!0}}),Prism.languages.insertBefore("c","string",{macro:{pattern:/(^[\t ]*)#\s*[a-z](?:[^\r\n\\/]|\/(?!\*)|\/\*(?:[^*]|\*(?!\/))*\*\/|\\(?:\r\n|[\s\S]))*/im,lookbehind:!0,greedy:!0,alias:"property",inside:{string:[{pattern:/^(#\s*include\s*)<[^>]+>/,lookbehind:!0},Prism.languages.c.string],char:Prism.languages.c.char,comment:Prism.languages.c.comment,"macro-name":[{pattern:/(^#\s*define\s+)\w+\b(?!\()/i,lookbehind:!0},{pattern:/(^#\s*define\s+)\w+\b(?=\()/i,lookbehind:!0,alias:"function"}],directive:{pattern:/^(#\s*)[a-z]+/,lookbehind:!0,alias:"keyword"},"directive-hash":/^#/,punctuation:/##|\\(?=[\r\n])/,expression:{pattern:/\S[\s\S]*/,inside:Prism.languages.c}}}}),Prism.languages.insertBefore("c","function",{constant:/\b(?:EOF|NULL|SEEK_CUR|SEEK_END|SEEK_SET|__DATE__|__FILE__|__LINE__|__TIMESTAMP__|__TIME__|__func__|stderr|stdin|stdout)\b/}),delete Prism.languages.c.boolean; Prism.languages.graphql={comment:/#.*/,description:{pattern:/(?:"""(?:[^"]|(?!""")")*"""|"(?:\\.|[^\\"\r\n])*")(?=\s*[a-z_])/i,greedy:!0,alias:"string",inside:{"language-markdown":{pattern:/(^"(?:"")?)(?!\1)[\s\S]+(?=\1$)/,lookbehind:!0,inside:Prism.languages.markdown}}},string:{pattern:/"""(?:[^"]|(?!""")")*"""|"(?:\\.|[^\\"\r\n])*"/,greedy:!0},number:/(?:\B-|\b)\d+(?:\.\d+)?(?:e[+-]?\d+)?\b/i,boolean:/\b(?:false|true)\b/,variable:/\$[a-z_]\w*/i,directive:{pattern:/@[a-z_]\w*/i,alias:"function"},"attr-name":{pattern:/\b[a-z_]\w*(?=\s*(?:\((?:[^()"]|"(?:\\.|[^\\"\r\n])*")*\))?:)/i,greedy:!0},"atom-input":{pattern:/\b[A-Z]\w*Input\b/,alias:"class-name"},scalar:/\b(?:Boolean|Float|ID|Int|String)\b/,constant:/\b[A-Z][A-Z_\d]*\b/,"class-name":{pattern:/(\b(?:enum|implements|interface|on|scalar|type|union)\s+|&\s*|:\s*|\[)[A-Z_]\w*/,lookbehind:!0},fragment:{pattern:/(\bfragment\s+|\.{3}\s*(?!on\b))[a-zA-Z_]\w*/,lookbehind:!0,alias:"function"},"definition-mutation":{pattern:/(\bmutation\s+)[a-zA-Z_]\w*/,lookbehind:!0,alias:"function"},"definition-query":{pattern:/(\bquery\s+)[a-zA-Z_]\w*/,lookbehind:!0,alias:"function"},keyword:/\b(?:directive|enum|extend|fragment|implements|input|interface|mutation|on|query|repeatable|scalar|schema|subscription|type|union)\b/,operator:/[!=|&]|\.{3}/,"property-query":/\w+(?=\s*\()/,object:/\w+(?=\s*\{)/,punctuation:/[!(){}\[\]:=,]/,property:/\w+/},Prism.hooks.add("after-tokenize",(function(n){if("graphql"===n.language)for(var t=n.tokens.filter((function(n){return"string"!=typeof n&&"comment"!==n.type&&"scalar"!==n.type})),e=0;e<t.length;){var a=t[e++];if("keyword"===a.type&&"mutation"===a.content){var r=[];if(c(["definition-mutation","punctuation"])&&"("===l(1).content){e+=2;var i=f(/^\($/,/^\)$/);if(-1===i)continue;for(;e<i;e++){var o=l(0);"variable"===o.type&&(b(o,"variable-input"),r.push(o.content))}e=i+1}if(c(["punctuation","property-query"])&&"{"===l(0).content&&(e++,b(l(0),"property-mutation"),r.length>0)){var s=f(/^\{$/,/^\}$/);if(-1===s)continue;for(var u=e;u<s;u++){var p=t[u];"variable"===p.type&&r.indexOf(p.content)>=0&&b(p,"variable-input")}}}}function l(n){return t[e+n]}function c(n,t){t=t||0;for(var e=0;e<n.length;e++){var a=l(e+t);if(!a||a.type!==n[e])return!1}return!0}function f(n,a){for(var r=1,i=e;i<t.length;i++){var o=t[i],s=o.content;if("punctuation"===o.type&&"string"==typeof s)if(n.test(s))r++;else if(a.test(s)&&0==--r)return i}return-1}function b(n,t){var e=n.alias;e?Array.isArray(e)||(n.alias=e=[e]):n.alias=e=[],e.push(t)}})); !function(e){var n=/\b(?:abstract|assert|boolean|break|byte|case|catch|char|class|const|continue|default|do|double|else|enum|exports|extends|final|finally|float|for|goto|if|implements|import|instanceof|int|interface|long|module|native|new|non-sealed|null|open|opens|package|permits|private|protected|provides|public|record(?!\s*[(){}[\]<>=%~.:,;?+\-*/&|^])|requires|return|sealed|short|static|strictfp|super|switch|synchronized|this|throw|throws|to|transient|transitive|try|uses|var|void|volatile|while|with|yield)\b/,t="(?:[a-z]\\w*\\s*\\.\\s*)*(?:[A-Z]\\w*\\s*\\.\\s*)*",s={pattern:RegExp("(^|[^\\w.])"+t+"[A-Z](?:[\\d_A-Z]*[a-z]\\w*)?\\b"),lookbehind:!0,inside:{namespace:{pattern:/^[a-z]\w*(?:\s*\.\s*[a-z]\w*)*(?:\s*\.)?/,inside:{punctuation:/\./}},punctuation:/\./}};e.languages.java=e.languages.extend("clike",{string:{pattern:/(^|[^\\])"(?:\\.|[^"\\\r\n])*"/,lookbehind:!0,greedy:!0},"class-name":[s,{pattern:RegExp("(^|[^\\w.])"+t+"[A-Z]\\w*(?=\\s+\\w+\\s*[;,=()]|\\s*(?:\\[[\\s,]*\\]\\s*)?::\\s*new\\b)"),lookbehind:!0,inside:s.inside},{pattern:RegExp("(\\b(?:class|enum|extends|implements|instanceof|interface|new|record|throws)\\s+)"+t+"[A-Z]\\w*\\b"),lookbehind:!0,inside:s.inside}],keyword:n,function:[e.languages.clike.function,{pattern:/(::\s*)[a-z_]\w*/,lookbehind:!0}],number:/\b0b[01][01_]*L?\b|\b0x(?:\.[\da-f_p+-]+|[\da-f_]+(?:\.[\da-f_p+-]+)?)\b|(?:\b\d[\d_]*(?:\.[\d_]*)?|\B\.\d[\d_]*)(?:e[+-]?\d[\d_]*)?[dfl]?/i,operator:{pattern:/(^|[^.])(?:<<=?|>>>?=?|->|--|\+\+|&&|\|\||::|[?:~]|[-+*/%&|^!=<>]=?)/m,lookbehind:!0},constant:/\b[A-Z][A-Z_\d]+\b/}),e.languages.insertBefore("java","string",{"triple-quoted-string":{pattern:/"""[ \t]*[\r\n](?:(?:"|"")?(?:\\.|[^"\\]))*"""/,greedy:!0,alias:"string"},char:{pattern:/'(?:\\.|[^'\\\r\n]){1,6}'/,greedy:!0}}),e.languages.insertBefore("java","class-name",{annotation:{pattern:/(^|[^.])@\w+(?:\s*\.\s*\w+)*/,lookbehind:!0,alias:"punctuation"},generics:{pattern:/<(?:[\w\s,.?]|&(?!&)|<(?:[\w\s,.?]|&(?!&)|<(?:[\w\s,.?]|&(?!&)|<(?:[\w\s,.?]|&(?!&))*>)*>)*>)*>/,inside:{"class-name":s,keyword:n,punctuation:/[<>(),.:]/,operator:/[?&|]/}},import:[{pattern:RegExp("(\\bimport\\s+)"+t+"(?:[A-Z]\\w*|\\*)(?=\\s*;)"),lookbehind:!0,inside:{namespace:s.inside.namespace,punctuation:/\./,operator:/\*/,"class-name":/\w+/}},{pattern:RegExp("(\\bimport\\s+static\\s+)"+t+"(?:\\w+|\\*)(?=\\s*;)"),lookbehind:!0,alias:"static",inside:{namespace:s.inside.namespace,static:/\b\w+$/,punctuation:/\./,operator:/\*/,"class-name":/\w+/}}],namespace:{pattern:RegExp("(\\b(?:exports|import(?:\\s+static)?|module|open|opens|package|provides|requires|to|transitive|uses|with)\\s+)(?!<keyword>)[a-z]\\w*(?:\\.[a-z]\\w*)*\\.?".replace(/<keyword>/g,(function(){return n.source}))),lookbehind:!0,inside:{punctuation:/\./}}})}(Prism); Prism.languages.json={property:{pattern:/(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?=\s*:)/,lookbehind:!0,greedy:!0},string:{pattern:/(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?!\s*:)/,lookbehind:!0,greedy:!0},comment:{pattern:/\/\/.*|\/\*[\s\S]*?(?:\*\/|$)/,greedy:!0},number:/-?\b\d+(?:\.\d+)?(?:e[+-]?\d+)?\b/i,punctuation:/[{}[\],]/,operator:/:/,boolean:/\b(?:false|true)\b/,null:{pattern:/\bnull\b/,alias:"keyword"}},Prism.languages.webmanifest=Prism.languages.json; !function(n){var e=/("|')(?:\\(?:\r\n?|\n|.)|(?!\1)[^\\\r\n])*\1/;n.languages.json5=n.languages.extend("json",{property:[{pattern:RegExp(e.source+"(?=\\s*:)"),greedy:!0},{pattern:/(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/,alias:"unquoted"}],string:{pattern:e,greedy:!0},number:/[+-]?\b(?:NaN|Infinity|0x[a-fA-F\d]+)\b|[+-]?(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:[eE][+-]?\d+\b)?/})}(Prism); Prism.languages.jsonp=Prism.languages.extend("json",{punctuation:/[{}[\]();,.]/}),Prism.languages.insertBefore("jsonp","punctuation",{function:/(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*\()/}); !function(e){function n(e,n){return"___"+e.toUpperCase()+n+"___"}Object.defineProperties(e.languages["markup-templating"]={},{buildPlaceholders:{value:function(t,a,r,o){if(t.language===a){var c=t.tokenStack=[];t.code=t.code.replace(r,(function(e){if("function"==typeof o&&!o(e))return e;for(var r,i=c.length;-1!==t.code.indexOf(r=n(a,i));)++i;return c[i]=e,r})),t.grammar=e.languages.markup}}},tokenizePlaceholders:{value:function(t,a){if(t.language===a&&t.tokenStack){t.grammar=e.languages[a];var r=0,o=Object.keys(t.tokenStack);!function c(i){for(var u=0;u<i.length&&!(r>=o.length);u++){var g=i[u];if("string"==typeof g||g.content&&"string"==typeof g.content){var l=o[r],s=t.tokenStack[l],f="string"==typeof g?g:g.content,p=n(a,l),k=f.indexOf(p);if(k>-1){++r;var m=f.substring(0,k),d=new e.Token(a,e.tokenize(s,t.grammar),"language-"+a,s),h=f.substring(k+p.length),v=[];m&&v.push.apply(v,c([m])),v.push(d),h&&v.push.apply(v,c([h])),"string"==typeof g?i.splice.apply(i,[u,1].concat(v)):g.content=v}}else g.content&&c(g.content)}return i}(t.tokens)}}}})}(Prism); !function(e){var n=/\$(?:\w[a-z\d]*(?:_[^\x00-\x1F\s"'\\()$]*)?|\{[^}\s"'\\]+\})/i;e.languages.nginx={comment:{pattern:/(^|[\s{};])#.*/,lookbehind:!0,greedy:!0},directive:{pattern:/(^|\s)\w(?:[^;{}"'\\\s]|\\.|"(?:[^"\\]|\\.)*"|'(?:[^'\\]|\\.)*'|\s+(?:#.*(?!.)|(?![#\s])))*?(?=\s*[;{])/,lookbehind:!0,greedy:!0,inside:{string:{pattern:/((?:^|[^\\])(?:\\\\)*)(?:"(?:[^"\\]|\\.)*"|'(?:[^'\\]|\\.)*')/,lookbehind:!0,greedy:!0,inside:{escape:{pattern:/\\["'\\nrt]/,alias:"entity"},variable:n}},comment:{pattern:/(\s)#.*/,lookbehind:!0,greedy:!0},keyword:{pattern:/^\S+/,greedy:!0},boolean:{pattern:/(\s)(?:off|on)(?!\S)/,lookbehind:!0},number:{pattern:/(\s)\d+[a-z]*(?!\S)/i,lookbehind:!0},variable:n}},punctuation:/[{};]/}}(Prism); !function(e){var a=/\/\*[\s\S]*?\*\/|\/\/.*|#(?!\[).*/,t=[{pattern:/\b(?:false|true)\b/i,alias:"boolean"},{pattern:/(::\s*)\b[a-z_]\w*\b(?!\s*\()/i,greedy:!0,lookbehind:!0},{pattern:/(\b(?:case|const)\s+)\b[a-z_]\w*(?=\s*[;=])/i,greedy:!0,lookbehind:!0},/\b(?:null)\b/i,/\b[A-Z_][A-Z0-9_]*\b(?!\s*\()/],i=/\b0b[01]+(?:_[01]+)*\b|\b0o[0-7]+(?:_[0-7]+)*\b|\b0x[\da-f]+(?:_[\da-f]+)*\b|(?:\b\d+(?:_\d+)*\.?(?:\d+(?:_\d+)*)?|\B\.\d+)(?:e[+-]?\d+)?/i,n=/<?=>|\?\?=?|\.{3}|\??->|[!=]=?=?|::|\*\*=?|--|\+\+|&&|\|\||<<|>>|[?~]|[/^|%*&<>.+-]=?/,s=/[{}\[\](),:;]/;e.languages.php={delimiter:{pattern:/\?>$|^<\?(?:php(?=\s)|=)?/i,alias:"important"},comment:a,variable:/\$+(?:\w+\b|(?=\{))/,package:{pattern:/(namespace\s+|use\s+(?:function\s+)?)(?:\\?\b[a-z_]\w*)+\b(?!\\)/i,lookbehind:!0,inside:{punctuation:/\\/}},"class-name-definition":{pattern:/(\b(?:class|enum|interface|trait)\s+)\b[a-z_]\w*(?!\\)\b/i,lookbehind:!0,alias:"class-name"},"function-definition":{pattern:/(\bfunction\s+)[a-z_]\w*(?=\s*\()/i,lookbehind:!0,alias:"function"},keyword:[{pattern:/(\(\s*)\b(?:array|bool|boolean|float|int|integer|object|string)\b(?=\s*\))/i,alias:"type-casting",greedy:!0,lookbehind:!0},{pattern:/([(,?]\s*)\b(?:array(?!\s*\()|bool|callable|(?:false|null)(?=\s*\|)|float|int|iterable|mixed|object|self|static|string)\b(?=\s*\$)/i,alias:"type-hint",greedy:!0,lookbehind:!0},{pattern:/(\)\s*:\s*(?:\?\s*)?)\b(?:array(?!\s*\()|bool|callable|(?:false|null)(?=\s*\|)|float|int|iterable|mixed|never|object|self|static|string|void)\b/i,alias:"return-type",greedy:!0,lookbehind:!0},{pattern:/\b(?:array(?!\s*\()|bool|float|int|iterable|mixed|object|string|void)\b/i,alias:"type-declaration",greedy:!0},{pattern:/(\|\s*)(?:false|null)\b|\b(?:false|null)(?=\s*\|)/i,alias:"type-declaration",greedy:!0,lookbehind:!0},{pattern:/\b(?:parent|self|static)(?=\s*::)/i,alias:"static-context",greedy:!0},{pattern:/(\byield\s+)from\b/i,lookbehind:!0},/\bclass\b/i,{pattern:/((?:^|[^\s>:]|(?:^|[^-])>|(?:^|[^:]):)\s*)\b(?:abstract|and|array|as|break|callable|case|catch|clone|const|continue|declare|default|die|do|echo|else|elseif|empty|enddeclare|endfor|endforeach|endif|endswitch|endwhile|enum|eval|exit|extends|final|finally|fn|for|foreach|function|global|goto|if|implements|include|include_once|instanceof|insteadof|interface|isset|list|match|namespace|never|new|or|parent|print|private|protected|public|readonly|require|require_once|return|self|static|switch|throw|trait|try|unset|use|var|while|xor|yield|__halt_compiler)\b/i,lookbehind:!0}],"argument-name":{pattern:/([(,]\s*)\b[a-z_]\w*(?=\s*:(?!:))/i,lookbehind:!0},"class-name":[{pattern:/(\b(?:extends|implements|instanceof|new(?!\s+self|\s+static))\s+|\bcatch\s*\()\b[a-z_]\w*(?!\\)\b/i,greedy:!0,lookbehind:!0},{pattern:/(\|\s*)\b[a-z_]\w*(?!\\)\b/i,greedy:!0,lookbehind:!0},{pattern:/\b[a-z_]\w*(?!\\)\b(?=\s*\|)/i,greedy:!0},{pattern:/(\|\s*)(?:\\?\b[a-z_]\w*)+\b/i,alias:"class-name-fully-qualified",greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}},{pattern:/(?:\\?\b[a-z_]\w*)+\b(?=\s*\|)/i,alias:"class-name-fully-qualified",greedy:!0,inside:{punctuation:/\\/}},{pattern:/(\b(?:extends|implements|instanceof|new(?!\s+self\b|\s+static\b))\s+|\bcatch\s*\()(?:\\?\b[a-z_]\w*)+\b(?!\\)/i,alias:"class-name-fully-qualified",greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}},{pattern:/\b[a-z_]\w*(?=\s*\$)/i,alias:"type-declaration",greedy:!0},{pattern:/(?:\\?\b[a-z_]\w*)+(?=\s*\$)/i,alias:["class-name-fully-qualified","type-declaration"],greedy:!0,inside:{punctuation:/\\/}},{pattern:/\b[a-z_]\w*(?=\s*::)/i,alias:"static-context",greedy:!0},{pattern:/(?:\\?\b[a-z_]\w*)+(?=\s*::)/i,alias:["class-name-fully-qualified","static-context"],greedy:!0,inside:{punctuation:/\\/}},{pattern:/([(,?]\s*)[a-z_]\w*(?=\s*\$)/i,alias:"type-hint",greedy:!0,lookbehind:!0},{pattern:/([(,?]\s*)(?:\\?\b[a-z_]\w*)+(?=\s*\$)/i,alias:["class-name-fully-qualified","type-hint"],greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}},{pattern:/(\)\s*:\s*(?:\?\s*)?)\b[a-z_]\w*(?!\\)\b/i,alias:"return-type",greedy:!0,lookbehind:!0},{pattern:/(\)\s*:\s*(?:\?\s*)?)(?:\\?\b[a-z_]\w*)+\b(?!\\)/i,alias:["class-name-fully-qualified","return-type"],greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}}],constant:t,function:{pattern:/(^|[^\\\w])\\?[a-z_](?:[\w\\]*\w)?(?=\s*\()/i,lookbehind:!0,inside:{punctuation:/\\/}},property:{pattern:/(->\s*)\w+/,lookbehind:!0},number:i,operator:n,punctuation:s};var l={pattern:/\{\$(?:\{(?:\{[^{}]+\}|[^{}]+)\}|[^{}])+\}|(^|[^\\{])\$+(?:\w+(?:\[[^\r\n\[\]]+\]|->\w+)?)/,lookbehind:!0,inside:e.languages.php},r=[{pattern:/<<<'([^']+)'[\r\n](?:.*[\r\n])*?\1;/,alias:"nowdoc-string",greedy:!0,inside:{delimiter:{pattern:/^<<<'[^']+'|[a-z_]\w*;$/i,alias:"symbol",inside:{punctuation:/^<<<'?|[';]$/}}}},{pattern:/<<<(?:"([^"]+)"[\r\n](?:.*[\r\n])*?\1;|([a-z_]\w*)[\r\n](?:.*[\r\n])*?\2;)/i,alias:"heredoc-string",greedy:!0,inside:{delimiter:{pattern:/^<<<(?:"[^"]+"|[a-z_]\w*)|[a-z_]\w*;$/i,alias:"symbol",inside:{punctuation:/^<<<"?|[";]$/}},interpolation:l}},{pattern:/`(?:\\[\s\S]|[^\\`])*`/,alias:"backtick-quoted-string",greedy:!0},{pattern:/'(?:\\[\s\S]|[^\\'])*'/,alias:"single-quoted-string",greedy:!0},{pattern:/"(?:\\[\s\S]|[^\\"])*"/,alias:"double-quoted-string",greedy:!0,inside:{interpolation:l}}];e.languages.insertBefore("php","variable",{string:r,attribute:{pattern:/#\[(?:[^"'\/#]|\/(?![*/])|\/\/.*$|#(?!\[).*$|\/\*(?:[^*]|\*(?!\/))*\*\/|"(?:\\[\s\S]|[^\\"])*"|'(?:\\[\s\S]|[^\\'])*')+\](?=\s*[a-z$#])/im,greedy:!0,inside:{"attribute-content":{pattern:/^(#\[)[\s\S]+(?=\]$)/,lookbehind:!0,inside:{comment:a,string:r,"attribute-class-name":[{pattern:/([^:]|^)\b[a-z_]\w*(?!\\)\b/i,alias:"class-name",greedy:!0,lookbehind:!0},{pattern:/([^:]|^)(?:\\?\b[a-z_]\w*)+/i,alias:["class-name","class-name-fully-qualified"],greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}}],constant:t,number:i,operator:n,punctuation:s}},delimiter:{pattern:/^#\[|\]$/,alias:"punctuation"}}}}),e.hooks.add("before-tokenize",(function(a){/<\?/.test(a.code)&&e.languages["markup-templating"].buildPlaceholders(a,"php",/<\?(?:[^"'/#]|\/(?![*/])|("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|(?:\/\/|#(?!\[))(?:[^?\n\r]|\?(?!>))*(?=$|\?>|[\r\n])|#\[|\/\*(?:[^*]|\*(?!\/))*(?:\*\/|$))*?(?:\?>|$)/g)})),e.hooks.add("after-tokenize",(function(a){e.languages["markup-templating"].tokenizePlaceholders(a,"php")}))}(Prism); Prism.languages.python={comment:{pattern:/(^|[^\\])#.*/,lookbehind:!0,greedy:!0},"string-interpolation":{pattern:/(?:f|fr|rf)(?:("""|''')[\s\S]*?\1|("|')(?:\\.|(?!\2)[^\\\r\n])*\2)/i,greedy:!0,inside:{interpolation:{pattern:/((?:^|[^{])(?:\{\{)*)\{(?!\{)(?:[^{}]|\{(?!\{)(?:[^{}]|\{(?!\{)(?:[^{}])+\})+\})+\}/,lookbehind:!0,inside:{"format-spec":{pattern:/(:)[^:(){}]+(?=\}$)/,lookbehind:!0},"conversion-option":{pattern:/![sra](?=[:}]$)/,alias:"punctuation"},rest:null}},string:/[\s\S]+/}},"triple-quoted-string":{pattern:/(?:[rub]|br|rb)?("""|''')[\s\S]*?\1/i,greedy:!0,alias:"string"},string:{pattern:/(?:[rub]|br|rb)?("|')(?:\\.|(?!\1)[^\\\r\n])*\1/i,greedy:!0},function:{pattern:/((?:^|\s)def[ \t]+)[a-zA-Z_]\w*(?=\s*\()/g,lookbehind:!0},"class-name":{pattern:/(\bclass\s+)\w+/i,lookbehind:!0},decorator:{pattern:/(^[\t ]*)@\w+(?:\.\w+)*/m,lookbehind:!0,alias:["annotation","punctuation"],inside:{punctuation:/\./}},keyword:/\b(?:_(?=\s*:)|and|as|assert|async|await|break|case|class|continue|def|del|elif|else|except|exec|finally|for|from|global|if|import|in|is|lambda|match|nonlocal|not|or|pass|print|raise|return|try|while|with|yield)\b/,builtin:/\b(?:__import__|abs|all|any|apply|ascii|basestring|bin|bool|buffer|bytearray|bytes|callable|chr|classmethod|cmp|coerce|compile|complex|delattr|dict|dir|divmod|enumerate|eval|execfile|file|filter|float|format|frozenset|getattr|globals|hasattr|hash|help|hex|id|input|int|intern|isinstance|issubclass|iter|len|list|locals|long|map|max|memoryview|min|next|object|oct|open|ord|pow|property|range|raw_input|reduce|reload|repr|reversed|round|set|setattr|slice|sorted|staticmethod|str|sum|super|tuple|type|unichr|unicode|vars|xrange|zip)\b/,boolean:/\b(?:False|None|True)\b/,number:/\b0(?:b(?:_?[01])+|o(?:_?[0-7])+|x(?:_?[a-f0-9])+)\b|(?:\b\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\B\.\d+(?:_\d+)*)(?:e[+-]?\d+(?:_\d+)*)?j?(?!\w)/i,operator:/[-+%=]=?|!=|:=|\*\*?=?|\/\/?=?|<[<=>]?|>[=>]?|[&|^~]/,punctuation:/[{}[\];(),.:]/},Prism.languages.python["string-interpolation"].inside.interpolation.inside.rest=Prism.languages.python,Prism.languages.py=Prism.languages.python; !function(a){var e={pattern:/\\[\\(){}[\]^$+*?|.]/,alias:"escape"},n=/\\(?:x[\da-fA-F]{2}|u[\da-fA-F]{4}|u\{[\da-fA-F]+\}|0[0-7]{0,2}|[123][0-7]{2}|c[a-zA-Z]|.)/,t="(?:[^\\\\-]|"+n.source+")",s=RegExp(t+"-"+t),i={pattern:/(<|')[^<>']+(?=[>']$)/,lookbehind:!0,alias:"variable"};a.languages.regex={"char-class":{pattern:/((?:^|[^\\])(?:\\\\)*)\[(?:[^\\\]]|\\[\s\S])*\]/,lookbehind:!0,inside:{"char-class-negation":{pattern:/(^\[)\^/,lookbehind:!0,alias:"operator"},"char-class-punctuation":{pattern:/^\[|\]$/,alias:"punctuation"},range:{pattern:s,inside:{escape:n,"range-punctuation":{pattern:/-/,alias:"operator"}}},"special-escape":e,"char-set":{pattern:/\\[wsd]|\\p\{[^{}]+\}/i,alias:"class-name"},escape:n}},"special-escape":e,"char-set":{pattern:/\.|\\[wsd]|\\p\{[^{}]+\}/i,alias:"class-name"},backreference:[{pattern:/\\(?![123][0-7]{2})[1-9]/,alias:"keyword"},{pattern:/\\k<[^<>']+>/,alias:"keyword",inside:{"group-name":i}}],anchor:{pattern:/[$^]|\\[ABbGZz]/,alias:"function"},escape:n,group:[{pattern:/\((?:\?(?:<[^<>']+>|'[^<>']+'|[>:]|<?[=!]|[idmnsuxU]+(?:-[idmnsuxU]+)?:?))?/,alias:"punctuation",inside:{"group-name":i}},{pattern:/\)/,alias:"punctuation"}],quantifier:{pattern:/(?:[+*?]|\{\d+(?:,\d*)?\})[?+]?/,alias:"number"},alternation:{pattern:/\|/,alias:"keyword"}}}(Prism); !function(e){e.languages.ruby=e.languages.extend("clike",{comment:{pattern:/#.*|^=begin\s[\s\S]*?^=end/m,greedy:!0},"class-name":{pattern:/(\b(?:class|module)\s+|\bcatch\s+\()[\w.\\]+|\b[A-Z_]\w*(?=\s*\.\s*new\b)/,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:BEGIN|END|alias|and|begin|break|case|class|def|define_method|defined|do|each|else|elsif|end|ensure|extend|for|if|in|include|module|new|next|nil|not|or|prepend|private|protected|public|raise|redo|require|rescue|retry|return|self|super|then|throw|undef|unless|until|when|while|yield)\b/,operator:/\.{2,3}|&\.|===|<?=>|[!=]?~|(?:&&|\|\||<<|>>|\*\*|[+\-*/%<>!^&|=])=?|[?:]/,punctuation:/[(){}[\].,;]/}),e.languages.insertBefore("ruby","operator",{"double-colon":{pattern:/::/,alias:"punctuation"}});var n={pattern:/((?:^|[^\\])(?:\\{2})*)#\{(?:[^{}]|\{[^{}]*\})*\}/,lookbehind:!0,inside:{content:{pattern:/^(#\{)[\s\S]+(?=\}$)/,lookbehind:!0,inside:e.languages.ruby},delimiter:{pattern:/^#\{|\}$/,alias:"punctuation"}}};delete e.languages.ruby.function;var t="(?:"+["([^a-zA-Z0-9\\s{(\\[<=])(?:(?!\\1)[^\\\\]|\\\\[^])*\\1","\\((?:[^()\\\\]|\\\\[^]|\\((?:[^()\\\\]|\\\\[^])*\\))*\\)","\\{(?:[^{}\\\\]|\\\\[^]|\\{(?:[^{}\\\\]|\\\\[^])*\\})*\\}","\\[(?:[^\\[\\]\\\\]|\\\\[^]|\\[(?:[^\\[\\]\\\\]|\\\\[^])*\\])*\\]","<(?:[^<>\\\\]|\\\\[^]|<(?:[^<>\\\\]|\\\\[^])*>)*>"].join("|")+")",i='(?:"(?:\\\\.|[^"\\\\\r\n])*"|(?:\\b[a-zA-Z_]\\w*|[^\\s\0-\\x7F]+)[?!]?|\\$.)';e.languages.insertBefore("ruby","keyword",{"regex-literal":[{pattern:RegExp("%r"+t+"[egimnosux]{0,6}"),greedy:!0,inside:{interpolation:n,regex:/[\s\S]+/}},{pattern:/(^|[^/])\/(?!\/)(?:\[[^\r\n\]]+\]|\\.|[^[/\\\r\n])+\/[egimnosux]{0,6}(?=\s*(?:$|[\r\n,.;})#]))/,lookbehind:!0,greedy:!0,inside:{interpolation:n,regex:/[\s\S]+/}}],variable:/[@$]+[a-zA-Z_]\w*(?:[?!]|\b)/,symbol:[{pattern:RegExp("(^|[^:]):"+i),lookbehind:!0,greedy:!0},{pattern:RegExp("([\r\n{(,][ \t]*)"+i+"(?=:(?!:))"),lookbehind:!0,greedy:!0}],"method-definition":{pattern:/(\bdef\s+)\w+(?:\s*\.\s*\w+)?/,lookbehind:!0,inside:{function:/\b\w+$/,keyword:/^self\b/,"class-name":/^\w+/,punctuation:/\./}}}),e.languages.insertBefore("ruby","string",{"string-literal":[{pattern:RegExp("%[qQiIwWs]?"+t),greedy:!0,inside:{interpolation:n,string:/[\s\S]+/}},{pattern:/("|')(?:#\{[^}]+\}|#(?!\{)|\\(?:\r\n|[\s\S])|(?!\1)[^\\#\r\n])*\1/,greedy:!0,inside:{interpolation:n,string:/[\s\S]+/}},{pattern:/<<[-~]?([a-z_]\w*)[\r\n](?:.*[\r\n])*?[\t ]*\1/i,alias:"heredoc-string",greedy:!0,inside:{delimiter:{pattern:/^<<[-~]?[a-z_]\w*|\b[a-z_]\w*$/i,inside:{symbol:/\b\w+/,punctuation:/^<<[-~]?/}},interpolation:n,string:/[\s\S]+/}},{pattern:/<<[-~]?'([a-z_]\w*)'[\r\n](?:.*[\r\n])*?[\t ]*\1/i,alias:"heredoc-string",greedy:!0,inside:{delimiter:{pattern:/^<<[-~]?'[a-z_]\w*'|\b[a-z_]\w*$/i,inside:{symbol:/\b\w+/,punctuation:/^<<[-~]?'|'$/}},string:/[\s\S]+/}}],"command-literal":[{pattern:RegExp("%x"+t),greedy:!0,inside:{interpolation:n,command:{pattern:/[\s\S]+/,alias:"string"}}},{pattern:/`(?:#\{[^}]+\}|#(?!\{)|\\(?:\r\n|[\s\S])|[^\\`#\r\n])*`/,greedy:!0,inside:{interpolation:n,command:{pattern:/[\s\S]+/,alias:"string"}}}]}),delete e.languages.ruby.string,e.languages.insertBefore("ruby","number",{builtin:/\b(?:Array|Bignum|Binding|Class|Continuation|Dir|Exception|FalseClass|File|Fixnum|Float|Hash|IO|Integer|MatchData|Method|Module|NilClass|Numeric|Object|Proc|Range|Regexp|Stat|String|Struct|Symbol|TMS|Thread|ThreadGroup|Time|TrueClass)\b/,constant:/\b[A-Z][A-Z0-9_]*(?:[?!]|\b)/}),e.languages.rb=e.languages.ruby}(Prism); Prism.languages.sql={comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|(?:--|\/\/|#).*)/,lookbehind:!0},variable:[{pattern:/@(["'`])(?:\\[\s\S]|(?!\1)[^\\])+\1/,greedy:!0},/@[\w.$]+/],string:{pattern:/(^|[^@\\])("|')(?:\\[\s\S]|(?!\2)[^\\]|\2\2)*\2/,greedy:!0,lookbehind:!0},identifier:{pattern:/(^|[^@\\])`(?:\\[\s\S]|[^`\\]|``)*`/,greedy:!0,lookbehind:!0,inside:{punctuation:/^`|`$/}},function:/\b(?:AVG|COUNT|FIRST|FORMAT|LAST|LCASE|LEN|MAX|MID|MIN|MOD|NOW|ROUND|SUM|UCASE)(?=\s*\()/i,keyword:/\b(?:ACTION|ADD|AFTER|ALGORITHM|ALL|ALTER|ANALYZE|ANY|APPLY|AS|ASC|AUTHORIZATION|AUTO_INCREMENT|BACKUP|BDB|BEGIN|BERKELEYDB|BIGINT|BINARY|BIT|BLOB|BOOL|BOOLEAN|BREAK|BROWSE|BTREE|BULK|BY|CALL|CASCADED?|CASE|CHAIN|CHAR(?:ACTER|SET)?|CHECK(?:POINT)?|CLOSE|CLUSTERED|COALESCE|COLLATE|COLUMNS?|COMMENT|COMMIT(?:TED)?|COMPUTE|CONNECT|CONSISTENT|CONSTRAINT|CONTAINS(?:TABLE)?|CONTINUE|CONVERT|CREATE|CROSS|CURRENT(?:_DATE|_TIME|_TIMESTAMP|_USER)?|CURSOR|CYCLE|DATA(?:BASES?)?|DATE(?:TIME)?|DAY|DBCC|DEALLOCATE|DEC|DECIMAL|DECLARE|DEFAULT|DEFINER|DELAYED|DELETE|DELIMITERS?|DENY|DESC|DESCRIBE|DETERMINISTIC|DISABLE|DISCARD|DISK|DISTINCT|DISTINCTROW|DISTRIBUTED|DO|DOUBLE|DROP|DUMMY|DUMP(?:FILE)?|DUPLICATE|ELSE(?:IF)?|ENABLE|ENCLOSED|END|ENGINE|ENUM|ERRLVL|ERRORS|ESCAPED?|EXCEPT|EXEC(?:UTE)?|EXISTS|EXIT|EXPLAIN|EXTENDED|FETCH|FIELDS|FILE|FILLFACTOR|FIRST|FIXED|FLOAT|FOLLOWING|FOR(?: EACH ROW)?|FORCE|FOREIGN|FREETEXT(?:TABLE)?|FROM|FULL|FUNCTION|GEOMETRY(?:COLLECTION)?|GLOBAL|GOTO|GRANT|GROUP|HANDLER|HASH|HAVING|HOLDLOCK|HOUR|IDENTITY(?:COL|_INSERT)?|IF|IGNORE|IMPORT|INDEX|INFILE|INNER|INNODB|INOUT|INSERT|INT|INTEGER|INTERSECT|INTERVAL|INTO|INVOKER|ISOLATION|ITERATE|JOIN|KEYS?|KILL|LANGUAGE|LAST|LEAVE|LEFT|LEVEL|LIMIT|LINENO|LINES|LINESTRING|LOAD|LOCAL|LOCK|LONG(?:BLOB|TEXT)|LOOP|MATCH(?:ED)?|MEDIUM(?:BLOB|INT|TEXT)|MERGE|MIDDLEINT|MINUTE|MODE|MODIFIES|MODIFY|MONTH|MULTI(?:LINESTRING|POINT|POLYGON)|NATIONAL|NATURAL|NCHAR|NEXT|NO|NONCLUSTERED|NULLIF|NUMERIC|OFF?|OFFSETS?|ON|OPEN(?:DATASOURCE|QUERY|ROWSET)?|OPTIMIZE|OPTION(?:ALLY)?|ORDER|OUT(?:ER|FILE)?|OVER|PARTIAL|PARTITION|PERCENT|PIVOT|PLAN|POINT|POLYGON|PRECEDING|PRECISION|PREPARE|PREV|PRIMARY|PRINT|PRIVILEGES|PROC(?:EDURE)?|PUBLIC|PURGE|QUICK|RAISERROR|READS?|REAL|RECONFIGURE|REFERENCES|RELEASE|RENAME|REPEAT(?:ABLE)?|REPLACE|REPLICATION|REQUIRE|RESIGNAL|RESTORE|RESTRICT|RETURN(?:ING|S)?|REVOKE|RIGHT|ROLLBACK|ROUTINE|ROW(?:COUNT|GUIDCOL|S)?|RTREE|RULE|SAVE(?:POINT)?|SCHEMA|SECOND|SELECT|SERIAL(?:IZABLE)?|SESSION(?:_USER)?|SET(?:USER)?|SHARE|SHOW|SHUTDOWN|SIMPLE|SMALLINT|SNAPSHOT|SOME|SONAME|SQL|START(?:ING)?|STATISTICS|STATUS|STRIPED|SYSTEM_USER|TABLES?|TABLESPACE|TEMP(?:ORARY|TABLE)?|TERMINATED|TEXT(?:SIZE)?|THEN|TIME(?:STAMP)?|TINY(?:BLOB|INT|TEXT)|TOP?|TRAN(?:SACTIONS?)?|TRIGGER|TRUNCATE|TSEQUAL|TYPES?|UNBOUNDED|UNCOMMITTED|UNDEFINED|UNION|UNIQUE|UNLOCK|UNPIVOT|UNSIGNED|UPDATE(?:TEXT)?|USAGE|USE|USER|USING|VALUES?|VAR(?:BINARY|CHAR|CHARACTER|YING)|VIEW|WAITFOR|WARNINGS|WHEN|WHERE|WHILE|WITH(?: ROLLUP|IN)?|WORK|WRITE(?:TEXT)?|YEAR)\b/i,boolean:/\b(?:FALSE|NULL|TRUE)\b/i,number:/\b0x[\da-f]+\b|\b\d+(?:\.\d*)?|\B\.\d+\b/i,operator:/[-+*\/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?|\b(?:AND|BETWEEN|DIV|ILIKE|IN|IS|LIKE|NOT|OR|REGEXP|RLIKE|SOUNDS LIKE|XOR)\b/i,punctuation:/[;[\]()`,.]/}; !function(){if("undefined"!=typeof Prism&&"undefined"!=typeof document){var e="line-numbers",n=/\n(?!$)/g,t=Prism.plugins.lineNumbers={getLine:function(n,t){if("PRE"===n.tagName&&n.classList.contains(e)){var i=n.querySelector(".line-numbers-rows");if(i){var r=parseInt(n.getAttribute("data-start"),10)||1,s=r+(i.children.length-1);t<r&&(t=r),t>s&&(t=s);var l=t-r;return i.children[l]}}},resize:function(e){r([e])},assumeViewportIndependence:!0},i=void 0;window.addEventListener("resize",(function(){t.assumeViewportIndependence&&i===window.innerWidth||(i=window.innerWidth,r(Array.prototype.slice.call(document.querySelectorAll("pre.line-numbers"))))})),Prism.hooks.add("complete",(function(t){if(t.code){var i=t.element,s=i.parentNode;if(s&&/pre/i.test(s.nodeName)&&!i.querySelector(".line-numbers-rows")&&Prism.util.isActive(i,e)){i.classList.remove(e),s.classList.add(e);var l,o=t.code.match(n),a=o?o.length+1:1,u=new Array(a+1).join("<span></span>");(l=document.createElement("span")).setAttribute("aria-hidden","true"),l.className="line-numbers-rows",l.innerHTML=u,s.hasAttribute("data-start")&&(s.style.counterReset="linenumber "+(parseInt(s.getAttribute("data-start"),10)-1)),t.element.appendChild(l),r([s]),Prism.hooks.run("line-numbers",t)}}})),Prism.hooks.add("line-numbers",(function(e){e.plugins=e.plugins||{},e.plugins.lineNumbers=!0}))}function r(e){if(0!=(e=e.filter((function(e){var n,t=(n=e,n?window.getComputedStyle?getComputedStyle(n):n.currentStyle||null:null)["white-space"];return"pre-wrap"===t||"pre-line"===t}))).length){var t=e.map((function(e){var t=e.querySelector("code"),i=e.querySelector(".line-numbers-rows");if(t&&i){var r=e.querySelector(".line-numbers-sizer"),s=t.textContent.split(n);r||((r=document.createElement("span")).className="line-numbers-sizer",t.appendChild(r)),r.innerHTML="0",r.style.display="block";var l=r.getBoundingClientRect().height;return r.innerHTML="",{element:e,lines:s,lineHeights:[],oneLinerHeight:l,sizer:r}}})).filter(Boolean);t.forEach((function(e){var n=e.sizer,t=e.lines,i=e.lineHeights,r=e.oneLinerHeight;i[t.length-1]=void 0,t.forEach((function(e,t){if(e&&e.length>1){var s=n.appendChild(document.createElement("span"));s.style.display="block",s.textContent=e}else i[t]=r}))})),t.forEach((function(e){for(var n=e.sizer,t=e.lineHeights,i=0,r=0;r<t.length;r++)void 0===t[r]&&(t[r]=n.children[i++].getBoundingClientRect().height)})),t.forEach((function(e){var n=e.sizer,t=e.element.querySelector(".line-numbers-rows");n.style.display="none",n.innerHTML="",e.lineHeights.forEach((function(e,n){t.children[n].style.height=e+"px"}))}))}}}(); !function(){if("undefined"!=typeof Prism&&"undefined"!=typeof document){var e=[],t={},n=function(){};Prism.plugins.toolbar={};var a=Prism.plugins.toolbar.registerButton=function(n,a){var r;r="function"==typeof a?a:function(e){var t;return"function"==typeof a.onClick?((t=document.createElement("button")).type="button",t.addEventListener("click",(function(){a.onClick.call(this,e)}))):"string"==typeof a.url?(t=document.createElement("a")).href=a.url:t=document.createElement("span"),a.className&&t.classList.add(a.className),t.textContent=a.text,t},n in t?console.warn('There is a button with the key "'+n+'" registered already.'):e.push(t[n]=r)},r=Prism.plugins.toolbar.hook=function(a){var r=a.element.parentNode;if(r&&/pre/i.test(r.nodeName)&&!r.parentNode.classList.contains("code-toolbar")){var o=document.createElement("div");o.classList.add("code-toolbar"),r.parentNode.insertBefore(o,r),o.appendChild(r);var i=document.createElement("div");i.classList.add("toolbar");var l=e,d=function(e){for(;e;){var t=e.getAttribute("data-toolbar-order");if(null!=t)return(t=t.trim()).length?t.split(/\s*,\s*/g):[];e=e.parentElement}}(a.element);d&&(l=d.map((function(e){return t[e]||n}))),l.forEach((function(e){var t=e(a);if(t){var n=document.createElement("div");n.classList.add("toolbar-item"),n.appendChild(t),i.appendChild(n)}})),o.appendChild(i)}};a("label",(function(e){var t=e.element.parentNode;if(t&&/pre/i.test(t.nodeName)&&t.hasAttribute("data-label")){var n,a,r=t.getAttribute("data-label");try{a=document.querySelector("template#"+r)}catch(e){}return a?n=a.content:(t.hasAttribute("data-url")?(n=document.createElement("a")).href=t.getAttribute("data-url"):n=document.createElement("span"),n.textContent=r),n}})),Prism.hooks.add("complete",r)}}(); !function(){function t(t){var e=document.createElement("textarea");e.value=t.getText(),e.style.top="0",e.style.left="0",e.style.position="fixed",document.body.appendChild(e),e.focus(),e.select();try{var o=document.execCommand("copy");setTimeout((function(){o?t.success():t.error()}),1)}catch(e){setTimeout((function(){t.error(e)}),1)}document.body.removeChild(e)}"undefined"!=typeof Prism&&"undefined"!=typeof document&&(Prism.plugins.toolbar?Prism.plugins.toolbar.registerButton("copy-to-clipboard",(function(e){var o=e.element,n=function(t){var e={copy:"Copy","copy-error":"Press Ctrl+C to copy","copy-success":"Copied!","copy-timeout":5e3};for(var o in e){for(var n="data-prismjs-"+o,c=t;c&&!c.hasAttribute(n);)c=c.parentElement;c&&(e[o]=c.getAttribute(n))}return e}(o),c=document.createElement("button");c.className="copy-to-clipboard-button",c.setAttribute("type","button");var r=document.createElement("span");return c.appendChild(r),u("copy"),function(e,o){e.addEventListener("click",(function(){!function(e){navigator.clipboard?navigator.clipboard.writeText(e.getText()).then(e.success,(function(){t(e)})):t(e)}(o)}))}(c,{getText:function(){return o.textContent},success:function(){u("copy-success"),i()},error:function(){u("copy-error"),setTimeout((function(){!function(t){window.getSelection().selectAllChildren(t)}(o)}),1),i()}}),c;function i(){setTimeout((function(){u("copy")}),n["copy-timeout"])}function u(t){r.textContent=n[t],c.setAttribute("data-copy-state",t)}})):console.warn("Copy to Clipboard plugin loaded before Toolbar plugin."))}(); (self.webpackChunk=self.webpackChunk||[]).push([[1137],{2768:function(){App.init((function(){document.querySelectorAll(".is-style-code-highlighter").forEach((function(e){-1===e.classList.value.search("language-")&&e.classList.add("language-javascript"),e.classList.add("line-numbers"),e.parentNode.classList.add("line-numbers")})),Prism.highlightAll(document.querySelector("main.main"))}))}},function(e){var s;s=2768,e(e.s=s)}]); function At(n,t){for(var e=0;e<t.length;e++){var i=t[e];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(n,i.key,i)}}var n,t;n=this,t=function(){"use strict";var n="splide",t="data-"+n;function e(n){n.length=0}function i(n){return!s(n)&&"object"==typeof n}function o(n){return Array.isArray(n)}function r(n){return"string"==typeof n}function u(n){return void 0===n}function s(n){return null===n}function c(n){return n instanceof HTMLElement}function a(n){return o(n)?n:[n]}function f(n,t){a(n).forEach(t)}function l(n,t){return-1<n.indexOf(t)}function d(n,t){return n.push.apply(n,a(t)),n}var p=Array.prototype;function h(n,t,e){return p.slice.call(n,t,e)}function g(n,t,e){n&&f(t,(function(t){t&&n.classList[e?"add":"remove"](t)}))}function v(n,t){g(n,r(t)?t.split(" "):t,!0)}function m(n,t){f(t,n.appendChild.bind(n))}function y(n,t){f(n,(function(n){var e=t.parentNode;e&&e.insertBefore(n,t)}))}function b(n,t){return c(n)&&(n.msMatchesSelector||n.matches).call(n,t)}function w(n,t){return n?h(n.children).filter((function(n){return b(n,t)})):[]}function x(n,t){return t?w(n,t)[0]:n.firstElementChild}function E(n,t,e){if(n)for(var i=Object.keys(n),o=(i=e?i.reverse():i,0);o<i.length;o++){var r=i[o];if("__proto__"!==r&&!1===t(n[r],r))break}return n}function S(n){return h(arguments,1).forEach((function(t){E(t,(function(e,i){n[i]=t[i]}))})),n}function P(n,t){return E(t,(function(t,e){o(t)?n[e]=t.slice():i(t)?n[e]=P(i(n[e])?n[e]:{},t):n[e]=t})),n}function k(n,t){n&&f(t,(function(t){n.removeAttribute(t)}))}function _(n,t,e){i(t)?E(t,(function(t,e){_(n,e,t)})):s(e)?k(n,t):n.setAttribute(t,String(e))}function A(n,t,e){return n=document.createElement(n),t&&(r(t)?v:_)(n,t),e&&m(e,n),n}function L(n,t,e){if(u(e))return getComputedStyle(n)[t];s(e)||(n=n.style)[t]!==(e=""+e)&&(n[t]=e)}function z(n,t){L(n,"display",t)}function C(n,t){return n.getAttribute(t)}function D(n,t){return n&&n.classList.contains(t)}function M(n){return n.getBoundingClientRect()}function I(n){f(n,(function(n){n&&n.parentNode&&n.parentNode.removeChild(n)}))}function N(n){return x((new DOMParser).parseFromString(n,"text/html").body)}function T(n,t){n.preventDefault(),t&&(n.stopPropagation(),n.stopImmediatePropagation())}function O(n,t){return n&&n.querySelector(t)}function R(n,t){return h(n.querySelectorAll(t))}function F(n,t){g(n,t,!1)}function j(n){return r(n)?n:n?n+"px":""}function W(t,e){if(void 0===e&&(e=""),!t)throw new Error("["+n+"] "+e)}function B(n){setTimeout(n)}function X(){}function H(n){return requestAnimationFrame(n)}var G=Math.min,Y=Math.max,q=Math.floor,U=Math.ceil,J=Math.abs;function K(n,t,e,i){var o=G(t,e);e=Y(t,e);return i?o<n&&n<e:o<=n&&n<=e}function Q(n,t,e){var i=G(t,e);e=Y(t,e);return G(Y(i,n),e)}function V(n){return(0<n)-(n<0)}function Z(n,t){return f(t,(function(t){n=n.replace("%s",""+t)})),n}function $(n){return n<10?"0"+n:""+n}var nn={};var tn="mounted",en="move",on="moved",rn="shifted",un="click",sn="slide:keydown",cn="refresh",an="updated",fn="resize",ln="resized",dn="repositioned",pn="scrolled",hn="destroy",gn="navigation:mounted",vn="lazyload:loaded";function mn(n){var t=n.event,e={},i=[];function o(n,t,e){r(n,t,(function(n,t){i=i.filter((function(i){return!!(i[0]!==n||i[1]!==t||e&&i[2]!==e)||(n.removeEventListener(t,i[2],i[3]),!1)}))}))}function r(n,t,e){f(n,(function(n){n&&t.split(" ").forEach(e.bind(null,n))}))}function u(){i=i.filter((function(n){return o(n[0],n[1])})),t.offBy(e)}return t.on(hn,u,e),{on:function(n,i,o){t.on(n,i,e,o)},off:function(n){t.off(n,e)},emit:t.emit,bind:function(n,t,e,o){r(n,t,(function(n,t){i.push([n,t,e,o]),n.addEventListener(t,e,o)}))},unbind:o,destroy:u}}function yn(n,t,e,i){var o,r,u=Date.now,s=0,c=!0,a=0;function f(){if(!c){var r=u()-o;if(n<=r?(s=1,o=u()):s=r/n,e&&e(s),1===s&&(t(),i&&++a>=i))return l();H(f)}}function l(){c=!0}function d(){cancelAnimationFrame(r),c=!(r=s=0)}return{start:function(t){t||d(),o=u()-(t?s*n:0),c=!1,H(f)},rewind:function(){o=u(),s=0,e&&e(s)},pause:l,cancel:d,set:function(t){n=t},isPaused:function(){return c}}}function bn(n,t){var e;return function(){var i=arguments,o=this;e||(e=yn(t||0,(function(){n.apply(o,i),e=null}),null,1)).start()}}var wn={marginRight:["marginBottom","marginLeft"],autoWidth:["autoHeight"],fixedWidth:["fixedHeight"],paddingLeft:["paddingTop","paddingRight"],paddingRight:["paddingBottom","paddingLeft"],width:["height"],left:["top","right"],right:["bottom","left"],x:["y"],X:["Y"],Y:["X"],ArrowLeft:["ArrowUp","ArrowRight"],ArrowRight:["ArrowDown","ArrowLeft"]},xn=n,En=n+"__slide",Sn=En+"--clone",Pn=n+"__arrows",kn=n+"__arrow",_n=kn+"--prev",An=kn+"--next",Ln=n+"__pagination",zn=n+"__progress",Cn="is-active",Dn="is-prev",Mn="is-next",In="is-visible",Nn="is-loading",Tn=[Cn,In,Dn,Mn,Nn],On="role",Rn="aria-controls",Fn="aria-current",jn="aria-label",Wn="aria-hidden",Bn="tabindex",Xn="aria-orientation",Hn=[On,Rn,Fn,jn,Wn,Xn,Bn,"disabled"],Gn="slide",Yn="loop",qn="fade";var Un={passive:!1,capture:!0},Jn="touchmove mousemove",Kn="touchend touchcancel mouseup",Qn=["Left","Right","Up","Down"],Vn="keydown",Zn=t+"-lazy",$n=Zn+"-srcset",nt=[" ","Enter","Spacebar"],tt=Object.freeze({__proto__:null,Options:function(n,e,i){var o,r,u,s=bn(a);function c(n){n&&removeEventListener("resize",s)}function a(){var t;(t=(t=function(n){return n[1].matches},h(r).filter(t)[0]||[]))[0]!==u&&function(t){(t=i.breakpoints[t]||o).destroy?(n.options=o,n.destroy("completely"===t.destroy)):(n.state.is(5)&&(c(!0),n.mount()),n.options=t)}(u=t[0])}return{setup:function(){try{P(i,JSON.parse(C(n.root,t)))}catch(u){W(!1,u.message)}o=P({},i);var e,u=i.breakpoints;u&&(e="min"===i.mediaQuery,r=Object.keys(u).sort((function(n,t){return e?+t-+n:+n-+t})).map((function(n){return[n,matchMedia("("+(e?"min":"max")+"-width:"+n+"px)")]})),a())},mount:function(){r&&addEventListener("resize",s)},destroy:c}},Direction:function(n,t,e){return{resolve:function(n,t){var i=e.direction;return wn[n]["rtl"!==i||t?"ttb"===i?0:-1:1]||n},orient:function(n){return n*("rtl"===e.direction?1:-1)}}},Elements:function(t,i,o){var r,u,s,c,a=mn(t).on,f=t.root,l={},p=[];function h(){var t;!function(){u=x(f,".splide__slider"),s=O(f,".splide__track"),c=x(s,".splide__list"),W(s&&c,"A track/list element is missing."),d(p,w(c,"."+En+":not(."+Sn+")"));var n=b(".splide__autoplay"),t=b("."+Pn);S(l,{root:f,slider:u,track:s,list:c,slides:p,arrows:t,autoplay:n,prev:O(t,"."+_n),next:O(t,"."+An),bar:O(b("."+zn),".splide__progress__bar"),play:O(n,".splide__play"),pause:O(n,".splide__pause")})}(),t=f.id||function(n){return""+n+$(nn[n]=(nn[n]||0)+1)}(n),f.id=t,s.id=s.id||t+"-track",c.id=c.id||t+"-list",v(f,r=E())}function g(){[f,s,c].forEach((function(n){k(n,"style")})),e(p),F(f,r)}function m(){g(),h()}function y(){F(f,r),v(f,r=E())}function b(n){return x(f,n)||x(u,n)}function E(){return[xn+"--"+o.type,xn+"--"+o.direction,o.drag&&xn+"--draggable",o.isNavigation&&xn+"--nav",Cn]}return S(l,{setup:h,mount:function(){a(cn,m,8),a(an,y)},destroy:g})},Slides:function(n,t,i){var o=mn(n),u=o.on,s=o.emit,d=o.bind,p=(o=t.Elements).slides,h=o.list,w=[];function E(){p.forEach((function(n,t){A(n,t,-1)}))}function S(){T((function(n){n.destroy()})),e(w)}function P(){S(),E()}function A(t,e,i){(t=function(n,t,e,i){var o,r=mn(n),u=r.on,s=r.emit,c=r.bind,a=r.destroy,f=n.Components,l=n.root,d=n.options,p=d.isNavigation,h=d.updateOnMove,v=f.Direction.resolve,m=C(i,"style"),y=-1<e,b=x(i,".splide__slide__container"),w=d.focusableNodes&&R(i,d.focusableNodes);function E(){var o=y?e:t,r=Z(d.i18n.slideX,o+1);o=n.splides.map((function(n){return n.splide.root.id})).join(" "),_(i,jn,r),_(i,Rn,o),_(i,On,"menuitem"),A(z())}function S(){o||P()}function P(){var e;o||(e=n.index,A(z()),function(n){var t=!n&&(!z()||y);_(i,Wn,t||null),_(i,Bn,!t&&d.slideFocus?0:null),w&&w.forEach((function(n){_(n,Bn,t?-1:null)})),n!==D(i,In)&&(g(i,In,n),s(n?"visible":"hidden",I))}(function(){if(n.is(qn))return z();var t=M(f.Elements.track),e=M(i),o=v("left"),r=v("right");return q(t[o])<=U(e[o])&&q(e[r])<=U(t[r])}()),g(i,Dn,t===e-1),g(i,Mn,t===e+1))}function A(n){n!==D(i,Cn)&&(g(i,Cn,n),p&&_(i,Fn,n||null),s(n?"active":"inactive",I))}function z(){var i=n.index;return i===t||d.cloneStatus&&i===e}var I={index:t,slideIndex:e,slide:i,container:b,isClone:y,mount:function(){y||(i.id=l.id+"-slide"+$(t+1)),c(i,"click keydown",(function(n){s("click"===n.type?un:sn,I,n)})),u([cn,dn,rn,on,pn],P),u(gn,E),h&&u(en,S)},destroy:function(){o=!0,a(),F(i,Tn),k(i,Hn),_(i,"style",m)},update:P,style:function(n,t,e){L(e&&b||i,n,t)},isWithin:function(e,i){return e=J(e-t),(e=y||!d.rewind&&!n.is(Yn)?e:G(e,n.length-e))<=i}};return I}(n,e,i,t)).mount(),w.push(t)}function z(n){return n?O((function(n){return!n.isClone})):w}function T(n,t){z(t).forEach(n)}function O(n){return w.filter("function"==typeof n?n:function(t){return r(n)?b(t.slide,n):l(a(n),t.index)})}return{mount:function(){E(),u(cn,P),u([tn,cn],(function(){w.sort((function(n,t){return n.index-t.index}))}))},destroy:S,update:function(){T((function(n){n.update()}))},register:A,get:z,getIn:function(n){var e=t.Controller,o=e.toIndex(n),r=e.hasFocus()?1:i.perPage;return O((function(n){return K(n.index,o,o+r-1)}))},getAt:function(n){return O(n)[0]},add:function(n,t){f(n,(function(n){var e,o,u;c(n=r(n)?N(n):n)&&((e=p[t])?y(n,e):m(h,n),v(n,i.classes.slide),n=n,o=s.bind(null,fn),n=R(n,"img"),(u=n.length)?n.forEach((function(n){d(n,"load error",(function(){--u||o()}))})):o())})),s(cn)},remove:function(n){I(O(n).map((function(n){return n.slide}))),s(cn)},forEach:T,filter:O,style:function(n,t,e){T((function(i){i.style(n,t,e)}))},getLength:function(n){return(n?p:w).length},isEnough:function(){return w.length>i.perPage}}},Layout:function(n,t,e){var o,r,u=mn(n),s=u.on,c=u.bind,a=u.emit,f=t.Slides,l=t.Direction.resolve,d=(t=t.Elements).root,p=t.track,h=t.list,g=f.getAt;function v(){r=null,o="ttb"===e.direction,L(d,"maxWidth",j(e.width)),L(p,l("paddingLeft"),y(!1)),L(p,l("paddingRight"),y(!0)),m()}function m(){var n=M(d);r&&r.width===n.width&&r.height===n.height||(L(p,"height",function(){var n="";return o&&(W(n=b(),"height or heightRatio is missing."),n="calc("+n+" - "+y(!1)+" - "+y(!0)+")"),n}()),f.style(l("marginRight"),j(e.gap)),f.style("width",(e.autoWidth?"":j(e.fixedWidth)||(o?"":w()))||null),f.style("height",j(e.fixedHeight)||(o?e.autoHeight?"":w():b())||null,!0),r=n,a(ln))}function y(n){var t=e.padding;n=l(n?"right":"left");return t&&j(t[n]||(i(t)?0:t))||"0px"}function b(){return j(e.height||M(h).width*e.heightRatio)}function w(){var n=j(e.gap);return"calc((100%"+(n&&" + "+n)+")/"+(e.perPage||1)+(n&&" - "+n)+")"}function x(n,t){var e=g(n);return e?(n=M(e.slide)[l("right")],e=M(h)[l("left")],J(n-e)+(t?0:E())):0}function E(){var n=g(0);return n&&parseFloat(L(n.slide,l("marginRight")))||0}return{mount:function(){v(),c(window,"resize load",bn(a.bind(this,fn))),s([an,cn],v),s(fn,m)},listSize:function(){return M(h)[l("width")]},slideSize:function(n,t){return(n=g(n||0))?M(n.slide)[l("width")]+(t?0:E()):0},sliderSize:function(){return x(n.length-1,!0)-x(-1,!0)},totalSize:x,getPadding:function(n){return parseFloat(L(p,l("padding"+(n?"Right":"Left"))))||0}}},Clones:function(n,t,i){var o,u=mn(n),s=u.on,c=u.emit,a=t.Elements,f=t.Slides,l=t.Direction.resolve,p=[];function h(){(o=x())&&(function(t){var e=f.get().slice(),o=e.length;if(o){for(;e.length<t;)d(e,e);d(e.slice(-t),e.slice(0,t)).forEach((function(r,u){var s=u<t,c=function(t,e){return v(t=t.cloneNode(!0),i.classes.clone),t.id=n.root.id+"-clone"+$(e+1),t}(r.slide,u);s?y(c,e[0].slide):m(a.list,c),d(p,c),f.register(c,u-t+(s?0:o),r.index)}))}}(o),c(fn))}function g(){I(p),e(p)}function b(){g(),h()}function w(){o<x()&&c(cn)}function x(){var t,e,o=i.clones;return n.is(Yn)?o||(t=a.list,r(e=i[l("fixedWidth")])&&(e=M(t=A("div",{style:"width: "+e+"; position: absolute;"},t)).width,I(t)),o=((e=e)&&U(M(a.track)[l("width")]/e)||i[l("autoWidth")]&&n.length||i.perPage)*(i.drag?(i.flickMaxPages||1)+1:2)):o=0,o}return{mount:function(){h(),s(cn,b),s([an,fn],w)},destroy:g}},Move:function(n,t,e){var i,o=mn(n),r=o.on,s=o.emit,c=(o=t.Layout).slideSize,a=o.getPadding,f=o.totalSize,l=o.listSize,d=o.sliderSize,p=(o=t.Direction).resolve,h=o.orient,g=(o=t.Elements).list,v=o.track;function m(){P()||(t.Scroll.cancel(),y(n.index),s(dn))}function y(n){b(x(n,!0))}function b(t,e){n.is(qn)||(e=e?t:function(t){var e,i;return n.is(Yn)&&(i=h(t-E()),e=_(!1,t)&&i<0,i=_(!0,t)&&0<i,(e||i)&&(t=w(t,i))),t}(t),g.style.transform="translate"+p("X")+"("+e+"px)",t!==e&&s(rn))}function w(n,t){var e=n-S(t),i=d();return n-h(i*(U(J(e)/i)||1))*(t?1:-1)}function x(t,i){var o=h(f(t-1)-(o=t,"center"===(t=e.focus)?(l()-c(o,!0))/2:+t*c(o)||0));return i?function(t){return e.trimSpace&&n.is(Gn)&&(t=Q(t,0,h(d()-l()))),t}(o):o}function E(){var n=p("left");return M(g)[n]-M(v)[n]+h(a(!1))}function S(n){return x(n?t.Controller.getEnd():0,!!e.trimSpace)}function P(){return n.state.is(4)&&e.waitForTransition}function _(n,t){t=u(t)?E():t;var e=!0!==n&&h(t)<h(S(!1));t=!1!==n&&h(t)>h(S(!0));return e||t}return{mount:function(){i=t.Transition,r([tn,ln,an,cn],m)},destroy:function(){k(g,"style")},move:function(o,r,u,c){var a,f;P()||(a=n.state.set,f=E(),o!==r&&(i.cancel(),b(w(f,r<o),!0)),a(4),s(en,r,u,o),i.start(r,(function(){a(3),s(on,r,u,o),"move"===e.trimSpace&&o!==u&&f===E()?t.Controller.go(u<o?">":"<",!1,c):c&&c()})))},jump:y,translate:b,shift:w,cancel:function(){b(E()),i.cancel()},toIndex:function(n){for(var e=t.Slides.get(),i=0,o=1/0,r=0;r<e.length;r++){var u=e[r].index,s=J(x(u,!0)-n);if(!(s<=o))break;o=s,i=u}return i},toPosition:x,getPosition:E,getLimit:S,isBusy:P,exceededLimit:_}},Controller:function(n,t,e){var i,o,s,c=mn(n).on,a=t.Move,f=a.getPosition,l=a.getLimit,d=t.Slides,p=d.isEnough,h=d.getLength,g=n.is(Yn),v=n.is(Gn),m=e.start||0,y=m;function b(){i=h(!0),o=e.perMove,s=e.perPage,m=Q(m,0,i-1)}function w(n,e,i,o,r){var u=e?n:z(n);t.Scroll.scroll(e||i?a.toPosition(u,!0):n,o,(function(){C(a.toIndex(a.getPosition())),r&&r()}))}function x(n){return S(!1,n)}function E(n){return S(!0,n)}function S(n,t){var e,i,r=o||(D()?1:s),u=P(m+r*(n?-1:1),m);return-1!==u||!v||(e=f(),i=l(!n),r=1,J(e-i)<r)?t?u:_(u):n?0:k()}function P(n,t,r){var u;return p()?(u=k(),n<0||u<n?n=K(0,n,t,!0)||K(u,t,n,!0)?A(L(n)):g?o||D()?n:n<0?-(i%s||s):i:e.rewind?n<0?u:0:-1:r||n===t||(n=o?n:A(L(t)+(n<t?-1:1)))):n=-1,n}function k(){var n=i-s;return(D()||g&&o)&&(n=i-1),Y(n,0)}function _(n){return g?p()?n%i+(n<0?i:0):-1:n}function A(n){return Q(D()?n:s*n,0,k())}function L(n){return D()||(n=K(n,i-s,i-1)?i-1:n,n=q(n/s)),n}function z(n){return n=a.toIndex(n),v?Q(n,0,k()):n}function C(n){n!==m&&(y=m,m=n)}function D(){return!u(e.focus)||e.isNavigation}return{mount:function(){b(),c([an,cn],b,9)},go:function(n,t,i){var o=function(n){var t,e,i=m;return r(n)?(t=(e=n.match(/([+\-<>])(\d+)?/)||[])[1],e=e[2],"+"===t||"-"===t?i=P(m+ +(""+t+(+e||1)),m,!0):">"===t?i=e?A(+e):x(!0):"<"===t&&(i=E(!0))):i=g?n:Q(n,0,k()),i}(n);e.useScroll?w(o,!0,!0,e.speed,i):-1<(n=_(o))&&!a.isBusy()&&(t||n!==m)&&(C(n),a.move(o,n,y,i))},scroll:w,getNext:x,getPrev:E,getAdjacent:S,getEnd:k,setIndex:C,getIndex:function(n){return n?y:m},toIndex:A,toPage:L,toDest:z,hasFocus:D}},Arrows:function(n,t,e){var i,o=mn(n),r=o.on,u=o.bind,s=o.emit,c=e.classes,a=e.i18n,f=t.Elements,l=t.Controller,d=f.arrows,p=f.prev,h=f.next,g={};function v(){var t,o;e.arrows&&(p&&h||(d=A("div",c.arrows),p=b(!0),h=b(!1),i=!0,m(d,[p,h]),y(d,x("slider"===e.arrows&&f.slider||n.root)))),p&&h&&(g.prev?z(d,!1===e.arrows?"none":""):(t=f.track.id,_(p,Rn,t),_(h,Rn,t),g.prev=p,g.next=h,o=l.go,r([tn,on,an,cn,pn],w),u(h,"click",(function(){o(">",!0)})),u(p,"click",(function(){o("<",!0)})),s("arrows:mounted",p,h)))}function b(n){return N('<button class="'+c.arrow+" "+(n?c.prev:c.next)+'" type="button"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 40 40" width="40" height="40"><path d="'+(e.arrowPath||"m15.5 0.932-4.3 4.38 14.5 14.6-14.5 14.5 4.3 4.4 14.6-14.6 4.4-4.3-4.4-4.4-14.6-14.6z")+'" />')}function w(){var t=n.index,e=l.getPrev(),i=l.getNext(),o=-1<e&&t<e?a.last:a.prev;t=-1<i&&i<t?a.first:a.next;p.disabled=e<0,h.disabled=i<0,_(p,jn,o),_(h,jn,t),s("arrows:updated",p,h,e,i)}return{arrows:g,mount:function(){v(),r(an,v)},destroy:function(){i?I(d):(k(p,Hn),k(h,Hn))}}},Autoplay:function(n,t,e){var i,o,r,u=mn(n),s=u.on,c=u.bind,a=u.emit,f=yn(e.interval,n.go.bind(n,">"),(function(n){var t=d.bar;t&&L(t,"width",100*n+"%"),a("autoplay:playing",n)})),l=f.isPaused,d=t.Elements;function p(n){var t=n?"pause":"play",i=d[t];i&&(_(i,Rn,d.track.id),_(i,jn,e.i18n[t]),c(i,"click",n?g:h))}function h(){l()&&t.Slides.isEnough()&&(f.start(!e.resetProgress),o=i=r=!1,a("autoplay:play"))}function g(n){void 0===n&&(n=!0),l()||(f.pause(),a("autoplay:pause")),r=n}function v(){r||(i||o?g(!1):h())}function m(){var i=t.Slides.getAt(n.index);f.set(i&&+C(i.slide,"data-splide-interval")||e.interval)}return{mount:function(){var n=e.autoplay;n&&(p(!0),p(!1),function(){var n=d.root;e.pauseOnHover&&c(n,"mouseenter mouseleave",(function(n){i="mouseenter"===n.type,v()})),e.pauseOnFocus&&c(n,"focusin focusout",(function(n){o="focusin"===n.type,v()})),s([en,"scroll",cn],f.rewind),s(en,m)}(),"pause"!==n&&h())},destroy:f.cancel,play:h,pause:g,isPaused:l}},Cover:function(n,t,e){var i=mn(n).on;function o(n){t.Slides.forEach((function(t){var e=x(t.container||t.slide,"img");e&&e.src&&r(n,e,t)}))}function r(n,t,e){e.style("background",n?'center/cover no-repeat url("'+t.src+'")':"",!0),z(t,n?"none":"")}return{mount:function(){e.cover&&(i(vn,(function(n,t){r(!0,n,t)})),i([tn,an,cn],o.bind(null,!0)))},destroy:function(){o(!1)}}},Scroll:function(n,t,e){var i,o,r=mn(n),u=r.on,s=r.emit,c=t.Move,a=c.getPosition,f=c.getLimit,l=c.exceededLimit;function d(){var t=a(),e=c.toIndex(t);K(e,0,n.length-1)||c.translate(c.shift(t,0<e),!0),o&&o(),s(pn)}function p(){i&&i.cancel()}function h(){i&&!i.isPaused()&&(p(),d())}return{mount:function(){u(en,p),u([an,cn],h)},destroy:p,scroll:function t(r,u,h,g){var v,m=a(),y=1;u=u||(v=J(r-m),Y(v/1.5,800)),o=h,p(),i=yn(u,d,(function(i){var o=a(),u=(m+(r-m)*(u=i,(i=e.easingFunc)?i(u):1-Math.pow(1-u,4))-a())*y;c.translate(o+u),n.is(Gn)&&!g&&l()&&(y*=.6,J(u)<10&&(u=l(!1),t(f(!u),600,null,!0)))}),1),s("scroll"),i.start()},cancel:h}},Drag:function(n,t,e){var o,r,u,s,c,a,f,l,d,p=mn(n),h=p.on,g=p.emit,v=p.bind,m=p.unbind,y=t.Move,w=t.Scroll,x=t.Controller,E=t.Elements.track,S=(p=t.Direction).resolve,P=p.orient,k=y.getPosition,_=y.exceededLimit,A=!1;function L(){var n=e.drag;j(!n),c="free"===n}function z(n){var t,i;l||(i=e.noDrag,t=F(n),i=!i||!b(n.target,i),f=!1,!i||!t&&n.button||(y.isBusy()?T(n,!0):(d=t?E:window,s=u=null,v(d,Jn,C,Un),v(d,Kn,D,Un),y.cancel(),w.cancel(),M(n))))}function C(t){var u,c,l;s||g("drag"),(s=t).cancelable&&(u=O(t)-O(r),a?(y.translate(o+u/(A&&n.is(Gn)?5:1)),c=200<R(t)-R(r),l=A!==(A=_()),(c||l)&&M(t),g("dragging"),f=!0,T(t)):(l=i(l=e.dragMinThreshold)?l:{mouse:0,touch:+l||10},a=J(u)>(F(t)?l.touch:l.mouse),N()&&T(t)))}function D(i){m(d,Jn,C),m(d,Kn,D);var o,f,l=n.index;s?((a||i.cancelable&&N())&&(f=o=function(t){if(n.is(Yn)||!A){var e=r===s&&u||r,i=O(s)-O(e);e=R(t)-R(e),t=R(t)-R(s)<200;if(e&&t)return i/e}return 0}(i),f=k()+V(f)*G(J(f)*(e.flickPower||600),c?1/0:t.Layout.listSize()*(e.flickMaxPages||1)),c?x.scroll(f):n.is(qn)?x.go(l+P(V(o))):x.go(x.toDest(f),!0),T(i)),g("dragged")):c||k()===y.toPosition(l)||x.go(l,!0),a=!1}function M(n){u=r,r=n,o=k()}function I(n){!l&&f&&T(n,!0)}function N(){var n=J(O(s)-O(r));return J(O(s,!0)-O(r,!0))<n}function O(n,t){return(F(n)?n.touches[0]:n)["page"+S(t?"Y":"X")]}function R(n){return n.timeStamp}function F(n){return"undefined"!=typeof TouchEvent&&n instanceof TouchEvent}function j(n){l=n}return{mount:function(){v(E,Jn,X,Un),v(E,Kn,X,Un),v(E,"touchstart mousedown",z,Un),v(E,"click",I,{capture:!0}),v(E,"dragstart",T),h([tn,an],L)},disable:j,isDragging:function(){return a}}},Keyboard:function(n,t,e){var i,o,r=mn(n),u=r.on,s=r.bind,a=r.unbind,f=n.root,d=t.Direction.resolve;function p(){var n=e.keyboard;n&&("focused"===n?_(i=f,Bn,0):i=window,s(i,Vn,m))}function h(){a(i,Vn),c(i)&&k(i,Bn)}function g(){var n=o;o=!0,B((function(){o=n}))}function v(){h(),p()}function m(t){o||(t=t.key,(t=l(Qn,t)?"Arrow"+t:t)===d("ArrowLeft")?n.go("<"):t===d("ArrowRight")&&n.go(">"))}return{mount:function(){p(),u(an,v),u(en,g)},destroy:h,disable:function(n){o=n}}},LazyLoad:function(n,t,e){var i=mn(n),o=i.on,r=i.off,u=i.bind,s=i.emit,c="sequential"===e.lazyLoad,a=[],f=0;function l(){p(),d()}function d(){t.Slides.forEach((function(n){R(n.slide,"[data-splide-lazy], [data-splide-lazy-srcset]").forEach((function(t){var i,o,r=C(t,Zn),u=C(t,$n);r===t.src&&u===t.srcset||(i=e.classes.spinner,_(o=x(o=t.parentElement,"."+i)||A("span",i,o),On,"presentation"),a.push({o:t,e:n,src:r,srcset:u,c:o}),t.src||z(t,"none"))}))})),c&&m()}function p(){f=0,a=[]}function h(){(a=a.filter((function(t){var i=e.perPage*((e.preloadPages||1)+1)-1;return!t.e.isWithin(n.index,i)||g(t)}))).length||r(on)}function g(n){var t=n.o;v(n.e.slide,Nn),u(t,"load error",(function(t){!function(n,t){var e=n.e;F(e.slide,Nn),t||(I(n.c),z(n.o,""),s(vn,n.o,e),s(fn)),c&&m()}(n,"error"===t.type)})),["src","srcset"].forEach((function(e){n[e]&&(_(t,e,n[e]),k(t,"src"===e?Zn:$n))}))}function m(){f<a.length&&g(a[f++])}return{mount:function(){e.lazyLoad&&(d(),o(cn,l),c||o([tn,cn,on,pn],h))},destroy:p}},Pagination:function(n,t,i){var o,r=mn(n),u=r.on,s=r.emit,c=r.bind,a=r.unbind,f=t.Slides,l=t.Elements,d=t.Controller,p=d.hasFocus,h=d.getIndex,g=[];function m(){y(),i.pagination&&f.isEnough()&&(function(){var t=n.length,e=i.classes,r=i.i18n,u=i.perPage,s="slider"===i.pagination&&l.slider||l.root,a=p()?t:U(t/u);o=A("ul",e.pagination,s);for(var d=0;d<a;d++){var h=A("li",null,o),v=A("button",{class:e.page,type:"button"},h),m=f.getIn(d).map((function(n){return n.slide.id})),y=!p()&&1<u?r.pageX:r.slideX;c(v,"click",b.bind(null,d)),_(v,Rn,m.join(" ")),_(v,jn,Z(y,d+1)),g.push({li:h,button:v,page:d})}}(),s("pagination:mounted",{list:o,items:g},w(n.index)),x())}function y(){o&&(I(o),g.forEach((function(n){a(n.button,"click")})),e(g),o=null)}function b(n){d.go(">"+n,!0,(function(){var t=f.getAt(d.toIndex(n));t&&((t=t.slide).setActive&&t.setActive()||t.focus({preventScroll:!0}))}))}function w(n){return g[d.toPage(n)]}function x(){var n=w(h(!0)),t=w(h());n&&(F(n.button,Cn),k(n.button,Fn)),t&&(v(t.button,Cn),_(t.button,Fn,!0)),s("pagination:updated",{list:o,items:g},n,t)}return{items:g,mount:function(){m(),u([an,cn],m),u([en,pn],x)},destroy:y,getAt:w,update:x}},Sync:function(n,t,i){var o=t.Elements.list,r=[];function u(){var t,e;n.splides.forEach((function(t){var e;t.isParent||(e=t.splide,[n,e].forEach((function(t){var i=mn(t),o=t===n?e:n;i.on(en,(function(n,t,e){o.go(o.is(Yn)?e:n)})),r.push(i)})))})),i.isNavigation&&((e=(t=mn(n)).on)(un,a),e(sn,f),e([tn,an],c),_(o,On,"menu"),r.push(t),t.emit(gn,n.splides))}function s(){k(o,Hn),r.forEach((function(n){n.destroy()})),e(r)}function c(){_(o,Xn,"ttb"!==i.direction?"horizontal":null)}function a(t){n.go(t.index)}function f(n,t){l(nt,t.key)&&(a(n),T(t))}return{mount:u,destroy:s,remount:function(){s(),u()}}},Wheel:function(n,t,e){var i=mn(n).bind;function o(i){var o;!i.cancelable||(o=i.deltaY)&&(n.go((o=o<0)?"<":">"),o=o,e.releaseWheel&&!n.state.is(4)&&-1===t.Controller.getAdjacent(o)||T(i))}return{mount:function(){e.wheel&&i(t.Elements.track,"wheel",o,Un)}}}}),et={type:"slide",speed:400,waitForTransition:!0,perPage:1,cloneStatus:!0,arrows:!0,pagination:!0,interval:5e3,pauseOnHover:!0,pauseOnFocus:!0,resetProgress:!0,keyboard:!0,easing:"cubic-bezier(0.25, 1, 0.5, 1)",drag:!0,direction:"ltr",slideFocus:!0,trimSpace:!0,focusableNodes:"a, button, textarea, input, select, iframe",classes:{slide:En,clone:Sn,arrows:Pn,arrow:kn,prev:_n,next:An,pagination:Ln,page:Ln+"__page",spinner:n+"__spinner"},i18n:{prev:"Previous slide",next:"Next slide",first:"Go to first slide",last:"Go to last slide",slideX:"Go to slide %s",pageX:"Go to page %s",play:"Start autoplay",pause:"Pause autoplay"}};function it(n,t,e){var i=mn(n).on;return{mount:function(){i([tn,cn],(function(){B((function(){t.Slides.style("transition","opacity "+e.speed+"ms "+e.easing)}))}))},start:function(n,e){var i=t.Elements.track;L(i,"height",j(M(i).height)),B((function(){e(),L(i,"height","")}))},cancel:X}}function ot(n,t,e){var i,o=mn(n).bind,r=t.Move,u=t.Controller,s=t.Elements.list;function c(){a("")}function a(n){L(s,"transition",n)}return{mount:function(){o(s,"transitionend",(function(n){n.target===s&&i&&(c(),i())}))},start:function(t,o){var s=r.toPosition(t,!0),c=r.getPosition(),f=function(t){var i=e.rewindSpeed;if(n.is(Gn)&&i){var o=u.getIndex(!0),r=u.getEnd();if(0===o&&r<=t||r<=o&&0===t)return i}return e.speed}(t);1<=J(s-c)&&1<=f?(a("transform "+f+"ms "+e.easing),r.translate(s,!0),i=o):(r.jump(t),o())},cancel:c}}return(Ln=function(){function n(t,e){this.event=function(){var n={};function t(t,i){e(t,(function(t,e){var o=n[t];n[t]=o&&o.filter((function(n){return n.n?n.n!==i:i||n.t!==e}))}))}function e(n,t){a(n).join(" ").split(" ").forEach((function(n){n=n.split("."),t(n[0],n[1])}))}return{on:function(t,i,o,r){void 0===r&&(r=10),e(t,(function(t,e){n[t]=n[t]||[],d(n[t],{i:t,r:i,t:e,u:r,n:o}).sort((function(n,t){return n.u-t.u}))}))},off:t,offBy:function(e){E(n,(function(n,i){t(i,e)}))},emit:function(t){var e=arguments;(n[t]||[]).forEach((function(n){n.r.apply(n,h(e,1))}))},destroy:function(){n={}}}}(),this.Components={},this.state=function(n){var t=n;return{set:function(n){t=n},is:function(n){return l(a(n),t)}}}(1),this.splides=[],this.f={},this.a={},W(t=r(t)?O(document,t):t,t+" is invalid."),this.root=t,P(et,n.defaults),P(P(this.f,et),e||{})}var t,i=n.prototype;return i.mount=function(n,t){var e=this,i=this.state,o=this.Components;return W(i.is([1,5]),"Already mounted!"),i.set(1),this.s=o,this.l=t||this.l||(this.is(qn)?it:ot),this.a=n||this.a,E(S({},tt,this.a,{Transition:this.l}),(function(n,t){n=n(e,o,e.f),(o[t]=n).setup&&n.setup()})),E(o,(function(n){n.mount&&n.mount()})),this.emit(tn),v(this.root,"is-initialized"),i.set(3),this.emit("ready"),this},i.sync=function(n){return this.splides.push({splide:n}),n.splides.push({splide:this,isParent:!0}),this.state.is(3)&&(this.s.Sync.remount(),n.Components.Sync.remount()),this},i.go=function(n){return this.s.Controller.go(n),this},i.on=function(n,t){return this.event.on(n,t,null,20),this},i.off=function(n){return this.event.off(n),this},i.emit=function(n){var t;return(t=this.event).emit.apply(t,[n].concat(h(arguments,1))),this},i.add=function(n,t){return this.s.Slides.add(n,t),this},i.remove=function(n){return this.s.Slides.remove(n),this},i.is=function(n){return this.f.type===n},i.refresh=function(){return this.emit(cn),this},i.destroy=function(n){void 0===n&&(n=!0);var t=this.event,i=this.state;return i.is(1)?t.on("ready",this.destroy.bind(this,n),this):(E(this.s,(function(t){t.destroy&&t.destroy(n)}),!0),t.emit(hn),t.destroy(),n&&e(this.splides),i.set(5)),this},t=n,(i=[{key:"options",get:function(){return this.f},set:function(n){var t=this.f;P(t,n),this.state.is(1)||this.emit(an,t)}},{key:"length",get:function(){return this.s.Slides.getLength(!0)}},{key:"index",get:function(){return this.s.Controller.getIndex()}}])&&At(t.prototype,i),n}()).defaults={},Ln.STATES={CREATED:1,MOUNTED:2,IDLE:3,MOVING:4,DESTROYED:5},Ln},"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(n="undefined"!=typeof globalThis?globalThis:n||self).Splide=t(); (self.webpackChunk=self.webpackChunk||[]).push([[2653],{9241:function(){App.extend("accordions",{accordionBlocks:document.querySelectorAll(".invicti-block.accordion"),run:function(n){n.querySelectorAll(".accordion-heading").forEach((function(c){c.onclick=function(){var o=c.parentNode.closest(".accordion-section"),i=n.querySelectorAll(".accordion-section.active");o.classList.contains("active")?o.classList.remove("active"):o.classList.add("active"),i.forEach((function(n){n.classList.remove("active")}))}}))},setHeight:function(n){n.querySelectorAll(".accordion-section").forEach((function(n){var c=n.querySelector(".accordion-text").clientHeight+1;n.setAttribute("style","--accordion-height:".concat(c,"px"))}))},init:function(){var n=window.App.accordions;n.accordionBlocks.forEach((function(c){n.run(c),n.setHeight(c),window.addEventListener("resize",(function(){n.setHeight(c)}))}))}}),App.init(App.accordions.init)},3746:function(){},2611:function(){},3852:function(){},7977:function(){},7016:function(){},6813:function(){},5883:function(){},8758:function(){},7347:function(){},5177:function(){},7314:function(){},2153:function(){},429:function(){},7098:function(){},8682:function(){},9889:function(){},8464:function(){},4377:function(){},9683:function(){},3085:function(){},4556:function(){},6546:function(){},4234:function(){},6837:function(){},2340:function(){},2700:function(){},9760:function(){},9845:function(){},8289:function(){},2457:function(){},9876:function(){},5265:function(){},6602:function(){},4489:function(){},4422:function(){},861:function(){},4044:function(){},9382:function(){},5376:function(){},8701:function(){},2898:function(){},1989:function(){},4953:function(){},7363:function(){},8797:function(){},8077:function(){},9727:function(){},8806:function(){},4321:function(){},7696:function(){},2511:function(){},8943:function(){},9622:function(){},2186:function(){},4598:function(){},6153:function(){},8753:function(){},721:function(){},6321:function(){},4557:function(){},8169:function(){},7786:function(){},3120:function(){},9657:function(){},5257:function(){},6821:function(){},680:function(){},1815:function(){},8113:function(){},4318:function(){},8006:function(){},7085:function(){},2293:function(){},1751:function(){},9735:function(){},788:function(){},3761:function(){},9294:function(){},5468:function(){},2397:function(){},8867:function(){},7064:function(){},3965:function(){},1393:function(){},5171:function(){},3800:function(){},6157:function(){},8775:function(){},3512:function(){},2696:function(){},8492:function(){},9308:function(){},6881:function(){},7041:function(){},1309:function(){},6232:function(){},578:function(){},2188:function(){},3606:function(){},3614:function(){},4361:function(){},4268:function(){},7106:function(){},9181:function(){},7910:function(){},1525:function(){},2108:function(){},297:function(){},1943:function(){}},function(n){var c=function(c){return n(n.s=c)};n.O(0,[8138,9049,4522,8056,3626,2917,7260,7484,995,5398,1697,3896,687,7555,3206,9484,1120,4167,9774,3615,2229,9944,1785,196,896,1548,2651,1739,7532,1891,9047,7368,6469,2078,3415,8320,1010,4906,2855,4098,973,8201,7089,6840,3770,8043,4216,226,383,2285,6045,6567,1575,1855,9489,7215,4674,5177,9190,9402,4346,175,1121,6231,4055,5517,4298,7695,7916,8947,4915,547,7258,8624,2039,7381,7123,5839,3501,2132,1518,530,148,1909,5605,3375,188,1981,6362,798,2212,5950,8517,7991,5551,2125,1099,9331,5760,2126,4692,495,4777,961,9598,2845,2019,2879,2365],(function(){return c(9241),c(5257),c(788),c(6157),c(2188),c(1943),c(7314),c(9889),c(8464),c(4377),c(9683),c(3085),c(4556),c(6546),c(4234),c(6837),c(2340),c(2700),c(9760),c(9845),c(8289),c(2457),c(9876),c(5265),c(6602),c(4489),c(4422),c(861),c(4044),c(9382),c(5376),c(8701),c(2898),c(1989),c(4953),c(7363),c(8797),c(8077),c(9727),c(8806),c(4321),c(7696),c(2511),c(8943),c(9622),c(2186),c(4598),c(6153),c(8753),c(721),c(6321),c(4557),c(8169),c(7786),c(3120),c(9657),c(6821),c(680),c(1815),c(8113),c(4318),c(8006),c(7085),c(2293),c(1751),c(9735),c(3761),c(9294),c(5468),c(2397),c(8867),c(7064),c(3965),c(1393),c(5171),c(3800),c(8775),c(3512),c(2696),c(8492),c(9308),c(6881),c(7041),c(1309),c(6232),c(578),c(3606),c(3614),c(4361),c(4268),c(7106),c(9181),c(7910),c(1525),c(2108),c(297),c(3746),c(2611),c(3852),c(7977),c(7016),c(6813),c(5883),c(8758),c(7347),c(5177),c(2153),c(429),c(7098),c(8682)}));n.O()}]); (self.webpackChunk=self.webpackChunk||[]).push([[4998],{1035:function(){App.extend("navbar",{stickyHeader:function(){var e=document.querySelector("body"),t=document.querySelector(".sticky-header-observer");t&&new IntersectionObserver((function(t){t[0].isIntersecting?e.classList.remove("sticky-header"):e.classList.add("sticky-header")})).observe(t)},mobileSubMenu:function(){document.querySelectorAll("#site-navigation .menu-item-has-children a").forEach((function(e){App.on(e,"click",(function(){App.mobileMenuActive&&(e.parentElement.classList.contains("active-sub-menu")?e.parentElement.classList.remove("active-sub-menu"):e.parentElement.classList.add("active-sub-menu"))}))}))},mobileMenu:function(){var e=document.querySelectorAll(".navbar-toggle"),t=document.querySelector("body");e&&e.forEach((function(e){App.on(e,"click",(function(){var e=document.querySelector(".site-header"),n=document.querySelector(".primary-menu-wrapper"),i=window.innerHeight;t.classList.contains("mobile-menu-active")?(n.removeAttribute("style"),t.classList.remove("mobile-menu-active"),App.extend("mobileMenuActive",!1)):(n.style.height=i-e.offsetHeight+"px",t.classList.add("mobile-menu-active"),App.extend("mobileMenuActive",!0))}))}))},resizer:function(){App.on(window,"resize",(function(){var e=document.querySelector(".primary-menu-wrapper");e&&(e.removeAttribute("style"),document.querySelector("body").classList.remove("mobile-menu-active"))}))},init:function(){var e=App.navbar;e.stickyHeader(),e.mobileMenu(),e.mobileSubMenu(),e.resizer()}}),App.init(App.navbar.init)}},function(e){var t;t=1035,e(e.s=t)}]); (self.webpackChunk=self.webpackChunk||[]).push([[9929],{3817:function(){App.init((function(){var e=document.querySelectorAll(".sidebar-menu .menu-item.menu-item-has-children"),t=document.querySelector(".sidebar-contents");e&&(e.forEach((function(e){e.classList.contains("current-menu-ancestor")&&e.classList.add("active"),e.querySelector(".menu-expander").addEventListener("click",(function(){e.classList.toggle("active")}))})),t.addEventListener("click",(function(){document.querySelector(".sidebar-menu").classList.toggle("active"),document.querySelector(".sidebar").classList.toggle("active")})))}))}},function(e){var t;t=3817,e(e.s=t)}]); </script> <style id="prismcss">code[class*=language-],pre[class*=language-]{color:#000;background:0 0;font-family:Consolas,Monaco,'Andale Mono','Ubuntu Mono',monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none}pre[class*=language-]{position:relative;margin:.5em 0;overflow:visible;padding:1px}pre[class*=language-]>code{position:relative;z-index:1}code[class*=language-]{max-height:inherit;height:inherit;padding:0 1em;display:block;overflow:auto}:not(pre)>code[class*=language-],pre[class*=language-]{background-color:#fdfdfd;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;margin-bottom:1em}:not(pre)>code[class*=language-]{position:relative;padding:.2em;border-radius:.3em;color:#c92c2c;border:1px solid rgba(0,0,0,.1);display:inline;white-space:normal}pre[class*=language-]:after,pre[class*=language-]:before{content:'';display:block;position:absolute;bottom:.75em;left:.18em;width:40%;height:20%;max-height:13em}pre[class*=language-]:after{right:.75em;left:auto;-webkit-transform:rotate(2deg);-moz-transform:rotate(2deg);-ms-transform:rotate(2deg);-o-transform:rotate(2deg);transform:rotate(2deg)}.token.block-comment,.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#6b7782}.token.punctuation{color:#5f6364}.token.boolean,.token.constant,.token.deleted,.token.function-name,.token.number,.token.property,.token.symbol,.token.tag{color:#c92c2c}.token.attr-name,.token.builtin,.token.char,.token.function,.token.inserted,.token.selector,.token.string{color:#2f9c0a}.token.entity,.token.operator,.token.url,.token.variable{color:#a67f59;background:rgba(255,255,255,.5)}.token.atrule,.token.attr-value,.token.class-name,.token.keyword{color:#1990b8}.token.important,.token.regex{color:#e90}.language-css .token.string,.style .token.string{color:#a67f59;background:rgba(255,255,255,.5)}.token.important{font-weight:400}.token.bold{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}.token.namespace{opacity:.7}@media screen and (max-width:767px){pre[class*=language-]:after,pre[class*=language-]:before{bottom:14px;box-shadow:none}}pre[class*=language-].line-numbers.line-numbers{padding-left:0}pre[class*=language-].line-numbers.line-numbers code{padding-left:3.8em}pre[class*=language-].line-numbers.line-numbers .line-numbers-rows{left:0}pre[class*=language-][data-line]{padding-top:0;padding-bottom:0;padding-left:0}pre[data-line] code{position:relative;padding-left:4em}pre .line-highlight{margin-top:0}pre[class*=language-].line-numbers{position:relative;padding-left:3.8em;counter-reset:linenumber}pre[class*=language-].line-numbers>code{position:relative;white-space:inherit}.line-numbers .line-numbers-rows{position:absolute;pointer-events:none;top:0;font-size:100%;left:-3.8em;width:3em;letter-spacing:-1px;border-right:1px solid #ccc;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.line-numbers-rows>span{display:block;counter-increment:linenumber}.line-numbers-rows>span:before{content:counter(linenumber);color:#999;display:block;padding-right:.8em;text-align:right}div.code-toolbar{position:relative}div.code-toolbar>.toolbar{position:absolute;z-index:6;top:.3em;right:.2em;transition:opacity .3s ease-in-out;opacity:0}div.code-toolbar:hover>.toolbar{opacity:1}div.code-toolbar:focus-within>.toolbar{opacity:1}div.code-toolbar>.toolbar>.toolbar-item{display:inline-block}div.code-toolbar>.toolbar>.toolbar-item>a{cursor:pointer}div.code-toolbar>.toolbar>.toolbar-item>button{background:0 0;border:0;color:inherit;font:inherit;line-height:normal;overflow:visible;padding:0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}div.code-toolbar>.toolbar>.toolbar-item>a,div.code-toolbar>.toolbar>.toolbar-item>button,div.code-toolbar>.toolbar>.toolbar-item>span{color:#bbb;font-size:.8em;padding:0 .5em;background:#f5f2f0;background:rgba(224,224,224,.2);box-shadow:0 2px 0 0 rgba(0,0,0,.2);border-radius:.5em}div.code-toolbar>.toolbar>.toolbar-item>a:focus,div.code-toolbar>.toolbar>.toolbar-item>a:hover,div.code-toolbar>.toolbar>.toolbar-item>button:focus,div.code-toolbar>.toolbar>.toolbar-item>button:hover,div.code-toolbar>.toolbar>.toolbar-item>span:focus,div.code-toolbar>.toolbar>.toolbar-item>span:hover{color:inherit;text-decoration:none}pre[class*=language]>code{border-style:none;padding-left:0;padding-right:0;padding-top:.625rem;padding-bottom:.625rem}pre[class*=language]:not(.line-numbers){border-radius:4px!important}pre[class*=language]:not(.line-numbers)>code{border-style:none;padding:.625rem 1em}pre[class*=language]>code .punctuation{--tw-text-opacity:1;color:rgb(29 28 41 / var(--tw-text-opacity))}div.code-toolbar>pre[class*=language]>code .line-numbers-rows{padding-top:.625rem;padding-bottom:.625rem}div.code-toolbar>.toolbar{right:.3em}div.code-toolbar>.toolbar>.toolbar-item>button{border-radius:.25rem;border-width:0;--tw-bg-opacity:1;background-color:rgb(204 204 204 / var(--tw-bg-opacity));padding-left:.625rem;padding-right:.625rem;padding-top:.25rem;padding-bottom:.25rem;text-transform:lowercase;line-height:1;--tw-text-opacity:1;color:rgb(255 255 255 / var(--tw-text-opacity));--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)} </style> <!-- Start VWO Async SmartCode --> <script async type='text/javascript' nonce="wo123jejr234982dfn"> window._vwo_code = window._vwo_code || (function(){ var account_id=301870, settings_tolerance=2000, library_tolerance=2500, use_existing_jquery=false, is_spa=1, hide_element='body', /* DO NOT EDIT BELOW THIS LINE */ f=false,d=document,code={use_existing_jquery:function(){return use_existing_jquery;},library_tolerance:function(){return library_tolerance;},finish:function(){if(!f){f=true;var a=d.getElementById('_vis_opt_path_hides');if(a)a.parentNode.removeChild(a);}},finished:function(){return f;},load:function(a){var b=d.createElement('script');b.src=a;b.type='text/javascript';b.innerText;b.onerror=function(){_vwo_code.finish();};d.getElementsByTagName('head')[0].appendChild(b);},init:function(){ window.settings_timer=setTimeout(function () {_vwo_code.finish() },settings_tolerance);var a=d.createElement('style'),b=hide_element?hide_element+'{opacity:0 !important;filter:alpha(opacity=0) !important;background:none !important;}':'',h=d.getElementsByTagName('head')[0];a.setAttribute('id','_vis_opt_path_hides');a.setAttribute('type','text/css');if(a.styleSheet)a.styleSheet.cssText=b;else a.appendChild(d.createTextNode(b));h.appendChild(a);this.load('https://dev.visualwebsiteoptimizer.com/j.php?a='+account_id+'&u='+encodeURIComponent(d.URL)+'&f='+(+is_spa)+'&r='+Math.random());return settings_timer; }};window._vwo_settings_timer = code.init(); return code; }()); </script> <!-- End VWO Async SmartCode --> </body> </html> <!-- Performance optimized by Redis Object Cache. Learn more: https://wprediscache.com -->

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