1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 2<html xmlns="http://www.w3.org/1999/xhtml" lang="en"> 3 4<head prefix="og: http://ogp.me/ns# fb: http://ogp.me/ns/fb# cognifit-app: http://ogp.me/ns/fb/cognifit-app#">
5<script id="Cookiebot" src="https://consent.cookiebot.com/uc.js" data-cbid="96e64329-f2a9-42f4-86af-3f7a26bf402b" data-blockingmode="auto" type="text/javascript"></script>
5<meta http-equiv="X-UA-Compatible" value="IE=9"> 6<meta name="viewport" content="width=device-width, initial-scale=1"> 7<title>CogniFit - Account - Login or Reset Password</title><link href="/favicon/favicon.ico" rel="shortcut icon" type="image/x-icon" />
7<script type="text/javascript" src="//dcmc7jx5auk5b.cloudfront.net/jsmin/v811/v2/all/jquery/jquery-3.7.1.min.js" data-cookieconsent="ignore"></script>
7 8
8<script type="text/javascript" src="https://dcmc7jx5auk5b.cloudfront.net/jsmin/v811/home_su.js" data-cookieconsent="ignore"></script>
8 9
9<script type="text/javascript" src="//dcmc7jx5auk5b.cloudfront.net/jsmin/v811/v2/all/jquery/jquery-ui.min-plus-colorbox.js" data-cookieconsent="ignore"></script>
9 10
10<script type="text/javascript" src="//dcmc7jx5auk5b.cloudfront.net/jsmin/v811/v2/all/jquery/jquery.scrollTo.js" data-cookieconsent="ignore"></script>
10 11 12
12<script type="text/javascript" src="https://dcmc7jx5auk5b.cloudfront.net/jsmin/v811/Login.js" data-cookieconsent="ignore"></script>
12 13
13<script type="text/javascript" src="https://dcmc7jx5auk5b.cloudfront.net/jsmin/v811/v2/all/ChatCSManager.js" data-cookieconsent="ignore"></script>
13 14
14<script> 15 onRenderButton(); 16 FastReg.locale = 'en'; 17 </script>
17 18 <link href="https://css.cognifit.com/cssmin/v841/newart.css" media="screen" rel="stylesheet" type="text/css" /> 19 <link href="https://css.cognifit.com/cssmin/v841/new_corp.css" media="screen" rel="stylesheet" type="text/css" /> 20 <!--<link rel="shortcut icon" href="/favicon/favicon.ico" />--> 21 <link rel="apple-touch-icon" sizes="180x180" href="/favicon/apple-touch-icon.png"> 22 <link rel="icon" type="image/png" sizes="32x32" href="/favicon/favicon-32x32.png"> 23 <link rel="icon" type="image/png" sizes="16x16" href="/favicon/favicon-16x16.png"> 24 <link rel="manifest" href="/favicon/site.webmanifest"> 25 <link rel="mask-icon" href="/favicon/safari-pinned-tab.svg" color="#007cd5"> 26 <meta name="msapplication-TileColor" content="#007cd5"> 27 <meta name="theme-color" content="#ffffff"> 28 29 <link rel="canonical" href="https://www.cognifit.com/login" /> 30 <link rel="alternate" href="https://www.cognifit.com/ad/en/login" hreflang="en-AD" /> 31 <link rel="alternate" href="https://www.cognifit.com/ad/login" hreflang="es-AD" /> 32 <link rel="alternate" href="https://www.cognifit.com/ad/ca/login" hreflang="ca-AD" /> 33 <link rel="alternate" href="https://www.cognifit.com/ae/en/login" hreflang="en-AE" /> 34 <link rel="alternate" href="https://www.cognifit.com/ae/login" hreflang="ar-AE" /> 35 <link rel="alternate" href="https://www.cognifit.com/af/login" hreflang="en-AF" /> 36 <link rel="alternate" href="https://www.cognifit.com/ag/login" hreflang="en-AG" /> 37 <link rel="alternate" href="https://www.cognifit.com/al/login" hreflang="en-AL" /> 38 <link rel="alternate" href="https://www.cognifit.com/am/login" hreflang="en-AM" /> 39 <link rel="alternate" href="https://www.cognifit.com/ao/en/login" hreflang="en-AO" /> 40 <link rel="alternate" href="https://www.cognifit.com/ao/login" hreflang="pt-AO" /> 41 <link rel="alternate" href="https://www.cognifit.com/ar/en/login" hreflang="en-AR" /> 42 <link rel="alternate" href="https://www.cognifit.com/ar/login" hreflang="es-AR" /> 43 <link rel="alternate" href="https://www.cognifit.com/at/en/login" hreflang="en-AT" /> 44 <link rel="alternate" href="https://www.cognifit.com/at/login" hreflang="de-AT" /> 45 <link rel="alternate" href="https://www.cognifit.com/au/login" hreflang="en-AU" /> 46 <link rel="alternate" href="https://www.cognifit.com/az/login" hreflang="en-AZ" /> 47 <link rel="alternate" href="https://www.cognifit.com/ba/login" hreflang="en-BA" /> 48 <link rel="alternate" href="https://www.cognifit.com/ba/sr/login" hreflang="sr-BA" /> 49 <link rel="alternate" href="https://www.cognifit.com/bb/login" hreflang="en-BB" /> 50 <link rel="alternate" href="https://www.cognifit.com/bd/login" hreflang="en-BD" /> 51 <link rel="alternate" href="https://www.cognifit.com/bd/bn/login" hreflang="bn-BD" /> 52 <link rel="alternate" href="https://www.cognifit.com/be/en/login" hreflang="en-BE" /> 53 <link rel="alternate" href="https://www.cognifit.com/be/de/login" hreflang="de-BE" /> 54 <link rel="alternate" href="https://www.cognifit.com/be/login" hreflang="fr-BE" /> 55 <link rel="alternate" href="https://www.cognifit.com/be/nl/login" hreflang="nl-BE" /> 56 <link rel="alternate" href="https://www.cognifit.com/bf/en/login" hreflang="en-BF" /> 57 <link rel="alternate" href="https://www.cognifit.com/bf/login" hreflang="fr-BF" /> 58 <link rel="alternate" href="https://www.cognifit.com/bg/login" hreflang="en-BG" /> 59 <link rel="alternate" href="https://www.cognifit.com/bh/en/login" hreflang="en-BH" /> 60 <link rel="alternate" href="https://www.cognifit.com/bh/login" hreflang="ar-BH" /> 61 <link rel="alternate" href="https://www.cognifit.com/bi/en/login" hreflang="en-BI" /> 62 <link rel="alternate" href="https://www.cognifit.com/bi/login" hreflang="fr-BI" /> 63 <link rel="alternate" href="https://www.cognifit.com/bj/en/login" hreflang="en-BJ" /> 64 <link rel="alternate" href="https://www.cognifit.com/bj/login" hreflang="fr-BJ" /> 65 <link rel="alternate" href="https://www.cognifit.com/bn/login" hreflang="en-BN" /> 66 <link rel="alternate" href="https://www.cognifit.com/bo/en/login" hreflang="en-BO" /> 67 <link rel="alternate" href="https://www.cognifit.com/bo/login" hreflang="es-BO" />
68 <link rel="alternate" href="https://www.cognifit.com/br/en/login" hreflang="en-BR" /> 69 <link rel="alternate" href="https://www.cognifit.com/br/login" hreflang="pt-BR" /> 70 <link rel="alternate" href="https://www.cognifit.com/bs/login" hreflang="en-BS" /> 71 <link rel="alternate" href="https://www.cognifit.com/bt/login" hreflang="en-BT" /> 72 <link rel="alternate" href="https://www.cognifit.com/bw/login" hreflang="en-BW" /> 73 <link rel="alternate" href="https://www.cognifit.com/by/en/login" hreflang="en-BY" /> 74 <link rel="alternate" href="https://www.cognifit.com/by/login" hreflang="ru-BY" /> 75 <link rel="alternate" href="https://www.cognifit.com/bz/login" hreflang="en-BZ" /> 76 <link rel="alternate" href="https://www.cognifit.com/ca/login" hreflang="en-CA" /> 77 <link rel="alternate" href="https://www.cognifit.com/ca/fr/login" hreflang="fr-CA" /> 78 <link rel="alternate" href="https://www.cognifit.com/cd/en/login" hreflang="en-CD" /> 79 <link rel="alternate" href="https://www.cognifit.com/cd/login" hreflang="fr-CD" /> 80 <link rel="alternate" href="https://www.cognifit.com/cf/en/login" hreflang="en-CF" /> 81 <link rel="alternate" href="https://www.cognifit.com/cf/login" hreflang="fr-CF" /> 82 <link rel="alternate" href="https://www.cognifit.com/cg/en/login" hreflang="en-CG" /> 83 <link rel="alternate" href="https://www.cognifit.com/cg/login" hreflang="fr-CG" /> 84 <link rel="alternate" href="https://www.cognifit.com/ch/en/login" hreflang="en-CH" /> 85 <link rel="alternate" href="https://www.cognifit.com/ch/login" hreflang="de-CH" /> 86 <link rel="alternate" href="https://www.cognifit.com/ch/fr/login" hreflang="fr-CH" /> 87 <link rel="alternate" href="https://www.cognifit.com/ch/it/login" hreflang="it-CH" /> 88 <link rel="alternate" href="https://www.cognifit.com/ci/en/login" hreflang="en-CI" /> 89 <link rel="alternate" href="https://www.cognifit.com/ci/login" hreflang="fr-CI" /> 90 <link rel="alternate" href="https://www.cognifit.com/ck/login" hreflang="en-CK" /> 91 <link rel="alternate" href="https://www.cognifit.com/cl/en/login" hreflang="en-CL" /> 92 <link rel="alternate" href="https://www.cognifit.com/cl/login" hreflang="es-CL" /> 93 <link rel="alternate" href="https://www.cognifit.com/cm/en/login" hreflang="en-CM" /> 94 <link rel="alternate" href="https://www.cognifit.com/cm/login" hreflang="fr-CM" /> 95 <link rel="alternate" href="https://www.cognifit.com/cn/login" hreflang="zh-CN" /> 96 <link rel="alternate" href="https://www.cognifit.com/co/en/login" hreflang="en-CO" /> 97 <link rel="alternate" href="https://www.cognifit.com/co/login" hreflang="es-CO" /> 98 <link rel="alternate" href="https://www.cognifit.com/cr/en/login" hreflang="en-CR" /> 99 <link rel="alternate" href="https://www.cognifit.com/cr/login" hreflang="es-CR" /> 100 <link rel="alternate" href="https://www.cognifit.com/cu/en/login" hreflang="en-CU" /> 101 <link rel="alternate" href="https://www.cognifit.com/cu/login" hreflang="es-CU" /> 102 <link rel="alternate" href="https://www.cognifit.com/cv/en/login" hreflang="en-CV" /> 103 <link rel="alternate" href="https://www.cognifit.com/cv/login" hreflang="pt-CV" /> 104 <link rel="alternate" href="https://www.cognifit.com/cy/en/login" hreflang="en-CY" /> 105 <link rel="alternate" href="https://www.cognifit.com/cy/login" hreflang="el-CY" /> 106 <link rel="alternate" href="https://www.cognifit.com/cz/login" hreflang="en-CZ" /> 107 <link rel="alternate" href="https://www.cognifit.com/de/en/login" hreflang="en-DE" /> 108 <link rel="alternate" href="https://www.cognifit.com/de/login" hreflang="de-DE" /> 109 <link rel="alternate" href="https://www.cognifit.com/dj/en/login" hreflang="en-DJ" /> 110 <link rel="alternate" href="https://www.cognifit.com/dj/login" hreflang="ar-DJ" /> 111 <link rel="alternate" href="https://www.cognifit.com/dj/fr/login" hreflang="fr-DJ" /> 112 <link rel="alternate" href="https://www.cognifit.com/dk/login" hreflang="en-DK" /> 113 <link rel="alternate" href="https://www.cognifit.com/dm/login" hreflang="en-DM" /> 114 <link rel="alternate" href="https://www.cognifit.com/do/en/login" hreflang="en-DO" /> 115 <link rel="alternate" href="https://www.cognifit.com/do/login" hreflang="es-DO" /> 116 <link rel="alternate" href="https://www.cognifit.com/dz/en/login" hreflang="en-DZ" /> 117 <link rel="alternate" href="https://www.cognifit.com/dz/login" hreflang="ar-DZ" /> 118 <link rel="alternate" href="https://www.cognifit.com/ec/en/login" hreflang="en-EC" /> 119 <link rel="alternate" href="https://www.cognifit.com/ec/login" hreflang="es-EC" /> 120 <link rel="alternate" href="https://www.cognifit.com/ee/en/login" hreflang="en-EE" /> 121 <link rel="alternate" href="https://www.cognifit.com/eg/en/login" hreflang="en-EG" /> 122 <link rel="alternate" href="https://www.cognifit.com/eg/login" hreflang="ar-EG" /> 123 <link rel="alternate" href="https://www.cognifit.com/er/login" hreflang="en-ER" /> 124 <link rel="alternate" href="https://www.cognifit.com/es/en/login" hreflang="en-ES" /> 125 <link rel="alternate" href="https://www.cognifit.com/es/login" hreflang="es-ES" /> 126 <link rel="alternate" href="https://www.cognifit.com/es/ru/login" hreflang="ru-ES" /> 127 <link rel="alternate" href="https://www.cognifit.com/es/ar/login" hreflang="ar-ES" /> 128 <link rel="alternate" href="https://www.cognifit.com/es/ca/login" hreflang="ca-ES" /> 129 <link rel="alternate" href="https://www.cognifit.com/es/de/login" hreflang="de-ES" /> 130 <link rel="alternate" href="https://www.cognifit.com/es/el/login" hreflang="el-ES" /> 131 <link rel="alternate" href="https://www.cognifit.com/es/eu/login" hreflang="eu-ES" /> 132 <link rel="alternate" href="https://www.cognifit.com/es/fr/login" hreflang="fr-ES" /> 133 <link rel="alternate" href="https://www.cognifit.com/es/gl/login" hreflang="gl-ES" /> 134 <link rel="alternate" href="https://www.cognifit.com/es/he/login" hreflang="he-ES" /> 135 <link rel="alternate" href="https://www.cognifit.com/es/it/login" hreflang="it-ES" /> 136 <link rel="alternate" href="https://www.cognifit.com/es/ja/login" hreflang="ja-ES" /> 137 <link rel="alternate" href="https://www.cognifit.com/es/ko/login" hreflang="ko-ES" /> 138 <link rel="alternate" href="https://www.cognifit.com/es/nl/login" hreflang="nl-ES" /> 139 <link rel="alternate" href="https://www.cognifit.com/es/pl/login" hreflang="pl-ES" /> 140 <link rel="alternate" href="https://www.cognifit.com/es/pt/login" hreflang="pt-ES" /> 141 <link rel="alternate" href="https://www.cognifit.com/es/tr/login" hreflang="tr-ES" /> 142 <link rel="alternate" href="https://www.cognifit.com/es/sr/login" hreflang="sr-ES" /> 143 <link rel="alternate" href="https://www.cognifit.com/es/cn/login" hreflang="zh-ES" /> 144 <link rel="alternate" href="https://www.cognifit.com/et/login" hreflang="en-ET" /> 145 <link rel="alternate" href="https://www.cognifit.com/fi/login" hreflang="en-FI" /> 146 <link rel="alternate" href="https://www.cognifit.com/fj/login" hreflang="en-FJ" /> 147 <link rel="alternate" href="https://www.cognifit.com/fm/login" hreflang="en-FM" /> 148 <link rel="alternate" href="https://www.cognifit.com/fo/login" hreflang="en-FO" />
149 <link rel="alternate" href="https://www.cognifit.com/fr/en/login" hreflang="en-FR" /> 150 <link rel="alternate" href="https://www.cognifit.com/fr/login" hreflang="fr-FR" /> 151 <link rel="alternate" href="https://www.cognifit.com/ga/en/login" hreflang="en-GA" /> 152 <link rel="alternate" href="https://www.cognifit.com/ga/login" hreflang="fr-GA" /> 153 <link rel="alternate" href="https://www.cognifit.com/gb/login" hreflang="en-GB" /> 154 <link rel="alternate" href="https://www.cognifit.com/gd/login" hreflang="en-GD" /> 155 <link rel="alternate" href="https://www.cognifit.com/ge/login" hreflang="en-GE" /> 156 <link rel="alternate" href="https://www.cognifit.com/gh/login" hreflang="en-GH" /> 157 <link rel="alternate" href="https://www.cognifit.com/gl/login" hreflang="en-GL" /> 158 <link rel="alternate" href="https://www.cognifit.com/gm/login" hreflang="en-GM" /> 159 <link rel="alternate" href="https://www.cognifit.com/gn/en/login" hreflang="en-GN" /> 160 <link rel="alternate" href="https://www.cognifit.com/gn/login" hreflang="fr-GN" /> 161 <link rel="alternate" href="https://www.cognifit.com/gq/en/login" hreflang="en-GQ" /> 162 <link rel="alternate" href="https://www.cognifit.com/gq/login" hreflang="es-GQ" /> 163 <link rel="alternate" href="https://www.cognifit.com/gq/fr/login" hreflang="fr-GQ" /> 164 <link rel="alternate" href="https://www.cognifit.com/gq/pt/login" hreflang="pt-GQ" /> 165 <link rel="alternate" href="https://www.cognifit.com/gr/en/login" hreflang="en-GR" /> 166 <link rel="alternate" href="https://www.cognifit.com/gr/login" hreflang="el-GR" /> 167 <link rel="alternate" href="https://www.cognifit.com/gt/en/login" hreflang="en-GT" /> 168 <link rel="alternate" href="https://www.cognifit.com/gt/login" hreflang="es-GT" /> 169 <link rel="alternate" href="https://www.cognifit.com/gw/en/login" hreflang="en-GW" /> 170 <link rel="alternate" href="https://www.cognifit.com/gw/login" hreflang="pt-GW" /> 171 <link rel="alternate" href="https://www.cognifit.com/gy/login" hreflang="en-GY" /> 172 <link rel="alternate" href="https://www.cognifit.com/hk/en/login" hreflang="en-HK" /> 173 <link rel="alternate" href="https://www.cognifit.com/hk/login" hreflang="zh-HK" /> 174 <link rel="alternate" href="https://www.cognifit.com/hn/en/login" hreflang="en-HN" /> 175 <link rel="alternate" href="https://www.cognifit.com/hn/login" hreflang="es-HN" /> 176 <link rel="alternate" href="https://www.cognifit.com/hr/login" hreflang="en-HR" /> 177 <link rel="alternate" href="https://www.cognifit.com/ht/en/login" hreflang="en-HT" /> 178 <link rel="alternate" href="https://www.cognifit.com/ht/login" hreflang="fr-HT" /> 179 <link rel="alternate" href="https://www.cognifit.com/hu/login" hreflang="en-HU" /> 180 <link rel="alternate" href="https://www.cognifit.com/id/login" hreflang="en-ID" /> 181 <link rel="alternate" href="https://www.cognifit.com/id/id/login" hreflang="id-ID" /> 182 <link rel="alternate" href="https://www.cognifit.com/ie/login" hreflang="en-IE" /> 183 <link rel="alternate" href="https://www.cognifit.com/il/en/login" hreflang="en-IL" /> 184 <link rel="alternate" href="https://www.cognifit.com/il/login" hreflang="he-IL" /> 185 <link rel="alternate" href="https://www.cognifit.com/in/login" hreflang="en-IN" /> 186 <link rel="alternate" href="https://www.cognifit.com/iq/en/login" hreflang="en-IQ" /> 187 <link rel="alternate" href="https://www.cognifit.com/iq/login" hreflang="ar-IQ" /> 188 <link rel="alternate" href="https://www.cognifit.com/ir/en/login" hreflang="en-IR" /> 189 <link rel="alternate" href="https://www.cognifit.com/is/login" hreflang="en-IS" /> 190 <link rel="alternate" href="https://www.cognifit.com/it/en/login" hreflang="en-IT" /> 191 <link rel="alternate" href="https://www.cognifit.com/it/login" hreflang="it-IT" /> 192 <link rel="alternate" href="https://www.cognifit.com/jm/login" hreflang="en-JM" /> 193 <link rel="alternate" href="https://www.cognifit.com/jo/en/login" hreflang="en-JO" /> 194 <link rel="alternate" href="https://www.cognifit.com/jo/login" hreflang="ar-JO" /> 195 <link rel="alternate" href="https://www.cognifit.com/jp/en/login" hreflang="en-JP" /> 196 <link rel="alternate" href="https://www.cognifit.com/jp/login" hreflang="ja-JP" /> 197 <link rel="alternate" href="https://www.cognifit.com/ke/login" hreflang="en-KE" /> 198 <link rel="alternate" href="https://www.cognifit.com/kg/en/login" hreflang="en-KG" /> 199 <link rel="alternate" href="https://www.cognifit.com/kg/login" hreflang="ru-KG" /> 200 <link rel="alternate" href="https://www.cognifit.com/kh/login" hreflang="en-KH" /> 201 <link rel="alternate" href="https://www.cognifit.com/ki/login" hreflang="en-KI" /> 202 <link rel="alternate" href="https://www.cognifit.com/km/en/login" hreflang="en-KM" /> 203 <link rel="alternate" href="https://www.cognifit.com/km/login" hreflang="ar-KM" /> 204 <link rel="alternate" href="https://www.cognifit.com/km/fr/login" hreflang="fr-KM" /> 205 <link rel="alternate" href="https://www.cognifit.com/kn/login" hreflang="en-KN" /> 206 <link rel="alternate" href="https://www.cognifit.com/kp/login" hreflang="en-KP" /> 207 <link rel="alternate" href="https://www.cognifit.com/kp/ko/login" hreflang="ko-KP" /> 208 <link rel="alternate" href="https://www.cognifit.com/kr/en/login" hreflang="en-KR" /> 209 <link rel="alternate" href="https://www.cognifit.com/kr/login" hreflang="ko-KR" /> 210 <link rel="alternate" href="https://www.cognifit.com/kw/en/login" hreflang="en-KW" /> 211 <link rel="alternate" href="https://www.cognifit.com/kw/login" hreflang="ar-KW" /> 212 <link rel="alternate" href="https://www.cognifit.com/kz/en/login" hreflang="en-KZ" /> 213 <link rel="alternate" href="https://www.cognifit.com/kz/login" hreflang="ru-KZ" /> 214 <link rel="alternate" href="https://www.cognifit.com/la/login" hreflang="en-LA" /> 215 <link rel="alternate" href="https://www.cognifit.com/lb/en/login" hreflang="en-LB" /> 216 <link rel="alternate" href="https://www.cognifit.com/lb/login" hreflang="ar-LB" /> 217 <link rel="alternate" href="https://www.cognifit.com/lc/login" hreflang="en-LC" /> 218 <link rel="alternate" href="https://www.cognifit.com/li/en/login" hreflang="en-LI" /> 219 <link rel="alternate" href="https://www.cognifit.com/li/login" hreflang="de-LI" /> 220 <link rel="alternate" href="https://www.cognifit.com/lk/login" hreflang="en-LK" /> 221 <link rel="alternate" href="https://www.cognifit.com/lr/login" hreflang="en-LR" /> 222 <link rel="alternate" href="https://www.cognifit.com/ls/login" hreflang="en-LS" /> 223 <link rel="alternate" href="https://www.cognifit.com/lt/login" hreflang="en-LT" /> 224 <link rel="alternate" href="https://www.cognifit.com/lu/en/login" hreflang="en-LU" /> 225 <link rel="alternate" href="https://www.cognifit.com/lu/de/login" hreflang="de-LU" /> 226 <link rel="alternate" href="https://www.cognifit.com/lu/login" hreflang="fr-LU" /> 227 <link rel="alternate" href="https://www.cognifit.com/lv/login" hreflang="en-LV" /> 228 <link rel="alternate" href="https://www.cognifit.com/ly/en/login" hreflang="en-LY" /> 229 <link rel="alternate" href="https://www.cognifit.com/ly/login" hreflang="ar-LY" /> 230 <link rel="alternate" href="https://www.cognifit.com/ma/en/login" hreflang="en-MA" /> 231 <link rel="alternate" href="https://www.cognifit.com/ma/login" hreflang="ar-MA" /> 232 <link rel="alternate" href="https://www.cognifit.com/mc/en/login" hreflang="en-MC" /> 233 <link rel="alternate" href="https://www.cognifit.com/mc/login" hreflang="fr-MC" /> 234 <link rel="alternate" href="https://www.cognifit.com/md/login" hreflang="en-MD" /> 235 <link rel="alternate" href="https://www.cognifit.com/me/login" hreflang="en-ME" /> 236 <link rel="alternate" href="https://www.cognifit.com/me/sr/login" hreflang="sr-ME" />
237 <link rel="alternate" href="https://www.cognifit.com/mg/en/login" hreflang="en-MG" /> 238 <link rel="alternate" href="https://www.cognifit.com/mg/login" hreflang="fr-MG" /> 239 <link rel="alternate" href="https://www.cognifit.com/mh/login" hreflang="en-MH" /> 240 <link rel="alternate" href="https://www.cognifit.com/mk/login" hreflang="en-MK" /> 241 <link rel="alternate" href="https://www.cognifit.com/ml/en/login" hreflang="en-ML" /> 242 <link rel="alternate" href="https://www.cognifit.com/ml/login" hreflang="fr-ML" /> 243 <link rel="alternate" href="https://www.cognifit.com/mm/login" hreflang="en-MM" /> 244 <link rel="alternate" href="https://www.cognifit.com/mn/en/login" hreflang="en-MN" /> 245 <link rel="alternate" href="https://www.cognifit.com/mn/login" hreflang="mn-MN" /> 246 <link rel="alternate" href="https://www.cognifit.com/mr/en/login" hreflang="en-MR" /> 247 <link rel="alternate" href="https://www.cognifit.com/mr/login" hreflang="ar-MR" /> 248 <link rel="alternate" href="https://www.cognifit.com/mt/en/login" hreflang="en-MT" /> 249 <link rel="alternate" href="https://www.cognifit.com/mt/login" hreflang="it-MT" /> 250 <link rel="alternate" href="https://www.cognifit.com/mu/login" hreflang="en-MU" /> 251 <link rel="alternate" href="https://www.cognifit.com/mv/login" hreflang="en-MV" /> 252 <link rel="alternate" href="https://www.cognifit.com/mw/login" hreflang="en-MW" /> 253 <link rel="alternate" href="https://www.cognifit.com/mx/en/login" hreflang="en-MX" /> 254 <link rel="alternate" href="https://www.cognifit.com/mx/login" hreflang="es-MX" /> 255 <link rel="alternate" href="https://www.cognifit.com/my/login" hreflang="en-MY" /> 256 <link rel="alternate" href="https://www.cognifit.com/mz/en/login" hreflang="en-MZ" /> 257 <link rel="alternate" href="https://www.cognifit.com/mz/login" hreflang="pt-MZ" /> 258 <link rel="alternate" href="https://www.cognifit.com/na/login" hreflang="en-NA" /> 259 <link rel="alternate" href="https://www.cognifit.com/ne/en/login" hreflang="en-NE" /> 260 <link rel="alternate" href="https://www.cognifit.com/ne/login" hreflang="fr-NE" /> 261 <link rel="alternate" href="https://www.cognifit.com/ng/login" hreflang="en-NG" /> 262 <link rel="alternate" href="https://www.cognifit.com/ni/en/login" hreflang="en-NI" /> 263 <link rel="alternate" href="https://www.cognifit.com/ni/login" hreflang="es-NI" /> 264 <link rel="alternate" href="https://www.cognifit.com/nl/en/login" hreflang="en-NL" /> 265 <link rel="alternate" href="https://www.cognifit.com/nl/login" hreflang="nl-NL" /> 266 <link rel="alternate" href="https://www.cognifit.com/no/login" hreflang="en-NO" /> 267 <link rel="alternate" href="https://www.cognifit.com/np/login" hreflang="en-NP" /> 268 <link rel="alternate" href="https://www.cognifit.com/nr/login" hreflang="en-NR" /> 269 <link rel="alternate" href="https://www.cognifit.com/nu/login" hreflang="en-NU" /> 270 <link rel="alternate" href="https://www.cognifit.com/nz/login" hreflang="en-NZ" /> 271 <link rel="alternate" href="https://www.cognifit.com/om/en/login" hreflang="en-OM" /> 272 <link rel="alternate" href="https://www.cognifit.com/om/login" hreflang="ar-OM" /> 273 <link rel="alternate" href="https://www.cognifit.com/pa/en/login" hreflang="en-PA" /> 274 <link rel="alternate" href="https://www.cognifit.com/pa/login" hreflang="es-PA" /> 275 <link rel="alternate" href="https://www.cognifit.com/pe/en/login" hreflang="en-PE" /> 276 <link rel="alternate" href="https://www.cognifit.com/pe/login" hreflang="es-PE" /> 277 <link rel="alternate" href="https://www.cognifit.com/pg/login" hreflang="en-PG" /> 278 <link rel="alternate" href="https://www.cognifit.com/ph/login" hreflang="en-PH" /> 279 <link rel="alternate" href="https://www.cognifit.com/pk/login" hreflang="en-PK" /> 280 <link rel="alternate" href="https://www.cognifit.com/pk/ur/login" hreflang="ur-PK" /> 281 <link rel="alternate" href="https://www.cognifit.com/pl/login" hreflang="en-PL" /> 282 <link rel="alternate" href="https://www.cognifit.com/pl/pl/login" hreflang="pl-PL" /> 283 <link rel="alternate" href="https://www.cognifit.com/pr/en/login" hreflang="en-PR" /> 284 <link rel="alternate" href="https://www.cognifit.com/pr/login" hreflang="es-PR" /> 285 <link rel="alternate" href="https://www.cognifit.com/ps/en/login" hreflang="en-PS" /> 286 <link rel="alternate" href="https://www.cognifit.com/ps/login" hreflang="ar-PS" /> 287 <link rel="alternate" href="https://www.cognifit.com/pt/en/login" hreflang="en-PT" /> 288 <link rel="alternate" href="https://www.cognifit.com/pt/login" hreflang="pt-PT" /> 289 <link rel="alternate" href="https://www.cognifit.com/pw/login" hreflang="en-PW" /> 290 <link rel="alternate" href="https://www.cognifit.com/py/en/login" hreflang="en-PY" /> 291 <link rel="alternate" href="https://www.cognifit.com/py/login" hreflang="es-PY" /> 292 <link rel="alternate" href="https://www.cognifit.com/qa/en/login" hreflang="en-QA" /> 293 <link rel="alternate" href="https://www.cognifit.com/qa/login" hreflang="ar-QA" /> 294 <link rel="alternate" href="https://www.cognifit.com/ro/login" hreflang="en-RO" /> 295 <link rel="alternate" href="https://www.cognifit.com/rs/en/login" hreflang="en-RS" /> 296 <link rel="alternate" href="https://www.cognifit.com/rs/login" hreflang="sr-RS" /> 297 <link rel="alternate" href="https://www.cognifit.com/ru/en/login" hreflang="en-RU" /> 298 <link rel="alternate" href="https://www.cognifit.com/ru/login" hreflang="ru-RU" /> 299 <link rel="alternate" href="https://www.cognifit.com/rw/en/login" hreflang="en-RW" /> 300 <link rel="alternate" href="https://www.cognifit.com/rw/login" hreflang="fr-RW" /> 301 <link rel="alternate" href="https://www.cognifit.com/sa/en/login" hreflang="en-SA" /> 302 <link rel="alternate" href="https://www.cognifit.com/sa/login" hreflang="ar-SA" /> 303 <link rel="alternate" href="https://www.cognifit.com/sb/login" hreflang="en-SB" /> 304 <link rel="alternate" href="https://www.cognifit.com/sc/en/login" hreflang="en-SC" /> 305 <link rel="alternate" href="https://www.cognifit.com/sc/login" hreflang="fr-SC" /> 306 <link rel="alternate" href="https://www.cognifit.com/sd/en/login" hreflang="en-SD" /> 307 <link rel="alternate" href="https://www.cognifit.com/sd/login" hreflang="ar-SD" /> 308 <link rel="alternate" href="https://www.cognifit.com/se/login" hreflang="en-SE" /> 309 <link rel="alternate" href="https://www.cognifit.com/sg/login" hreflang="en-SG" /> 310 <link rel="alternate" href="https://www.cognifit.com/si/login" hreflang="en-SI" /> 311 <link rel="alternate" href="https://www.cognifit.com/sk/login" hreflang="en-SK" /> 312 <link rel="alternate" href="https://www.cognifit.com/sl/login" hreflang="en-SL" />
313 <link rel="alternate" href="https://www.cognifit.com/sm/en/login" hreflang="en-SM" /> 314 <link rel="alternate" href="https://www.cognifit.com/sm/login" hreflang="it-SM" /> 315 <link rel="alternate" href="https://www.cognifit.com/sn/en/login" hreflang="en-SN" /> 316 <link rel="alternate" href="https://www.cognifit.com/sn/login" hreflang="fr-SN" /> 317 <link rel="alternate" href="https://www.cognifit.com/so/en/login" hreflang="en-SO" /> 318 <link rel="alternate" href="https://www.cognifit.com/so/login" hreflang="ar-SO" /> 319 <link rel="alternate" href="https://www.cognifit.com/sr/en/login" hreflang="en-SR" /> 320 <link rel="alternate" href="https://www.cognifit.com/sr/login" hreflang="nl-SR" /> 321 <link rel="alternate" href="https://www.cognifit.com/st/en/login" hreflang="en-ST" /> 322 <link rel="alternate" href="https://www.cognifit.com/st/login" hreflang="pt-ST" /> 323 <link rel="alternate" href="https://www.cognifit.com/sv/en/login" hreflang="en-SV" /> 324 <link rel="alternate" href="https://www.cognifit.com/sv/login" hreflang="es-SV" /> 325 <link rel="alternate" href="https://www.cognifit.com/sy/en/login" hreflang="en-SY" /> 326 <link rel="alternate" href="https://www.cognifit.com/sy/login" hreflang="ar-SY" /> 327 <link rel="alternate" href="https://www.cognifit.com/sz/login" hreflang="en-SZ" /> 328 <link rel="alternate" href="https://www.cognifit.com/td/en/login" hreflang="en-TD" /> 329 <link rel="alternate" href="https://www.cognifit.com/td/ar/login" hreflang="ar-TD" /> 330 <link rel="alternate" href="https://www.cognifit.com/td/login" hreflang="fr-TD" /> 331 <link rel="alternate" href="https://www.cognifit.com/tg/en/login" hreflang="en-TG" /> 332 <link rel="alternate" href="https://www.cognifit.com/tg/login" hreflang="fr-TG" /> 333 <link rel="alternate" href="https://www.cognifit.com/th/en/login" hreflang="en-TH" /> 334 <link rel="alternate" href="https://www.cognifit.com/tj/en/login" hreflang="en-TJ" /> 335 <link rel="alternate" href="https://www.cognifit.com/tj/login" hreflang="ru-TJ" /> 336 <link rel="alternate" href="https://www.cognifit.com/tl/en/login" hreflang="en-TL" /> 337 <link rel="alternate" href="https://www.cognifit.com/tl/login" hreflang="pt-TL" /> 338 <link rel="alternate" href="https://www.cognifit.com/tm/login" hreflang="en-TM" /> 339 <link rel="alternate" href="https://www.cognifit.com/tm/ru/login" hreflang="ru-TM" /> 340 <link rel="alternate" href="https://www.cognifit.com/tn/en/login" hreflang="en-TN" /> 341 <link rel="alternate" href="https://www.cognifit.com/tn/login" hreflang="ar-TN" /> 342 <link rel="alternate" href="https://www.cognifit.com/to/login" hreflang="en-TO" /> 343 <link rel="alternate" href="https://www.cognifit.com/tr/en/login" hreflang="en-TR" /> 344 <link rel="alternate" href="https://www.cognifit.com/tr/login" hreflang="tr-TR" /> 345 <link rel="alternate" href="https://www.cognifit.com/tt/login" hreflang="en-TT" /> 346 <link rel="alternate" href="https://www.cognifit.com/tv/login" hreflang="en-TV" /> 347 <link rel="alternate" href="https://www.cognifit.com/tw/login" hreflang="en-TW" /> 348 <link rel="alternate" href="https://www.cognifit.com/tw/cn/login" hreflang="zh-TW" /> 349 <link rel="alternate" href="https://www.cognifit.com/tz/en/login" hreflang="en-TZ" /> 350 <link rel="alternate" href="https://www.cognifit.com/ua/login" hreflang="en-UA" /> 351 <link rel="alternate" href="https://www.cognifit.com/ug/login" hreflang="en-UG" /> 352 <link rel="alternate" href="https://www.cognifit.com/login" hreflang="en-US" /> 353 <link rel="alternate" href="https://www.cognifit.com/us/es/login" hreflang="es-US" /> 354 <link rel="alternate" href="https://www.cognifit.com/us/ru/login" hreflang="ru-US" /> 355 <link rel="alternate" href="https://www.cognifit.com/us/ar/login" hreflang="ar-US" /> 356 <link rel="alternate" href="https://www.cognifit.com/us/bn/login" hreflang="bn-US" /> 357 <link rel="alternate" href="https://www.cognifit.com/us/de/login" hreflang="de-US" /> 358 <link rel="alternate" href="https://www.cognifit.com/us/el/login" hreflang="el-US" /> 359 <link rel="alternate" href="https://www.cognifit.com/us/fr/login" hreflang="fr-US" /> 360 <link rel="alternate" href="https://www.cognifit.com/us/he/login" hreflang="he-US" /> 361 <link rel="alternate" href="https://www.cognifit.com/us/id/login" hreflang="id-US" /> 362 <link rel="alternate" href="https://www.cognifit.com/us/it/login" hreflang="it-US" /> 363 <link rel="alternate" href="https://www.cognifit.com/us/ja/login" hreflang="ja-US" /> 364 <link rel="alternate" href="https://www.cognifit.com/us/ko/login" hreflang="ko-US" /> 365 <link rel="alternate" href="https://www.cognifit.com/us/mn/login" hreflang="mn-US" /> 366 <link rel="alternate" href="https://www.cognifit.com/us/nl/login" hreflang="nl-US" /> 367 <link rel="alternate" href="https://www.cognifit.com/us/pl/login" hreflang="pl-US" /> 368 <link rel="alternate" href="https://www.cognifit.com/us/pt/login" hreflang="pt-US" /> 369 <link rel="alternate" href="https://www.cognifit.com/us/tr/login" hreflang="tr-US" /> 370 <link rel="alternate" href="https://www.cognifit.com/us/ur/login" hreflang="ur-US" /> 371 <link rel="alternate" href="https://www.cognifit.com/us/sr/login" hreflang="sr-US" /> 372 <link rel="alternate" href="https://www.cognifit.com/us/cn/login" hreflang="zh-US" /> 373 <link rel="alternate" href="https://www.cognifit.com/us/hk/login" hreflang="zh-US" /> 374 <link rel="alternate" href="https://www.cognifit.com/uy/en/login" hreflang="en-UY" /> 375 <link rel="alternate" href="https://www.cognifit.com/uy/login" hreflang="es-UY" /> 376 <link rel="alternate" href="https://www.cognifit.com/uz/login" hreflang="en-UZ" /> 377 <link rel="alternate" href="https://www.cognifit.com/uz/ru/login" hreflang="ru-UZ" /> 378 <link rel="alternate" href="https://www.cognifit.com/vc/login" hreflang="en-VC" /> 379 <link rel="alternate" href="https://www.cognifit.com/ve/en/login" hreflang="en-VE" /> 380 <link rel="alternate" href="https://www.cognifit.com/ve/login" hreflang="es-VE" /> 381 <link rel="alternate" href="https://www.cognifit.com/vn/en/login" hreflang="en-VN" /> 382 <link rel="alternate" href="https://www.cognifit.com/vu/en/login" hreflang="en-VU" /> 383 <link rel="alternate" href="https://www.cognifit.com/vu/login" hreflang="fr-VU" /> 384 <link rel="alternate" href="https://www.cognifit.com/ws/login" hreflang="en-WS" /> 385 <link rel="alternate" href="https://www.cognifit.com/ye/en/login" hreflang="en-YE" /> 386 <link rel="alternate" href="https://www.cognifit.com/ye/login" hreflang="ar-YE" /> 387 <link rel="alternate" href="https://www.cognifit.com/za/login" hreflang="en-ZA" /> 388 <link rel="alternate" href="https://www.cognifit.com/zm/login" hreflang="en-ZM" /> 389 <link rel="alternate" href="https://www.cognifit.com/zw/login" hreflang="en-ZW" /> 390 391<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
391<script type="text/javascript">(window.NREUM||(NREUM={})).init={privacy:{cookies_enabled:true},ajax:{deny_list:["bam.nr-data.net"]},distributed_tracing:{enabled:true}};(window.NREUM||(NREUM={})).loader_config={agentID:"1103385959",accountID:"394458",trustKey:"394458",xpid:"Vw8DVVNbGwIAU1VQBwcOX1w=",licenseKey:"698fbd6a93",applicationID:"1074206998",browserID:"1103385959"};;/*! For license information please see nr-loader-spa-1.322.0.min.js.LICENSE.txt */ 392(()=>{var e={8122(e,t,r){"use strict";r.d(t,{a:()=>i});var n=r(944);function i(e,t){try{if(!e||"object"!=typeof e)return(0,n.R)(3);if(!t||"object"!=typeof t)return(0,n.R)(4);const r=Object.create(Object.getPrototypeOf(t),Object.getOwnPropertyDescriptors(t)),s=0===Object.keys(r).length?e:r;for(let a in s)if(void 0!==e[a])try{if(null===e[a]){r[a]=null;continue}Array.isArray(e[a])&&Array.isArray(t[a])?r[a]=Array.from(new Set([...e[a],...t[a]])):e[a]instanceof Map||e[a]instanceof Set||e[a]instanceof Date||e[a]instanceof RegExp?r[a]=e[a]:"object"==typeof e[a]&&null!==t[a]&&"object"==typeof t[a]?r[a]=i(e[a],t[a]):r[a]=e[a]}catch(e){r[a]||(0,n.R)(1,e)}return r}catch(e){(0,n.R)(2,e)}}},2555(e,t,r){"use strict";r.d(t,{f:()=>a});var n=r(384),i=r(8122);const s={beacon:n.NT.beacon,errorBeacon:n.NT.errorBeacon,licenseKey:void 0,applicationID:void 0,sa:void 0,queueTime:void 0,applicationTime:void 0,ttGuid:void 0,user:void 0,account:void 0,product:void 0,extra:void 0,jsAttributes:{},userAttributes:void 0,atts:void 0,transactionName:void 0,tNamePlain:void 0};function a(e){try{return!!e.licenseKey&&!!e.errorBeacon&&!!e.applicationID}catch(e){return!1}}r.d(t,["D",0,e=>(0,i.a)(e,s)])},7699(e,t,r){"use strict";var n=r(860);const i={[n.K7.logging]:!0,[n.K7.genericEvents]:!0,[n.K7.jserrors]:!0,[n.K7.ajax]:!0};r.d(t,["It",0,1e6,"KC",0,i,"qh",0,"SESSION_ERROR"])},9324(e,t,r){"use strict";r.d(t,["A",0,"@newrelic/rrweb","x",0,"1.322.0"])},981(e,t,r){"use strict";r.d(t,["R",0,{AJAX:"AjaxRequest",PA:"PageAction",UA:"UserAction",BP:"BrowserPerformance",WS:"WebSocket",SPV:"SecurityPolicyViolation",JSE:"JavaScriptError",LOG:"Log",PVE:"PageView",PVT:"PageViewTiming",SR:"SessionReplay",ST:"SessionTrace",BI:"BrowserInteraction"}])},9752(e,t,r){"use strict";const n="newrelic-iframe-",i=n+"timing-update",s=n+"api",a=n+"api-response",o=n+"vitals-update",c=n+"ajax";r.d(t,["$8",0,o,"Gi",0,a,"KU",0,c,"Pl",0,n,"cS",0,s,"cr",0,i])},6154(e,t,r){"use strict";var n=r(1863);const i="undefined"!=typeof window&&!!window.document,s="undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self.navigator instanceof WorkerNavigator||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis.navigator instanceof WorkerNavigator),a=i?window:"undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis),o=Boolean("hidden"===a?.document?.visibilityState),c=""+a?.location,d=/iPad|iPhone|iPod/.test(a.navigator?.userAgent),u=d&&"undefined"==typeof SharedWorker,l=(()=>{const e=a.navigator?.userAgent?.match(/Firefox[/\s](\d+\.\d+)/);return Array.isArray(e)&&e.length>=2?+e[1]:0})(),f=Date.now()-(0,n.t)();r.d(t,["OF",0,d,"RI",0,i,"WN",0,f,"bv",0,s,"gm",0,a,"lR",0,l,"m",0,c,"mw",0,o,"sb",0,u,"zk",0,()=>{const e=a?.performance?.getEntriesByType?.("navigation")?.[0];if(e&&e.responseStart>0&&e.responseStart<a.performance.now())return e}])},7295(e,t,r){"use strict";r.d(t,{Xv:()=>a,gX:()=>i,iW:()=>s});var n=[];function i(e){if(!e||s(e))return!1;if(0===n.length)return!0;if("*"===n[0].hostname)return!1;for(var t=0;t<n.length;t++){var r=n[t];if(r.hostname.test(e.hostname)&&r.pathname.test(e.pathname))return!1}return!0}function s(e){return void 0===e.hostname}function a(e){if(n=[],e&&e.length)for(var t=0;t<e.length;t++){let r=e[t];if(!r)continue;if("*"===r)return void(n=[{hostname:"*"}]);0===r.indexOf("http://")?r=r.substring(7):0===r.indexOf("https://")&&(r=r.substring(8));const i=r.indexOf("/");let s,a;i>0?(s=r.substring(0,i),a=r.substring(i)):(s=r,a="*");let[c]=s.split(":");n.push({hostname:o(c),pathname:o(a,!0)})}}function o(e,t=!1){const r=e.replace(/[.+?^${}()|[\]\\]/g,e=>"\\"+e).replace(/\*/g,".*?");return new RegExp((t?"^":"")+r+"$")}},3241(e,t,r){"use strict";r.d(t,{W:()=>i});var n=r(6154);function i(e={}){try{n.gm.dispatchEvent(new CustomEvent("newrelic",{detail:e}))}catch(e){}}},1687(e,t,r){"use strict";r.d(t,{Ak:()=>o,Ze:()=>d,x3:()=>c});var n=r(3241),i=r(3606),s=r(860),a=r(2646);function o(e,t){if(!e)return;const r={staged:!1,priority:s.P3[t]||0};
392e.runtime.drainRegistry.get(t)||e.runtime.drainRegistry.set(t,r)}function c(e,t){if(!e)return;const r=e.runtime.drainRegistry;r&&(r.get(t)&&r.delete(t),l(e,t,!1),r.size&&u(e))}function d(e,t="feature",r=!1){if(e){if(!e.runtime.drainRegistry.get(t)||r)return l(e,t);e.runtime.drainRegistry.get(t).staged=!0,u(e)}}function u(e){if(!e)return;const t=Array.from(e.runtime.drainRegistry);t.every(([e,t])=>t.staged)&&(t.sort((e,t)=>e[1].priority-t[1].priority),t.forEach(([t])=>{e.runtime.drainRegistry.delete(t),l(e,t)}))}function l(e,t,r=!0){if(!e)return;const s=e.ee,o=i.i.handlers;if(s&&!s.aborted&&s.backlog&&o){if((0,n.W)({type:"lifecycle",name:"drain",feature:t}),r){const e=s.backlog[t],r=o[t];if(r){for(let t=0;e&&t<e.length;++t)f(e[t],r);Object.entries(r).forEach(([e,t])=>{Object.values(t||{}).forEach(t=>{t[0]?.on&&t[0].context()instanceof a.y&&!t[0].listeners(e).includes(t[1])&&t[0].on(e,t[1])})})}}s.isolatedBacklog||delete o[t],s.backlog[t]=null,s.emit("drain-"+t,[])}}function f(e,t){var r=e[1];Object.values(t[r]||{}).forEach(t=>{var r=e[0];if(t[0]===r){var n=t[1],i=e[3],s=e[2];n.apply(i,s)}})}},7836(e,t,r){"use strict";var n=r(384),i=r(8990),s=r(2646),a=r(5607);const o="nr@context:".concat(a.W),c=function e(t,r){var n={},a={},u={},l=!1;try{l=16===r.length&&d.initializedAgents?.[r]?.runtime.isolatedBacklog}catch(e){}var f={on:p,addEventListener:p,removeEventListener:function(e,t){var r=n[e];if(!r)return;for(var i=0;i<r.length;i++)r[i]===t&&r.splice(i,1)},emit:function(e,r,n,i,s){!1!==s&&(s=!0);if(c.aborted&&!i)return;t&&s&&t.emit(e,r,n);var o=h(n);g(e).forEach(e=>{e.apply(o,r)});var d=v()[a[e]];d&&d.push([f,e,r,o]);return o},get:m,listeners:g,context:h,buffer:function(e,t){const r=v();if(t=t||"feature",f.aborted)return;Object.entries(e||{}).forEach(([e,n])=>{a[n]=t,t in r||(r[t]=[])})},abort:function(){f._aborted=!0,Object.keys(f.backlog).forEach(e=>{delete f.backlog[e]})},isBuffering:function(e){return!!v()[a[e]]},debugId:r,backlog:l?{}:t&&"object"==typeof t.backlog?t.backlog:{},isolatedBacklog:l};return Object.defineProperty(f,"aborted",{get:()=>{let e=f._aborted||!1;return e||(t&&(e=t.aborted),e)}}),f;function h(e){return e&&e instanceof s.y?e:e?(0,i.I)(e,o,()=>new s.y(o)):new s.y(o)}function p(e,t){n[e]=g(e).concat(t)}function g(e){return n[e]||[]}function m(t){return u[t]=u[t]||e(f,t)}function v(){return f.backlog}}(void 0,"globalEE"),d=(0,n.Zm)();d.ee||(d.ee=c),r.d(t,["P",0,o,"ee",0,c])},2646(e,t,r){"use strict";r.d(t,{y:()=>n});class n{constructor(e){this.contextId=e}}},9908(e,t,r){"use strict";r.d(t,{d:()=>n,p:()=>i});var n=r(7836).ee.get("handle");function i(e,t,r,i,s){s?(s.buffer([e],i),s.emit(e,t,r)):(n.buffer([e],i),n.emit(e,t,r))}},3606(e,t,r){"use strict";r.d(t,{i:()=>s});var n=r(9908);s.on=a;var i=s.handlers={};function s(e,t,r,s){a(s||n.d,i,e,t,r)}function a(e,t,r,i,s){s||(s="feature"),e||(e=n.d);var a=t[s]=t[s]||{};(a[r]=a[r]||[]).push([e,i])}},3878(e,t,r){"use strict";function n(e,t){return{capture:e,passive:!1,signal:t}}function i(e,t,r=!1,i){window.addEventListener(e,t,n(r,i))}function s(e,t,r=!1,i){document.addEventListener(e,t,n(r,i))}r.d(t,{DD:()=>s,jT:()=>n,sp:()=>i})},5607(e,t,r){"use strict";const n=(0,r(9566).bz)();r.d(t,["W",0,n])},9566(e,t,r){"use strict";r.d(t,{LA:()=>a,ZF:()=>o,bz:()=>s,el:()=>c});var n=r(6154);function i(e,t){return e?15&e[t]:16*Math.random()|0}function s(){const e=n.gm?.crypto||n.gm?.msCrypto;let t,r=0;return e&&e.getRandomValues&&(t=e.getRandomValues(new Uint8Array(30))),"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".split("").map(e=>"x"===e?i(t,r++).toString(16):"y"===e?(3&i()|8).toString(16):e).join("")}function a(e){const t=n.gm?.crypto||n.gm?.msCrypto;let r,s=0;t&&t.getRandomValues&&(r=t.getRandomValues(new Uint8Array(e)));const a=[];for(var o=0;o<e;o++)a.push(i(r,s++).toString(16));return a.join("")}function o(){return a(16)}function c(){return a(32)}},2614(e,t,r){"use strict";r.d(t,["BB",0,18e5,"Wt",0,"NRBA_SESSION::","g",0,{OFF:0,FULL:1,ERROR:2},"iL",0,{SAME_TAB:"same-tab",CROSS_TAB:"cross-tab"},"tS",0,{STARTED:"session-started",PAUSE:"session-pause",RESET:"session-reset",RESUME:"session-resume",UPDATE:"session-update"},"wk",0,144e5])},733(e,t,r){"use strict";function n(e,t){return function(e){let t=2166136261;for(let r=0;r<e.length;r++)t^=e.charCodeAt(r),t=Math.imul(t,16777619);return(t>>>0).toString(16).padStart(8,"0")}("".concat(String(e),":").concat(String(t)))}r.d(t,{Y:()=>n})},1863(e,t,r){"use strict";function n(){return Math.floor(performance.now())}r.d(t,{t:()=>n})},9119(e,t,r){"use strict";r.d(t,{L:()=>s});var n=/([^?#]*)[^#]*(#[^?]*|$).*/,i=/([^?#]*)().*/;function s(e,t){return e?e.replace(t?n:i,"$1$2"):e}},7485(e,t,r){"use strict";r.d(t,{D:()=>i});var n=r(6154);function i(e){if(0===(e||"").indexOf("data:"))return{protocol:"data"};try{const t=new URL(e,location.href),r={port:t.port,hostname:t.hostname,pathname:t.pathname,search:t.search,protocol:t.protocol.slice(0,t.protocol.indexOf(":")),sameOrigin:t.protocol===n.gm?.location?.protocol&&t.host===n.gm?.location?.host};return r.port&&""!==r.port||("http:"===t.protocol&&(r.port="80"),"https:"===t.protocol&&(r.port="443")),r.pathname&&""!==r.pathname?r.pathname.startsWith("/")||(r.pathname="/".concat(r.pathname)):r.pathname="/",r}catch(e){return{}}}},7866(e,t,r){"use strict";r.d(t,["Nc",0,/^\s*at Function code \(Function code:\d+:\d+\)\s*/i,"cn",0,/^\s*(?:([^@]*)(?:\(.*?\))?@)?((?:file|http|https|chrome|safari-extension).*?):(\d+)(?::(\d+))?\s*$/i,"fL",0,/^\s*at .+ \(eval at \S+ \((?:(?:file|http|https):[^)]+)?\)(?:, [^:]*:\d+:\d+)?\)$/i,"h3",0,/function (.+?)\s*\(/,"hB",0,/^\s*at (?:((?:\[object object\])?(?:[^(]*\([^)]*\))*[^()]*(?: \[as \S+\])?) )?\(?((?:file|http|https|chrome-extension):.*?)?:(\d+)(?::(\d+))?\)?\s*$/i])},944(e,t,r){"use strict";r.d(t,{R:()=>i});var n=r(3241);function i(e,t){"function"==typeof console.debug&&(console.debug("New Relic Warning: https://github.com/newrelic/newrelic-browser-agent/blob/main/docs/warning-codes.md#".concat(e),t),(0,n.W)({drained:null,type:"data",name:"warn",feature:"warn",data:{code:e,secondary:t}}))}},8990(e,t,r){"use strict";r.d(t,{I:()=>i});var n=Object.prototype.hasOwnProperty;function i(e,t,r){if(n.call(e,t))return e[t];var i=r();if(Object.defineProperty&&Object.keys)try{return Object.defineProperty(e,t,{value:i,writable:!0,enumerable:!1}),i}catch(e){}return e[t]=i,i}},6389(e,t,r){"use strict";function n(e,t=500,r={}){const n=r?.leading||!1;let i;return(...r)=>{n&&void 0===i&&(e.apply(this,r),i=setTimeout(()=>{i=clearTimeout(i)},t)),n||(clearTimeout(i),i=setTimeout(()=>{e.apply(this,r)},t))}}function i(e){let t=!1;return(...r)=>{t||(t=!0,e.apply(this,r))}}r.d(t,{J:()=>i,s:()=>n})},1910(e,t,r){"use strict";r.d(t,{i:()=>s});var n=r(944);const i=new Map;function s(...e){return e.every(e=>{if(i.has(e))return i.get(e);const t="function"==typeof e?e.toString():"",r=t.includes("[native code]"),s=t.includes("nrWrapper");return r||s||(0,n.R)(64,e?.name||t),i.set(e,r),r})}},3304(e,t,r){"use strict";r.d(t,{A:()=>i});var n=r(7836);function i(e){try{return JSON.stringify(e,(()=>{const e=new WeakSet;return(t,r)=>{if("object"==typeof r&&null!==r){if(e.has(r))return;e.add(r)}return r}})())??""}catch(e){try{n.ee.emit("internal-error",[e])}catch(e){}return""}}},9232(e,t,r){"use strict";r.d(t,["f",0,{MFE:"MFE",BA:"BA"}])},7560(e,t,r){"use strict";r.d(t,{N:()=>a,j:()=>c});var n=r(9119),i=r(944);const s=(0,r(6389).J)(e=>(0,i.R)(80,e));function a(e){if(!Array.isArray(e?.assets)||!e.assets.length)return;
392const t=e.assets.map(o).filter(Boolean);return t.length?{assets:t,scripts:t.filter(e=>e.isScript)}:void 0}function o(e){if(!e||"object"!=typeof e)return;const{matcher:t,type:r}=e;let i="string"==typeof t&&t.endsWith(".js");return void 0!==r&&(!function(e){return"script"===e||"asset"===e}(r)?s(r):i=function(e){return"script"===e}(r)),a=t,"[object RegExp]"===Object.prototype.toString.call(a)?{pattern:t,test:e=>(t.lastIndex=0,t.test((0,n.L)(e))),isScript:i}:"string"==typeof t&&t.length>0?{pattern:t,test:e=>(0,n.L)(e).includes(t),isScript:i}:void s(t);var a}function c(e,t,{scriptsOnly:r=!1}={}){if(!e||!t)return!1;return(r?e.scripts:e.assets).some(e=>e.test(t))}},5718(e,t,r){"use strict";r.d(t,{xo:()=>T,AZ:()=>v,cI:()=>g,Qr:()=>A,QL:()=>y});var n=r(6154),i=r(1863),s=r(9119),a=r(7866);class o{dom=new c;performance=new c;constructor(e){this.url=e,this.claimedBy=new Set}get script(){const e=Math.max(this.dom.start,this.performance.end);return{start:e,end:Math.max(this.dom.end,this.performance.end,e)}}}class c{start=0;end=0;value=void 0}function d(e=()=>{},t){return{get:()=>void 0!==t?t:e(),set:e=>{t=e}}}let u;try{u=v(y())[0]}catch(e){u=v(e)[0]}const l=new Map;let f=[];const h=new WeakMap;function p(e){let t=h.get(e);return t||(t={weighedAssetUrls:new Set,recordManifestScriptWindow:(t,r)=>{t&&(e.scriptStart=e.scriptStart>0?Math.min(e.scriptStart,t):t),r&&(e.scriptEnd=e.scriptEnd>0?Math.max(e.scriptEnd,r):r)}},h.set(e,t)),t}function g(e){return l.get(e)}function m(e){const t=g(e);
392if(t)return t;const r=new o(e);if(l.set(e,r),l.size>1e3){const e=l.keys().next().value;l.delete(e)}return r}if(n.gm.MutationObserver&&n.gm.document){new MutationObserver(e=>{e.forEach(e=>{e.addedNodes.forEach(e=>{if("SCRIPT"===e.nodeName&&e.src){const t=m((0,s.L)(e.src));t.dom.start=(0,i.t)(),t.dom.value=e;const r=()=>{t.dom.end=(0,i.t)()};["load","error"].forEach(t=>e.addEventListener(t,r,{once:!0}))}})})}).observe(n.gm.document,{childList:!0,subtree:!0})}if(n.gm.PerformanceObserver?.supportedEntryTypes.includes("resource")){new PerformanceObserver(e=>{e.getEntries().forEach(e=>{if((e=>"script"===e.initiatorType||["link","fetch"].includes(e.initiatorType)&&(0,s.L)(e.name).endsWith(".js"))(e)){const t=m((0,s.L)(e.name));t.performance.start=Math.floor(e.startTime),t.performance.end=Math.floor(e.responseEnd),t.performance.value=e}if(!f.length)return;const t=[];f.forEach(({test:r,addedAt:n},s)=>{(r(e)||(0,i.t)()-n>1e4)&&t.push(s)}),f=f.filter((e,r)=>!t.includes(r))})}).observe({type:"resource",buffered:!0})}function v(e){if(!e||"string"!=typeof e)return[];const t=new Set,r=e.split("\n");for(const e of r){const r=e.match(a.cn)||e.match(a.hB)||e.match(a.fL);if(r&&r[2])t.add((0,s.L)(r[2]));else{const r=e.match(/\(([^)]+\.js):\d+:\d+\)/)||e.match(/^\s+at\s+([^\s(]+\.js):\d+:\d+/);r&&r[1]&&t.add((0,s.L)(r[1]))}}return[...t]}function y(){let e;try{const t=Error.stackTraceLimit;Error.stackTraceLimit=50,e=(new Error).stack,Error.stackTraceLimit=t}catch(t){e=(new Error).stack}return e}function b(e,t){return(0,s.L)(e.name)===t}function E(e,t){e.fetchStart=Math.floor(t.startTime),e.fetchEnd=Math.floor(t.responseEnd),e.asset=t.name,e.type=t.initiatorType,w(e,t)}function w(e,t){const r=(0,s.L)(t.name),{weighedAssetUrls:n}=p(e);n.has(r)||(n.add(r),e.totalWeight=(e.totalWeight||0)+(t.transferSize||0),"blocking"===t.renderBlockingStatus?e.renderBlocking=!0:"non-blocking"===t.renderBlockingStatus&&!0!==e.renderBlocking&&(e.renderBlocking=!1))}function R(e,t,r,n,i){if(w(e,t),"scripts"!==i&&"all"!==i)return;if("all"===i||r.isScript){const r=Math.floor(t.startTime),n=Math.floor(t.responseEnd);e.fetchStart=e.fetchStart>0?Math.min(e.fetchStart,r):r,e.fetchEnd=e.fetchEnd>0?Math.max(e.fetchEnd,n):n}if(r.isScript){const r=g((0,s.L)(t.name));if(r){const t=()=>{const{start:t,end:n}=r.script;p(e).recordManifestScriptWindow(t,n)};t(),!r.dom.end&&r.dom.value&&["load","error"].forEach(e=>r.dom.value.addEventListener(e,t,{once:!0}))}n.resolved||(e.asset=t.name,e.type=t.initiatorType,n.resolved=!0)}}function T(e,t){const r=t?.manifest;if(!r||!r.assets.length)return;const s={resolved:!1},a=new Set(r.assets);(n.gm.performance?.getEntriesByType("resource")||[]).forEach(r=>{const n=[...a].find(e=>e.test(r.name));n&&(R(e,r,n,s,t.timingMethod),a.delete(n))}),a.size&&function(e,t,r,s){n.gm.PerformanceObserver?.supportedEntryTypes?.includes("resource")&&f.push({addedAt:(0,i.t)(),test:n=>{const i=[...t].find(e=>e.test(n.name));return i&&(R(e,n,i,r,s),t.delete(i)),0===t.size}})}(e,a,s,t.timingMethod)}function A(e){const t=e?.id,r={registeredAt:(0,i.t)(),reportedAt:void 0,fetchStart:0,fetchEnd:0,scriptStart:0,scriptEnd:0,asset:void 0,type:"unknown",totalWeight:0,renderBlocking:void 0},a=y();if(!a)return r;const o=n.gm.performance?.getEntriesByType("navigation")?.[0]?.name||"";try{const e=v(a),c=(e.length>1?e.filter(e=>u!==e):e)[0];if(!c)return r;if(o.includes(c))return r.asset=(0,s.L)(o),r.type="inline",r;r.correlation=g(c);const l=r.correlation?.performance.value||n.gm.performance?.getEntriesByType("resource")?.find(e=>b(e,c));if(l)E(r,l);else{(function(e){if(!e||!n.gm.document)return!1;try{const t=n.gm.document.querySelectorAll('link[rel="preload"][as="script"]');for(const r of t)if((0,s.L)(r.href)===e)return!0}catch(e){}return!1})(c)&&(r.asset=c,r.type="preload"),function(e,t){n.gm.PerformanceObserver?.supportedEntryTypes?.includes("resource")&&f.push({addedAt:(0,i.t)(),test:r=>!!b(r,t)&&(E(e,r),!0)})}(r,c)}const h=r.correlation,m=!!t&&!!h?.claimedBy.has(t);h&&t&&h.claimedBy.add(t);const y=()=>{const e=h?.script.start;if(!m||!e)return!1;return r.registeredAt-e>1e4};let w=0,R=0;p(r).recordManifestScriptWindow=(e,t)=>{e&&(w=w>0?Math.min(w,e):e),t&&(R=R>0?Math.max(R,t):t)},Object.defineProperty(r,"scriptStart",d(()=>{const e=y()?r.registeredAt:h?.script.start??r.fetchEnd;return w>0?Math.min(e,w):e})),Object.defineProperty(r,"scriptEnd",d(()=>{const e=y()?r.registeredAt:h?.script.end??r.registeredAt;return R>0?Math.max(e,R):e}))}catch(e){}return r}},5732(e,t,r){"use strict";r.d(t,{$5:()=>m,B5:()=>g,K6:()=>u,M$:()=>
392o,Ms:()=>d,NG:()=>c,Ux:()=>h,YA:()=>p,yx:()=>l});var n=r(5718),i=r(7560),s=r(9119),a=r(9232);function o(e){return e?.type===a.f.MFE}function c(e,t){if(!y(e,t))return;const r=t.runtime.registeredEntities;return r?.find(t=>t.metadata.target.iframeInterfaceId===e)}function d(e,t){if(!y(e,t))return[];const r=t.runtime.registeredEntities;return r?.filter(t=>String(t.metadata.target.id)===String(e)).map(e=>e.metadata.target)||[]}function u(e,t){if(!y(e,t))return[];const r=t.runtime.registeredEntities,n=(0,s.L)(e),a=r?.filter(t=>{const r=t.metadata.target?.manifest;return r?(0,i.j)(r,e,{scriptsOnly:!1}):!!t.metadata.timings?.asset&&(0,s.L)(t.metadata.timings.asset)===n});return f(a).map(e=>e.metadata.target)}function l(e,t){if(!y(e,t))return[];const r=t.runtime.registeredEntities,n=r?.filter(t=>{const r=t.metadata.target?.manifest;return r?(0,i.j)(r,e,{scriptsOnly:!0}):!!t.metadata.timings?.asset?.endsWith(e)});return f(n).map(e=>e.metadata.target)}function f(e){if(!e?.length)return e||[];const t=new Map,r=[];for(const n of e){const e=n.metadata?.timings?.asset;if(!e){r.push(n);continue}const i="".concat(e,"::").concat(n.metadata?.target?.id),s=t.get(i);if(s){if(s.metadata.target?.blocked&&!n.metadata.target?.blocked){const e=r.indexOf(s);-1!==e&&(r[e]=n),t.set(i,n)}}else t.set(i,n),r.push(n)}return r}function h(e,t){return v(t)?o(e)?e.attributes:t.agentRef.runtime.v2Target.attributes:{}}function p(e,t){return g(e,t)?{"child.id":e.id,"child.type":e.type,...h(void 0,t)}:{}}function g(e,t){return o(e)&&!!v(t)&&t.agentRef.init.api.register.duplicate_data_to_container}function m(e){if(!e?.runtime)return[];if(!y(!0,e)||!e.runtime.registeredEntities?.length)return[e.runtime.v2Target];const t=[];try{var r=(0,n.AZ)((0,n.QL)());let i=r.length-1;for(;r[i];)t.push(...l(r[i--],e))}catch(e){}const i=function(e){const t=new Set,r=[];for(const n of e){const e=n?.instance;t.has(e)||(t.add(e),r.push(n))}return r}(t);return i.length||i.push(e.runtime.v2Target),i}function v(e){return 2===e?.harvestEndpointVersion}function y(e,t){return!!e&&!!t?.init.api.register.enabled}},5289(e,t,r){"use strict";r.d(t,{GG:()=>a,Qr:()=>c,sB:()=>o});var n=r(3878),i=r(6389);function s(){return"undefined"==typeof document||"complete"===document.readyState}function a(e,t){if(s())return e();const r=(0,i.J)(e),a=setInterval(()=>{s()&&(clearInterval(a),r())},500);(0,n.sp)("load",r,t)}function o(e){if(s())return e();(0,n.DD)("DOMContentLoaded",e)}function c(e){if(s())return e();(0,n.sp)("popstate",e)}},384(e,t,r){"use strict";r.d(t,{Zm:()=>c,bQ:()=>u,dV:()=>d,pV:()=>l});var n=r(6154),i=r(1863),s=r(944),a=r(1910);const o={beacon:"bam.nr-data.net",errorBeacon:"bam.nr-data.net"};function c(){return n.gm.NREUM||(n.gm.NREUM={}),void 0===n.gm.newrelic&&(n.gm.newrelic=n.gm.NREUM),n.gm.NREUM}function d(){let e=c();return e.o||(e.o={ST:n.gm.setTimeout,SI:n.gm.setImmediate||n.gm.setInterval,CT:n.gm.clearTimeout,XHR:n.gm.XMLHttpRequest,REQ:n.gm.Request,EV:n.gm.Event,PR:n.gm.Promise,MO:n.gm.MutationObserver,FETCH:n.gm.fetch,WS:n.gm.WebSocket},(0,a.i)(...Object.values(e.o))),e}function u(e,t){let r=c();r.initializedAgents??={},t.initializedAt={ms:(0,i.t)(),date:new Date},r.initializedAgents[e]=t,2===Object.keys(r.initializedAgents).length&&(0,s.R)(69)}function l(){return function(){let e=c();const t=e.info||{};e.info={beacon:o.beacon,errorBeacon:o.errorBeacon,...t}}(),function(){let e=c();const t=e.init||{};e.init={...t}}(),d(),function(){let e=c();const t=e.loader_config||{};e.loader_config={...t}}(),c()}r.d(t,["NT",0,o])},2843(e,t,r){"use strict";r.d(t,{G:()=>s,u:()=>i});var n=r(3878);function i(e,t=!1,r,i){(0,n.DD)("visibilitychange",function(){if(t)return void("hidden"===document.visibilityState&&e());e(document.visibilityState)},r,i)}function s(e,t,r){(0,n.sp)("pagehide",e,t,r)}},8139(e,t,r){"use strict";r.d(t,{u:()=>f});var n=r(7836),i=r(3434),s=r(8990),a=r(6154);const o={},c=a.gm.XMLHttpRequest,d="addEventListener",u="removeEventListener",l="nr@wrapped:".concat(n.P);function f(e,t){var r=function(e){return(e||n.ee).get("events")}(e);if(o[r.debugId]++)return r;o[r.debugId]=1;var f=(0,i.YM)(r,!0,t);function p(e){f.inPlace(e,[d,u],"-",g)}function g(e,t){return e[1]}return"getPrototypeOf"in Object&&(a.RI&&h(document,p),c&&h(c.prototype,p),h(a.gm,p)),r.on(d+"-start",function(e,t){var r=e[1];if(null!==r&&("function"==typeof r||"object"==typeof r)&&"newrelic"!==e[0]){var n=(0,s.I)(r,l,function(){var e={object:function(){if("function"!=typeof r.handleEvent)return;return r.handleEvent.apply(r,arguments)},function:r}[typeof r];return e?f(e,"fn-",null,e.name||"anonymous"):r});this.wrapped=e[1]=n}}),r.on(u+"-start",function(e){e[1]=this.wrapped||e[1]}),r}function h(e,t,...r){let n=e;for(;"object"==typeof n&&!Object.prototype.hasOwnProperty.call(n,d);)n=Object.getPrototypeOf(n);n&&t(n,...r)}},3434(e,t,r){"use strict";r.d(t,{YM:()=>d});var n=r(7836),i=r(5607),s=r(5732);const a="nr@original:".concat(i.W);var o=Object.prototype.hasOwnProperty,c=!1;function d(e,t,r){return e||(e=n.ee),i.inPlace=function(e,t,r,n,s,a){r||(r="");const o="-"===r.charAt(0);for(let c=0;c<t.length;c++){const d=t[c],u=e[d];l(u)||(e[d]=i(u,o?d+r:r,n,d,s,a))}},i.flag=a,i;function i(t,n,i,c,f,h){return l(t)?t:(n||(n=""),nrWrapper[a]=t,function(e,t,r){if(Object.defineProperty&&Object.keys)try{return Object.keys(e).forEach(function(r){Object.defineProperty(t,r,{get:function(){return e[r]},set:function(t){return e[r]=t,t}})}),t}catch(e){u([e],r)}for(var n in e)o.call(e,n)&&(t[n]=e[n])}
392(t,nrWrapper,e),nrWrapper);function nrWrapper(){var a,o,l,p;let g,m;try{o=this,a=[...arguments],m=h?(0,s.$5)(r):[r?.runtime?.v2Target],l="function"==typeof i?i(a,o):i||{}}catch(t){u([t,"",[a,o,c],l],e)}d(n+"start",[a,o,c,m],l,f);const v=performance.now();let y;try{return p=t.apply(o,a),y=performance.now(),p}catch(e){throw y=performance.now(),d(n+"err",[a,o,e,m],l,f),g=e,g}finally{const e=y-v,t={start:v,end:y,duration:e,isLongTask:e>=50,methodName:c,thrownError:g};t.isLongTask&&d("long-task",[t,o,m],l,f),d(n+"end",[a,o,p,m],l,f)}}}function d(r,n,i,s){if(!c||t){var a=c;c=!0;try{e.emit(r,n,i,t,s)}catch(t){u([t,r,n,i],e)}c=a}}}function u(e,t){t||(t=n.ee);try{t.emit("internal-error",e)}catch(e){}}function l(e){return!(e&&"function"==typeof e&&e.apply&&!e[a])}r.d(t,["Jt",0,a])},9300(e,t,r){"use strict";const n=r(860).K7.ajax;r.d(t,["TZ",0,n,"f5",0,"ajaxRequest.id","mo",0,{NONE:"none",FAILURES:"failures",ALL:"all"}])},3333(e,t,r){"use strict";var n=r(981);const i=r(860).K7.genericEvents,s=[n.R.PA,n.R.UA,n.R.BP];r.d(t,["$v",0,{RESOURCES:"experimental.resources",REGISTER:"register"},"TZ",0,i,"Zp",0,["auxclick","click","copy","keydown","paste","scrollend"],"kd",0,s,"qN",0,["focus","blur"]])},6774(e,t,r){"use strict";const n=r(860).K7.jserrors;r.d(t,["T",0,n])},993(e,t,r){"use strict";const n=r(860).K7.logging;r.d(t,["A$",0,{OFF:0,ERROR:1,WARN:2,INFO:3,DEBUG:4,TRACE:5},"TZ",0,n,"p_",0,{ERROR:"ERROR",WARN:"WARN",INFO:"INFO",DEBUG:"DEBUG",TRACE:"TRACE"}])},3785(e,t,r){"use strict";r.d(t,{R:()=>c,b:()=>d});var n=r(9908),i=r(1863),s=r(860),a=r(3969),o=r(993);function c(e,t,r={},c=o.p_.INFO,d=!0,u,l=(0,i.t)()){(0,n.p)(a.xV,["API/logging/".concat(c.toLowerCase(),"/called")],void 0,s.K7.metrics,e),(0,n.p)("log",[l,t,r,c,d,u],void 0,s.K7.logging,e)}function d(e){return"string"==typeof e&&Object.values(o.p_).some(t=>t===e.toUpperCase().trim())}},3969(e,t,r){"use strict";const n=r(860).K7.metrics;r.d(t,["TZ",0,n,"XG",0,"storeEventMetrics","xV",0,"storeSupportabilityMetrics"])},6630(e,t,r){"use strict";const n=r(860).K7.pageViewEvent;r.d(t,["T",0,n])},782(e,t,r){"use strict";const n=r(860).K7.pageViewTiming;r.d(t,["T",0,n])},6344(e,t,r){"use strict";var n=r(2614);const i=r(860).K7.sessionReplay,s={[n.g.ERROR]:15e3,[n.g.FULL]:3e5,[n.g.OFF]:0}
392;r.d(t,["Qb",0,{API:"api",RESUME:"resume",SWITCH_TO_FULL:"switchToFull",INITIALIZE:"initialize",PRELOAD:"preload"},"TZ",0,i,"Vh",0,"errorDuringReplay","_s",0,{DomContentLoaded:0,Load:1,FullSnapshot:2,IncrementalSnapshot:3,Meta:4,Custom:5},"bc",0,{RESET:{message:"Session was reset",sm:"Reset"},IMPORT:{message:"Recorder failed to import",sm:"Import"},TOO_MANY:{message:"429: Too Many Requests",sm:"Too-Many"},TOO_BIG:{message:"Payload was too large",sm:"Too-Big"},CROSS_TAB:{message:"Session Entity was set to OFF on another tab",sm:"Cross-Tab"},ENTITLEMENTS:{message:"Session Replay is not allowed and will not be started",sm:"Entitlement"}},"yP",0,s])},5270(e,t,r){"use strict";r.d(t,{Aw:()=>a,SR:()=>s,rF:()=>o});var n=r(384),i=r(7767);function s(e){return!!(0,n.dV)().o.MO&&(0,i.V)(e)&&!0===e?.session_trace.enabled}function a(e){return!0===e?.session_replay.preload&&s(e)}function o(e,t){try{if("string"==typeof t?.type&&"password"===t.type.toLowerCase())return"*".repeat(e?.length||0);if(void 0!==t?.dataset?.nrUnmask||t?.classList?.contains("nr-unmask"))return e}catch(e){}return"string"==typeof e?e.replace(/[\S]/g,"*"):"*".repeat(e?.length||0)}},3738(e,t,r){"use strict";const n=r(860).K7.sessionTrace,i="-start",s="-end",a="fn"+i,o="fn"+s;r.d(t,["He",0,"bstResource","Kp",0,s,"Lc",0,o,"Rz",0,"pushState","TZ",0,n,"bD",0,"resource","bc",0,{CROSS_TAB:{message:"Session Entity was set to OFF on another tab"},ENTITLEMENTS:{message:"Session Trace is not allowed and will not be started"},RESET:{message:"Session was reset"},SESSION_CHANGED:{message:"Session identifier changed unexpectedly"}},"d3",0,i,"uP",0,a])},3962(e,t,r){"use strict";const n=r(860).K7.softNav;r.d(t,["O2",0,{INITIAL_PAGE_LOAD:"",ROUTE_CHANGE:1,UNSPECIFIED:2},"OV",0,"popstate","Qu",0,{INTERACTION:1,AJAX:2,CUSTOM_END:3,CUSTOM_TRACER:4},"TZ",0,n,"ih",0,{IP:"in progress",PF:"pending finish",FIN:"finished",CAN:"cancelled"},"pP",0,"initialPageLoad","tC",0,["click","keydown","submit"]])},4234(e,t,r){"use strict";r.d(t,{W:()=>i});var n=r(1687);class i{constructor(e,t){this.agentRef=e,this.ee=e?.ee,this.featureName=t,this.blocked=!1}deregisterDrain(){(0,n.x3)(this.agentRef,this.featureName)}}},7767(e,t,r){"use strict";var n=r(6154);r.d(t,["V",0,e=>n.RI&&!0===e?.privacy.cookies_enabled])},8362(e,t,r){"use strict";r.d(t,{d:()=>s});var n=r(9566),i=r(1741);class s extends i.W{agentIdentifier=(0,n.LA)(16)}},1741(e,t,r){"use strict";r.d(t,{W:()=>s});var n=r(944),i=r(4261);class s{#e(e,...t){if(this[e]!==s.prototype[e])return this[e](...t);(0,n.R)(35,e)}addPageAction(e,t){return this.#e(i.hG,e,t)}register(e){return this.#e(i.eY,e)}recordCustomEvent(e,t){return this.#e(i.fF,e,t)}setPageViewName(e,t){return this.#e(i.Fw,e,t)}setCustomAttribute(e,t,r){return this.#e(i.cD,e,t,r)}noticeError(e,t){return this.#e(i.o5,e,t)}setUserId(e,t=!1){return this.#e(i.Dl,e,t)}setApplicationVersion(e){return this.#e(i.nb,e)}setErrorHandler(e){return this.#e(i.bt,e)}addRelease(e,t){return this.#e(i.k6,e,t)}log(e,t){return this.#e("log",e,t)}start(){return this.#e("start")}finished(e){return this.#e(i.BL,e)}recordReplay(){return this.#e(i.CH)}pauseReplay(){return this.#e(i.Tb)}addToTrace(e){return this.#e(i.U2,e)}setCurrentRouteName(e){return this.#e(i.PA,e)}interaction(e){return this.#e(i.dT,e)}wrapLogger(e,t,r){return this.#e(i.Wb,e,t,r)}measure(e,t){return this.#e(i.V1,e,t)}consent(e){return this.#e(i.Pv,e)}}},4261(e,t,r){"use strict";r.d(t,["BL",0,"finished","CH",0,"recordReplay","Dl",0,"setUserId","Fw",0,"setPageViewName","PA",0,"setCurrentRouteName","Pv",0,"consent","Tb",0,"pauseReplay","U2",0,"addToTrace","V1",0,"measure","Wb",0,"wrapLogger","bt",0,"setErrorHandler","cD",0,"setCustomAttribute","dT",0,"interaction","eY",0,"register","fF",0,"recordCustomEvent","hG",0,"addPageAction","hw",0,"api-ixn-","k6",0,"addRelease","nb",0,"setApplicationVersion","o5",0,"noticeError"])},1738(e,t,r){"use strict";r.d(t,{U:()=>l,Y:()=>u});var n=r(3241),i=r(9908),s=r(1863),a=r(944),o=r(3969),c=r(8362),d=r(860);function u(e,t,r,s){const u=s||r;!u||u[e]&&u[e]!==c.d.prototype[e]||(u[e]=function(){(0,i.p)(o.xV,["API/"+e+"/called"],void 0,d.K7.metrics,r.ee),(0,n.W)({drained:!!r.runtime?.activatedFeatures,type:"data",name:"api",feature:"api-"+e,data:{}});try{return t.apply(this,arguments)}catch(e){(0,a.R)(23,e)}})}function l(e,t,r,n,a){const o=e.info;null===r?delete o.jsAttributes[t]:o.jsAttributes[t]=r,(a||null===r)&&(0,i.p)("api-"+n,[(0,s.t)(),t,r],void 0,"session",e.ee)}},8374(e,t,r){r.nc=(()=>{try{return document?.currentScript?.nonce}catch(e){}return""})()},860(e,t,r){"use strict";const n="events",i="jserrors",s="browser/blobs",a="browser/logs",o={ajax:"ajax",genericEvents:"generic_events",jserrors:i,logging:"logging",metrics:"metrics",pageAction:"page_action",pageViewEvent:"page_view_event",pageViewTiming:"page_view_timing",sessionReplay:"session_replay",sessionTrace:"session_trace",softNav:"soft_navigations"},c={[o.pageViewEvent]:1,[o.pageViewTiming]:2,[o.metrics]:3,[o.jserrors]:4,[o.softNav]:5,[o.ajax]:6,[o.sessionTrace]:7,[o.sessionReplay]:8,[o.logging]:9,[o.genericEvents]:10},d={[o.pageViewEvent]:"rum",[o.pageViewTiming]:n,[o.ajax]:n,[o.softNav]:n,[o.metrics]:i,[o.jserrors]:i,[o.sessionTrace]:s,[o.sessionReplay]:s,[o.logging]:a,[o.genericEvents]:"ins"};r.d(t,["$J",0,d,"K7",0,o,"P3",0,c,"XX",0,i,"Yy",0,a,"df",0,s,"hg",0,"connect"])}};const t={};function r(n){const i=t[n];if(void 0!==i)return i.exports;const s=t[n]={exports:{}};return e[n](s,s.exports,r),s.exports}r.m=e,r.d=(e,t)=>{if(Array.isArray(t))for(var n=0;n<t.length;){var i=t[n++],s=t[n++];r.o(e,i)?0===s&&n++:0===s?Object.defineProperty(e,i,{enumerable:!0,value:t[n++]}):Object.defineProperty(e,i,{enumerable:!0,get:s})}else for(var i in t)r.o(t,i)&&!r.o(e,i)&&Object.defineProperty(e,i,{enumerable:!0,get:t[i]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce((t,n)=>(r.f[n](e,t),t),[])),r.u=e=>({212:"nr-spa-compressor",238:"nr-spa-iframe-message-handler",249:"nr-spa-recorder",478:"nr-spa"}[e]+"-1.322.0.min.js"),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{const e={},t="NRBA-1.322.0.PROD:";r.l=(n,i,s,a)=>
392{if(e[n])return void e[n].push(i);let o,c;if(void 0!==s){const e=document.getElementsByTagName("script");for(var d=0;d<e.length;d++){const r=e[d];if(r.getAttribute("src")==n||r.getAttribute("data-webpack")==t+s){o=r;break}}}if(!o){c=!0;var u={478:"sha512-SARROoir04gFygxlr/+mTI+PyMeFL+epi1vnUA2G5mTQ7s3G44ItQBJKbOaIMdIE5OBzuaKhb4k5JYta0NICxg==",249:"sha512-6DKQo5WP7YlpzX6l9UfYkgGLGK2oITdoaYTcZtgl5Foa22NY63lED/0z1hBBLeD7qZCz/YdlY19/r8drlol1tg==",212:"sha512-CYxuvSpDx6ErqWJwAvpoHn54eY37YdMcFao/axOumlw3BsSL7yioOeB2LWViY/Njs818sQG10dSglUhYCMfLPw==",238:"sha512-mvbMILWa3ohYst+u6TLfNrmtY2swUIB3rbJFN/uzt3W62KhgvUVwB81UEZ1R0/it5bfrQ5EVz864pi/CAmucNQ=="};o=document.createElement("script"),o.charset="utf-8",r.nc&&o.setAttribute("nonce",r.nc),o.setAttribute("data-webpack",t+s),o.src=n,0!==o.src.indexOf(window.location.origin+"/")&&(o.crossOrigin="anonymous"),u[a]&&(o.integrity=u[a])}e[n]=[i];const l=(t,r)=>{o.onerror=o.onload=null,clearTimeout(f);const i=e[n];if(delete e[n],o.parentNode?.removeChild(o),i?.forEach(e=>e(r)),t)return t(r)},f=setTimeout(l.bind(null,void 0,{type:"timeout",target:o}),12e4);o.onerror=l.bind(null,o.onerror),o.onload=l.bind(null,o.onload),c&&document.head.appendChild(o)}})(),r.r=e=>{Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.p="https://js-agent.newrelic.com/",(()=>{const e={38:0,788:0};r.f.j=(t,n)=>{let i=r.o(e,t)?e[t]:void 0;if(0!==i)if(i)n.push(i[2]);else{const s=new Promise((r,n)=>i=e[t]=[r,n]);n.push(i[2]=s);const a=r.p+r.u(t),o=new Error,c=n=>{if(r.o(e,t)&&(i=e[t],0!==i&&(e[t]=void 0),i)){const e=n&&("load"===n.type?"missing":n.type),r=n&&n.target&&n.target.src;o.message="Loading chunk "+t+" failed: ("+e+": "+r+")",o.name="ChunkLoadError",o.type=e,o.request=r,i[1](o)}};r.l(a,c,"chunk-"+t,t)}};const t=(t,n)=>{let[i,s,a]=n;var o,c,d=0;if(i.some(t=>0!==e[t])){for(o in s)r.o(s,o)&&(r.m[o]=s[o]);if(a)a(r)}for(t&&t(n);d<i.length;d++)c=i[d],r.o(e,c)&&e[c]&&e[c][0](),e[c]=0},n=self["webpackChunk:NRBA-1.322.0.PROD"]=self["webpackChunk:NRBA-1.322.0.PROD"]||[];n.forEach(t.bind(null,0)),n.push=t.bind(null,n.push.bind(n))})(),(()=>{"use strict";r(8374);var e=r(8362),t=r(860);const n=Object.values(t.K7);var i=r(384),s=r(1741);var a=r(2555),o=r(3333),c=r(9300);const d=e=>{if(!e||"string"!=typeof e)return!1;try{document.createDocumentFragment().querySelector(e)}catch{return!1}return!0};var u=r(2614),l=r(944),f=r(8122);const h="[data-nr-mask]",p=e=>(0,f.a)(e,(()=>{const e={feature_flags:[],experimental:{register:!1,resources:!1,iframe_bridge:!1,iframe_domains:[]},mask_selector:"*",block_selector:"[data-nr-block]",mask_input_options:{color:!1,date:!1,"datetime-local":!1,email:!1,month:!1,number:!1,range:!1,search:!1,tel:!1,text:!1,time:!1,url:!1,week:!1,textarea:!1,select:!1,password:!0}};return{ajax:{deny_list:void 0,block_internal:!0,enabled:!0,autoStart:!0,capture_payloads:c.mo.NONE},api:{register:{get enabled(){return e.feature_flags.includes(o.$v.REGISTER)||e.experimental.register},set enabled(t){e.experimental.register=t},duplicate_data_to_container:!1,get allow_iframe_bridge(){return e.feature_flags.includes(o.$v.IFRAME_BRIDGE)||e.experimental.iframe_bridge},set allow_iframe_bridge(t){e.experimental.iframe_bridge=t},get iframe_domains(){return e.experimental.iframe_domains},set iframe_domains(t){Array.isArray(t)?e.experimental.iframe_domains=t:(0,l.R)(1,t)}}},browser_consent_mode:{enabled:!1},distributed_tracing:{enabled:void 0,exclude_newrelic_header:void 0,cors_use_newrelic_header:void 0,cors_use_tracecontext_headers:void 0,allowed_origins:void 0},get feature_flags(){return e.feature_flags},set feature_flags(t){e.feature_flags=t},generic_events:{enabled:!0,autoStart:!0},harvest:{interval:30},jserrors:{enabled:!0,autoStart:!0},logging:{enabled:!0,autoStart:!0},metrics:{enabled:!0,autoStart:!0},obfuscate:void 0,page_action:{enabled:!0},page_view_event:{enabled:!0,autoStart:!0},page_view_timing:{enabled:!0,autoStart:!0},performance:{capture_marks:!1,capture_measures:!1,capture_detail:!0,resources:{get enabled(){return e.feature_flags.includes(o.$v.RESOURCES)||e.experimental.resources},set enabled(t){e.experimental.resources=t},asset_types:[],first_party_domains:[],ignore_newrelic:!0}},privacy:{cookies_enabled:!0},proxy:{assets:void 0,beacon:void 0},session:{expiresMs:u.wk,inactiveMs:u.BB},session_replay:{autoStart:!0,enabled:!1,preload:!1,sampling_rate:10,error_sampling_rate:100,collect_fonts:!1,inl
392ine_images:!1,fix_stylesheets:!0,mask_all_inputs:!0,get mask_text_selector(){return e.mask_selector},set mask_text_selector(t){d(t)?e.mask_selector="".concat(t,",").concat(h):""===t||null===t?e.mask_selector=h:(0,l.R)(5,t)},get block_class(){return"nr-block"},get ignore_class(){return"nr-ignore"},get mask_text_class(){return"nr-mask"},get block_selector(){return e.block_selector},set block_selector(t){d(t)?e.block_selector+=",".concat(t):""!==t&&(0,l.R)(6,t)},get mask_input_options(){return e.mask_input_options},set mask_input_options(t){t&&"object"==typeof t?e.mask_input_options={...t,password:!0}:(0,l.R)(7,t)}},session_trace:{enabled:!0,autoStart:!0},soft_navigations:{enabled:!0,autoStart:!0},ssl:void 0,user_actions:{enabled:!0,elementAttributes:["id","className","tagName","type"]},web_sockets:{enabled:!1}}})());var g=r(6154),m=r(9324);let v=0;const y={buildEnv:"PROD",distMethod:"CDN",version:m.x,originTime:g.WN},b={consented:!1},E={activatedFeatures:void 0,appMetadata:{},configured:!1,get consented(){return this.session?.state?.consent||b.consented},set consented(e){b.consented=e},customTransaction:void 0,denyList:[],disabled:!1,drainRegistry:new Map,connector:void 0,harvester:void 0,v2Target:void 0,isolatedBacklog:!1,isRecording:!1,loaderType:void 0,maxBytes:3e4,obfuscator:void 0,onerror:void 0,ptid:void 0,releaseIds:{},session:void 0,timeKeeper:void 0,registeredEntities:[],jsAttributesMetadata:{bytes:0},get harvestCount(){return++v},listeningForIframeMessages:!1};var w=r(9232);var R=r(7836),T=r(3241);const A={accountID:void 0,trustKey:void 0,agentID:void 0,licenseKey:void 0,applicationID:void 0,xpid:void 0};var S=r(9908),x=r(9752);function O(e,t={},n,o){let{init:c,info:d,loader_config:u,runtime:l={},exposed:h=!0}=t;if(!d){const e=(0,i.pV)();c=e.init,d=e.info,u=e.loader_config}var m;e.init=p(c||{}),e.loader_config=(m=u||{},(0,f.a)(m,A)),d.jsAttributes??={},g.bv&&(d.jsAttributes.isWorker=!0),e.info=(0,a.D)(d);const v=e.init;e.runtime??=(e=>{const t=(0,f.a)(e,E),r=Object.keys(y).reduce((e,t)=>(e[t]={value:y[t],writable:!1,configurable:!0,enumerable:!0},e),{});return Object.defineProperties(t,r)})(l),e.runtime.v2Target??={type:w.f.BA,instance:e.agentIdentifier,get id(){return e.runtime.appMetadata?.agents?.[0]?.entityGuid},get attributes(){return{"entity.guid":this.id,appId:e.info.applicationID}}},v.proxy.assets&&(e=>{const t=e.startsWith("http");e+="/",r.p=t?e:"https://"+e})(v.proxy.assets),e.runtime.configured||(Object.defineProperty(e,"beacons",{get:()=>[e.info.beacon,e.info.errorBeacon,e.init.proxy.assets,e.init.proxy.beacon].filter(Boolean)}),Object.defineProperty(e.runtime,"denyList",{get:()=>[...e.init.ajax.deny_list||[],...e.init.ajax.block_internal?e.beacons:[]]}),e.runtime.ptid=e.agentIdentifier,function(e){const t=(0,i.pV)();Object.getOwnPropertyNames(s.W.prototype).forEach(r=>{const n=s.W.prototype[r];if("function"!=typeof n||"constructor"===n)return;let i=t[r];e[r]&&!1!==e.exposed&&"micro-agent"!==e.runtime?.loaderType&&(t[r]=(...t)=>{const n=e[r](...t);return i?i(...t):n})})}(e),e.runtime.loaderType=n,e.ee=R.ee.get(e.agentIdentifier),e.exposed=h,(0,T.W)({drained:!!e.runtime.activatedFeatures,type:"lifecycle",name:"initialize",feature:void 0,data:e.config}),e.init.api.register.allow_iframe_bridge&&g.gm.addEventListener("message",t=>{"string"==typeof t.data?.type&&t.data.type.startsWith(x.Pl)&&(0,S.p)("iframe-message",[t],void 0,"IFRAME",e.ee)}),e.runtime.configured=!0)}var _=r(1863),k=r(4261),N=r(1738);var L=r(1687),M=r(4234),P=r(5289),I=r(5270),j=r(7767),C=r(6389),D=r(7699);const B=new WeakSet,H=new WeakMap;class W extends M.W{constructor(e,t){super(e,t),this.abortHandler=void 0,this.featAggregate=void 0,this.loadedSuccessfully=void 0,this.onAggregateImported=new Promise(e=>{this.loadedSuccessfully=e}),this.deferred=Promise.resolve(),!1===e.init[this.featureName].autoStart?this.deferred=new Promise((t,r)=>{this.ee.on("manual-start-all",(0,C.J)(()=>{(0,L.Ak)(e,this.featureName),t()}))}):(0,L.Ak)(e,t)}importAggregator(e,t,n={}){if(this.featAggregate)return;const i=async()=>{if(await this.deferred,this.#t(e),!(0,a.f)(e.info))return(0,l.R)(43),e.ee.abort(),void this.loadedSuccessfully(!1);try{await async function(e,t,n){if(H.has(e))return H.get(e);const i=(async()=>
392{if((0,j.V)(e.init))try{const{setupAgentSession:t}=await r.e(478).then(r.bind(r,8766));t(e)}catch(e){(0,l.R)(20,e),t.emit("internal-error",[e]),(0,S.p)(D.qh,[e],void 0,n,t)}if(e.init.api.register.allow_iframe_bridge)try{const{setupIframeMFEMessageListener:t}=await r.e(238).then(r.bind(r,6417));t(e)}catch(e){(0,l.R)(23,e)}const[{Connector:i},{Harvester:s}]=await Promise.all([r.e(478).then(r.bind(r,6589)),r.e(478).then(r.bind(r,5237))]);e.runtime.connector=new i(e),e.runtime.harvester=new s(e);const a=Object.values(e.features).filter(t=>e.runtime.drainRegistry.has(t.featureName));Promise.all(a.map(e=>e.onAggregateImported)).then(()=>e.runtime.harvester.startTimer())})();H.set(e,i),await i}(e,this.ee,this.featureName)}catch(e){return(0,l.R)(79,e),this.ee.abort(),void this.loadedSuccessfully(!1)}try{if(!this.#r(this.featureName,e.runtime.session,e.init))return this.abortHandler?.(),(0,L.Ze)(this.agentRef,this.featureName),void this.loadedSuccessfully(!1);const{Aggregate:r}=await t();this.featAggregate=new r(e,n),e.runtime.harvester.initializedAggregates.push(this.featAggregate),this.loadedSuccessfully(!0)}catch(e){(0,l.R)(34,e),this.abortHandler?.(),(0,L.Ze)(this.agentRef,this.featureName,!0),this.loadedSuccessfully(!1)}};g.RI?(0,P.GG)(()=>i(),!0):i()}#r(e,r,n){if(this.blocked)return!1;switch(e){case t.K7.sessionReplay:return(0,I.SR)(n)&&!!r;case t.K7.sessionTrace:return!!r;default:return!0}}#t(e){if(!B.has(e)&&(B.add(e),!(0,a.f)(e.info))){const t=(0,i.pV)();let r={...t.info?.jsAttributes};try{r={...r,...e.info?.jsAttributes}}catch(e){}O(e,{...t,info:{...t.info,jsAttributes:r},runtime:e.runtime},e.runtime.loaderType)}}}var U=r(6630);class K extends W{static featureName=U.T;constructor(e){var t;super(e,U.T),this.setupInspectionEvents(),t=e,(0,N.Y)(k.Fw,function(e,r){"string"==typeof e&&("/"!==e.charAt(0)&&(e="/"+e),t.runtime.customTransaction=(r||"http://custom.transaction")+e,(0,S.p)("api-"+k.Fw,[(0,_.t)()],void 0,void 0,t.ee))},t),this.importAggregator(e,()=>e.init.feature_flags.includes("rum_v2")?r.e(478).then(r.bind(r,908)):r.e(478).then(r.bind(r,7927)))}setupInspectionEvents(){const e=(e,t)=>{e&&(0,T.W)({timeStamp:e.timeStamp,loaded:"complete"===e.target.readyState,type:"window",name:t,data:e.target.location+""})};(0,P.sB)(t=>{e(t,"DOMContentLoaded")}),(0,P.GG)(t=>{e(t,"load")}),(0,P.Qr)(t=>{e(t,"navigate")}),this.ee.on(u.tS.UPDATE,(e,t)=>{(0,T.W)({type:"lifecycle",name:"session",data:t})})}}class F extends e.d{constructor(e){var t;(super(),g.gm)?(this.features={},(0,i.bQ)(this.agentIdentifier,this),this.desiredFeatures=new Set(e.features||[]),this.desiredFeatures.add(K),O(this,e,e.loaderType||"agent"),t=this,(0,N.Y)(k.cD,function(e,r,n=!1){if("string"==typeof e){if(["string","number","boolean"].includes(typeof r)||null===r)return(0,N.U)(t,e,r,k.cD,n);(0,l.R)(40,typeof r)}else(0,l.R)(39,typeof e)},t),function(e){(0,N.Y)(k.Dl,function(t,r=!1){if("string"!=typeof t&&null!==t)return void(0,l.R)(41,typeof t);const n=e.info.jsAttributes["enduser.id"];r&&null!=n&&n!==t?(0,S.p)("api-setUserIdAndResetSession",[t],void 0,"session",e.ee):(0,N.U)(e,"enduser.id",t,k.Dl,!0)},e)}(this),function(e){(0,N.Y)(k.nb,function(t){if("string"==typeof t||null===t)return(0,N.U)(e,"application.version",t,k.nb,!1);(0,l.R)(42,typeof t)},e)}(this),function(e){(0,N.Y)("start",function(){e.ee.emit("manual-start-all")},e)}(this),function(e){(0,N.Y)(k.Pv,function(t=!0){if("boolean"==typeof t){if((0,S.p)("api-"+k.Pv,[t],void 0,"session",e.ee),e.runtime.consented=t,t){const t=e.features.page_view_event;t.onAggregateImported.then(e=>{const r=t.featAggregate;e&&!r.sentRum&&r.sendRum?.()})}}else(0,l.R)(65,typeof t)},e)}(this),this.run()):(0,l.R)(21)}get config(){return{info:this.info,init:this.init,loader_config:this.loader_config,runtime:this.runtime}}get api(){return this}run(){try{const e=function(e){const t={};return n.forEach(r=>{t[r]=!!e[r]?.enabled}),t}(this.init),r=[...this.desiredFeatures],i=this.init.feature_flags.includes("rum_v2");r.sort((e,r)=>t.P3[e.featureName]-t.P3[r.featureName]),r.forEach(r=>{if(!e[r.featureName]&&(i||r.featureName!==t.K7.pageViewEvent))return;const n=function(e){switch(e){case t.K7.ajax:return[t.K7.jserrors];case t.K7.sessionTrace:return[t.K7.ajax,t.K7.pageViewEvent];case t.K7.sessionReplay:return[t.K7.sessionTrace];case t.K7.pageViewTiming:return[t.K7.pageViewEvent];default:return[]}}(r.featureName).filter(e=>!(e in this.features));n.length>0&&(0,l.R)(36,{targetFeature:r.featureName,missingDependencies:n}),this.features[r.featureName]=new r(this)})}catch(e){(0,l.R)(22,e);for(const e in this.features)this.features[e].abortHandler?.();const t=(0,i.Zm)();delete t.initializedAgents[this.agentIdentifier]?.features,delete this.sharedAggregator;return t.ee.get(this.agentIdentifier).abort(),!1}}}var V=r(2843),z=r(782);class G extends W{static featureName=z.T;constructor(e){super(e,z.T),g.RI&&((0,V.u)(()=>(0,S.p)("docHidden",[(0,_.t)()],void 0,z.T,this.ee),!0),(0,V.G)(()=>(0,S.p)("winPagehide",[(0,_.t)()],void 0,z.T,this.ee)),this.importAggregator(e,()=>r.e(478).then(r.bind(r,9917))))}}var q=r(3969);class Y extends W{static featureName=q.TZ;constructor(e){super(e,q.TZ),this.importAggregator(e,()=>r.e(478).then(r.bind(r,6555)))}}var Z=r(6774),J=r(3878),X=r(3304);class Q{constructor(e,t,r,n,i){this.name="UncaughtError",this.message="string"==typeof e?e:(0,X.A)(e),this.sourceURL=t,this.line=r,this.column=n,this.__newrelic=i}}function ee(e){return ne(e)?e:new Q(void 0!==e?.message?e.message:e,e?.filename||e?.sourceURL,e?.lineno||e?.line,e?.colno||e?.col,e?.__newrelic,e?.cause)}function te(e){const t="Unhandled Promise Rejection: ";if(!e?.reason)return;if(ne(e.reason)){try{e.reason.message.startsWith(t)||(e.reason.message=t+e.reason.message)}catch(e){}return ee(e.reason)}const r=ee(e.reason);return(r.message||"").startsWith(t)||(r.message=t+r.message),r}function re(e){if(e.error instanceof SyntaxError&&!/:\d+$/.test(e.error.stack?.trim())){const t=new Q(e.message,e.filename,e.lineno,e.colno,e.error.__newrelic,e.cause);return t.name=SyntaxError.name,t}return ne(e.error)?e.error:ee(e)}function ne(e){return e instanceof Error&&!!e.stack}function ie(e,r,n,i,s=(0,_.t)()){"string"==typeof e&&(e=new Error(e)),(0,S.p)("err",[e,s,!1,r,n.runtime.isRecording,void 0,i],void 0,t.K7.jserrors,n.ee),(0,S.p)("uaErr",[],void 0,t.K7.genericEvents,n.ee)}var se=r(993),ae=r(3785);function oe(e,{customAttributes:t={},level:r=se.p_.INFO}={},n,i,s=(0,_.t)()){(0,ae.R)(n.ee,e,t,r,!1,i,s)}function ce(e,r,n,i,s=(0,_.t)()){(0,S.p)("api-"+k.hG,[s,e,r,i],void 0,t.K7.genericEvents,n.ee)}function de(e,r,n,i,s=(0,_.t)()){const{start:a,end:o,customAttributes:c}=r||{},d={customAttributes:c||{}};if("object"!=typeof d.customAttributes||"string"!=typeof e||0===e.length)return void(0,l.R)(57);const u=(e,t)=>
392null==e?t:"number"==typeof e?e:e instanceof PerformanceMark?e.startTime:Number.NaN;if(d.start=u(a,0),d.end=u(o,s),Number.isNaN(d.start)||Number.isNaN(d.end))(0,l.R)(57);else{if(d.duration=d.end-d.start,!(d.duration<0))return(0,S.p)("api-"+k.V1,[d,e,i],void 0,t.K7.genericEvents,n.ee),d;(0,l.R)(58)}}function ue(e,r={},n,i,s=(0,_.t)()){(0,S.p)("api-"+k.fF,[s,e,r,i],void 0,t.K7.genericEvents,n.ee)}var le=r(5718);const fe=(e,t)=>e?.nrMfeId===t.id&&(!e?.nrMfeObserved||e?.nrMfeObserved===t.instance),he=e=>{try{return g.gm.CSS.escape(e)}catch(t){return e}},pe=(e,t={})=>{const r=t.id,n=t.instance;if(!e||!r||!n)return!1;try{let r=1===e.nodeType?e:e.parentElement;for(;r?.tagName;){if(fe(r.dataset,t))return r.dataset.nrMfeObserved=n,!0;r=r.parentNode}}catch(e){}return!1},ge=(e,t)=>{const r=g.gm.document?.querySelectorAll('[data-nr-mfe-id="'.concat(he(e.id),'"]')),n=(Array.from(r)||[]).find(t=>fe(t.dataset,e));let i=!!n;i&&(n.dataset.nrMfeObserved??=e.instance);const s=new g.gm.MutationObserver(r=>{r.forEach(r=>{r.addedNodes.forEach(r=>{const n=1===r.nodeType?r:null;!i&&fe(n?.dataset,e)&&(s.disconnect(),s.observe(n,{childList:!0,subtree:!0}),i=!0,n.dataset.nrMfeObserved=e.instance),(e=>{try{return e?.textContent?.trim()||["img","video","canvas","svg"].includes(e?.nodeName?.toLowerCase())}catch(e){return!1}})(r)&&(i||pe(r,e))&&t(r,s)})})});return s.observe(n||g.gm.document,{childList:!0,subtree:!0}),s},me=(e,t,r)=>{try{const n=new g.gm.PerformanceObserver(e=>{e.getEntries().forEach(r)});return n.observe(t),e.push(n),n}catch(e){return null}};function ve(e,t){let r,n,i=!1;const s=e=>null==e?e:e-(t?.scriptStart||t?.registeredAt||0),a={fcp:{get value(){const e=s(r);return e>1e4?void 0:e},set value(e){i||(r=e)}},lcp:{get value(){if(void 0!==a.fcp.value)return s(n)},set value(e){i||(n=e)}},cls:{value:void 0},inp:{value:void 0},disconnect:()=>{}};if(!(e&&g.RI&&g.gm.MutationObserver&&g.gm.PerformanceObserver))return a;const o=[];setTimeout(()=>{r||a.disconnect()},1e4);const c=()=>{if(!i){if(null==r){const e=(0,_.t)();if(s(e)>1e4)return void a.disconnect();r=e}n??=(0,_.t)(),a.cls.value??=0}},d=ge(e,(e,t)=>{c(),t.disconnect()});o.push(d);let u=0,l=null;const f=new Set;try{l=new g.gm.ResizeObserver(e=>{i||e.forEach(e=>{try{const t=e.contentRect.width*e.contentRect.height;t>u&&(u=t,a.lcp.value=(0,_.t)()),l.unobserve(e.target)}catch(e){}})})}catch(e){}const h=ge(e,e=>{if(c(),l)try{const t=1===e.nodeType?e:e.parentElement;t&&!f.has(t)&&(f.add(t),"IMG"===t.tagName?t.complete?l.observe(t):t.addEventListener("load",()=>{l.observe(t)},{once:!0}):"VIDEO"===t.tagName?t.readyState>=2?l.observe(t):t.addEventListener("loadeddata",()=>{l.observe(t)},{once:!0}):l.observe(t))}catch(e){}});l&&o.push(l),o.push(h),me(o,{type:"layout-shift",buffered:!0},t=>{i||t.hadRecentInput||(t.sources||[]).some(r=>!!pe(r.node,e)&&(c(),a.cls.value+=t.value,!0))}),me(o,{type:"event",buffered:!0,durationThreshold:40},t=>{!i&&t.interactionId&&pe(t.target,e)&&(void 0===a.inp.value||t.duration>a.inp.value)&&(c(),a.inp.value=t.duration)});const p=["pointerdown","keydown"],m=()=>{p.forEach(e=>{g.gm.removeEventListener(e,v,{passive:!0})})};a.disconnect=()=>{i=!0,o.forEach(e=>{try{e?.disconnect()}catch(e){}}),m(),["visibilitychange","pagehide"].forEach(e=>{g.gm.removeEventListener(e,a.disconnect,{once:!0,passive:!0})})};const v=t=>{pe(t?.target,e)&&((()=>{try{h?.disconnect(),l?.disconnect()}catch(e){}})(),m())};p.forEach(e=>{g.gm.addEventListener(e,v,{passive:!0})}),["visibilitychange","pagehide"].forEach(e=>{g.gm.addEventListener(e,a.disconnect,{once:!0,passive:!0})});const y=g.gm.document?.querySelectorAll('[data-nr-mfe-id="'.concat(he(e.id),'"]'));return Array.from(y||[]).some(t=>fe(t.dataset,e))&&c(),a}var ye=r(9566),be=r(7560),Ee=r(9119);const we=["entry","scripts","all"],Re=["name","id","type"],Te=new Map([[ce,"addPageAction"],[oe,"log"],[de,"measure"],[ie,"noticeError"],[ue,"recordCustomEvent"]]),Ae={experimental:(0,C.J)(()=>(0,l.R)(54,"newrelic.register")),disabled:(0,C.J)(()=>(0,l.R)(55)),invalidTarget:(0,C.J)(e=>(0,l.R)(48,e)),deregistered:(0,C.J)(()=>(0,l.R)(68)),invalidTimingMethod:(0,C.J)(e=>(0,l.R)(80,e)),duplicateName:(0,C.J)(e=>(0,l.R)(81,e)),duplicateId:(0,C.J)(e=>(0,l.R)(82,e))};function Se(e){(0,N.Y)(k.eY,function(t){return xe(e,t)},e)}function xe(e,r){Ae.experimental(),r||={},r.instance=(0,ye.LA)(8),r.type=w.f.MFE,r.licenseKey||=e.info.licenseKey,r.blocked=!1,("object"!=typeof r.tags||null===r.tags||Array.isArray(r.tags))&&(r.tags={}),r.parent??={get id(){return e.runtime.appMetadata.agents?.[0].entityGuid},type:w.f.BA},r.manifest=(0,be.N)(r.manifest),void 0===r.timingMethod||we.includes(r.timingMethod)||(Ae.invali
392dTimingMethod(r.timingMethod),r.timingMethod=void 0);const n=(0,le.Qr)(r);r.manifest&&(0,le.xo)(n,r);const i=ve(r,n),s=(0,Ee.L)(""+location),a={};Object.prototype.hasOwnProperty.call(r,"attributes")||Object.defineProperty(r,"attributes",{get:()=>({...a,"source.id":r.id,"source.name":r.name,"source.type":r.type,"parent.type":r.parent?.type||w.f.BA,"parent.id":r.parent?.id})}),Object.entries(r.tags).forEach(([e,t])=>{Re.includes(e)||(a["source.".concat(e)]=t)});let o=()=>{};const c=e.runtime.registeredEntities,d=e=>{r.blocked=!0,o=e};function u(e){return"string"==typeof e&&!!e.trim()&&e.trim().length<501}e.init.api.register.enabled||d(Ae.disabled),u(r.id)&&u(r.name)||d(()=>Ae.invalidTarget(r)),c.forEach(e=>{try{const{name:t,id:n}=e.metadata.target;t===r.name&&n!==r.id&&Ae.duplicateName(r),n===r.id&&t!==r.name&&Ae.duplicateId(r)}catch(e){}});const f={addPageAction:(t,n={})=>m(ce,[t,{...a,...n},e],r),deregister:()=>{p(),d(Ae.deregistered)},log:(t,n={})=>m(oe,[t,{...n,customAttributes:{...a,...n.customAttributes||{}}},e],r),measure:(t,n={})=>m(de,[t,{...n,customAttributes:{...a,...n.customAttributes||{}}},e],r),noticeError:(t,n={})=>m(ie,[t,{...a,...n},e],r),recordCustomEvent:(t,n={})=>m(ue,[t,{...a,...n},e],r),setApplicationVersion:e=>g("application.version",e),setCustomAttribute:(e,t)=>g(e,t),setUserId:e=>g("enduser.id",e),metadata:{get customAttributes(){return a},target:r,timings:n,vitals:i,events:{latestTimestamp:void 0}}},h=()=>(r.blocked&&o(),r.blocked);function p(){if(n.reportedAt)return;n.reportedAt=(0,_.t)(),i.disconnect(),n.fcp=i.fcp,n.lcp=i.lcp,n.cls=i.cls,n.inp=i.inp;const e=n.fetchEnd-n.fetchStart,t=n.scriptEnd-n.scriptStart,r={assetUrl:n.asset,assetType:n.type,registerUrl:s,deregisterUrl:(0,Ee.L)(""+location),pageUrl:void 0,currentUrl:void 0,timeAlive:n.reportedAt-n.registeredAt,timeToBeRequested:n.fetchStart,timeToExecute:t,timeToFetch:e,timeToLoad:e+t,t
392imeToRegister:n.registeredAt,totalWeight:n.totalWeight,...void 0!==n.renderBlocking&&{renderBlocking:n.renderBlocking},...i.fcp.value>=0&&{"vitals.fcp.value":i.fcp.value},...i.lcp.value>=0&&{"vitals.lcp.value":i.lcp.value},...i.cls.value>=0&&{"vitals.cls.value":i.cls.value},...i.inp.value>=0&&{"vitals.inp.value":i.inp.value}};f.recordCustomEvent("MicroFrontEndTiming",r)}h()||(c.push(f),(0,V.G)(p));const g=(e,t)=>{h()||(a[e]=t)},m=(r,n,i)=>{if(h()&&r!==xe)return;const s=f.metadata.events.latestTimestamp??(0,_.t)();f.metadata.events.latestTimestamp=void 0;const a=Te.get(r)||"unknown";(0,S.p)(q.xV,["API/register/".concat(a,"/called")],void 0,t.K7.metrics,e.ee);try{return r(...n,i,s)}catch(e){(0,l.R)(50,e)}};return f}class Oe extends W{static featureName=Z.T;constructor(e){var t;super(e,Z.T),t=e,(0,N.Y)(k.o5,(e,r)=>ie(e,r,t),t),function(e){(0,N.Y)(k.bt,function(t){e.runtime.onerror=t},e)}(e),function(e){let t=0;(0,N.Y)(k.k6,function(e,r){++t>10||(this.runtime.releaseIds[e.slice(-200)]=(""+r).slice(-200))},e)}(e),Se(e);try{this.removeOnAbort=new AbortController}catch(e){}this.ee.on("internal-error",(t,r)=>{this.abortHandler&&(0,S.p)("ierr",[ee(t),(0,_.t)(),!0,{},e.runtime.isRecording,r],void 0,this.featureName,this.ee)}),g.gm.addEventListener("unhandledrejection",t=>{this.abortHandler&&(0,S.p)("err",[te(t),(0,_.t)(),!1,{unhandledPromiseRejection:1},e.runtime.isRecording],void 0,this.featureName,this.ee)},(0,J.jT)(!1,this.removeOnAbort?.signal)),g.gm.addEventListener("error",t=>{this.abortHandler&&(0,S.p)("err",[re(t),(0,_.t)(),!1,{},e.runtime.isRecording],void 0,this.featureName,this.ee)},(0,J.jT)(!1,this.removeOnAbort?.signal)),this.abortHandler=this.#n,this.importAggregator(e,()=>r.e(478).then(r.bind(r,9377)))}#n(){this.removeOnAbort?.abort(),this.abortHandler=void 0}}var _e=r(8990);let ke=1;function Ne(e){const t=typeof e;return!e||"object"!==t&&"function"!==t?-1:e===g.gm?0:(0,_e.I)(e,"nr@id",function(){return ke++})}function Le(e){if("string"==typeof e)return e.length;if("object"==typeof e){if("undefined"!=typeof ArrayBuffer&&e instanceof ArrayBuffer&&e.byteLength)return e.byteLength;if("undefined"!=typeof Blob&&e instanceof Blob&&e.size)return e.size;if(!("undefined"!=typeof FormData&&e instanceof FormData))try{return(0,X.A)(e).length}catch(e){return}}}var Me=r(8139),Pe=r(3434),Ie=r(5732);const je={},Ce=["open","send","setRequestHeader"];function De(e,t){var r=e||R.ee;const n=function(e){return(e||R.ee).get("xhr")}(r);if(void 0===g.gm.XMLHttpRequest)return n;if(je[n.debugId]++)return n;je[n.debugId]=1,(0,Me.u)(r,t);var i=(0,Pe.YM)(n,void 0,t),s=g.gm.XMLHttpRequest,a=g.gm.MutationObserver,o=g.gm.Promise,c=g.gm.setInterval,d="readystatechange",u=["onload","onerror","onabort","onloadstart","onloadend","onprogress","ontimeout"],f=[],h=g.gm.XMLHttpRequest=function(e){const r=new s(e),a=n.context(r);a.targets=(0,Ie.$5)(t);try{n.emit("new-xhr",[r],a),r.addEventListener(d,(o=a,function(){var e=this;e.readyState>3&&!o.resolved&&(o.resolved=!0,n.emit("xhr-resolved",[],e)),i.inPlace(e,u,"fn-",E)}),(0,J.jT)(!1))}catch(e){(0,l.R)(15,e);try{n.emit("internal-error",[e])}catch(e){}}var o;return r};function p(e,t){i.inPlace(t,["onreadystatechange"],"fn-",E)}if(function(e,t){for(var r in e)t[r]=e[r]}(s,h),h.prototype=s.prototype,i.inPlace(h.prototype,Ce,"-xhr-",E),n.on("send-xhr-start",function(e,t){p(e,t),function(e){f.push(e),a&&(m?m.then(b):c?c(b):(v=-v,y.data=v))}(t)}),n.on("open-xhr-start",p),a){var m=o&&o.resolve();if(!c&&!o){var v=1,y=document.createTextNode(v);new a(b).observe(y,{characterData:!0})}}else r.on("fn-end",function(e){e[0]&&e[0].type===d||b()});function b(){for(var e=0;e<f.length;e++)p(0,f[e]);f.length&&(f=[])}function E(e,t){return t}return n}var Be="fetch-",He=Be+"body-",We=["arrayBuffer","blob","json","text","formData"],Ue=g.gm.Request,Ke=g.gm.Response,Fe="prototype";const Ve={};function ze(e,t){const r=function(e){return(e||R.ee).get("fetch")}(e);if(!(Ue&&Ke&&g.gm.fetch))return r;if(Ve[r.debugId]++)return r;function n(e,n,i){var s=e[n];"function"==typeof s&&(e[n]=function(){var e=[...arguments];const n={},a=(0,Ie.$5)(t);var o;r.emit(i+"before-start",[e],n),n[R.P]&&n[R.P].dt&&(o=n[R.P].dt);var c=s.apply(this,e);return r.emit(i+"start",[e,o],c),c.then(function(e){return r.emit(i+"end",[null,e,a],c),e},function(e){throw r.emit(i+"end",[e,void 0,a],c),e})})}
392return Ve[r.debugId]=1,We.forEach(e=>{n(Ue[Fe],e,He),n(Ke[Fe],e,He)}),n(g.gm,"fetch",Be),r.on(Be+"end",function(e,n,i){var s=this;if(s.targets=i||[t.runtime.v2Target],n){var a=n.headers.get("content-length");null!==a&&(s.rxSize=a),r.emit(Be+"done",[null,n],s)}else r.emit(Be+"done",[e],s)}),r}var Ge=r(7485);class qe{constructor(e){this.agentRef=e}generateTracePayload(e){const t=this.agentRef.loader_config;if(!this.shouldGenerateTrace(e)||!t)return null;var r=(t.accountID||"").toString()||null,n=(t.agentID||"").toString()||null,i=(t.trustKey||"").toString()||null;if(!r||!n)return null;var s=(0,ye.ZF)(),a=(0,ye.el)(),o=Date.now(),c={spanId:s,traceId:a,timestamp:o};return(e.sameOrigin||this.isAllowedOrigin(e)&&this.useTraceContextHeadersForCors())&&(c.traceContextParentHeader=this.generateTraceContextParentHeader(s,a),c.traceContextStateHeader=this.generateTraceContextStateHeader(s,o,r,n,i)),(e.sameOrigin&&!this.excludeNewrelicHeader()||!e.sameOrigin&&this.isAllowedOrigin(e)&&this.useNewrelicHeaderForCors())&&(c.newrelicHeader=this.generateTraceHeader(s,a,o,r,n,i)),c}generateTraceContextParentHeader(e,t){return"00-"+t+"-"+e+"-01"}generateTraceContextStateHeader(e,t,r,n,i){return i+"@nr=0-1-"+r+"-"+n+"-"+e+"----"+t}generateTraceHeader(e,t,r,n,i,s){if(!("function"==typeof g.gm?.btoa))return null;var a={v:[0,1],d:{ty:"Browser",ac:n,ap:i,id:e,tr:t,ti:r}};return s&&n!==s&&(a.d.tk=s),btoa((0,X.A)(a))}shouldGenerateTrace(e){return this.agentRef.init?.distributed_tracing?.enabled&&this.isAllowedOrigin(e)}isAllowedOrigin(e){var t=!1;const r=this.agentRef.init?.distributed_tracing;if(e.sameOrigin)t=!0;else if(r?.allowed_origins instanceof Array)for(var n=0;n<r.allowed_origins.length;n++){var i=(0,Ge.D)(r.allowed_origins[n]);if(e.hostname===i.hostname&&e.protocol===i.protocol&&e.port===i.port){t=!0;break}}return t}excludeNewrelicHeader(){var e=this.agentRef.init?.distributed_tracing;return!!e&&!!e.exclude_newrelic_header}useNewrelicHeaderForCors(){var e=this.agentRef.init?.distributed_tracing;return!!e&&!1!==e.cors_use_newrelic_header}useTraceContextHeadersForCors(){var e=this.agentRef.init?.distributed_tracing;return!!e&&!!e.cors_use_tracecontext_headers}}var Ye=r(7295);function Ze(e){return"string"==typeof e?e:e instanceof(0,i.dV)().o.REQ?e.url:g.gm?.URL&&e instanceof URL?e.href:void 0}function $e(e,t){var r=(0,Ge.D)(t),n=e.params||e;n.hostname=r.hostname,n.port=r.port,n.protocol=r.protocol,n.host=r.hostname+":"+r.port,n.pathname=r.pathname,e.parsedOrigin=r,e.sameOrigin=r.sameOrigin}var Je=["load","error","abort","timeout"],Xe=Je.length,Qe=(0,i.dV)().o.REQ,et=(0,i.dV)().o.XHR;const tt="X-NewRelic-App-Data",rt="internal-error";class nt extends W{static featureName=c.TZ;constructor(e){super(e,c.TZ),this.dt=new qe(e),this.handler=(e,t,r,n)=>(0,S.p)(e,t,r,n,this.ee);try{const e={xmlhttprequest:"xhr",fetch:"fetch",beacon:"beacon"};g.gm?.performance?.getEntriesByType("resource").forEach(r=>{if(r.initiatorType in e&&0!==r.responseStatus){const n={status:r.responseStatus},i={rxSize:r.transferSize,duration:Math.floor(r.duration),cbTime:0};$e(n,r.name),this.handler("xhr",[n,i,r.startTime,r.responseEnd,e[r.initiatorType]],void 0,t.K7.ajax)}})}catch(e){}ze(this.ee,e),De(this.ee,e),function(e,r,n,i){const s=[c.mo.ALL,c.mo.FAILURES].includes(e.init.ajax?.capture_payloads);function a(e){var t=this;t.totalCbs=0,t.called=0,t.cbTime=0,t.end=A,t.ended=!1,t.xhrGuids={},t.lastSize=null,t.loadCaptureCalled=!1,t.params=this.params||{},t.metrics=this.metrics||{},t.latestLongtaskEnd=0,e.addEventListener("load",function(r){O(t,e)},(0,J.jT)(!1)),g.lR||e.addEventListener("progress",function(e){t.lastSize=e.loaded},(0,J.jT)(!1))}function o(e){this.params={method:e[0]},$e(this,e[1]),this.metrics={}}function d(t,r){e.loader_config.xpid&&this.sameOrigin&&r.setRequestHeader("X-NewRelic-ID",e.loader_config.xpid);var n=i.generateTracePayload(this.parsedOrigin);if(n){var s=!1;n.newrelicHeader&&(r.setRequestHeader("newrelic",n.newrelicHeader),s=!0),n.traceContextParentHeader&&(r.setRequestHeader("traceparent",n.traceContextParentHeader),n.traceContextStateHeader&&r.setRequestHeader("tracestate",n.traceContextStateHeader),s=!0),s&&(this.dt=n)}}function u(e,t){s&&e.length>=2&&(this.requestHeaders??={},this.requestHeaders[e[0].toLowerCase()]=e[1])}function l(e,t){var n=this.metrics,i=e[0],s=this;if(n&&i){var a=Le(i);a&&(n.txSize=a)}this.startTime=(0,_.t)(),this.requestBody=i,this.listener=function(e){try{"abort"!==e.type||s.loadCaptureCalled||(s.params.aborted=!0),("load"
392!==e.type||s.called===s.totalCbs&&(s.onloadCalled||"function"!=typeof t.onload)&&"function"==typeof s.end)&&s.end(t)}catch(e){try{r.emit(rt,[e])}catch(e){}}};for(var o=0;o<Xe;o++)t.addEventListener(Je[o],this.listener,(0,J.jT)(!1))}function f(e,t,r){this.cbTime+=e,t?this.onloadCalled=!0:this.called+=1,this.called!==this.totalCbs||!this.onloadCalled&&"function"==typeof r.onload||"function"!=typeof this.end||this.end(r)}function h(e,t){var r=""+Ne(e)+!!t;this.xhrGuids&&!this.xhrGuids[r]&&(this.xhrGuids[r]=!0,this.totalCbs+=1)}function p(e,t){var r=""+Ne(e)+!!t;this.xhrGuids&&this.xhrGuids[r]&&(delete this.xhrGuids[r],this.totalCbs-=1)}function m(){this.endTime=(0,_.t)()}function v(e,t){t instanceof et&&"load"===e[0]&&r.emit("xhr-load-added",[e[1],e[2]],t)}function y(e,t){t instanceof et&&"load"===e[0]&&r.emit("xhr-load-removed",[e[1],e[2]],t)}function b(e,t,r){t instanceof et&&("onload"===r&&(this.onload=!0),("load"===(e[0]&&e[0].type)||this.onload)&&(this.xhrCbStart=(0,_.t)()))}function E(e,t){this.xhrCbStart&&r.emit("xhr-cb-time",[(0,_.t)()-this.xhrCbStart,this.onload,t],t)}function w(e){var t,r=e[1]||{};if("string"==typeof e[0]?0===(t=e[0]).length&&g.RI&&(t=""+g.gm.location.href):e[0]&&e[0].url?t=e[0].url:g.gm?.URL&&e[0]&&e[0]instanceof URL?t=e[0].href:"function"==typeof e[0].toString&&(t=e[0].toString()),"string"==typeof t&&0!==t.length){t&&(this.parsedOrigin=(0,Ge.D)(t),this.sameOrigin=this.parsedOrigin.sameOrigin);var n=i.generateTracePayload(this.parsedOrigin);if(n&&(n.newrelicHeader||n.traceContextParentHeader))if(e[0]&&e[0].headers)o(e[0].headers,n)&&(this.dt=n);else{var s={};for(var a in r)s[a]=r[a];s.headers=new Headers(r.headers||{}),o(s.headers,n)&&(this.dt=n),e.length>1?e[1]=s:e.push(s)}}function o(e,t){var r=!1;return t.newrelicHeader&&(e.set("newrelic",t.newrelicHeader),r=!0),t.traceContextParentHeader&&(e.set("traceparent",t.traceContextParentHeader),t.traceContextStateHeader&&e.set("tracestate",t.traceContextStateHeader),r=!0),r}}function R(e,t){this.params={},this.metrics={},this.startTime=(0,_.t)(),this.dt=t;let[r,n={}]=e;$e(this,Ze(r));const i=(""+(r&&r instanceof Qe&&r.method||n.method||"GET")).toUpperCase();this.params.method=i,this.txSize=Le(n.body||r?.body)||0;try{var a=n.headers||r?.headers;if(s&&a)if(this.requestHeaders??={},a instanceof Headers)a.forEach(function(e,t){this.requestHeaders[t.toLowerCase()]=e}.bind(this));else if("object"==typeof a)for(var o in a)this.requestHeaders[o.toLowerCase()]=a[o]}catch(e){}this.requestBody=n.body||r?.body}function T(e,t){if(this.endTime=(0,_.t)(),this.params||(this.params={}),(0,Ye.iW)(this.params))return;this.params.status=t?t.status:0;const n=()=>{const e=+this.rxSize,t=null==this.rxSize||isNaN(e)?void 0:e,r={txSize:this.txSize,rxSize:t,duration:this.endTime-this.startTime},n=[this.params,r,this.startTime,this.endTime,"fetch"];this.targets.forEach(e=>x(n,this,e))};t&&s?t.clone().text().then(e=>{this.responseBody=e,this.rxSize&&"0"!==this.rxSize&&0!==this.rxSize||void 0===e||0===this.params.status||(this.rxSize=Le(e)),t?.headers&&(this.responseHeaders={},t.headers.forEach(function(e,t){this.responseHeaders[t.toLowerCase()]=e}.bind(this)))}).catch(e=>{r.emit(rt,[e])}).finally(()=>{n()}):n()}function A(e){const t=this.params,n=this.metrics;if(this.ended)return;this.ended=!0;for(let t=0;t<Xe;t++)e.removeEventListener(Je[t],this.listener,!1);if(t.aborted)return;if((0,Ye.iW)(t))return;if(n.duration=this.endTime-this.startTime,this.loadCaptureCalled||4!==e.readyState?null==t.status&&(t.status=0):O(this,e),n.cbTime=this.cbTime,s){try{this.responseBody=e.responseText}catch(t){this.responseBody=e.response}if((!n.rxSize||0===n.rxSize)&&void 0!==this.responseBody&&0!==t.status){const e=Le(this.responseBody);void 0!==e&&(n.rxSize=e)}try{this.responseHeaders=function(e){const t={};return e?(e.split("\r\n").forEach(function(e){const r=e.indexOf(": ");if(r>0){const n=e.substring(0,r),i=e.substring(r+2);t[n.toLowerCase()]=i}}),t):t}(e.getAllResponseHeaders())}catch(e){r.emit(rt,[e])}}const i=[t,n,this.startTime,this.endTime,"xhr"];this.targets.forEach(e=>x(i,this,e))}function x(e,r,i){n("xhr",[...e,i],r,t.K7.ajax)}function O(e,n){e.params.status=n.status;var i=function(e,t){var r=e.responseType;return"json"===r&&null!==t?t:"arraybuffer"===r||"blob"===r||"json"===r?Le(e.response):"text"===r||""===r||void 0===r?Le(e.responseText):void 0}(n,e.lastSize);if(void 0!==i&&0!==n.status&&(e.metrics.rxSize=i),e.sameOrigin&&n.getAllResponseHeaders().indexOf(tt)>=0){var s=n.getResponseHeader(tt);s&&((0,S.p)("sm",["Ajax/CrossApplicationTracing/Header/Seen"],void 0,t.K7.metrics,r),e.params.cat=s.split(", ").pop())}e.loadCaptureCalled=!0}r.on("new-xhr",a),r.on("open-xhr-start",o),r.on("open-xhr-end",d),r.on("send-xhr-start",l),r.on("setRequestHeader-xhr-start",u),r.on("xhr-cb-time",f),r.on("xhr-load-added",h),r.on("xhr-load-removed",p),r.on("xhr-resolved",m),r.on("addEventListener-end",v),r.on("removeEventListener-end",y),r.on("fn-end",E),r.on("fetch-before-start",w),r.on("fetch-start",R),r.on("fn-start",b),r.on("fetch-done",T)}(e,this.ee,this.handler,this.dt),this.importAggregator(e,()=>r.e(478).then(r.bind(r,3845)))}}const it={},st=["pushState","replaceState"];function at(e,t){const r=function(e){return(e||R.ee).get("history")}(e);return!g.RI||it[r.debugId]++||(it[r.debugId]=1,(0,Pe.YM)(r,void 0,t).inPlace(window.history,st,"-")),r}var ot=r(3738);function ct(e){(0,N.Y)(k.BL,function(r=Date.now()){const n=r-g.WN;n<0&&(0,l.R)(62,r),(0,S.p)(q.XG,[k.BL,{time:n}],void 0,t.K7.metrics,e.ee),e.addToTrace({name:k.BL,start:r,origin:"nr"}),(0,S.p)("api-"+k.hG,[n,k.BL],void 0,t.K7.genericEvents,e.ee)},e)}const{He:dt,bD:ut,d3:lt,Kp:ft,TZ:ht,Lc:pt,uP:gt,Rz:mt}=ot;class vt extends W{static featureName=ht;constructor(e){var n;super(e,ht),n=e,(0,N.Y)(k.U2,function(e){if(!(e&&"object"==typeof e&&e.name&&e.start))return;const r={n:e.name,s:e.start-g.WN,e:(e.end||e.start)-g.WN,o:e.origin||"",t:"api"};r.s<0||r.e<0||r.e<r.s?(0,l.R)(61,{start:r.s,end:r.e}):(0,S.p)("bstApi",[r],void 0,t.K7.sessionTrace,n.ee)},n),ct(e);
392if(!(0,j.V)(e.init))return void this.deregisterDrain();const i=this.ee;let s;at(i,e),this.eventsEE=(0,Me.u)(i,e),this.eventsEE.on(gt,function(e,t){this.bstStart=(0,_.t)()}),this.eventsEE.on(pt,function(e,r){(0,S.p)("bst",[e[0],r,this.bstStart,(0,_.t)()],void 0,t.K7.sessionTrace,i)}),i.on(mt+lt,function(e){this.time=(0,_.t)(),this.startPath=location.pathname+location.hash}),i.on(mt+ft,function(e){(0,S.p)("bstHist",[location.pathname+location.hash,this.startPath,this.time],void 0,t.K7.sessionTrace,i)});try{s=new PerformanceObserver(e=>{const r=e.getEntries();(0,S.p)(dt,[r],void 0,t.K7.sessionTrace,i)}),s.observe({type:ut,buffered:!0})}catch(e){}this.importAggregator(e,()=>r.e(478).then(r.bind(r,6974)),{resourceObserver:s})}}var yt=r(733),bt=r(6344);class Et extends W{static featureName=bt.TZ;#i;recorder;constructor(e){var n;let i;super(e,bt.TZ),n=e,(0,N.Y)(k.CH,function(){(0,S.p)(k.CH,[],void 0,t.K7.sessionReplay,n.ee)},n),function(e){(0,N.Y)(k.Tb,function(){(0,S.p)(k.Tb,[],void 0,t.K7.sessionReplay,e.ee)},e)}(e);const s="".concat(u.Wt).concat((0,yt.Y)(e.info.licenseKey,e.info.applicationID));try{i=JSON.parse(localStorage.getItem(s))}catch(e){}(0,I.SR)(e.init)&&this.ee.on(k.CH,()=>this.#s()),this.#a(i)&&this.importRecorder().then(e=>{e.startRecording(bt.Qb.PRELOAD,i?.sessionReplayMode)}),this.abortHandler=this.#n,this.importAggregator(this.agentRef,()=>r.e(478).then(r.bind(r,6167)),this),this.ee.on("err",e=>{this.blocked||this.agentRef.runtime.isRecording&&(this.errorNoticed=!0,(0,S.p)(bt.Vh,[e],void 0,this.featureName,this.ee))})}#a(e){return e&&(e.sessionReplayMode===u.g.FULL||e.sessionReplayMode===u.g.ERROR)||(0,I.Aw)(this.agentRef.init)}importRecorder(){return this.recorder?Promise.resolve(this.recorder):(this.#i??=Promise.all([r.e(478),r.e(249)]).then(r.bind(r,4866)).then(({Recorder:e})=>(this.recorder=new e(this),this.recorder)).catch(e=>{throw this.ee.emit("internal-error",[e]),this.blocked=!0,e}),this.#i)}#s(){this.blocked||(this.featAggregate?this.featAggregate.mode!==u.g.FULL&&this.featAggregate.initializeRecording(u.g.FULL,!0,bt.Qb.API):this.importRecorder().then(()=>{this.recorder.startRecording(bt.Qb.API,u.g.FULL)}))}#n(){this.recorder?.stopRecording()}}var wt=r(3962);class Rt extends W{static featureName=wt.TZ;constructor(e){if(super(e,wt.TZ),function(e){const r=e.ee.get("tracer");function n(){}(0,N.Y)(k.dT,function(e){return(new n).get("object"==typeof e?e:{})},e);const i=n.prototype={createTracer:function(n,i){var s={},a=this,o="function"==typeof i;return(0,S.p)(q.xV,["API/createTracer/called"],void 0,t.K7.metrics,e.ee),function(){if(r.emit((o?"":"no-")+"fn-start",[(0,_.t)(),a,o],s),o)try{return i.apply(this,arguments)}catch(e){const t="string"==typeof e?new Error(e):e;throw r.emit("fn-err",[arguments,this,t],s),t}finally{r.emit("fn-end",[(0,_.t)()],s)}}}};["actionText","setName","setAttribute","save","ignore","onEnd","getContext","end","get"].forEach(r=>{N.Y.apply(this,[r,function(){return(0,S.p)(k.hw+r,[performance.now(),...arguments],this,t.K7.softNav,e.ee),this},e,i])}),(0,N.Y)(k.PA,function(){(0,S.p)(k.hw+"routeName",[performance.now(),...arguments],void 0,t.K7.softNav,e.ee)},e)}(e),!g.RI||!(0,i.dV)().o.MO)return;const n=at(this.ee,e);try{this.removeOnAbort=new AbortController}catch(e){}wt.tC.forEach(e=>{(0,J.sp)(e,e=>{c(e)},!0,this.removeOnAbort?.signal)}
392);const s=()=>(0,S.p)("newURL",[(0,_.t)(),""+window.location],void 0,this.featureName,this.ee);n.on("pushState-end",s),n.on("replaceState-end",s),(0,J.sp)(wt.OV,e=>{c(e),(0,S.p)("newURL",[e.timeStamp,""+window.location],void 0,this.featureName,this.ee)},!0,this.removeOnAbort?.signal);let a=!1;const o=new((0,i.dV)().o.MO)((e,t)=>{a||(a=!0,requestAnimationFrame(()=>{(0,S.p)("newDom",[(0,_.t)()],void 0,this.featureName,this.ee),a=!1}))}),c=(0,C.s)(e=>{"loading"!==document.readyState&&((0,S.p)("newUIEvent",[e],void 0,this.featureName,this.ee),o.observe(document.body,{attributes:!0,childList:!0,subtree:!0,characterData:!0}))},100,{leading:!0});this.abortHandler=function(){this.removeOnAbort?.abort(),o.disconnect(),this.abortHandler=void 0},this.importAggregator(e,()=>r.e(478).then(r.bind(r,4393)),{domObserver:o})}}var Tt=r(981);const At={},St=new Set;function xt(e){return"string"==typeof e?{type:"string",size:(new TextEncoder).encode(e).length}:e instanceof ArrayBuffer?{type:"ArrayBuffer",size:e.byteLength}:e instanceof Blob?{type:"Blob",size:e.size}:e instanceof DataView?{type:"DataView",size:e.byteLength}:ArrayBuffer.isView(e)?{type:"TypedArray",size:e.byteLength}:{type:"unknown",size:0}}class Ot{constructor(e,t){this.timestamp=(0,_.t)(),this.currentUrl=(0,Ee.L)(window.location.href),this.socketId=(0,ye.LA)(8),this.requestedUrl=(0,Ee.L)(e),this.requestedProtocols=Array.isArray(t)?t.join(","):t||"",this.openedAt=void 0,this.protocol=void 0,this.extensions=void 0,this.binaryType=void 0,this.messageOrigin=void 0,this.messageCount=0,this.messageBytes=0,this.messageBytesMin=0,this.messageBytesMax=0,this.messageTypes=void 0,this.sendCount=0,this.sendBytes=0,this.sendBytesMin=0,this.sendBytesMax=0,this.sendTypes=void 0,this.closedAt=void 0,this.closeCode=void 0,this.closeReason="unknown",this.closeWasClean=void 0,this.connectedDuration=0,this.hasErrors=void 0}}class _t extends W{static featureName=o.TZ;constructor(e){super(e,o.TZ);const n=e.init.feature_flags.includes("websockets")||e.init.web_sockets?.enabled,s=!e.init.feature_flags.includes("no_spv"),a=[e.init.page_action.enabled,e.init.performance.capture_marks,e.init.performance.capture_measures,e.init.performance.resources.enabled,e.init.user_actions.enabled,n,s];var c;let d;if(c=e,(0,N.Y)(k.hG,(e,t)=>ce(e,t,c),c),function(e){(0,N.Y)(k.fF,(t,r)=>ue(t,r,e),e)}(e),ct(e),Se(e),function(e){(0,N.Y)(k.V1,(t,r)=>de(t,r,e),e)}(e),this.removeOnAbort=new AbortController,this.abortHandler=()=>{this.removeOnAbort.abort(),this.abortHandler=void 0},n){const u=function(e,t){if(!(0,i.dV)().o.WS)return e;const r=e.get("websockets");if(At[r.debugId]++)return r;At[r.debugId]=1,(0,V.G)(()=>{const e=(0,_.t)();St.forEach(t=>{t.nrData.closedAt=e,t.nrData.closeCode=1001,t.nrData.closeReason="Page navigating away",t.nrData.closeWasClean=!1,t.nrData.openedAt&&(t.nrData.connectedDuration=e-t.nrData.openedAt),r.emit("ws",[t.nrData,t.targets],t)})});
392class n extends WebSocket{static name=Tt.R.WS;static toString(){return"function WebSocket() { [native code] }"}toString(){return"[object WebSocket]"}get[Symbol.toStringTag](){return n.name}#o(e){(e.__newrelic??={}).socketId=this.nrData.socketId,this.nrData.hasErrors??=!0}constructor(...e){super(...e),this.nrData=new Ot(e[0],e[1]),this.targets=(0,Ie.$5)(t),this.addEventListener("open",()=>{this.nrData.openedAt=(0,_.t)(),["protocol","extensions","binaryType"].forEach(e=>{this.nrData[e]=this[e]}),St.add(this)}),this.addEventListener("message",e=>{const{type:t,size:r}=xt(e.data);this.nrData.messageOrigin??=(0,Ee.L)(e.origin),this.nrData.messageCount++,this.nrData.messageBytes+=r,this.nrData.messageBytesMin=Math.min(this.nrData.messageBytesMin||1/0,r),this.nrData.messageBytesMax=Math.max(this.nrData.messageBytesMax,r),(this.nrData.messageTypes??"").includes(t)||(this.nrData.messageTypes=this.nrData.messageTypes?"".concat(this.nrData.messageTypes,",").concat(t):t)}),this.addEventListener("close",e=>{this.nrData.closedAt=(0,_.t)(),this.nrData.closeCode=e.code,e.reason&&(this.nrData.closeReason=e.reason),this.nrData.closeWasClean=e.wasClean,this.nrData.connectedDuration=this.nrData.closedAt-this.nrData.openedAt,St.delete(this),r.emit("ws",[this.nrData,this.targets],this)})}addEventListener(e,t,...r){const n=this,i="function"==typeof t?function(...e){try{return t.apply(this,e)}catch(e){throw n.#o(e),e}}:t?.handleEvent?{handleEvent:function(...e){try{return t.handleEvent.apply(t,e)}catch(e){throw n.#o(e),e}}}:t;return super.addEventListener(e,i,...r)}send(e){if(this.readyState===WebSocket.OPEN){const{type:t,size:r}=xt(e);this.nrData.sendCount++,this.nrData.sendBytes+=r,this.nrData.sendBytesMin=Math.min(this.nrData.sendBytesMin||1/0,r),this.nrData.sendBytesMax=Math.max(this.nrData.sendBytesMax,r),(this.nrData.sendTypes??"").includes(t)||(this.nrData.sendTypes=this.nrData.sendTypes?"".concat(this.nrData.sendTypes,",").concat(t):t)}try{return super.send(e)}catch(e){throw this.#o(e),e}}close(...e){try{super.close(...e)}catch(e){throw this.#o(e),e}}}return g.gm.WebSocket=n,r}(this.ee,e);u.on("ws",(e,t)=>{(0,S.p)("ws-complete",[e,t],void 0,this.featureName,this.ee)})}if(s){if("function"==typeof g.gm.ReportingObserver){const l=new g.gm.ReportingObserver(e=>{e.forEach(e=>{(0,S.p)("spv",[kt(e),(0,_.t)()],void 0,t.K7.genericEvents,this.ee)}),l.disconnect()},{types:["csp-violation"],buffered:!0});l.observe()}g.gm.addEventListener("securitypolicyviolation",e=>{(0,S.p)("spv",[kt(e),e.timeStamp],void 0,t.K7.genericEvents,this.ee)},(0,J.jT)(!1,this.removeOnAbort.signal))}if(g.RI){if(ze(this.ee,e),De(this.ee,e),d=at(this.ee,e),e.init.user_actions.enabled){function f(t){const r=(0,Ge.D)(t);return e.beacons.includes(r.hostname+":"+r.port)}function h(){d.emit("navChange")}o.Zp.forEach(e=>(0,J.sp)(e,e=>(0,S.p)("ua",[e],void 0,this.featureName,this.ee),!0)),o.qN.forEac
392h(e=>{const t=(0,C.s)(e=>{(0,S.p)("ua",[e],void 0,this.featureName,this.ee)},500,{leading:!0});(0,J.sp)(e,t)}),g.gm.addEventListener("error",()=>{(0,S.p)("uaErr",[],void 0,t.K7.genericEvents,this.ee)},(0,J.jT)(!1,this.removeOnAbort.signal)),this.ee.on("open-xhr-start",(e,r)=>{f(e[1])||r.addEventListener("readystatechange",()=>{2===r.readyState&&(0,S.p)("uaXhr",[],void 0,t.K7.genericEvents,this.ee)},(0,J.jT)(void 0,this.removeOnAbort.signal))}),this.ee.on("fetch-start",e=>{e.length>=1&&!f(Ze(e[0]))&&(0,S.p)("uaXhr",[],void 0,t.K7.genericEvents,this.ee)}),d.on("pushState-end",h),d.on("replaceState-end",h),window.addEventListener("hashchange",h,(0,J.jT)(!0,this.removeOnAbort.signal)),window.addEventListener("popstate",h,(0,J.jT)(!0,this.removeOnAbort.signal))}if(e.init.performance.resources.enabled&&g.gm.PerformanceObserver?.supportedEntryTypes.includes("resource")){new PerformanceObserver(e=>{e.getEntries().forEach(e=>{(0,S.p)("browserPerformance.resource",[e],void 0,this.featureName,this.ee)})}).observe({type:"resource",buffered:!0})}}a.some(e=>e)?this.importAggregator(e,()=>r.e(478).then(r.bind(r,8019))):this.deregisterDrain()}}function kt(e){const t=e.body??e;return{blockedUrl:t.blockedURL??e.blockedURI,documentUrl:t.documentURL??e.documentURI,effectiveDirective:t.effectiveDirective,originalPolicy:t.originalPolicy,sourceFile:t.sourceFile,statusCode:t.statusCode,lineNumber:t.lineNumber,columnNumber:t.columnNumber,disposition:"reporting"===t.disposition?"report":t.disposition,sample:t.sample,referrer:t.referrer}}var Nt=r(2646);const Lt=new Map;function Mt(e,t,r,n,i=!0,s){if("object"!=typeof t||!t||"string"!=typeof r||!r||"function"!=typeof t[r])return(0,l.R)(29);const a=function(e){return(e||R.ee).get("logger")}(e),o=(0,Pe.YM)(a,void 0,s),c=new Nt.y(R.P);c.level=n.level,c.customAttributes=n.customAttributes,c.autoCaptured=i;const d=t[r]?.[Pe.Jt]||t[r];return Lt.set(d,c),o.inPlace(t,[r],"wrap-logger-",()=>Lt.get(d),void 0,!0),a}var Pt=r(1910);class It extends W{static featureName=se.TZ;constructor(e){var t;super(e,se.TZ),t=e,(0,N.Y)("log",(e,r)=>oe(e,r,t),t),function(e){(0,N.Y)(k.Wb,(t,r,{customAttributes:n={},level:i=se.p_.INFO}={})=>{Mt(e.ee,t,r,{customAttributes:n,level:i},!1,e)},e)}(e),Se(e);const n=this.ee;["log","error","warn","info","debug","trace"].forEach(t=>{(0,Pt.i)(g.gm.console[t]),Mt(n,g.gm.console,t,{level:"log"===t?"info":t},void 0,e)}),this.ee.on("wrap-logger-end",function([t],r,i,s=[e.runtime.v2Target]){const{level:a,customAttributes:o,autoCaptured:c}=this;s.forEach(e=>{(0,ae.R)(n,t,o,a,c,e)})}),this.importAggregator(e,()=>r.e(478).then(r.bind(r,5288)))}}new F({features:[nt,K,G,vt,Et,Y,Oe,_t,It,Rt],loaderType:"spa"})})()})();</script>
392 393<meta http-equiv="Content-Language" content="EN" /> 394<meta name="language" content="en" /> 395<meta name="distribution" content="global" /> 396<meta name="GOOGLEBOT" content="INDEX,FOLLOW" /> 397<meta name="robots" content="index | follow" /> 398<meta name="REVISIT-AFTER" content="7 days" /> 399<meta name="description" content="Your brain health is important, login to continue. Sign up to start your personalized brain training today. One click social sign up and login." /> <meta property="og:site_name" content="CogniFit - Account - Login or Reset Password" /> 400 <meta property='og:type' content='website' /> 401 <meta property='og:title' content='CogniFit' /> 402 <meta property='og:image' content='https://www.cognifit.com/img/cognifit.png' /> 403 <meta property='og:url' content='https://www.cognifit.com/login' /> 404 <meta property='og:description' content="Your brain health is important, login to continue. Sign up to start your personalized brain training today. One click social sign up and login." /> 405 406 407<meta name="google-site-verification" content="lsb8DF-oKuLYu4S7wV8Lz9HfqTwbtM3Cz9YBZ9iX5uU"/> 408<meta name="baidu-site-verification" content="b9FCFlRUDA"/> 409<meta name="naver-site-verification" content="abdc0727837f478d54c3dfb6ee70770e392ad1f3"/> 410<meta name="google-signin-client_id" content="246580644645-v8mn20777f3bpla68jg4csbos0q5umbd.apps.googleusercontent.com"/> 411<meta property="fb:app_id" 412 content="147013575367957"/> 413 414<meta name="apple-itunes-app" content="app-id=528285610"> 415<meta name='ir-site-verification-token' value='922456492'> 416
417<script src="https://accounts.google.com/gsi/client" async defer></script>
vendor: 2 bytes, line 417
417
418<script> 419 let gisCallbackInitialized = false; 420 function gisCallback(credentialResponse){ 421 if(typeof onSignIn !== 'function'){ 422 function onSignIn(credentialResponse) { 423 if("object"==typeof credentialResponse&&void 0!==credentialResponse.credential){var e="",t=$(".fastRegTag").val(),a=$(".homeSurvey").val();t&&a&&(e="?fastRegTag="+t+"&homeSurvey="+a),jQuery.ajax({type:"POST",dataType:"json",url:"/default/index/registro-google-site"+e,data:{credential:credentialResponse.credential},success:function(e){e.result&&e.sessionId&&(e.destination?window.location.href=e.destination:window.location.href="/my-cognifit")}})} 424 } 425 onSignIn(credentialResponse); 426 } 427 } 428 window.onload = function () { 429 if(!gisCallbackInitialized){ 430 gisCallbackInitialized = true; 431 google.accounts.id.initialize({ 432 client_id: "246580644645-v8mn20777f3bpla68jg4csbos0q5umbd.apps.googleusercontent.com", 433 callback: gisCallback, 434 auto_select: false, 435 cancel_on_tap_outside: false 436 }); 437 google.accounts.id.prompt(); 438 } 439 }; 440</script>
vendor: 2 bytes, line 440
440
441<script> 442 let params = (new URL(document.location)).searchParams; 443 let irclickid = params.get("irclickid"); 444 445 if (irclickid && (General.getCookie('irclickid') !== irclickid)) { 446 General.setCookie('irclickid', irclickid, 3); 447 } 448</script>
448 449 450 451 <!-- Google Tag Manager --> 452
452<script>
vendor: 379 bytes, lines 452-456
452(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': 453 new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], 454 j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 455 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); 456 })(window,document,'script','dataLayer','
456GTM-WWKDVFT
vendor: 3 bytes, line 456
456');
456</script>
456 457 <!-- End Google Tag Manager --> 458 459 460 461
461<script> 462</script>
462 463 464
465<script type='text/javascript' src='https://platform-api.sharethis.com/js/sharethis.js#property=646df1f7413e9c001905a1de&product=sop' async='async'></script>
465 466 467</head> 468 469 470<body id="home2a" 471 class=" new_corpo new_home new_test signup main-home2a locale_en "> 472 473 474 475 476<div id="header" class="nanHead nanIntroHead "> 477 <div class="nanIntBoard" id="nanHeadNew"> 478 <div class="nanHTop"> 479 <div class="nanHLeft"> 480 481 <div class="nanBtMovMenu nanSpriteHome"></div> 482 483 484 485 <h2 class="usTyDiv activePlats"> 486 <a title="CogniFit" class=" " href="/"> 487 <span class="lgSpace"></span><span class="nanHidden">CogniFit - </span><span class="subtlog"> 488 Brain Training </span> 489 </a> 490 </h2> 491 492 493 494 495 496 </div> 497 498 <nav class="nanMenu"> 499 <a class="nanBtMenuClose"></a> 500 <ul class="nanMLevel1"> 501 <li class="nanMenuLiMain"> 502 <a class="nanMenuLiMainA" 503 href="/assessments"> 504 Cognitive Test </a> 505 </li> 506 <li class="nanMenuLiMain"> 507 <a class="nanMenuLiMainA"> 508 Brain Training </a> 509 <ul class="nanMLevel2 nanSubLevel"> 510 <li><ul class="nanIntBoard"> 511 <li class="nanMLiLevel2 nanMLiLevel2 nanMLiLevel2First"> 512 <a href="/cognitive-skills">
513 What cognitive skills do we assess? </a> 514 </li> 515 <li class="nanMLiLevel2 nanMLiLevel2 "> 516 <strong> 517 Training for Children </strong> 518 <ul class="nanMLevel3"> 519 <li> 520 <a href="/brain-training-kids"> 521 Exercises for Children </a> 522 </li> 523 <li> 524 <a href="/attention-brain-games-training"> 525 Concentration </a> 526 </li> 527 <li> 528 <a href="/exams-training"> 529 Exams </a> 530 </li> 531 <li> 532 <a href="/online-memory-games-training"> 533 Memory </a> 534 </li> 535 <li> 536 <a href="/executive-function-training"> 537 Reasoning </a> 538 </li> 539 <li>
540 <a href="/reading-comprehension"> 541 Reading Comprehension </a> 542 </li> 543 <li> 544 <a href="/perception-training"> 545 Perception </a> 546 </li> 547 <li> 548 <a href="/coordination-training"> 549 Coordination </a> 550 </li> 551 <li> 552 <a href="/cool-math-games"> 553 Cool Math Games </a> 554 </li> 555 </ul> 556 557 </li> 558 <li class="nanMLiLevel2 nanMLiLevel2 "> 559 <strong> 560 Training for Adults </strong> 561 <ul class="nanMLevel3"> 562 <li> 563 <a href="/cognitive-brain-training"> 564 Personalized Training </a> 565 </li> 566 <li> 567 <a href="/online-memory-games-training"> 568 Memory </a> 569 </li> 570 <li> 571 <a href="/attention-brain-games-training"> 572 Concentration </a> 573 </li> 574 <li> 575 <a href="/brain-training-active-aging"> 576 65 and Over Training </a> 577 </li> 578 <li> 579 <a href="/driving-brain-training"> 580 Driving </a> 581 </li> 582 <li> 583 <a href="/perception-training"> 584 Perception </a> 585 </li> 586 <li> 587 <a href="/executive-function-training"> 588 Reasoning </a> 589 </li> 590 <li> 591 <a href="/coordination-training"> 592 Coordination </a> 593 </li> 594 <li>
595 <a href="/reading-comprehension"> 596 Reading Comprehension </a> 597 </li> 598 <li> 599 <a href="/cool-math-games"> 600 Cool Math Games </a> 601 </li> 602 </ul> 603 604 </li> 605 </ul> </li></ul> 606 </li> 607 <li class="nanMenuLiMain"> 608 <a class="nanMenuLiMainA" href="/science"> 609 Scientific Validation </a> 610 </li> 611 612 <li class="nanMenuLiMain nanMenuLiMainXtra"><a href="/brain-games"><span class="iconMenuLiMain iconMenuLiMainGame nanSpriteHome"></span><span class="spanMenuLiMain">Brain Games</span></a></li> 613 <li class="nanMenuLiMain nanMenuLiMainXtra"> 614 <a class="nanMenuLiMainA"> 615 <span class="iconMenuLiMain iconMenuLiMainCompany
615nanSpriteHome"></span> 616 <span class="spanMenuLiMain">Company</span> 617 </a> 618 <ul class="nanMLevel2 nanSubLevel"> 619 <li><ul class="nanIntBoard"> 620 <li class="nanMLiLevel2 nanMLiLevel2 nanMLiLevel2First"> 621 <a href="/company"> 622 About CogniFit </a> 623 </li> 624 <li class="nanMLiLevel2 nanMLiLevel2 nanMLiLevel2Others"> 625 <a href="/science"> 626 Our Science </a> 627 </li> 628 <li class="nanMLiLevel2 nanMLiLevel2 nanMLiLevel2Others"> 629 <a href="/company/insights"> 630 Insights & Reports </a> 631 </li> 632 <li class="nanMLiLevel2 nanMLiLevel2 nanMLiLevel2Others"> 633 <a href="/company/team"> 634 Team & Advisors </a> 635 </li> 636 <li class="nanMLiLevel2 nanMLiLevel2 nanMLiLevel2Others"> 637 <a href="/company/newsroom"> 638 Newsroom </a> 639 </li> 640 <li class="nanMLiLevel2 nanMLiLevel2 nanMLiLevel2Others"> 641 <a target="_blank" rel="noopener" href="https://trust.cognifit.com"> 642 Trust Center </a> 643 </li> 644 <li class="nanMLiLevel2 nanMLiLevel2 nanMLiLevel2Others"> 645 <a target="_blank" rel="noopener" href="https://blog.cognifit.com"> 646 Blog </a> 647 </li> 648 <li class="nanMLiLevel2 nanMLiLevel2 nanMLiLevel2Others"> 649 <a target="_blank" rel="noopener" href="https://www.youtube.com/@CogniFit"> 650 Videos </a> 651 </li> 652 </ul></li> 653 </ul> 654 </li> 655 </ul> 656 </nav> 657 658 <div class="nanHRight nanHRightPRO"> 659 660 <nav class="nanMenu"> 661 <a class="nanBtMenuClose"></a> 662 <span class="nanBtMenuPro">PRO</span> 663 <ul class="nanMLevel1"> 664 <li class="nanMenuLiMain"> 665 <a class="nanMenuLiMainA"> 666 Tools for Professionals </a> 667 <ul class="nanMLevel2 nanSubLevel"> 668 <li><ul class="nanIntBoard"> 669 <li class="nanMLiLevel2 nanMLiLevel2 nanMLiLevel2First"> 670 <a href="/clinical-trials"> 671 Clinical Trials </a> 672 </li> 673 <li class="nanMLiLevel2 nanMLiLevel2 "> 674 <a href="/professional"> 675 Healthcare </a> 676 </li> 677 <li class="nanMLiLevel2 nanMLiLevel2 "> 678 <a href="/educational-technology"> 679 Education </a> 680 </li> 681 <li class="nanMLiLevel2 nanMLiLevel2 "> 682 <a href="/research"> 683 Academic Research </a> 684 </li> 685 <li class="nanMLiLevel2 nanMLiLevel2 "> 686 <a href="/employee-wellbeing"> 687 Employee wellbeing </a> 688 </li> 689 <li class="nanMLiLevel2 nanMLiLevel2 "> 690 <a href="/sports"> 691 Sports Performance </a> 692 </li> 693 <li class="nanMLiLevel2 nanMLiLevel2 "> 694 <a href="/nursing-homes"> 695 Nursing Homes </a> 696 </li> 697 <li class="nanMLiLevel2 nanMLiLevel2 "> 698 <a href="/developers"> 699 White Label Partnerships </a> 700 </li> 701 <li class="nanMLiLevel2 nanMLiLevel2 "> 702 <a href="/jobfit-CAB"> 703 HR Recruiting Tools </a> 704 </li> 705 </ul> </li></ul> 706 </li> 707 708 </ul> 709 </nav> 710 711 <div class="langDiv nanLang"> 712 <a class="langTxt">
713 <span class="nanSpriteHome"></span>English </a> 714 <div class=""> 715 <div class="nanSubLevel"> 716 <a href="javascript:void(0);" onclick="Locale.Change('en', 'en_inicioLogin' );"> 717 English </a> 718 <a href="javascript:void(0);" onclick="Locale.Change('es', 'en_inicioLogin' );"> 719 Español </a> 720 <a class="exc_ru" href="javascript:void(0);" onclick="Locale.Change('ru', 'en_inicioLogin' );"> 721 Ð ÑÑÑкий </a> 722 <a href="javascript:void(0);" onclick="Locale.Change('ar', 'en_inicioLogin' );"> 723 Ø§ÙØ¹Ø±Ø¨ÙØ© </a> 724 <a href="javascript:void(0);" onclick="Locale.Change('bn', 'en_inicioLogin' );"> 725 বাà¦à¦²à¦¾ </a> 726 <a href="javascript:void(0);" onclick="Locale.Change('de', 'en_inicioLogin' );"> 727 Deutsch </a> 728 <a href="javascript:void(0);" onclick="Locale.Change('el', 'en_inicioLogin' );"> 729 Îλληνικά </a> 730 <a href="javascript:void(0);" onclick="Locale.Change('fr', 'en_inicioLogin' );"> 731 Français </a> 732 <a href="javascript:void(0);" onclick="Locale.Change('he', 'en_inicioLogin' );"> 733 ×¢×ר×ת </a> 734 <a href="javascript:void(0);" onclick="Locale.Change('id', 'en_inicioLogin' );"> 735 Bahasa Indonesia </a> 736 <a href="javascript:void(0);" onclick="Locale.Change('it', 'en_inicioLogin' );"> 737 Italiano </a> 738 <a href="javascript:void(0);" onclick="Locale.Change('ja', 'en_inicioLogin' );"> 739 æ¥æ¬èª </a> 740 <a href="javascript:void(0);" onclick="Locale.Change('ko_KR', 'en_inicioLogin' );"> 741 íêµì´ / éåèª </a> 742 <a href="javascript:void(0);" onclick="Locale.Change('mn', 'en_inicioLogin' );"> 743 монгол Ñ Ñл </a> 744 <a href="javascript:void(0);" onclick="Locale.Change('nl', 'en_inicioLogin' );"> 745 Nederlands </a> 746 <a href="javascript:void(0);" onclick="Locale.Change('pl', 'en_inicioLogin' );"> 747 Polski </a> 748 <a href="javascript:void(0);" onclick="Locale.Change('pt_PT', 'en_inicioLogin' );"> 749 Português </a> 750 <a href="javascript:void(0);" onclick="Locale.Change('tr', 'en_inicioLogin' );"> 751 Türkçe </a> 752 <a href="javascript:void(0);" onclick="Locale.Change('ur', 'en_inicioLogin' );"> 753 ارد٠</a> 754 <a href="javascript:void(0);" onclick="Locale.Change('sr', 'en_inicioLogin' );"> 755 Srpski </a> 756 <a href="javascript:void(0);" onclick="Locale.Change('zh_CN', 'en_inicioLogin' );"> 757 䏿(ç®ä½) </a> 758 <a href="javascript:void(0);" onclick="Locale.Change('zh_HK', 'en_inicioLogin' );"> 759 䏿(ç¹é«) </a> 760 </div> 761 </div> 762 </div> 763 764 <a class="log_up usertoLog su_open ">
765 <span></span><strong>Login</strong><em>Login</em> 766 </a> 767 <a fast_reg_tag_user_type_by_land="0" class="button sign_up btHeader nanBtSigUp " > 768 Join Today </a> 769 </div> 770 771 <div class="nanClear"></div> 772 </div> 773 </div> 774</div> 775<div class="nanBlackLayer"></div> 776<div class="nanRegisterSelect namSlideBack ta_register"> 777 <div class="nanRegInt "> 778 779 <a class="nanBtCloseReg nanSpriteHome"></a> 780 <a class="nanBtGoHome nanSpriteHome" href="/" title="CogniFit" ></a> 781 <div class="nanRegTable "> 782 783 784 785 <div id="nanRegImageProd"></div> 786 787 <div id="nanRegTitleProd" class="nanRegTitle"> 788 Choose your platform and buy <span id="nanProductSelectTitle"></span> </div> 789 <div id="nanRegDescriptionProd" class="nanRegDescription"></div> 790 791 <div id="nanRegDescriptionInvitations" class="nanRegTrialOption nanSlideAct5"> 792 Try if one month free of charge with 10 licenses. </div> 793 794 <div id="nanRegTitleReg" class="nanRegTitle"> 795 What is the account for? </div> 796 <div class="nanRegTableSecond"> 797 <div class="nanRegTableLeft"> 798 <div id="nanRegTitleReg2" class="nanRegTitle hiddenInput"> 799 <span class="nanRegTitleReg2_title nanRegTitleReg2_title_any">Welcome to CogniFit!</span> 800 <span class="nanRegTitleReg2_title nanRegTitleReg2_title_4">Welcome to CogniFit Research!</span> 801 <span class="nanRegTitleReg2_title nanRegTitleReg2_title_1">CogniFit Healthcare</span> 802 <span class="nanRegTitleReg2_title nanRegTitleReg2_title_8">Boost Your Business with CogniFit!</span> 803 <span class="nanRegTitleReg2_title nanRegTitleReg2_title_9">CogniFit Employee Wellbeing</span> 804 <span class="nanRegTitleReg2_title nanRegTitleReg2_title_11">Distribute CogniFit to Businesses</span> 805 <span class="nanRegTitleReg2_title nanRegTitleReg2_title_12">Empower your team</span> 806 </div> 807 808 809 <div class="nanRegTitleText"> 810 <p usertype="0"> 811 <span>Sign up on here if you don't have your mobile handy</span> 812 </p> 813 <p usertype="1"> 814 <span>You are going to create a patient management account. This account is designed to give your patients access to CogniFit evaluations and training.</span> 815 </p> 816 <p usertype="4"> 817 <span>You are going to create a research account. This account is specially designed to help researchers with their studies in the cognitive areas.</span> 818 </p> 819 <p usertype="5"> 820 <span>You are going to create a student management account. This account is designed to give your students access to CogniFit evaluations and training.</span> 821 </p> 822 <p usertype="2"> 823 <span>You are going to create a family account. This account is designed to give your family members access to CogniFit evaluations and training.</span> 824 </p> 825 <p usertype="9"> 826 <span>You are going to create a company management account. This account is designed to give your employees access to CogniFit evaluations and training.</span> 827 </p> 828 <p usertype="12"> 829 <span>You're setting up your trainer account. With it, youâll be able to invite your group and guide them through CogniFit evaluations and training activities.</span> 830 </p> 831 </div> 832 <div class="nanRegCombo"> 833 <a href="#" class="nanRegComboUnitA" usertype="0"> 834 <div class="nanRegComboUnit nanRegComboUnitNormal">
835 <span class="nanIconPlat nanSpriteHome"></span> 836 <p class="nanRegComboP">For personal use</p> 837 </div> 838 </a> 839 840 <a href="#" class="nanRegComboUnitA" usertype="1"> 841 <div class="nanRegComboUnit nanRegComboUnitMedical"> 842 <span class="nanIconPlat nanSpriteHome"></span> 843 <p class="nanRegComboP">I'm a health professional</p> 844 </div> 845 </a> 846 847 <a href="#" class="nanRegComboUnitA" usertype="2"> 848 <div class="nanRegComboUnit nanRegComboUnitFamily"> 849 <span class="nanIconPlat nanSpriteHome"></span> 850 <p class="nanRegComboP">For my family</p> 851 </div> 852 </a> 853 854 <a href="#" class="nanRegComboUnitA" usertype="5"> 855 <div class="nanRegComboUnit nanRegComboUnitSchool"> 856 <span class="nanIconPlat nanSpriteHome"></span> 857 <p class="nanRegComboP">I'm an educator</p> 858 </div> 859 </a> 860 861 <a href="#" class="nanRegComboUnitA" usertype="4"> 862 <div class="nanRegComboUnit nanRegComboUnitResearch"> 863 <span class="nanIconPlat nanSpriteHome"></span> 864 <p class="nanRegComboP">I'm a researcher</p> 865 </div> 866 </a> 867 868 <a href="#" class="nanRegComboUnitA" usertype="9"> 869 <div class="nanRegComboUnit nanRegComboUnitEmployeeWellBeing"> 870 <span class="nanIconPlat nanIconPlatWellbeing nanIconSVG "><span></span></span> 871 <p class="nanRegComboP">Employee Wellbeing</p> 872 </div> 873 </a> 874 <a href="#" class="nanRegComboUnitA" usertype="8"> 875 <div class="nanRegComboUnit nanRegComboUnitApiPartner"> 876 <span class="nanIconPlat nanIconSVG"><span></span></span> 877 <p class="nanRegComboP">Developers</p> 878 </div> 879 </a> 880 <a href="#" class="nanRegComboUnitA" usertype="11" style="width: 0px; overflow: hidden; padding: 0; margin: 0;"> 881 <div class="nanRegComboUnit nanRegComboUnitResellers"> 882 <span class="nanIconPlat nanIconSVG"><span></span></span> 883 <p class="nanRegComboP">reg_resellers</p> 884 </div> 885 </a> 886 <a href="#" class="nanRegComboUnitA" usertype="12"> 887 <div class="nanRegComboUnit nanRegComboUnitSports"> 888 <span class="nanIconPlat nanSpriteHome"></span> 889 <p class="nanRegComboP">Iâm a coach or sports professional</p> 890 </div> 891 </a> 892 <div class="nanClear"></div> 893 </div> 894 <select class="nanPlatReg"> 895 <option value="-1">---</option> 896 <option value="0" >For personal use</option> 897 <option value="1" >I'm a health professional</option> 898 <option value="2" >For my family</option> 899 <option value="5" >I'm an educator</option> 900 <option value="4" >I'm a researcher</option> 901 <option value="8" ></option> 902 <option value="9" ></option> 903 <option value="11" ></option> 904 <option value="12" >CogniFit Sports</option> 905 </select> 906 907 <div id="nanRegFormProd" class="nanRegForm"></div> 908 909 <div class="nanRegComboInfo hiddenInput"> 910 <p id="nanRegComboInfoText0" class="nanRegComboInfoText hiddenInput"><span>You are going to create a personal account. This type of account is specially designed to help you evaluate and train your cognitive skills.</span></p> 911 <p id="nanRegComboInfoText1" class="nanRegComboInfoText hiddenInput"><span>You are going to create a patient management account. This account is designed to give your patients access to CogniFit evaluations and training.</span></p> 912 <p id="nanRegComboInfoText2" class="nanRegComboInfoText hiddenInput"><span>You are going to create a family account. This account is designed to give your family members access to CogniFit evaluations and training.</span></p> 913 <p id="nanRegComboInfoText4" class="nanRegComboInfoText hiddenInput"><span>You are going to create a research account. This account is specially designed to help researchers with their studies in the cognitive areas.</span></p> 914 <p id="nanRegComboInfoText5" class="nanRegComboInfoText hiddenInput"><span>You are going to create a student management account. This account is designed to give your students access to CogniFit evaluations and training.</span></p>
915 <p id="nanRegComboInfoText9" class="nanRegComboInfoText hiddenInput"><span>You are going to create a company management account. This account is designed to give your employees access to CogniFit evaluations and training.</span></p> 916 <p id="nanRegComboInfoText8" class="nanRegComboInfoText hiddenInput"><span>You are going to create a developer account. This account is designed to integrate CogniFitâs products within your company.</span></p> 917 <p id="nanRegComboInfoText12" class="nanRegComboInfoText hiddenInput"><span>You're setting up your trainer account. With it, youâll be able to invite your group and guide them through CogniFit evaluations and training activities.</span></p> 918 <input class="nanRegComboInfoCancel" type="button" value="Cancel" /> 919 <input class="nanRegComboInfoConfirm" type="button" value="Confirm" /> 920 </div> 921 922 <div id="nanRegFormReg" class="nanRegForm nanRegFormCoach"> 923 <form class="fastRegForm"> 924 925 <input type="text" class="fastRegTag hiddenInput" value="" /> 926 <input type="text" class="fastRegTagTheProfessional hiddenInput" value="0" /> 927 <input type="text" class="fastRegProduct hiddenInput" value=""> 928 <input type="text" class="fastRegTraining hiddenInput" value=""> 929 <input type="text" class="fastRegTagLocale hiddenInput" value="en"> 930 <input type="text" class="fastRegTagUserType hiddenInput" value="0"> 931 <input type="text" class="fastRegTagProfQuantProd hiddenInput" value="0"> 932 933 934 <div class="fastRegAwsMarketplaceError" style="display:none;"> 935 Registration token is invalid or expired </div> 936 937 <div class="fastRegUserAwsMarketplaceAlreadyRegistered" style="display:none;"> 938 The product has already been redeemed </div> 939 940 <div class="fastRegUserAwsMarketplaceProductNotCompatible" style="display:none;"> 941 The product to be redeemed is not compatible with the account type </div> 942 943 944 <div class="nanRegLine"> 945 <input 946 placeholder="First Name" 947 placeholder-default="First Name" 948 placeholder-user-type-1="Contact name" 949 type="text" class="fastRegName" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false" /> 950 </div> 951 952 <div class="fastRegNameError" style="display:none;"> 953 The format of the First Name entered is not correct </div> 954 955 <div class="nanRegLine"> 956 <input placeholder="Email" 957 placeholder-default="Email" 958 placeholder-user-type-4="Institutional Email" 959 type="email" class="fastRegEmail" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false" 960 maxlength="128" 961 /> 962 </div> 963 964 <div class="fastRegEmailError" style="display:none;"> 965 Please enter a valid email address. </div> 966 967 <div class="fastRegEmailExists" style="display:none;"> 968 There is an existing account associated with this email </div> 969 970 <small class="fastRegEmailHintResearch" style="display:none;"> 971 Use your university or corporate email to qualify for special discounts. </small> 972 973 <div class="nanRegLine"> 974 <input 975 placeholder="Organization" 976 placeholder-default="Organization" 977 placeholder-user-type-1="Clinic or company name" 978 placeholder-user-type-9="Company Name" 979 type="text" class="fastRegCentrum" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false" /> 980 </div> 981 982 <div class="fastRegCentrumError" style="display:none;"> 983 This field is mandatory </div> 984 985 <div class="nanRegLine"> 986 <input 987 type="tel" class="fastRegPhone" 988 autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false" 989 maxlength="20" 990 /> 991 </div> 992 993 <div class="fastRegPhoneError" style="display:none;">
994 <span>This field is mandatory</span> 995 <span class="patternMismatchError">Invalid format</span> 996 </div> 997 998 <div class="nanRegLine"> 999 <input 1000 placeholder="For what university or company do you work?" 1001 type="text" class="fastRegCompany fastRegExtraAttributes" autocomplete="off" 1002 autocorrect="off" autocapitalize="off" spellcheck="false" /> 1003 </div> 1004 1005 <div class="fastRegCompanyError" style="display:none;"> 1006 This field is mandatory </div> 1007 1008 <div class="nanRegLine"> 1009 <select class="fastRegIndustryType nanRegLineSelectedPlaceholder fastRegExtraAttributes"> 1010 <option value="" hidden disabled selected>Industry Type</option> 1011 <option value="HEALTHCARE">Healthcare</option><option value="EDUCATION">Education</option><option value="TECH">Tech</option><option value="CONSULTING">Consulting</option><option value="CROS">CROs</option><option value="RESEARCH">Reseach</option><option value="DIRECT_TO_CONSUMER">Direct to consumer</option><option value="HR">HR</option> </select> 1012 </div> 1013 1014 <div class="fastRegIndustryTypeError" style="display:none;"> 1015 This field is mandatory </div> 1016 1017 1018 <div class="nanRegLine"> 1019 <select class="fastRegProjectNature nanRegLineSelectedPlaceholder fastRegExtraAttributes"> 1020 <option value="" hidden disabled selected>Nature of the Project</option> 1021 <option value="APP">App</option><option value="WEBSITE">Website</option><option value="BOTH">Both</option> </select> 1022 </div> 1023 1024 <div class="fastRegProjectNatureError" style="display:none;"> 1025 This field is mandatory </div> 1026 1027 1028 1029 <div class="nanRegLine"> 1030 <textarea placeholder="Any other specific needs or expectations from the CogniFit platform" 1031 class="fastRegExpectationsAndNeeds fastRegExtraAttributes" autocomplete="off" 1032 autocapitalize="off" spellcheck="false" ></textarea> 1033 </div> 1034 1035 <div class="fastRegExpectationsAndNeedsError" style="display:none;"> 1036 This field is mandatory </div> 1037 1038 1039 1040 <div class="nanRegLine"> 1041 <input class="ta_btn nanRegSubmit nanRegSubmitStarNow ta_grad" type="submit" value="next" /> 1042 <input class="ta_btn nanRegSubmit nanRegSubmitContinue z_hidden ta_grad" type="submit" value="Continue" /> 1043 </div> 1044 1045 <div class="nanRegLine"> 1046 <input class="nanRegSubmit nanRegToLogin" type="button" value="Do you already have a CogniFit account?" />
1047 <a class="nanLogintoRegMob" href="/login" rel="noopener">Do you already have a CogniFit account?</a> 1048 </div> 1049 1050 <img loading="lazy" alt="loading" src="/img/new_cognifit/loading-login.gif" class="clcapaLoadingSignUp" id="capaLoadingSignUp"> 1051 1052 </form> 1053 1054 <div class="nanRegRedes newnanRegRedes"> 1055 <div class="nanRegLine"> 1056 <a onclick="FacebookLogin.checkLoginState();" title='Continue with Facebook' class="nanLogFacebook button redondeado sombreado"><span class="iconRed"></span><span class="sp_nc connect_social fb">Continue with Facebook</span></a> 1057 <a id="g_id_onload" data-client_id="246580644645-v8mn20777f3bpla68jg4csbos0q5umbd.apps.googleusercontent.com" data-callback="onSignIn" data-type="icon" data-size="large" data-auto_prompt="false" class="nanLogGoogle button redondeado sombreado g_id_signin"></a> 1058 <a onclick="AppleSignIn.Login();" title='Continue with Apple' class="nanLogApple button redondeado sombreado"><span class="iconRed"></span><span class="sp_nc connect_social">Continue with Apple</span></a> 1059 <a onclick="MicrosoftAuth.Login();" title='Sign in with Microsoft' class="nanLogMicrosoft button redondeado sombreado"><span class="iconRed"></span><span class="sp_nc connect_social">Sign in with Microsoft</span></a> 1060 </div> 1061 </div> 1062 1063 <div class="notesReg"> 1064 <p class="nanRegNoteFast" id="nanRegNote0">For users 16 years and older. Children under 16 can use CogniFit with a parent on one of the family platforms.</p> 1065 <p class="nanRegNoteFast" id="nanRegNote1" style="display:none">Send assessments and training programs to patients</p> 1066 <p class="nanRegNoteFast" id="nanRegNote5" style="display:none">Send assessments and training programs to students</p> 1067 <p class="nanRegNoteFast" id="nanRegNote2" style="display:none">Send assessments and training programs to your children or other family members.</p> 1068 <p class="nanRegNoteFast" id="nanRegNote4" style="display:none">Send assessments and training programs to research participants.</p> 1069 </div> 1070 1071 <p class="nanRegTerms"> 1072 By clicking Sign Up or using CogniFit, you are indicating that you have read, understood, and agree to CogniFit's <a target='_blank' title='' href='/terms-and-conditions'>Terms & Conditions</a> and <a target='_blank' title='' href='/privacy-policy'>Privacy Policy</a>. </p> 1073 </div> 1074 </div> 1075 <div class="nanRegTableRight"> 1076 <div class="nanRegQR"> 1077 <p>Scan the below QR with your phone to register through our mobile app for the ultimate convenience and access on-the-go!</p> 1078 <img alt="Enhance Your Experience!" loading="lazy" width="400px" height="400px" src="/img/newart/aries/qrhand.webp"/> 1079 <p class="nanRegQR_next">If you don't have your mobile handy sign up on here</p> 1080 1081 </div> 1082 <div class="nanRegApps"> 1083 <p>Download our app to enjoy a good experience on this device</p> 1084 <a href="https://play.google.com/store/apps/details?id=com.cognifit.app&hl=en" target="_blank"> 1085 <div class="app_download"> 1086 <img class="changeTo_img" src="/img/newart/playStore/google-play-badge_locale_en.png" /> 1087 </div> 1088 </a> 1089 <a href="https://itunes.apple.com/app/cognifit-brain-fitness/id528285610?mt=8" target="_blank"> 1090 <div class="app_download"> 1091 <img class="changeTo_img" src="/img/newart/appStore/app-store-badge_locale_en.svg" /> 1092 </div> 1093 </a> 1094 <p class="nanRegQR_next">If you don't have your mobile handy sign up on here</p> 1095 1096 </div> 1097 </div> 1098 </div> 1099 </div> 1100 1101 </div> 1102</div> 1103 1104
1105<script> 1106 $("p.nanRegQR_next").click(function(event){ 1107 $(".nanRegTable").addClass("nanRegTableNormal"); 1108 }); 1109</script>
1109 1110<style>.hcsModal{display:none;}</style> 1111<link rel="stylesheet" href="https://css.cognifit.com/cssmin/v841/healthcare-signup.css"> 1112<div class="hcs-canvas hcsModal" data-usertype="1" role="dialog" aria-modal="true" aria-label="Create your account"> 1113 <div class="hcs"> 1114 1115 <!-- ââ Top bar âââââââââââââââââââââââââââââââââââââââââââââââ --> 1116 <div class="hcs__topbar"> 1117 <a class="hcs__brand rif_racc" href="" aria-label="CogniFit Healthcare"> 1118 <div class="z_H_logo"><span>CogniFit</span></div> 1119 <div class="z_H_plat z_H_platMedical"> 1120 <span class="z_H_platPro"></span> 1121 <span class="z_H_platProSpan">Healthcare</span> 1122 </div> 1123 </a> 1124 <button type="button" class="hcs__close hcsModal__close" aria-label="Close"></button> 1125 </div> 1126 1127 <div class="hcs__grid"> 1128 1129 <!-- ââ LEFT: value proposition + social proof ââââââââââââ --> 1130 <div class="hcs__col hcs__col--info"> 1131 1132 <h1 class="hcs__title"> 1133 Start evaluating and training your patients in minutes </h1> 1134 <div class="hcs__stats"> 1135 <div class="hcs__stat"> 1136 <b> 1137 3,649 </b> 1138 <span> 1139 Clinicians </span> 1140 </div> 1141 <div class="hcs__stat"> 1142 <b> 1143 105,235 </b> 1144 <span> 1145 Patients </span> 1146 </div> 1147 <div class="hcs__stat"> 1148 <b>180+</b> 1149 <span>Countries</span> 1150 </div> 1151 </div> 1152 1153 <div class="hcs__stats-note"> 1154 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.7" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><ellipse cx="12" cy="5" rx="8" ry="3"/><path d="M4 5v6c0 1.66 3.58 3 8 3s8-1.34 8-3V5"/><path d="M4 11v6c0 1.66 3.58 3 8 3s8-1.34 8-3v-6"/></svg> 1155 <span>Interpret every result against age- and education-adjusted norms from <b>3,201,008</b> assessments</span> 1156 </div> 1157 1158 <hr class="hcs__rule"> 1159 1160 <div class="hcs__logos" role="img" aria-label="University of Haifa, University of Washington, Tel Aviv University, Albert Einstein College of Medicine, Universidad Complutense de Madrid"> 1161 <img src="/img/newart/healthcare/logos-universities.png" 1162 alt="University of Haifa, University of Washington, Tel Aviv University, Albert Einstein College of Medicine, Universidad Complutense de Madrid"> 1163 </div> 1164 1165 <div class="hcs__badges"> 1166 <div class="hcs__badge"> 1167 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.7" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z"/><path d="m9 12 2 2 4-4"/></svg> 1168 <span> 1169 <b>HIPAA</b> Ready </span> 1170 </div> 1171 <div class="hcs__badge"> 1172 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.7" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z"/><circle cx="12" cy="11" r="2.4"/></svg> 1173 <span> 1174 <b>GDPR</b> Compliant </span> 1175 </div> 1176 <div class="hcs__badge"> 1177 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.7" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M17.5 19a4.5 4.5 0 0 0 .9-8.9A6 6 0 0 0 6.7 9 4.5 4.5 0 0 0 7 18"/><rect x="9.5" y="12.5" width="5" height="4.5" rx="1"/><path d="M10.5 12.5v-1a1.5 1.5 0 0 1 3 0v1"/></svg>
1178 <span> 1179 <b>Encrypted</b> Data </span> 1180 </div> 1181 <div class="hcs__badge"> 1182 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.7" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M3 12h4l2 6 4-14 2 8h6"/></svg> 1183 <span> 1184 <b>Clinical Grade</b> Platform </span> 1185 </div> 1186 </div> 1187 1188 <hr class="hcs__rule"> 1189 1190 <div class="hcs__quotes" data-hcs-carousel aria-roledescription="carousel" aria-label="What professionals say"> 1191 <div class="hcs__quotes-track"> 1192 <figure class="hcs__quote is-active" 1193 role="group" aria-roledescription="slide" 1194 aria-label="1 of 5" 1195 > 1196 <img class="hcs__quote-avatar" alt="Dr. Steven Kane" 1197 src="/img/newart/healthcare/dr-steven-kane.jpg"> 1198 <div> 1199 <blockquote>“The CAB Pro is the best cognitive assessment that can be administered online.”</blockquote> 1200 <figcaption> 1201 <b>Dr. Steven Kane</b> 1202 <span>Clinical Psychologist &amp; Neuropsychologist</span> 1203 </figcaption> 1204 </div> 1205 </figure> 1206 <figure class="hcs__quote" 1207 role="group" aria-roledescription="slide" 1208 aria-label="2 of 5" 1209 aria-hidden="true"> 1210 <img class="hcs__quote-avatar" alt="Dr. Jennifer Stelter" 1211 src="/img/newart/healthcare/dr-jennifer-stelter.jpg"> 1212 <div> 1213 <blockquote>“Before, I was not offering a cognitive rehab program to my patients who have dementia, and now I can â in a way that is trusted, because of the empirical evidence and the science behind it.”</blockquote> 1214 <figcaption> 1215 <b>Dr. Jennifer Stelter</b> 1216 <span>Clinical Psychologist, Dementia Care</span> 1217 </figcaption> 1218 </div> 1219 </figure> 1220 <figure class="hcs__quote" 1221 role="group" aria-roledescription="slide" 1222 aria-label="3 of 5" 1223 aria-hidden="true"> 1224 <img class="hcs__quote-avatar" alt="Dr. Akhand Pratap Singh" 1225 src="/img/newart/healthcare/dr-akhand-pratap-singh.jpg"> 1226 <div> 1227 <blockquote>“We are seeing good benefits in patients, and we are able to taper our medications faster also in those cases.”</blockquote> 1228 <figcaption> 1229 <b>Dr. Akhand Pratap Singh</b> 1230 <span>Psychiatrist (MBBS, MD Psychiatry)</span> 1231 </figcaption> 1232 </div> 1233 </figure> 1234 <figure class="hcs__quote" 1235 role="group" aria-roledescription="slide" 1236 aria-label="4 of 5" 1237 aria-hidden="true"> 1238 <img class="hcs__quote-avatar" alt="Deborah Reed" 1239 src="/img/newart/healthcare/deborah-reed.jpg"> 1240 <div> 1241 <blockquote>“Very easy to use, very detailed reports, actionable data â and Medicare will pay for it if you set up the billing structure correctly.”</blockquote> 1242 <fig
1242caption> 1243 <b>Deborah Reed</b> 1244 <span>Nurse Practitioner, Functional Medicine</span> 1245 </figcaption> 1246 </div> 1247 </figure> 1248 <figure class="hcs__quote" 1249 role="group" aria-roledescription="slide" 1250 aria-label="5 of 5" 1251 aria-hidden="true"> 1252 <img class="hcs__quote-avatar" alt="Abhina Prakash" 1253 src="/img/newart/healthcare/abhina-prakash.jpg"> 1254 <div> 1255 <blockquote>“The first option that I really found that was all in one, all encompassing.”</blockquote> 1256 <figcaption> 1257 <b>Abhina Prakash</b> 1258 <span>Performance &amp; Cognitive Coach</span> 1259 </figcaption> 1260 </div> 1261 </figure> 1262 </div> 1263 <div class="hcs__quotes-dots" role="tablist" aria-label="Choose testimonial"> 1264 <button type="button" class="hcs__quotes-dot is-active" 1265 role="tab" aria-selected="true" 1266 aria-label="Testimonial 1" 1267 data-hcs-dot="0"></button> 1268 <button type="button" class="hcs__quotes-dot" 1269 role="tab" aria-selected="false" 1270 aria-label="Testimonial 2" 1271 data-hcs-dot="1"></button> 1272 <button type="button" class="hcs__quotes-dot" 1273 role="tab" aria-selected="false" 1274 aria-label="Testimonial 3" 1275 data-hcs-dot="2"></button> 1276 <button type="button" class="hcs__quotes-dot" 1277 role="tab" aria-selected="false" 1278 aria-label="Testimonial 4" 1279 data-hcs-dot="3"></button> 1280 <button type="button" class="hcs__quotes-dot" 1281 role="tab" aria-selected="false" 1282 aria-label="Testimonial 5" 1283 data-hcs-dot="4"></button> 1284 </div> 1285 </div> 1286 </div> 1287 1288 <!-- ââ RIGHT: sign-up form âââââââââââââââââââââââââââââââ --> 1289 <div class="hcs__col hcs__col--form"> 1290 1291 <div class="hcs__formhead"> 1292 <h2> 1293 Create your account </h2> 1294 <p> 1295 Designed for psychologists and clinical professionals. </p> 1296 </div> 1297 1298 <form class="hcs__form" id="hcsSignupForm" action="#" method="post" novalidate> 1299 <input type="hidden" class="fastRegTagUserType" id="hcsUserType" name="userType" value="1"> 1300 <input type="hidden" class="fastRegTag" value=""> 1301 <input type="hidden" class="fastRegTagLocale" value="en"> 1302 <input type="hidden" class="fastRegTagTheProfessional" value="0"> 1303 <input type="hidden" class="fastRegTagProfQuantProd" value="0"> 1304 <input type="hidden" class="fastRegTraining" value=""> 1305 <input type="hidden" class="fastRegProduct" value=""> 1306 1307 <div class="hcs__field"> 1308 <input class="hcs__input fastRegName" type="text" name="name" autocomplete="name" 1309 placeholder="Name" aria-label="Name" required> 1310 <div class="hcs__fielderr fastRegNameError" style="display:none;">Please enter your name.</div> 1311 </div> 1312 <div class="hcs__field"> 1313 <input class="hcs__input fastRegEmail" type="email" name="email" autocomplete="email" 1314 placeholder="Email" aria-label="Email" required> 1315 <div class="hcs__fielderr fastRegEmailError" style="display:none;">Please enter a valid email address.</div> 1316 <div class="hcs__fielderr fastRegEmailExists" style="display:none;">This email is already registered. <a class="openHomeLogin" href="/general-login">Log in</a>.</div> 1317 </div> 1318 <div class="hcs__field" data-hcs-countries="BR" style="display:none;"> 1319 <div class="nanRegLine" style="display:none;"> 1320 <input class="hcs__input fastRegPhone" type="tel" 1321 autocomplete="tel" 1322 placeholder="Phone number" aria-label="Phone number" required> 1323 </div> 1324 <div class="hcs__fielderr fastRegPhoneError" style="display:none;">Phone number</div> 1325 </div> 1326 <button class="hcs__submit" type="submit">Create free account</button> 1327 <div id="divLoadingLand"><img loading="lazy" alt="loading" src="/img/new_cognifit/loading-login.gif"></div> 1328 </form> 1329 1330 <p class="hcs__formnote"> 1331 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.9" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><rect x="3" y="11" width="18" height="11" rx="2"/><path d="M7 11V7a5 5 0 0 1 10 0v4"/></svg>
1332 <span>No credit card required. Cancel anytime.<br>Your data is protected and never shared.</span> 1333 </p> 1334 1335 <div class="hcs__steps"> 1336 <div class="hcs__steps-label">After creating your account:</div> 1337 <ol class="hcs__steplist"> 1338 <li class="hcs__step"><span class="hcs__stepnum">1</span><span>Verify your email</span></li> 1339 <li class="hcs__step"><span class="hcs__stepnum">2</span><span>Create your clinic</span></li> 1340 <li class="hcs__step"><span class="hcs__stepnum">3</span><span>Invite your first patient</span></li> 1341 <li class="hcs__step"><span class="hcs__stepnum">4</span><span>Start your first assessment</span></li> 1342 </ol> 1343 </div> 1344 1345 <p class="hcs__legal"> 1346 By creating an account, you agree to CogniFitâs <a href="/terms-and-conditions" target="_blank" rel="noopener noreferrer">Terms & Conditions</a> and <a href="/privacy-policy" target="_blank" rel="noopener noreferrer">Privacy Policy</a>. </p> 1347 <p class="hcs__login">Do you already have a CogniFit account? <a class="openHomeLogin" href="/general-login">Log in</a></p> 1348 </div> 1349 1350 </div> 1351</div> 1352
1353<script> 1354(function () { 1355 // This card can be mounted several times on one page (e.g. general-login 1356 // renders a modal per professional type). Bind to THIS instance: the most 1357 // recently rendered .hcs not yet initialised. 1358 var roots = document.querySelectorAll('.hcs:not([data-hcs-ready])'); 1359 var root = roots[roots.length - 1]; 1360 if (!root) { return; } 1361 root.setAttribute('data-hcs-ready', '1'); 1362 1363 var form = root.querySelector('.hcs__form'); 1364 if (!form || form.dataset.hcsSubmitBound) { return; } 1365 form.dataset.hcsSubmitBound = '1'; 1366 1367 // Country-gated extra fields (.hcs__field[data-hcs-countries], e.g. phone 1368 // for BR). The server already shows them when the session country matches, 1369 // but that country comes from the URL (/br/â¦) â a Brazilian on /es is "ES". 1370 // So also reveal them from browser signals: cgCountry cookie, browser 1371 // language region (pt-BR) and IANA time zone (America/Sao_Pauloâ¦). Runs 1372 // BEFORE the phone widget binds so it can preselect the matched flag. 1373 (function revealCountryGatedFields() { 1374 var gated = root.querySelectorAll('.hcs__field[data-hcs-countries]'); 1375 if (!gated.length) { return; } 1376 var detected = {}; 1377 function add(cc) { 1378 if (cc && /^[A-Za-z]{2}$/.test(cc)) { detected[cc.toUpperCase()] = true; } 1379 } 1380 try { add((window.General && General.getCookie) ? General.getCookie('cgCountry') : ''); } catch (e) {} 1381 try { 1382 var langs = (navigator.languages && navigator.languages.length) 1383 ? navigator.languages : [navigator.language || navigator.userLanguage || '']; 1384 for (var i = 0; i < langs.length; i++) { 1385 var m = /^[a-zA-Z]{2,3}[-_]([a-zA-Z]{2})(?:$|[-_])/.exec(langs[i] || ''); 1386 if (m) { add(m[1]); } 1387 } 1388 } catch (e) {} 1389 try { 1390 var TZ_COUNTRY = { 1391 'America/Sao_Paulo': 'BR', 'America/Bahia': 'BR', 'America/Fortaleza': 'BR', 1392 'America/Recife': 'BR', 'America/Maceio': 'BR', 'America/Belem': 'BR', 1393 'America/Araguaina': 'BR', 'America/Santarem': 'BR', 'America/Manaus': 'BR', 1394 'America/Cuiaba': 'BR', 'America/Campo_Grande': 'BR', 'America/Porto_Velho': 'BR', 1395 'America/Boa_Vista': 'BR', 'America/Rio_Branco': 'BR', 'America/Eirunepe': 'BR', 1396 'America/Noronha': 'BR' 1397 }; 1398 var tz = Intl.DateTimeFormat().resolvedOptions().timeZone || ''; 1399 add(TZ_COUNTRY[tz]); 1400 } catch (e) {} 1401 for (var g = 0; g < gated.length; g++) { 1402 var field = gated[g]; 1403 var wanted = (field.getAttribute('data-hcs-countries') || '').toUpperCase().split(','); 1404 var match = ''; 1405 for (var w = 0; w < wanted.length; w++) { 1406 var cc = wanted[w].trim(); 1407 if (cc && detected[cc]) { match = cc; break; } 1408 } 1409 if (!match) { continue; } 1410 field.style.display = ''; 1411 var line = field.querySelector('.nanRegLine'); 1412 if (line) { line.style.display = ''; } // display:block again â FastReg validates/posts it 1413 var phoneEl = field.querySelector('.fastRegPhone'); 1414 if (phoneEl) { phoneEl.dataset.hcsCountry = match.toLowerCase(); } // flag for initHcsPhone 1415 } 1416 }()); 1417 1418 // International phone widget (flag + dial code + format validation), like the 1419 // research landing. FastReg.extraParams.validate looks the iti instance up by 1420 // the global key '.fastRegPhone', so we bind THIS card's phone element and 1421 // register it under that key â overriding any legacy .fastRegPhone binding 1422 // (the legacy reg form isn't present on the standalone page, and our popup 1423 // pre-empts that flow elsewhere). Library is lazy-loaded from the same CDN 1424 // Login.js uses. 1425 (function initHcsPhone() { 1426 var phone = root.querySelector('.fastRegPhone'); 1427 if (!phone || phone.dataset.itiBound) { return; } 1428 // A country-gated phone that stayed hidden (see revealCountryGatedFields, 1429 // which runs before this) is never validated nor posted â leave it alone. 1430 // Binding it would also claim the shared '.fastRegPhone' widget slot that 1431 // the legacy registration form relies on (Login.js IntlTelInput.init 1432 // returns early when the key exists), breaking the legacy research/API 1433 // phone on pages where only the clinician modal is mounted. 1434 var gatedLine = phone.closest ? phone.closest('.nanRegLine') : null; 1435 if (gatedLine && gatedLine.style.display === 'none') { return; } 1436 var ITI_JS = 'https://cdn.jsdelivr.net/npm/[email protected]/build/js/intlTelInput.min.js'; 1437 var ITI_CSS = 'https://cdn.jsdelivr.net/npm/[email protected]/build/css/intlTelInput.css'; 1438 var ITI_UTILS = 'https://cdn.jsdelivr.net/npm/[email protected]/build/js/utils.js'; 1439 function bind() { 1440 if (phone.dataset.itiBound || typeof window.intlTelInput === 'undefined') { return; } 1441 phone.dataset.itiBound = '1'; 1442 var iti = window.intlTelInput(phone, { 1443 preferredCountries: ['us'], 1444 separateDialCode: true, 1445 autoInsertDialCode: true, 1446 utilsScript: ITI_UTILS 1447 }); 1448 try { 1449 // Country-gated reveal (above) wins: it knows why the field is shown.
1450 var cc = phone.dataset.hcsCountry 1451 || ((window.General && General.getCookie) ? General.getCookie('cgCountry') : ''); 1452 iti.setCountry(cc ? cc : 'us'); 1453 } catch (e) {} 1454 // Keep THIS card's instance on its own element only. Several cards can 1455 // share a page (one modal per professional type, e.g. research + 1456 // clinician both with a phone) next to the legacy registration form, 1457 // and all of them compete for the single global key 1458 // IntlTelInput.inputsBySelector['.fastRegPhone'] that 1459 // FastReg.extraParams.validate reads. Claiming it here would hijack 1460 // the legacy form's phone (Login.js IntlTelInput.init skips binding 1461 // when the key exists), so the key is only borrowed for the duration 1462 // of THIS form's submit (see submitViaFastReg). 1463 phone.hcsIti = iti; 1464 // Legacy site CSS targets `.iti input.fastRegPhone` with !important 1465 // (text-align:center, padding-left:0, padding-right:0/20%) for another 1466 // form, shrinking/mis-aligning this field. Inline !important beats any 1467 // stylesheet, so normalise the box to match the other inputs here and 1468 // keep iti's dynamic left gap (flag + dial code), re-applied on change. 1469 function styleFix() { 1470 // Legacy rule also puts padding-right:20% on the .iti WRAPPER, 1471 // squeezing the input â zero it out (inline !important wins). 1472 var wrap = phone.parentElement; 1473 if (wrap && wrap.classList && wrap.classList.contains('iti')) { 1474 wrap.style.setProperty('padding', '0', 'important'); 1475 wrap.style.setProperty('width', '100%', 'important'); 1476 } 1477 var s = phone.style; 1478 s.setProperty('box-sizing', 'border-box', 'important'); 1479 s.setProperty('width', '100%', 'important'); 1480 s.setProperty('height', 'auto', 'important'); 1481 s.setProperty('min-height', '0', 'important'); 1482 s.setProperty('font-size', '15px', 'important'); 1483 s.setProperty('line-height', 'normal', 'important'); 1484 s.setProperty('text-align', 'left', 'important'); 1485 s.setProperty('padding-top', '17px', 'important'); 1486 s.setProperty('padding-bottom', '17px', 'important'); 1487 s.setProperty('padding-right', '18px', 'important'); 1488 // Left gap = rendered flag + dial-code block (styled in 1489 // healthcare-signup.css) plus a breathing space before the 1490 // number. Measured, not taken from iti's own inline value, so 1491 // re-running is idempotent and the gap never drifts. 1492 var GAP = 14; 1493 var flag = wrap ? wrap.querySelector('.iti__selected-flag') : null; 1494 var fw = flag ? flag.offsetWidth : 0; 1495 s.setProperty('padding-left', (fw > 0 ? fw + GAP : 110) + 'px', 'important'); 1496 } 1497 styleFix(); 1498 phone.addEventListener('countrychange', function () { setTimeout(styleFix, 0); }); 1499 // The widget usually binds while the modal is still closed, so the 1500 // flag block measures 0 and the fallback gap is used. Re-measure once 1501 // it gets a layout size (modal opened, font loaded, viewport resized); 1502 // focus is the no-ResizeObserver fallback. 1503 var flagEl = phone.parentElement ? phone.parentElement.querySelector('.iti__selected-flag') : null; 1504 if (flagEl && typeof window.ResizeObserver === 'function') { 1505 new ResizeObserver(function () { styleFix(); }).observe(flagEl); 1506 } 1507 phone.addEventListener('focus', styleFix); 1508 } 1509 if (typeof window.intlTelInput !== 'undefined') { 1510 bind(); 1511 } else if (!document.getElementById('hcsItiScript')) { 1512 var css = document.createElement('link'); 1513 css.rel = 'stylesheet'; css.href = ITI_CSS; 1514 document.head.appendChild(css); 1515 var s = document.createElement('script'); 1516 s.id = 'hcsItiScript'; s.src = ITI_JS; s.onload = bind; 1517 document.head.appendChild(s); 1518 } else { 1519 document.getElementById('hcsItiScript').addEventListener('load', bind); 1520 } 1521 }()); 1522 1523 function submitViaFastReg(e) { 1524 // Never let the form do a native (page-reloading) POST. 1525 if (e && e.preventDefault) { e.preventDefault(); } 1526 // Reuse the site's existing registration flow, exactly like the legacy 1527 // sign-up popup: validation, AJAX POST to /default/index/try-reg-for-partner 1528 // and success redirect all live in FastReg.Do (Login.js). 1529 if (window.jQuery && typeof FastReg !== 'undefined' && FastReg.Do) { 1530 // FastReg.extraParams.validate reads the phone widget from the global 1531 // IntlTelInput.inputsBySelector['.fastRegPhone']. With several cards 1532 // on the page the last one to bind owns that key, so point it at THIS 1533 // form's widget before validating â otherwise a clinician submission 1534 // would be validated/serialized from another modal'
1534s phone input. 1535 // Validation and serialization happen synchronously inside FastReg.Do 1536 // (the AJAX POST that follows already has the values), so borrowing 1537 // the key for the call and handing it back is safe for the legacy form. 1538 var phoneEl = form.querySelector('.fastRegPhone'); 1539 var registry = (window.IntlTelInput && IntlTelInput.inputsBySelector) ? IntlTelInput.inputsBySelector : null; 1540 var ownIti = (phoneEl && phoneEl.hcsIti) ? phoneEl.hcsIti : null; 1541 var prevIti = registry ? registry['.fastRegPhone'] : undefined; 1542 if (registry && ownIti) { registry['.fastRegPhone'] = ownIti; } 1543 try { 1544 clearFieldErrors(); 1545 FastReg.Do(window.jQuery(form)); 1546 markFieldsWithErrors(); 1547 } finally { 1548 if (registry && ownIti) { 1549 if (typeof prevIti === 'undefined') { delete registry['.fastRegPhone']; } 1550 else { registry['.fastRegPhone'] = prevIti; } 1551 } 1552 } 1553 } else if (window.console) { 1554 console.warn('[healthcare-signup] FastReg (Login.js) not loaded â registration cannot run on this page.'); 1555 } 1556 return false; 1557 } 1558 1559 // Every submit starts from a clean state: FastReg only adds error marks, it never 1560 // removes the ones left by a previous attempt on fields that are now valid. 1561 function clearFieldErrors() { 1562 var inputs = form.querySelectorAll('.hcs__input.val-invalid'); 1563 for (var i = 0; i < inputs.length; i++) { inputs[i].classList.remove('val-invalid'); } 1564 var errs = form.querySelectorAll('.hcs__fielderr'); 1565 for (var j = 0; j < errs.length; j++) { errs[j].style.display = 'none'; } 1566 } 1567 1568 // FastReg.extraParams.validate only adds .val-invalid to an extra field when it 1569 // is empty; a filled-but-invalid phone (bad format for the country) just shows 1570 // the message. Give every field whose error message is visible the same invalid 1571 // look as Name / Email. FastReg.Do validates synchronously, so this runs right 1572 // after it and before the user sees anything. 1573 function markFieldsWithErrors() { 1574 var fields = form.querySelectorAll('.hcs__field'); 1575 for (var i = 0; i < fields.length; i++) { 1576 var errs = fields[i].querySelectorAll('.hcs__fielderr'); 1577 var visible = false; 1578 for (var j = 0; j < errs.length; j++) { 1579 if (errs[j].style.display !== 'none' && errs[j].offsetParent !== null) { visible = true; break; } 1580 } 1581 if (!visible) { continue; } 1582 var input = fields[i].querySelector('.hcs__input'); 1583 if (input) { input.classList.add('val-invalid'); } 1584 } 1585 } 1586 1587 // Native binding: covers submit-button clicks and pages without jQuery. 1588 form.addEventListener('submit', submitViaFastReg); 1589 1590 // jQuery binding: also intercepts submits fired via jQuery.trigger('submit') 1591 // â Login.js binds Enter â $(form).submit(), which does NOT dispatch a native 1592 // submit event, so the addEventListener above never sees it. FastReg.Doing 1593 // guards against the double call when both bindings fire on a real submit. 1594 function bindJquerySubmit() { 1595 if (!window.jQuery) { return false; } 1596 window.jQuery(form).on('submit', submitViaFastReg); 1597 return true; 1598 } 1599 if (!bindJquerySubmit()) { window.addEventListener('load', bindJquerySubmit); } 1600 1601 // Clear the invalid style + error messages once the user focuses a field 1602 // (mirrors the legacy .fastRegForm focus handler). 1603 form.addEventListener('focusin', function (e) { 1604 var input = e.target; 1605 if (input && input.classList) { input.classList.remove('val-invalid'); } 1606 // Hide the focused field's error message(s). Scoped to its .hcs__field so 1607 // it also clears the extra fields (institution / company / phone), whose 1608 // error divs share the .hcs__fielderr class â not just name/email. 1609 var field = (input && input.closest) ? input.closest('.hcs__field') : null; 1610 var errs = field ? field.querySelectorAll('.hcs__fielderr')
1610: form.querySelectorAll('.hcs__fielderr'); 1611 for (var i = 0; i < errs.length; i++) { errs[i].style.display = 'none'; } 1612 }); 1613 1614 // "Log in" opens the site login layer (#capaOpenHomeLogin). The header 1615 // variant (.loguearse) is shown via the global abrirlogin() (fadeIn); the 1616 // professional-access variant is toggled via the z_hidden class. Falls back 1617 // to the href (login page) when neither is available on the page. 1618 // "Log in" opens the site login layer â delegated, bound once per page. 1619 if (!window.__hcsLoginBound) { 1620 window.__hcsLoginBound = true; 1621 document.addEventListener('click', function (e) { 1622 if (!e.target.closest || !e.target.closest('.openHomeLogin')) { return; } 1623 var opened = false; 1624 if (typeof abrirlogin === 'function') { 1625 abrirlogin(); 1626 opened = true; 1627 } else { 1628 var login = document.getElementById('capaOpenHomeLogin'); 1629 if (login) { 1630 var reg = document.getElementById('capaOpenHomeReg'); 1631 if (reg) { reg.classList.add('z_hidden'); } 1632 login.classList.remove('z_hidden'); 1633 opened = true; 1634 } 1635 } 1636 if (!opened) { return; } // nothing to open here â follow the href fallback 1637 e.preventDefault(); 1638 var openModals = document.querySelectorAll('.hcsModal.is-open'); 1639 for (var i = 0; i < openModals.length; i++) { openModals[i].classList.remove('is-open'); } 1640 document.documentElement.style.overflow = ''; 1641 }); 1642 } 1643 1644 // ââ Testimonial carousel: fade between slides, auto-advance, dot nav ââ 1645 (function initHcsCarousel() { 1646 var carousel = root.querySelector('[data-hcs-carousel]'); 1647 if (!carousel || carousel.dataset.hcsCarouselBound) { return; } 1648 carousel.dataset.hcsCarouselBound = '1'; 1649 1650 var slides = carousel.querySelectorAll('.hcs__quote'); 1651 var dots = carousel.querySelectorAll('.hcs__quotes-dot'); 1652 if (slides.length < 2) { return; } 1653 1654 var current = 0; 1655 var timer = null; 1656 var INTERVAL = 4000; 1657 1658 function show(index) { 1659 index = (index + slides.length) % slides.length; 1660 for (var i = 0; i < slides.length; i++) { 1661 var active = i === index; 1662 slides[i].classList.toggle('is-active', active); 1663 if (active) { slides[i].removeAttribute('aria-hidden'); } 1664 else { slides[i].setAttribute('aria-hidden', 'true'); } 1665 if (dots[i]) { 1666 dots[i].classList.toggle('is-active', active); 1667 dots[i].setAttribute('aria-selected', active ? 'true' : 'false'); 1668 } 1669 } 1670 current = index; 1671 } 1672 1673 function start() { 1674 stop(); 1675 timer = window.setInterval(function () { show(current + 1); }, INTERVAL); 1676 } 1677 function stop() { 1678 if (timer) { window.clearInterval(timer); timer = null; } 1679 } 1680 1681 for (var d = 0; d < dots.length; d++) { 1682 (function (i) { 1683 dots[i].addEventListener('click', function () { show(i); start(); }); 1684 }(d)); 1685 } 1686 1687 // Pause on hover / focus so users can read at their own pace. 1688 carousel.addEventListener('mouseenter', stop); 1689 carousel.addEventListener('mouseleave', start); 1690 carousel.addEventListener('focusin', stop); 1691 carousel.addEventListener('focusout', start); 1692 1693 start(); 1694 }()); 1695}()); 1696 1697// ââ Fit-to-viewport scaler ââââââââââââââââââââââââââââââââââââââââââââââââ 1698// Make the card FILL the screen: scale it so it always occupies the full height 1699// OR the full width (whichever its aspect ratio reaches first), never leaving 1700// empty gutters on both sides. This is "contain" scaling, so it never needs a 1701// scrollbar. Below the two-column breakpoint (â¤980px) fit mode is off and the 1702// card flows normally (full width + vertical scroll). CSS side: .hcs.is-fit 1703// (§5 in healthcare-signup.css). 1704(function initHcsFit() { 1705 if (window.__hcsFitInit) { return; } 1706 window.__hcsFitInit = true; 1707 1708 var BREAKPOINT = 980; // matches the CSS two-column â single-column switch 1709 var MAX_SCALE = 1.9; // cap upscaling on very large / tall screens 1710 1711 function fit(card) { 1712 var container = card.parentElement; // .hcs-page or .hcsModal 1713 if (!container) { return; } 1714 var availW = container.clientWidth; 1715 var availH = container.clientHeight || window.innerHeight; 1716 1717 // Fit mode is desktop-only and needs a visible container (a closed modal 1718 // reports 0Ã0). Otherwise fall back to normal document flow. 1719 if (window.innerWidth <= BREAKPOINT || !availW || !availH) { 1720 card.classList.remove('is-fit'); 1721 card.style.transform = ''; 1722 container.style.overflow = ''; 1723 return; 1724 } 1725 1726 card.classList.add('is-fit'); 1727 // Reset scale before measuring the natural (pre-transform) layout size. 1728 card.style.transform = 'translate(-50%, -50%)'; 1729 var natW = card.offsetWidth; 1730 var natH = card.offsetHeight; 1731 if (!natW || !natH) { return; } 1732 1733 var scale = Math.min(availW / natW, availH / natH); 1734 if (scale > MAX_SCALE) { scale = MAX_SCALE; } 1735 1736 // Contain never overflows; clip sub-pixel rounding rather than flash a 1737 // phantom scrollbar. 1738 container.style.overflow = 'hidden'; 1739 card.style.transform = 'translate(-50%, -50%) scale(' + scale + ')'; 1740 } 1741 1742 function fitAll() { 1743 var cards = document.querySelectorAll('.hcs-page > .hcs, .hcsModal > .hcs'); 1744 for (var i = 0; i < cards.length; i++) { fit(cards[i]); } 1745 } 1746 // Exposed so the modal opener (_signup-modal.phtml) can re-fit once the 1747 // overlay is shown â it has no measurable size while display:none. 1748 window.hcsFitAll = fitAll; 1749 1750 var raf = null; 1751 function schedule() { 1752 if (raf) { window.cancelAnimationFrame(raf); } 1753 raf = window.requestAnimationFrame(fitAll); 1754 } 1755 1756 window.addEventListener('resize', schedule); 1757 window.addEventListener('load', fitAll); 1758 if (document.readyState === 'loading') { 1759 document.addEventListener('DOMContentLoaded', fitAll); 1760 } else { 1761 fitAll(); 1762 } 1763 1764 // The university-logos image shifts the card height once it decodes. 1765 var logo = document.querySelector('.hcs__logos img'); 1766 if (logo && !logo.complete) { logo.addEventListener('load', fitAll); } 1767}()); 1768</script>
1768 1769</div> 1770
1771<script> 1772(function () { 1773 // One controller for every .hcsModal on the page. Self-guarded so it binds 1774 // once even if this partial is rendered more than once (header + a page that 1775 // mounts extra per-type modals, e.g. /general-login). 1776 if (window.__hcsBound) { return; } 1777 window.__hcsBound = true; 1778 1779 // Server-rendered, immutable "this page forces this vertical" type (empty when 1780 // the page has none). Unlike the mutable global nanLogintoRegSelectOneOption, 1781 // this is set once by the header for forced-vertical pages (schools, research, 1782 // wellbeing, sports, api) and used to resolve their generic sign-up CTAs. 1783 var HCS_PAGE_TYPE = ''; 1784 1785 function attr(el, name) { return (el && el.getAttribute) ? el.getAttribute(name) : null; } 1786 1787 // Read the professional type declared on the launching element, tolerating 1788 // the legacy attribute names used by the site's sign-up buttons. 1789 function readUserType(el) { 1790 if (!el) { return ''; } 1791 return attr(el, 'data-usertype') 1792 || attr(el, 'usertype') 1793 || attr(el, 'fast_reg_tag_user_type_by_land') 1794 || ''; 1795 } 1796 1797 // Resolve the pending user type when the trigger itself carries none â e.g. 1798 // the product-page "Confirm" button. At that moment the legacy hidden field 1799 // is not yet populated, so read from the platform selector / active box. 1800 function resolveUserType(trigger) { 1801 // A generic "0" (NORMAL / no-professional) counts as unspecified: the real 1802 // intended type lives on the platform selector the product preset, or the 1803 // page-forced vertical. 1804 var ut = readUserType(trigger); 1805 if (ut && ut !== '0') { return ut; } 1806 var plat = document.querySelector('.nanPlatReg'); 1807 if (plat && plat.value && plat.value !== '0') { return plat.value; } 1808 if (HCS_PAGE_TYPE) { return HCS_PAGE_TYPE; } 1809 var box = document.querySelector('.z_Pr_forwhoJS.z_Pr_for_Active'); 1810 var boxT = box ? readUserType(box) : ''; 1811 return (boxT && boxT !== '0') ? boxT : (ut || ''); 1812 } 1813 1814 // The modal tailored for a given type, or null when this page mounts none for 1815 // it (â that type keeps the legacy registration flow). 1816 function modalForType(type) { 1817 // Professional types are always integers; coerce so a malformed value can 1818 // never break the attribute selector (defense-in-depth). 1819 var t = parseInt(type, 10); 1820 if (isNaN(t) || t <= 0) { return null; } 1821 return document.querySelector('.hcsModal[data-usertype="' + t + '"]'); 1822 } 1823 1824 // Copy the purchase/registration context the legacy flow already populated on 1825 // #nanRegFormReg into the target modal's mirror fields, so FastReg.Do re-posts 1826 // the same payload and the post-registration purchase continuation is kept. 1827 function carryContext(modal) { 1828 var legacy = document.getElementById('nanRegFormReg'); 1829 if (!legacy) { return; } 1830 var fields = ['fastRegTraining', 'fastRegTagProfQuantProd', 'fastRegTag', 1831 'fastRegTagLocale', 'fastRegTagTheProfessional', 'fastRegProduct']; 1832 for (var i = 0; i < fields.length; i++) { 1833 var src = legacy.querySelector('.' + fields[i]); 1834 var dst = modal.querySelector('.' + fields[i]); 1835 if (src && dst && typeof src.value !== 'undefined') { dst.value = src.value; } 1836 } 1837 } 1838 1839 // Open a modal, stamping the trigger's user type + carrying purchase context. 1840 function open(modal, trigger) { 1841 if (!modal) { return; } 1842 var field = modal.querySelector('.fastRegTagUserType'); 1843 var ut = resolveUserType(trigger); 1844 if (field && ut) { field.value = ut; } 1845 carryContext(modal); 1846 // Unwind the legacy registration UI so nothing lingers behind/after this 1847 // modal. quitBlur() (home_su(_NEW).js) clears the blur, unlocks scroll and 1848 // fades the dimming layer; we also hide the overlay it leaves visible. 1849 if (typeof window.quitBlur === 'function') { try { window.quitBlur(); } catch (e) {} } 1850 var legacyOverlay = document.querySelector('.nanRegisterSelect'); 1851 if (legacyOverlay) { legacyOverlay.style.display = 'none'; } 1852 closeAll(); 1853 modal.classList.add('is-open'); 1854 document.documentElement.style.overflow = 'hidden'; 1855 // The overlay had no measurable size while hidden â fit the card now. 1856 if (typeof window.hcsFitAll === 'function') { 1857 window.requestAnimationFrame(window.hcsFitAll); 1858 } 1859 } 1860 function closeAll() { 1861 var open = document.querySelectorAll('.hcsModal.is-open'); 1862 for (var i = 0; i < open.length; i++) { open[i].classList.remove('is-open'); } 1863 document.documentElement.style.overflow = ''; 1864 } 1865 1866 // Exposed so page-specific triggers can open the right modal with context. 1867 window.hcsOpenSignup = function (trigger) { 1868 open(modalForType(resolveUserType(trigger)), trigger); 1869 }; 1870 1871 // ââ GLOBAL interceptor (capture phase) ââââââââââââââââââââââââââââââââââ 1872 // When a registration would open the legacy overlay AND this page mounts a 1873 // modal for that type, open the modal instead. Capture + stopImmediate 1874 // pre-empt the legacy delegated handlers (home_su.js / Login.js). 1875 document.addEventListener('click', function (e) { 1876 if (!e.target.closest) { return; } 1877 1878 // Case A â direct sign-up CTAs (vertical landings, platform pages, /general-login). 1879 var direct = e.target.closest('.nanBtSigUp, .ta_RegUP'); 1880 if (direct) { 1881 // Resolve (explicit â platform selector â page-forced vertical) when the 1882 // button is a fast-registration button OR the page forces a single 1883 // vertical (HCS_PAGE_TYPE). Otherwise a generic .ta_RegUP uses only its 1884 // own explicit type, so "create a new account" (type "0") on a neutral
1885 // page keeps the legacy multi-type selector rather than opening a popup. 1886 var t = (direct.classList.contains('nanBtSigUp') || HCS_PAGE_TYPE) 1887 ? resolveUserType(direct) 1888 : readUserType(direct); 1889 var m = modalForType(t); 1890 if (m) { e.preventDefault(); e.stopImmediatePropagation(); open(m, direct); return; } 1891 } 1892 1893 // Case B â product flow: the "Confirm" button that would reveal 1894 // #nanRegFormReg. Calculator + confirmation popup already ran; we only 1895 // replace the final registration popup. 1896 var confirmBtn = e.target.closest('.nanRegComboInfoConfirm'); 1897 if (confirmBtn) { 1898 var m2 = modalForType(resolveUserType(confirmBtn)); 1899 if (m2) { e.preventDefault(); e.stopImmediatePropagation(); open(m2, confirmBtn); return; } 1900 } 1901 }, true); 1902 1903 // ââ Open/close controls (delegated across all modals) âââââââââââââââââââ 1904 document.addEventListener('click', function (e) { 1905 var opener = e.target.closest('.openHealthcareSignup'); 1906 if (opener) { e.preventDefault(); window.hcsOpenSignup(opener); return; } 1907 if (e.target.closest('.hcsModal__close')) { closeAll(); return; } 1908 // Backdrop click: the overlay element itself, not the content card. 1909 if (e.target.classList 1910 && e.target.classList.contains('hcsModal') 1911 && e.target.classList.contains('hcs-canvas')) { closeAll(); } 1912 }); 1913 document.addEventListener('keydown', function (e) { 1914 if (e.key === 'Escape') { closeAll(); } 1915 }); 1916 1917 // ââ Product pricing-calculator flow âââââââââââââââââââââââââââââââââââââ 1918 // The calculator ("for whom" â For My Students / researchers / â¦) sets the 1919 // chosen professional type on .nanPlatReg + the active .z_Pr_forwhoJS box and 1920 // then opens the legacy registration overlay via fadeInNanRegisterSelect(). 1921 // Wrap that opener so a supported type with a mounted modal shows the tailored 1922 // popup instead â preserving everything the buy flow already set up (product, 1923 // quantity, nanPlatReg, tracking). Scoped to pages that actually have the 1924 // calculator, so fadeInNanRegisterSelect is untouched everywhere else. 1925 if (document.querySelector('.z_Pr_forwhoJS')) { 1926 var installFadeHook = function () { 1927 var orig = window.fadeInNanRegisterSelect; 1928 if (typeof orig !== 'function' || orig.__hcsWrapped) { return; } 1929 window.fadeInNanRegisterSelect = function (event) { 1930 var m = modalForType(resolveUserType(null)); 1931 if (m) { 1932 if (event && event.preventDefault) { event.preventDefault(); } 1933 open(m, null); 1934 return; 1935 } 1936 return orig.apply(this, arguments); 1937 }; 1938 window.fadeInNanRegisterSelect.__hcsWrapped = true; 1939 }; 1940 // Try now; retry after home_su(_NEW).js has (re)defined the global. 1941 installFadeHook(); 1942 document.addEventListener('DOMContentLoaded', installFadeHook); 1943 window.addEventListener('load', installFadeHook); 1944 } 1945}()); 1946</script>
1946 1947 1948 1949 1950<div class="pauseHome"> 1951</div> 1952<style> 1953 a.nanLogintoRegMob{display: block;} 1954</style> 1955 1956<div id="capaOpenHomeLogin" class="ta_register mod_signup loguearse " style="display:block !important;"> 1957 <div class="nanLoginLayer"> 1958 <div class="int_mod_signup"> 1959 <div class="title_free">Login</div> 1960 <div class="our_register"> 1961 <form target="tempLog" action="" onsubmit="return Login.doLoginNew(this);" method="post" class="clearfix" id="login-head"> 1962 1963 1964 <div id="Login-Result-Failure" class="sp_nc val-invalid2" ></div> 1965 1966 <div class="nanLogName"> 1967 <label>email</label> 1968 <input type="text" class="" id="log-email" name="email" tabindex="1" placeholder="email" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false" > 1969 </div> 1970 <div class="nanLogPass"> 1971 <label>password</label> 1972 <input type="password" class="" id="log-pass" name="log-pass" value="" tabindex="2" placeholder="password" > 1973 </div> 1974 <div class="nanLogLineMore"> 1975 <div class="nanLogRemember"> 1976 <input type="checkbox" id="remember-me" name="remember-me" value="1" tabindex="3" class="sp_nc"> 1977 <label id="remember" for="remember-me">Remember me</label> 1978 1979 </div> 1980 <div class="ask-forgot"> 1981 <a onclick="Login.OpenForgot();" class="lightbox forgotPass cboxElement" id="forgot" href="#">Forgot your password?</a> 1982 </div> 1983 <div class="reset"></div> 1984 </div> 1985 1986 <div class="nanLogBtnSend"> 1987 <input type="submit" name="login" title="Login" value="Login" tabindex="4" class="ta_btn button btn btn-signup redondeado green_free sombreado" /> 1988 </div> 1989 1990 <div class="nanRegLine"> 1991 <a class="nanLogintoRegMob" href="/signup?reg=true®ut=normal" rel="noopener">Don't have an account? Sign up here</a> 1992 </div> 1993 1994 <img loading="lazy" id="capaLoadingLogin" src="/img/new_cognifit/loading-login.gif" alt="loading"> 1995 </form> 1996 1997 </div> 1998 1999 <div class="ext_register newnanRegRedes"> 2000 <a onclick="FacebookLogin.checkLoginState();" title='Continue with Facebook' class="nanLogFacebook button redondeado sombreado"><span class="iconRed"></span><span class="sp_nc connect_social fb">Continue with Facebook</span></a> 2001 <a id="g_id_onload" data-client_id="246580644645-v8mn20777f3bpla68jg4csbos0q5umbd.apps.googleusercontent.com" data-callback="onSignIn" data-type="icon" data-size="large" data-auto_prompt="false" class="nanLogGoogle button redondeado sombreado g_id_signin"></a> 2002 <a onclick="AppleSignIn.Login();" title='Continue with Apple' class="nanLogApple button redondeado sombreado"><span class="iconRed"></span><span class="sp_nc connect_social">Continue with Apple</span></a> 2003 <a onclick="MicrosoftAuth.Login();" title='Sign in with Microsoft' class="nanLogMicrosoft button redondeado sombreado"><span class="iconRed"></span><span class="sp_nc connect_social">Sign in with Microsoft</span></a> 2004 </div> 2005 2006 <div class="clear"></div> 2007 </div> 2008 <a class="nanBtGoHome nanSpriteHome" href="/" title="CogniFit" style="display:block"></a> 2009 </div> 2010</div> 2011
2012<script> 2013 if(General.getCookie("fromCrm")) $(".int_header").find("a.orange_office").remove(); 2014 $(".plat_select.btSelectMovil").click(function(event){ 2015 event.preventDefault(); 2016 if ($(this).hasClass("cerrado")) 2017 { 2018 $('.usTyOpt').slideUp(); 2019 $(this).removeClass("cerrado"); 2020 } 2021 else 2022 { 2023 $('.usTyOpt').slideDown(); 2024 $(this).addClass("cerrado"); 2025 } 2026 }); 2027 2028 2029</script>
2029 2030 2031 <div id="info_footer" class="nanFoot"> 2032 2033 2034 <div class="nanFooterXtras"> 2035 <div class="nanIntBoard"> 2036 <div class="aicpaVerification"></div> 2037 <a rel='noopener' href="/cognifit-and-amazon-web-services"><div class="aicpaVerification awsVerification"><span class="linkNone">Amazon Web Services</span></div></a> 2038 <div class="aicpaVerificationCE"></div> 2039 <ul class="nanFootOthers"> 2040 <li> 2041 <p class="nanFontMain">CogniFit App </p> 2042 <ul class="nanFootApp"> 2043 <li><a title="App Store" target="_blank" rel='noopener' href="https://itunes.apple.com/app/cognifit-brain-fitness/id528285610?mt=8"><span>App Store</span><img loading="lazy" width="148" height="44" alt="App Store" src="/img/newart/appStore/app-store-badge_locale_en.svg" /></a></li> 2044 <li><a title="Play Store" class="playStoreIcon" target="_blank" rel='noopener' href="https://play.google.com/store/apps/details?id=com.cognifit.app&hl=en"><span>Play Store</span><img loading="lazy" width="148" height="44" alt="Play Store" src="/img/newart/playStore/google-play-badge_locale_en.png" /></a></li> 2045 </ul> 2046 </li> 2047 </ul> 2048 2049 <ul class="nanFootSocial"> 2050 <li class="headLiSocial"><strong class="nanFontMain">Follow us</strong></li> 2051 <li><a title="Facebook" target="_blank" rel='noopener' href="https://www.facebook.com/cognifit"><span class="nanIconRedesFb nanFIconRedes nanSpriteHome"></span><span>Facebook</span></a></li> 2052 <li><a title="Twitter" target="_blank" rel='noopener' href="https://x.com/cognifit"><span class="nanIconRedesTw nanFIconRedes nanSpriteHome"></span><span>Twitter</span></a></li> 2053 <li><a title="YouTube" target="_blank" rel='noopener' href="https://www.youtube.com/Cognifit"><span class="nanIconRedesYt nanFIconRedes nanSpriteHome"></span><span>Youtube</span></a></li> 2054 <li><a title="Instagram" target="_blank" rel='noopener' href="https://www.instagram.com/cognifit/"><span class="nanIconRedesIs nanFIconRedes nanSpriteHome"></span><span>Instagram</span></a></li> 2055 <li><a title="Linkedin" target="_blank" rel='noopener' href="https://www.linkedin.com/company/cognifit/"><span class="nanIconRedesLi nanFIconRedes nanSpriteHome"></span><span>Instagram</span></a></li> 2056 </ul> 2057 2058 <div class="nanClear"></div> 2059 2060 </div> 2061 </div> 2062 2063 2064 <div class="nanIntBoard"> 2065 2066 <div class="nanFootColLinks MENU_TITLE_"> 2067 <p class="nanFontMain">Brain Science</p><ul> 2068 <li> 2069 <a href="/brain"> 2070 The Human Brain </a> 2071 </li> 2072 <li> 2073 <a href="/mind"> 2074 Brain and Mind </a> 2075 </li> 2076 <li> 2077 <a href="/brain-parts"> 2078 Parts of the Brain </a> 2079 </li> 2080 <li> 2081 <a href="/active-neurons"> 2082 Neurons </a> 2083 </li> 2084 <li> 2085 <a href="/brain-plasticity-and-cognition"> 2086 Brain Plasticity </a> 2087 </li> 2088 <li> 2089 <a href="/brain-fitness"> 2090 Brain Fitness </a> 2091 </li> 2092 <li> 2093 <a href="/cognition"> 2094 Cognition </a> 2095 </li> 2096 <li> 2097 <a href="/memory-loss"> 2098 Memory Loss </a> 2099 </li> 2100 <li> 2101 <a href="/dementia"> 2102 Intellectual Disabilities </a> 2103 </li> 2104 <li> 2105 <a href="/brain-functions"> 2106 Brain Functions </a> 2107 </li> 2108 <li> 2109 <a href="/executive-functions"> 2110 Executive Functions </a> 2111 </li> 2112 <li> 2113 <a href="/coordination"> 2114 Coordination </a> 2115 </li> 2116 <li> 2117 <a href="/memory"> 2118 Memory </a> 2119 </li> 2120 <li> 2121 <a href="/perception"> 2122 Perception </a> 2123 </li> 2124 <li> 2125 <a href="/attention"> 2126 Attention </a> 2127 </li> 2128 </ul> 2129 </div> 2130 <div class="nanFootColLinks MENU_TITLE_SaludActiva"> 2131 <p class="nanFontMain">Research</p><ul> 2132 <li> 2133 <a href="/digital-therapeutics"> 2134 Digital Therapeutics Validation </a> 2135 </li> 2136 <li> 2137 <a href="/Study-cognitive-training-vs-computer-games"> 2138 Computer Games </a> 2139 </li> 2140 <li> 2141 <a href="/study-cognitive-training-vs-physical-training"> 2142 Healthy Older Adults Trial </a> 2143 </li> 2144 <li> 2145 <a href="/study-evaluation-fatigue-pilots-marine"> 2146 Navy Pilots </a> 2147 </li> 2148 <li> 2149 <a href="/study-holistic-assess-senior-wellness"> 2150 Senior Wellness </a> 2151 </li> 2152 <li> 2153 <a href="/study-itv-cognitive-training-seniors"> 2154 Healthy Seniors </a> 2155 </li> 2156 <li> 2157 <a href="/senior-cognitive-training-symposium"> 2158 Senior Cognitive Training </a> 2159 </li> 2160 <li> 2161 <a href="/study-cct-senior-conference"> 2162 Cognitive state in adults </a> 2163 </li> 2164 <li> 2165 <a href="/study-systematic-review-tools-prevention-cognitive-decline"> 2166 Systematic review </a> 2167 </li> 2168 <li> 2169 <a href="/study-taxonomy-games-dementia"> 2170 SG4D taxonomy </a> 2171 </li> 2172 </ul> 2173 </div> 2174 <div class="nanFootColLinks MENU_TITLE__publicGames"> 2175 <p class="nanFontMain">Brain Games</p><ul> 2176 <li> 2177 <a href="/chess"> 2178 Chess Online </a> 2179 </li> 2180 <li> 2181 <a href="/mini-crossword"> 2182 Mini Crossword </a> 2183 </li> 2184 <li> 2185 <a href="/watch-and-catch"> 2186 Fruit Frenzy </a> 2187 </li> 2188 <li> 2189 <a href="/pipe-panic"> 2190 Pipe Panic </a> 2191 </li> 2192 <li> 2193 <a href="/crystal-miner"> 2194 Crystal Miner </a> 2195 </li> 2196 <li> 2197 <a href="/solitaire"> 2198 Solitaire </a> 2199 </li> 2200 <li> 2201 <a href="/robo-factory"> 2202 Robo Factory </a> 2203 </li> 2204 <li> 2205 <a href="/ant-escape"> 2206 Ant Escape </a> 2207 </li> 2208 <li> 2209 <a href="/treasure-island"> 2210 Treasure Island </a> 2211 </li> 2212 <li> 2213 <a href="/neon-lights"> 2214 Neon Lights </a> 2215 </li> 2216 <li> 2217 <a href="/simon-says"> 2218 Drive me crazy </a> 2219 </li> 2220 <li> 2221 <a href="/name-me"> 2222 Visual Crossword </a> 2223 </li> 2224 <li> 2225 <a href="/match-it"> 2226 Match it! </a> 2227 </li> 2228 <li> 2229 <a href="/space-rescue"> 2230 Space Rescue </a> 2231 </li> 2232 <li> 2233 <a href="/math-madness"> 2234 Math Madness </a> 2235 </li> 2236 <li> 2237 <a href="/marble-race"> 2238 Marble Race </a> 2239 </li> 2240 <li> 2241 <a href="/melodic-tennis"> 2242 Melodic Tennis </a> 2243 </li> 2244 <li> 2245 <a href="/scrambled"> 2246 Scrambled </a> 2247 </li> 2248 <li> 2249 <a href="/find-your-pet"> 2250 Find Your Pet </a> 2251 </li> 2252 <li> 2253 <a href="/melody-mayhem"> 2254 Melody Mayhem </a> 2255 </li> 2256 <li> 2257 <a href="/color-rush"> 2258 Color Rush </a> 2259 </li> 2260 <li> 2261 <a href="/3d-art-puzzle"> 2262 3D Art Puzzle </a> 2263 </li> 2264 <li> 2265 <a href="/happy-hopper"> 2266 Happy Hopper </a> 2267 </li> 2268 <li> 2269 <a href="/candy-line-up"> 2270 Candy Line Up </a> 2271 </li> 2272 <li> 2273 <a href="/puzzles"> 2274 Puzzles </a> 2275 </li> 2276 <li> 2277 <a href="/penguin-maze"> 2278 Penguin Explorer </a> 2279 </li> 2280 <li> 2281 <a href="/digits"> 2282 Digits </a> 2283 </li> 2284 <li> 2285 <a href="/color-bee"> 2286 Color Bee </a> 2287 </li> 2288 <li> 2289 <a href="/bee-balloon"> 2290 Bee Balloon </a> 2291 </li> 2292 <li> 2293 <a href="/crossroads"> 2294 Crossroads </a> 2295 </li> 2296 <li> 2297 <a href="/blockout"> 2298 Cube Foundry </a> 2299 </li> 2300 <li> 2301 <a href="/freshsqueeze"> 2302 Fresh Squeeze </a> 2303 </li> 2304 <li> 2305 <a href="/jigsaw"> 2306 Jigsaw </a> 2307 </li> 2308 <li> 2309 <a href="/fuel-a-car"> 2310 Fuel a Car </a> 2311 </li> 2312 <li> 2313 <a href="/math-twins"> 2314 Math Twins </a> 2315 </li> 2316 <li> 2317 <a href="/minus-malus"> 2318 Minus Malus </a> 2319 </li> 2320 <li> 2321 <a href="/mouse-challenge"> 2322 Mouse Challenge </a> 2323 </li> 2324 <li> 2325 <a href="/perfect-tension"> 2326 Perfect Tension </a> 2327 </li> 2328 <li> 2329 <a href="/slice-and-drop"> 2330 Slice and Drop </a> 2331 </li> 2332 <li> 2333 <a href="/twist-it"> 2334 Twist It </a> 2335 </li> 2336 <li> 2337 <a href="/water-lilies"> 2338 Water Lilies </a> 2339 </li> 2340 <li> 2341 <a href="/whack-a-mole"> 2342 Reaction Field </a> 2343 </li> 2344 <li> 2345 <a href="/words-birds"> 2346 Words Birds </a> 2347 </li> 2348 <li> 2349 <a href="/brain-games"> 2350 See More Games... </a> 2351 </li> 2352 </ul> 2353 </div> 2354 <div class="nanFootColLinks MENU_TITLE_Ejercicios"> 2355 <p class="nanFontMain">Tools</p><ul> 2356 <li> 2357 <a href="/family-platform"> 2358 For Families </a> 2359 </li> 2360 <li> 2361 <a href="/medical-platform"> 2362 For Clinicians </a> 2363 </li> 2364 <li> 2365 <a href="/cognitive-research-tool-v1"> 2366 For Researchers </a> 2367 </li> 2368 <li> 2369 <a href="/educational-technology"> 2370 Education </a> 2371 </li> 2372 <li> 2373 <a href="/patent"> 2374 Patent </a> 2375 </li> 2376 <li> 2377 <a href="/mindfulness"> 2378 MindFit® </a> 2379 </li> 2380 <li> 2381 <a href="/babybright"> 2382 Babybright® </a> 2383 </li> 2384 <li> 2385 <a href="/resellers"> 2386 Resellers </a> 2387 </li> 2388 <li> 2389 <a href="/brain-training-kids"> 2390 Exercises for Children </a> 2391 </li> 2392 <li> 2393 <a href="/cognitive-development"> 2394 Cognitive Development </a> 2395 </li> 2396 <li> 2397 <a href="/brain-training"> 2398 Brain Exercise </a> 2399 </li> 2400 <li> 2401 <a href="/cognifit-individualized-training-system"> 2402 Individualized Training System </a> 2403 </li> 2404 <li> 2405 <a href="/mind-quiz"> 2406 Mind Quiz </a> 2407 </li> 2408 <li> 2409 <a href="/cognitive-stimulation-therapy-cst"> 2410 Cognitive Stimulation Therapy </a> 2411 </li> 2412 <li> 2413 <a href="/mind-exercise"> 2414 Mind Exercises </a> 2415 </li> 2416 <li> 2417 <a href="/mind-training"> 2418 Personalized Brain Training </a> 2419 </li> 2420 <li> 2421 <a href="/brain-games"> 2422 Brain Games </a> 2423 </li> 2424 <li> 2425 <a href="/mental-exercise"> 2426 Mental Exercise </a> 2427 </li> 2428 <li> 2429 <a href="/memory-games"> 2430 Online Memory Games </a> 2431 </li> 2432 <li> 2433 <a href="/cool-math-games"> 2434 Cool Math Games </a> 2435 </li> 2436 <li>
2437 <a href="/reading-comprehension-exercises"> 2438 Reading Comprehension </a> 2439 </li> 2440 <li> 2441 <a href="/gifted-children"> 2442 Gifted Children </a> 2443 </li> 2444 <li> 2445 <a href="/brain-battles"> 2446 Brain Battles </a> 2447 </li> 2448 <li> 2449 <a href="/iq-test-iqbe"> 2450 IQ Test </a> 2451 </li> 2452 </ul> 2453 </div> 2454 <div class="nanClear"></div> 2455 </div> 2456 2457 <div class="nanFAD_note"> 2458 <div class="nanIntBoard"> 2459 <p>* Every CogniFit cognitive assessment is intended as an aid for assessing cognitive wellbeing of an individual. In a clinical setting, the CogniFit results (when interpreted by a qualified healthcare provider), may be used as an aid in determining whether further cognitive evaluation is needed. CogniFitâs brain trainings are designed to promote/encourage the general state of cognitive health. CogniFit does not offer any medical diagnosis or treatment of any medical disease or condition. CogniFit products may also be used for research purposes for any range of cognitive related assessments. If used for research purposes, all use of the product must be in compliance with appropriate human subjects' procedures as they exist within the researchers' institution and will be the researcher's obligation. All such human subject protections shall be under the provisions of all applicable sections of the Code of Federal Regulations.</p> 2460 </div> 2461 </div> 2462 <div class="nanSubFooter"> 2463 <div class="nanIntBoard"> 2464 <ul> 2465 <li> 2466 <a rel='noopener' href="/terms-and-conditions"> 2467 Terms of Service </a> 2468 </li> 2469 <li><a rel='noopener' href="/privacy-policy">Privacy Policy</a></li> 2470 <li><a target="_blank" rel='noopener' href="https://cognifit.com/affiliates">Become an Affiliate</a></li> 2471 <li><a target="_blank" rel='noopener' href="https://resellers.cognifit.com/">Become a Reseller</a></li> 2472 <li><a rel='noopener' href="javascript: Feedback.OpenSupport();">Contact us</a></li> 2473 <li><a target="_blank" rel='noopener' href="https://support.cognifit.com">Help</a></li> 2474 <li><a target="_blank" rel='noopener' href="https://inclusif.life/accessibility-statement/cognifit">Accessibility Statement</a></li> 2475 </ul> 2476 <div class="nanClear"></div> 2477 <div class="nanCredits"> 2478 <div class="nanC_Country nanCountry"> 2479 <a href="/corporativa/index/choose-country-region"> 2480 <img alt="Indicate which country or region you are in to view specific content." width="11" height="11" src="/img/flags_16/us.png" /> 2481 United States </a> 2482 </div> 2483 <div class="nanCognifit"> 2484 CogniFit Inc © 2026 </div> 2485 </div> 2486 </div> 2487 </div> 2488</div> 2489<div style="display: none;"> 2490 2491 <div id="div-forgotPass" class="div-lightbox"> 2492 <p class="title"> 2493 Please type your email address </p> 2494 2495 <div class="center"> 2496 <form action="" method="post" class="formLightbox" 2497 onsubmit="Login.requestForgottenPassword(); return false;"> 2498 <fieldset> 2499 <label class="resendpass" for="lgbox-resendpass">Email: </label> <input type="text" id="lgbox-resendpass" 2500 name="resend-pass" value="" 2501 onkeypress="if(!Login.pulsar(event)) return Login.requestForgottenPassword() ;" /> 2502 2503 <input id="reqPass" type="button" name="request" 2504 value="Submit" 2505 class="isBtn isgr-darkBlue" 2506 onclick="Login.requestForgottenPassword()" /> 2507 </fieldset> 2508 </form> 2509 <div id="respuesta-olvido-contrasena"> 2510 <br /> 2511 <br /> 2512 </div> 2513 </div> 2514 </div> 2515 <!-- /div-forgotPass --> 2516 2517</div> 2518
2519<script type="text/javascript"> 2520 $(document).ready(function(){ 2521 $(".forgotPass").colorbox({width:"580px",height:"220px", inline:true, href:"#div-forgotPass"}); 2522 }); 2523</script>
2523 2524 2525 2526<div id="capaOpenHomeLogin" class="ta_register mod_signup loguearse" > 2527 <div class="nanLoginLayer"> 2528 <div class="int_mod_signup"> 2529 <div class="title_free">Login</div> 2530 <div class="our_register"> 2531 <form target="tempLog" action="" onsubmit="return Login.doLoginNew(this);" method="post" class="clearfix" id="login-head"> 2532 2533 2534 <div id="Login-Result-Failure" class="sp_nc val-invalid2" ></div> 2535 2536 <div class="nanLogName"> 2537 <label>email</label> 2538 <input type="text" class="" id="log-email" name="email" tabindex="1" placeholder="Email or alias" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false" > 2539 </div> 2540 <div class="nanLogPass"> 2541 <label>password</label> 2542 <input type="password" class="" id="log-pass" name="log-pass" value="" tabindex="2" placeholder="password" > 2543 </div> 2544 <div class="nanLogLineMore"> 2545 <div class="nanLogRemember"> 2546 <input type="checkbox" id="remember-me" name="remember-me" value="1" tabindex="3" class="sp_nc"> 2547 <label id="remember" for="remember-me">Remember me</label> 2548 2549 </div> 2550 <div class="ask-forgot"> 2551 <a onclick="Login.OpenForgot();" class="lightbox forgotPass cboxElement" id="forgot" href="#">Forgot your password?</a> 2552 </div> 2553 <div class="reset"></div> 2554 </div> 2555 2556 <div class="nanLogBtnSend"> 2557 <input type="submit" name="login" title="Login" value="Login" tabindex="4" class="ta_btn button btn btn-signup redondeado green_free sombreado" /> 2558 </div> 2559 2560 <div class="nanRegLine"> 2561 <input class="nanRegSubmit nanLogintoReg" type="button" value="Don't have an account? Sign up here" /> 2562 </div> 2563 2564 <img loading="lazy" id="capaLoadingLogin" src="/img/new_cognifit/loading-login.gif" alt="loading"> 2565 </form> 2566 2567 </div> 2568 2569 <style> 2570 .ext_register.newnanRegRedes a.button { 2571 width: 23% !important; 2572 } 2573 #g_id_onload div { 2574 left: 22%; 2575 } 2576 </style> 2577 <div class="ext_register newnanRegRedes"> 2578 <a onclick="FacebookLogin.checkLoginState();" title='Continue with Facebook' class="nanLogFacebook button redondeado sombreado"><span class="iconRed"></span><span class="sp_nc connect_social fb">Continue with Facebook</span></a> 2579 <a id="g_id_onload" data-client_id="246580644645-v8mn20777f3bpla68jg4csbos0q5umbd.apps.googleusercontent.com" data-callback="onSignIn" data-type="icon" data-size="large" data-auto_prompt="false" class="nanLogGoogle button redondeado sombreado g_id_signin"></a> 2580 <a onclick="AppleSignIn.Login();" title='Continue with Apple' class="nanLogApple button redondeado sombreado"><span class="iconRed"></span><span class="sp_nc connect_social">Continue with Apple</span></a> 2581 <a onclick="MicrosoftAuth.Login();" title='Sign in with Microsoft' class="nanLogMicrosoft button redondeado sombreado"><span class="iconRed"></span><span class="sp_nc connect_social">Sign in with Microsoft</span></a> 2582 </div> 2583 2584 <div class="clear"></div> 2585 </div> 2586 <div class="btn_cerrar_su"><a class="sp_nc su_close_btn log_close nanBtCloseReg"></a></div> 2587 </div> 2588</div> 2589
2590<script> 2591 if(General.getCookie("fromCrm")) $(".int_header").find("a.orange_office").remove(); 2592 $(".plat_select.btSelectMovil").click(function(event){ 2593 event.preventDefault(); 2594 if ($(this).hasClass("cerrado")) 2595 { 2596 $('.usTyOpt').slideUp(); 2597 $(this).removeClass("cerrado"); 2598 } 2599 else 2600 { 2601 $('.usTyOpt').slideDown(); 2602 $(this).addClass("cerrado"); 2603 } 2604 }); 2605 2606 2607</script>
2607 2608 2609<!-- SF not L --><style> 2610 #chatCSButton { 2611 position: fixed; 2612 bottom: -5px; 2613 right: 20px; 2614 background: linear-gradient(to bottom, rgba(28, 170, 250, 1) 0%, rgba(11, 122, 244, 1) 100%); 2615 font-family: fontCogRobotoBold, Arial, Helvetica, sans-serif; 2616 color: white; 2617 border: none; 2618 padding: 15px 20px; 2619 font-size: 16px; 2620 cursor: pointer; 2621 border-radius: 5px; 2622 z-index: 9999; 2623 display: flex; 2624 align-items: center; 2625 justify-content: center; 2626 } 2627 2628 #chatCSButton span { 2629 display: inline-block; 2630 width: 24px; 2631 height: 24px; 2632 background-color: #fff; 2633 -webkit-mask-image: url("../../img/newart/taurus/svg/stars.svg"); 2634 mask-image: url("../../img/newart/taurus/svg/stars.svg"); 2635 -webkit-mask-size: auto 80%; 2636 mask-size: auto 80%; 2637 -webkit-mask-repeat: no-repeat; 2638 mask-repeat: no-repeat; 2639 -webkit-mask-position: 50% 50%; 2640 mask-position: 50% 50%; 2641 margin-right: 5px; 2642 } 2643 2644 #chatCSContainer { 2645 display: none; 2646 position: fixed; 2647 bottom: 0; 2648 right: 9px; 2649 width: 100%; 2650 max-width: 700px; 2651 height: 80vh; 2652 background-color: #fff; 2653 border: 0; 2654 z-index: 9999; 2655 border-radius: 10px 10px 0 0; 2656 box-shadow: 0 -5px 20px -13px #000; 2657 overflow: hidden; 2658 } 2659 2660 #chatCSHeader { 2661 background: linear-gradient( to bottom, rgba(28, 170, 250, 1) 0%, rgba(11, 122, 244, 1) 100% ); 2662 color: white; 2663 padding: 10px; 2664 /*display: flex; 2665 justify-content: start; 2666 align-items: center;*/ 2667 height: 28px; 2668 } 2669 2670 #chatCSContent { 2671 height: 100%; 2672 max-height: calc(100% - 50px); 2673 } 2674 2675 .barChatButton { 2676 background: #fff; 2677 border-radius: 6px; 2678 aspect-ratio:1/1; 2679 width: 23px; 2680 margin: 2px; 2681 border: 0; 2682 display: inline-block; 2683 cursor: pointer; 2684 background: #fff; 2685 padding: 0; 2686 } 2687 .barChatButton span{ 2688 width: 100%; 2689 height: 100%; 2690 -webkit-mask-image: url("../../img/newart/taurus/svg/minchat.svg"); 2691 mask-image: url("../../img/newart/taurus/svg/minchat.svg"); 2692 -webkit-mask-size: auto 70%; 2693 mask-size: auto 70%; 2694 -webkit-mask-repeat: no-repeat; 2695 mask-repeat: no-repeat; 2696 -webkit-mask-position: 50% 50%; 2697 mask-position: 50% 50%; 2698 display: block; 2699 background: linear-gradient( to bottom, rgba(28, 170, 250, 1) 0%, rgba(11, 122, 244, 1) 100% ); 2700 2701 } 2702 .barCaiButtonMax span{ 2703 -webkit-mask-image: url("../../img/newart/taurus/svg/maxchat.svg"); 2704 mask-image: url("../../img/newart/taurus/svg/maxchat.svg"); 2705 } 2706 .maximized .barCaiButtonMax span{ 2707 -webkit-mask-image: url("../../img/newart/taurus/svg/cutchat.svg"); 2708 mask-image: url("../../img/newart/taurus/svg/cutchat.svg"); 2709 } 2710 .barCaiButtonClose { 2711 float: right; 2712 2713 } 2714 .barCaiButtonClose span{ 2715 -webkit-mask-image: url("../../img/newart/taurus/svg/closechat.svg"); 2716 mask-image: url("../../img/newart/taurus/svg/closechat.svg"); 2717 } 2718 2719 .z_mask_boxes .barChatButton span{ 2720 -webkit-mask-image: url("../../../../img/newart/taurus/svg/minchat.svg"); 2721 mask-image: url("../../../../img/newart/taurus/svg/minchat.svg"); 2722 } 2723 2724 .z_mask_boxes .barCaiButtonMax span{ 2725 -webkit-mask-image: url("../../../../img/newart/taurus/svg/maxchat.svg"); 2726 mask-image: url("../../../../img/newart/taurus/svg/maxchat.svg"); 2727 } 2728 .z_mask_boxes .maximized .barCaiButtonMax span{ 2729 -webkit-mask-image: url("../../../../img/newart/taurus/svg/cutchat.svg"); 2730 mask-image: url("../../../../img/newart/taurus/svg/cutchat.svg"); 2731 } 2732 2733 .z_mask_boxes .barCaiButtonClose span{ 2734 -webkit-mask-image: url("../../../../img/newart/taurus/svg/closechat.svg"); 2735 mask-image: url("../../../../img/newart/taurus/svg/closechat.svg"); 2736 } 2737 2738 .z_mask_boxes #chatCSButton span { 2739 -webkit-mask-image: url("../../../../img/newart/taurus/svg/stars.svg"); 2740 mask-image: url("../../../../img/newart/taurus/svg/stars.svg"); 2741 } 2742 2743 #chatCSContainer.maximized {F 2744 width: 100vw; 2745 height: 100vh; 2746 bottom: 0; 2747 right: 0; 2748 } 2749 2750 #chatCSContainer.maximized #chatCSContent { 2751 max-height: calc(100% - 40px); 2752 } 2753 2754 @media only screen and (max-device-width: 500px) { 2755 #chatCSContainer{ 2756 z-index: 100000; 2757 max-height: calc(100dvh - 60px); 2758 height: calc(100dvh - 60px); 2759 top: auto; 2760 bottom: 0; 2761 right: 0; 2762 } 2763 } 2764</style> 2765 2766<button id="chatCSButton"><span></span>Need help?</button> 2767<div id="chatCSContainer"> 2768 <div id="chatCSHeader"> 2769 <button id="minimizeChatCSButton" class="barChatButton barCaiButtonMin"><span></span></button> 2770 <button id="maximizeChatCSButton" class="barChatButton barCaiButtonMax"><span></span></button> 2771 <button id="closeChatCSButton" class="barChatButton barCaiButtonClose"><span></span></button> 2772 </div> 2773 <div id="chatCSContent"></div> 2774</div> 2775
2776<script> 2777 $(document).ready(function () { 2778 ChatCSManager.getInstance('en'); 2779 }); 2780</script>
2780 2781 2782 2783 2784 <!-- Facebook Pixel Code --> 2785
2785<script> 2786 !function(f,b,e,v,n,t,s) 2787 {if(f.fbq)return;n=f.fbq=function(){n.callMethod? 2788 n.callMethod.apply(n,arguments):n.queue.push(arguments)}; 2789 if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0'; 2790 n.queue=[];t=b.createElement(e);t.async=!0; 2791 t.src=v;s=b.getElementsByTagName(e)[0]; 2792 s.parentNode.insertBefore(t,s)}(window,document,'script', 2793 'https://connect.facebook.net/en_US/fbevents.js'); 2794 2795 // @d.heredia 2796 if(window['fbq'] instanceof Function){ 2797 fbq('init', '1084140328351880'); 2798 fbq('track', 'PageView'); 2799 } 2800 </script>
2800 2801 <noscript> 2802 <img height="1" width="1" src="https://www.facebook.com/tr?id=1084140328351880&ev=PageView&noscript=1"/> 2803 </noscript> 2804 <!-- End Facebook Pixel Code -->
2805<script type="text/javascript"> 2806 (function() { 2807 window._pa = window._pa || {}; 2808 var pa = document.createElement('script'); pa.type = 'text/javascript'; pa.async = true; 2809 pa.src = ('https:' == document.location.protocol ? 'https:' : 'http:') + "//tag.perfectaudience.com/serve/604a3a422f5586fa0e000039.js"; 2810 var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(pa, s); 2811 })(); 2812</script>
2812 2813<!-- 408/197 --> 2814
2815<script> 2816 FacebookLogin = {}; 2817 2818 FacebookLogin.loadingSdk = false; 2819 2820 FacebookLogin.statusChangeCallback = function(response) { 2821 if (response.status === 'connected') { 2822 FacebookLogin.redirectInside(); 2823 } else if (response.status === 'not_authorized') { 2824 FacebookLogin.facebookLogin(); 2825 } else { 2826 FacebookLogin.facebookLogin(); 2827 } 2828 }; 2829 2830 FacebookLogin.facebookLogin = function(){ 2831 FacebookLogin.checkForSdkAndRun(function(){ 2832 FB.login(function(response) { 2833 if (response.authResponse) { 2834 FacebookLogin.redirectInside(); 2835 } 2836 }, {scope: 'public_profile, email'}); 2837 }); 2838 }; 2839 2840 FacebookLogin.checkLoginState = function() { 2841 FacebookLogin.facebookLogin(); 2842 }; 2843 2844 FacebookLogin.redirectInside = function(){ 2845 if(typeof $crisp !== 'undefined'){ 2846 $crisp["do"]("session:reset", [false]); 2847 } 2848 var url = "https://www.cognifit.com/facebookv2/phpsdk-login/registro-with-facebook"; 2849 var queryString = ''; 2850 var fastRegTraining = $(".fastRegTraining").val(); 2851 var fastRegTag = $('.fastRegTag').val(); 2852 2853 if(typeof fastRegTraining !== 'undefined' && fastRegTraining !== ''){ 2854 queryString = '?fastRegTraining='+fastRegTraining; 2855 }else{ 2856 var fastRegProduct = $(".fastRegProduct").val(); 2857 if(typeof fastRegProduct !== 'undefined' && fastRegProduct !== ''){
2858 queryString = '?fastRegProduct='+fastRegProduct; 2859 } 2860 } 2861 2862 if(fastRegTag){ 2863 if(queryString){ 2864 queryString += '&'; 2865 }else{ 2866 queryString += '?'; 2867 } 2868 queryString += 'fastRegTag=' + fastRegTag; 2869 } 2870 url += queryString; 2871 window.location = url; 2872 }; 2873 2874 FacebookLogin.checkForSdkAndRun = function(callback){ 2875 if(typeof FB !== 'undefined'){ 2876 callback(); 2877 return; 2878 } 2879 if(!FacebookLogin.loadingSdk){ 2880 FacebookLogin.loadingSdk = true; 2881 FacebookLogin.loadSdk(); 2882 } 2883 setTimeout(function(){ 2884 FacebookLogin.checkForSdkAndRun(callback); 2885 }, 200); 2886 return true; 2887 }; 2888 2889 FacebookLogin.loadSdk = function(){ 2890 window.fbAsyncInit = function() { 2891 FB.init({ 2892 appId : '147013575367957', 2893 cookie : true, // enable cookies to allow the server to access 2894 // the session 2895 xfbml : true, // parse social plugins on this page 2896 version : 'v2.12' // previously use version 2.2 2897 }); 2898 }; 2899 2900 (function(d, s, id) { 2901 var js, fjs = d.getElementsByTagName(s)[0]; 2902 if (d.getElementById(id)) return; 2903 js = d.createElement(s); js.id = id; 2904 js.src = "//connect.facebook.net/en_US/sdk.js"; 2905 fjs.parentNode.insertBefore(js, fjs); 2906 }(document, 'script', 'facebook-jssdk')); 2907 }; 2908 2909 </script>
2909 2910
2911<script type="text/javascript">window.NREUM||(NREUM={});NREUM.info={"beacon":"bam.nr-data.net","licenseKey":"698fbd6a93","applicationID":"1074206998","transactionName":"YABbNURSCkIDB0RdXllKbBNfHA1fBgFIGkFfFQ==","queueTime":0,"applicationTime":3,"atts":"TEdYQwxIGUw=","errorBeacon":"bam.nr-data.net","agent":""}</script>
2911<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" data-cf-beacon='{"version":"2024.11.0","token":"375542ca930e4c85b7e28ea96d97ccba","spa":2}' crossorigin="anonymous"></script>
2911 2912</body>
2913<script type="text/javascript"> 2914 usi_installed = 0; USI_installCode = function() { if (usi_installed == 0) { usi_installed = 1; var USI_headID = document.getElementsByTagName("head")[0]; var USI_installID = document.createElement('script'); USI_installID.type = 'text/javascript'; USI_installID.src = 'https://www.upsellit.com/active/cognifit.jsp'; USI_headID.appendChild(USI_installID); } }; if (typeof(document.readyState) != "undefined" && document.readyState === "complete") { USI_installCode(); } else if (window.addEventListener){ window.addEventListener('load', USI_installCode, true); } else if (window.attachEvent) { window.attachEvent('onload', USI_installCode); } else { USI_installCode(); } setTimeout("USI_installCode()", 10000); 2915</script>
2915 2916</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.