analytics.js 74 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617
  1. 'use strict';
  2. var _typeof2 = 'function' == typeof Symbol && 'symbol' == typeof Symbol.iterator ? function (t) {
  3. return typeof t;
  4. } : function (t) {
  5. return t && 'function' == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? 'symbol' : typeof t;
  6. }, _typeof = 'function' == typeof Symbol && 'symbol' == _typeof2(Symbol.iterator) ? function (t) {
  7. return void 0 === t ? 'undefined' : _typeof2(t);
  8. } : function (t) {
  9. return t && 'function' == typeof Symbol && t.constructor === Symbol && t !== Symbol.prototype ? 'symbol' : void 0 === t ? 'undefined' : _typeof2(t);
  10. };
  11. !function () {
  12. function t(t, e) {
  13. t = t.split('.');
  14. var n, r = d;
  15. t[0] in r || void 0 === r.execScript || r.execScript('var ' + t[0]);
  16. for (; t.length && (n = t.shift());)
  17. t.length || void 0 === e ? r = r[n] && r[n] !== Object.prototype[n] ? r[n] : r[n] = {} : r[n] = e;
  18. }
  19. function u(t, e) {
  20. for (var n in e)
  21. e.hasOwnProperty(n) && (t[n] = e[n]);
  22. }
  23. function i(t) {
  24. for (var e in t)
  25. if (t.hasOwnProperty(e))
  26. return 1;
  27. }
  28. function o(t, e) {
  29. v.addEventListener ? v.addEventListener(t, e, !1) : v.attachEvent && v.attachEvent('on' + t, e);
  30. }
  31. function a() {
  32. e.TAGGING = e.TAGGING || [], e.TAGGING[1] = !0;
  33. }
  34. function s(t, e) {
  35. 'protocol' !== (e = e && String(e).toLowerCase()) && 'port' !== e || (t.protocol = l(t.protocol) || l(p.location.protocol)), 'port' === e ? t.port = String(Number(t.hostname ? t.port : p.location.port) || ('http' == t.protocol ? 80 : 'https' == t.protocol ? 443 : '')) : 'host' === e && (t.hostname = (t.hostname || p.location.hostname).replace(w, '').toLowerCase());
  36. var n = l(t.protocol);
  37. switch (e = e && String(e).toLowerCase()) {
  38. case 'url_no_fragment':
  39. e = '', t && t.href && (e = (e = t.href.indexOf('#')) < 0 ? t.href : t.href.substr(0, e)), t = e;
  40. break;
  41. case 'protocol':
  42. t = n;
  43. break;
  44. case 'host':
  45. t = t.hostname.replace(w, '').toLowerCase();
  46. break;
  47. case 'port':
  48. t = String(Number(t.port) || ('http' == n ? 80 : 'https' == n ? 443 : ''));
  49. break;
  50. case 'path':
  51. t.pathname || t.hostname || a();
  52. t:
  53. if (e = (t = (t = '/' == t.pathname.substr(0, 1) ? t.pathname : '/' + t.pathname).split('/'))[t.length - 1], n = [], Array.prototype.indexOf)
  54. e = n.indexOf(e), e = 'number' == typeof e ? e : -1;
  55. else {
  56. for (var r = 0; r < n.length; r++)
  57. if (n[r] === e) {
  58. e = r;
  59. break t;
  60. }
  61. e = -1;
  62. }
  63. 0 <= e && (t[t.length - 1] = ''), t = t.join('/');
  64. break;
  65. case 'query':
  66. t = t.search.replace('?', '');
  67. break;
  68. case 'extension':
  69. t = (t = 1 < (t = t.pathname.split('.')).length ? t[t.length - 1] : '').split('/')[0];
  70. break;
  71. case 'fragment':
  72. t = t.hash.replace('#', '');
  73. break;
  74. default:
  75. t = t && t.href;
  76. }
  77. return t;
  78. }
  79. function c(t) {
  80. var e = v.createElement('a');
  81. t && (e.href = t);
  82. var n = e.pathname;
  83. return '/' !== n[0] && (t || a(), n = '/' + n), t = e.hostname.replace(w, ''), {
  84. href: e.href,
  85. protocol: e.protocol,
  86. host: e.host,
  87. hostname: t,
  88. pathname: n,
  89. search: e.search,
  90. hash: e.hash,
  91. port: e.port
  92. };
  93. }
  94. function l(t) {
  95. return t ? t.replace(':', '').toLowerCase() : '';
  96. }
  97. var f, g, h, d = this || self, p = window, v = document, m = /^(?:(?:https?|mailto|ftp):|[^:/?#]*(?:[/?#]|$))/i, e = {}, w = /:[0-9]+$/;
  98. function y() {
  99. for (var t = f, e = {}, n = 0; n < t.length; ++n)
  100. e[t[n]] = n;
  101. return e;
  102. }
  103. function b() {
  104. var t = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
  105. return (t += t.toLowerCase() + '0123456789-_') + '.';
  106. }
  107. function _(t) {
  108. f = f || b(), g = g || y();
  109. for (var e = [], n = 0; n < t.length; n += 3) {
  110. var r = n + 1 < t.length, a = n + 2 < t.length, o = t.charCodeAt(n), i = r ? t.charCodeAt(n + 1) : 0, s = a ? t.charCodeAt(n + 2) : 0, c = o >> 2;
  111. o = (3 & o) << 4 | i >> 4, i = (15 & i) << 2 | s >> 6, s &= 63, a || (s = 64, r || (i = 64)), e.push(f[c], f[o], f[i], f[s]);
  112. }
  113. return e.join('');
  114. }
  115. function k(r) {
  116. function t(t) {
  117. for (; a < r.length;) {
  118. var e = r.charAt(a++), n = g[e];
  119. if (null != n)
  120. return n;
  121. if (!/^[\s\xa0]*$/.test(e))
  122. throw Error('Unknown base64 encoding at char: ' + e);
  123. }
  124. return t;
  125. }
  126. f = f || b(), g = g || y();
  127. for (var e = '', a = 0;;) {
  128. var n = t(-1), o = t(0), i = t(64), s = t(64);
  129. if (64 === s && -1 === n)
  130. return e;
  131. e += String.fromCharCode(n << 2 | o >> 4), 64 != i && (e += String.fromCharCode(o << 4 & 240 | i >> 2), 64 != s && (e += String.fromCharCode(i << 6 & 192 | s)));
  132. }
  133. }
  134. function O(t, e, n) {
  135. for (var r = x().decorators, a = {}, o = 0; o < r.length; ++o) {
  136. var i, s = r[o];
  137. if (i = !n || s.forms)
  138. t: {
  139. var c = t;
  140. if ((i = s.domains) && (s.sameHost || c !== v.location.hostname))
  141. for (var l = 0; l < i.length; l++)
  142. if (i[l] instanceof RegExp) {
  143. if (i[l].test(c)) {
  144. i = !0;
  145. break t;
  146. }
  147. } else if (0 <= c.indexOf(i[l])) {
  148. i = !0;
  149. break t;
  150. }
  151. i = !1;
  152. }
  153. i && (null == (i = s.placement) && (i = s.fragment ? 2 : 1), i === e && u(a, s.callback()));
  154. }
  155. return a;
  156. }
  157. var x = function () {
  158. var t = {}, e = p.google_tag_data;
  159. return p.google_tag_data = void 0 === e ? t : e, (e = (t = p.google_tag_data).gl) && e.decorators || (e = { decorators: [] }, t.gl = e), e;
  160. }, S = /(.*?)\*(.*?)\*(.*)/, T = /([^?#]+)(\?[^#]*)?(#.*)?/;
  161. function C(t) {
  162. return new RegExp('(.*?)(^|&)' + t + '=([^&]*)&?(.*)');
  163. }
  164. function j(t) {
  165. var e, n = [];
  166. for (e in t)
  167. if (t.hasOwnProperty(e)) {
  168. var r = t[e];
  169. void 0 !== r && r == r && null !== r && '[object Object]' !== r.toString() && (n.push(e), n.push(_(String(r))));
  170. }
  171. return t = n.join('*'), ["1",A(t),t].join('*');
  172. }
  173. var A = function (t, e) {
  174. if (t = [window.navigator.userAgent,(new Date).getTimezoneOffset(),window.navigator.userLanguage||window.navigator.language,Math.floor((new Date).getTime()/60/1e3)-(void 0===e?0:e),t].join('*'), !(e = h)) {
  175. e = Array(256);
  176. for (var n = 0; n < 256; n++) {
  177. for (var r = n, a = 0; a < 8; a++)
  178. r = 1 & r ? r >>> 1 ^ 3988292384 : r >>> 1;
  179. e[n] = r;
  180. }
  181. }
  182. for (h = e, e = 4294967295, n = 0; n < t.length; n++)
  183. e = e >>> 8 ^ h[255 & (e ^ t.charCodeAt(n))];
  184. return ((-1 ^ e) >>> 0).toString(36);
  185. };
  186. function N(t, e) {
  187. if (t = C(t).exec(e)) {
  188. var n = t[2], r = t[4];
  189. e = t[1], r && (e = e + n + r);
  190. }
  191. return e;
  192. }
  193. function E(t) {
  194. var e = void 0 === e ? 3 : e;
  195. try {
  196. if (t) {
  197. t: {
  198. for (var n = 0; n < 3; ++n) {
  199. var r = S.exec(t);
  200. if (r) {
  201. var a = r;
  202. break t;
  203. }
  204. t = decodeURIComponent(t);
  205. }
  206. a = void 0;
  207. }
  208. if (a && '1' === a[1]) {
  209. var o = a[2], i = a[3];
  210. t: {
  211. for (a = 0; a < e; ++a)
  212. if (o === A(i, a)) {
  213. var s = !0;
  214. break t;
  215. }
  216. s = !1;
  217. }
  218. if (s) {
  219. e = {};
  220. var c = i ? i.split('*') : [];
  221. for (i = 0; i < c.length; i += 2)
  222. e[c[i]] = k(c[i + 1]);
  223. return e;
  224. }
  225. }
  226. }
  227. } catch (t) {
  228. }
  229. }
  230. function I(n, t, e, r) {
  231. function a(t) {
  232. var e = (t = N(n, t)).charAt(t.length - 1);
  233. return t && '&' !== e && (t += '&'), t + s;
  234. }
  235. r = void 0 !== r && r;
  236. var o = T.exec(e);
  237. if (!o)
  238. return '';
  239. e = o[1];
  240. var i = o[2] || '';
  241. o = o[3] || '';
  242. var s = n + '=' + t;
  243. return r ? o = '#' + a(o.substring(1)) : i = '?' + a(i.substring(1)), '' + e + i + o;
  244. }
  245. function R(t, e) {
  246. var n = 'FORM' === (t.tagName || '').toUpperCase(), r = O(e, 1, n), a = O(e, 2, n);
  247. for (var o in (e = O(e, 3, n), i(r) && (r = j(r), n ? P('_gl', r, t) : $('_gl', r, t, !1)), !n && i(a) && $('_gl', n = j(a), t, !0), e))
  248. e.hasOwnProperty(o) && L(o, e[o], t);
  249. }
  250. function L(t, e, n, r) {
  251. if (n.tagName) {
  252. if ('a' === n.tagName.toLowerCase())
  253. return $(t, e, n, r);
  254. if ('form' === n.tagName.toLowerCase())
  255. return P(t, e, n);
  256. }
  257. if ('string' == typeof n)
  258. return I(t, e, n, r);
  259. }
  260. function $(t, e, n, r) {
  261. n.href && (t = I(t, e, n.href, void 0 !== r && r), m.test(t) && (n.href = t));
  262. }
  263. function P(t, e, n) {
  264. if (n && n.action) {
  265. var r = (n.method || '').toLowerCase();
  266. if ('get' === r) {
  267. r = n.childNodes || [];
  268. for (var a = !1, o = 0; o < r.length; o++) {
  269. var i = r[o];
  270. if (i.name === t) {
  271. i.setAttribute('value', e), a = !0;
  272. break;
  273. }
  274. }
  275. a || ((r = v.createElement('input')).setAttribute('type', 'hidden'), r.setAttribute('name', t), r.setAttribute('value', e), n.appendChild(r));
  276. } else
  277. 'post' === r && (t = I(t, e, n.action), m.test(t) && (n.action = t));
  278. }
  279. }
  280. var M = function (t) {
  281. try {
  282. t: {
  283. for (var e = 100; t && 0 < e;) {
  284. if (t.href && t.nodeName.match(/^a(?:rea)?$/i)) {
  285. var n = t;
  286. break t;
  287. }
  288. t = t.parentNode, e--;
  289. }
  290. n = null;
  291. }
  292. if (n) {
  293. var r = n.protocol;
  294. 'http:' !== r && 'https:' !== r || R(n, n.hostname);
  295. }
  296. } catch (t) {
  297. }
  298. }, U = function (t) {
  299. try {
  300. t.action && R(t, s(c(t.action), 'host'));
  301. } catch (t) {
  302. }
  303. };
  304. t('google_tag_data.glBridge.auto', function (t, e, n, r) {
  305. (function () {
  306. function t(t) {
  307. e(t.target || t.srcElement || {});
  308. }
  309. var e = M, n = U, r = x();
  310. if (!r.init) {
  311. o('mousedown', t), o('keyup', t), o('submit', function (t) {
  312. n(t.target || t.srcElement || {});
  313. });
  314. var a = HTMLFormElement.prototype.submit;
  315. HTMLFormElement.prototype.submit = function () {
  316. n(this), a.call(this);
  317. }, r.init = !0;
  318. }
  319. }(), t = {
  320. callback: t,
  321. domains: e,
  322. fragment: 2 == (n = 'fragment' === n ? 2 : 1),
  323. placement: n,
  324. forms: !!r,
  325. sameHost: !1
  326. }, x().decorators.push(t));
  327. }), t('google_tag_data.glBridge.decorate', function (t, e, n) {
  328. return L('_gl', t = j(t), e, !!n);
  329. }), t('google_tag_data.glBridge.generate', j), t('google_tag_data.glBridge.get', function (t, e) {
  330. var i, n = (i = !!e, function (t) {
  331. var e = c(p.location.href), n = e.search.replace('?', '');
  332. t: {
  333. for (var r = n.split('&'), a = 0; a < r.length; a++) {
  334. var o = r[a].split('=');
  335. if ('_gl' === decodeURIComponent(o[0]).replace(/\+/g, ' ')) {
  336. r = o.slice(1).join('=');
  337. break t;
  338. }
  339. }
  340. r = void 0;
  341. }
  342. t.query = E(r || '') || {}, a = (r = s(e, 'fragment')).match(C('_gl')), t.fragment = E(a && a[3] || '') || {}, i && function (t, e, n) {
  343. function r(t, e) {
  344. return (t = N('_gl', t)).length && (t = e + t), t;
  345. }
  346. if (p.history && p.history.replaceState) {
  347. var a = C('_gl');
  348. (a.test(e) || a.test(n)) && (t = s(t, 'path'), e = r(e, '?'), n = r(n, '#'), p.history.replaceState({}, void 0, '' + t + e + n));
  349. }
  350. }(e, n, r);
  351. });
  352. return (e = x()).data || (e.data = {
  353. query: {},
  354. fragment: {}
  355. }, n(e.data)), n = {}, (e = e.data) && (u(n, e.query), t && u(n, e.fragment)), n;
  356. });
  357. }(window), function () {
  358. function s(t) {
  359. var e, n = 1;
  360. if (t)
  361. for (n = 0, e = t.length - 1; 0 <= e; e--) {
  362. var r = t.charCodeAt(e);
  363. n = 0 != (r = 266338304 & (n = (n << 6 & 268435455) + r + (r << 14))) ? n ^ r >> 21 : n;
  364. }
  365. return n;
  366. }
  367. function a(t) {
  368. this.w = t || [];
  369. }
  370. a.prototype.set = function (t) {
  371. this.w[t] = !0;
  372. }, a.prototype.encode = function () {
  373. for (var t = [], e = 0; e < this.w.length; e++)
  374. this.w[e] && (t[Math.floor(e / 6)] ^= 1 << e % 6);
  375. for (e = 0; e < t.length; e++)
  376. t[e] = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_'.charAt(t[e] || 0);
  377. return t.join('') + '~';
  378. };
  379. var t, e, n = window.GoogleAnalyticsObject;
  380. if ((t = null != n) && (t = -1 < (n.constructor + '').indexOf('String')), e = t) {
  381. var r = window.GoogleAnalyticsObject;
  382. e = r ? r.replace(/^[\s\xa0]+|[\s\xa0]+$/g, '') : '';
  383. }
  384. var o = e || 'ga', c = /^(?:utma\.)?\d+\.\d+$/, l = /^amp-[\w.-]{22,64}$/, i = !1, u = new a();
  385. function f(t) {
  386. u.set(t);
  387. }
  388. function g(t) {
  389. t = new a(t = S(t));
  390. for (var e = u.w.slice(), n = 0; n < t.w.length; n++)
  391. e[n] = e[n] || t.w[n];
  392. return new a(e).encode();
  393. }
  394. function h(t) {
  395. return 'function' == typeof t;
  396. }
  397. function d(t) {
  398. return null != t && -1 < (t.constructor + '').indexOf('String');
  399. }
  400. function p() {
  401. for (var t = Y.navigator.userAgent + (J.cookie ? J.cookie : '') + (J.referrer ? J.referrer : ''), e = t.length, n = Y.history.length; 0 < n;)
  402. t += n-- ^ e++;
  403. return [St()^2147483647&s(t),Math.round((new Date).getTime()/1e3)].join('.');
  404. }
  405. function v(t) {
  406. var e = J.createElement('img');
  407. return e.width = 1, e.height = 1, e.src = t, e;
  408. }
  409. function m() {
  410. }
  411. function w(t) {
  412. return encodeURIComponent instanceof Function ? encodeURIComponent(t) : (f(28), t);
  413. }
  414. function y(t, e, n, r) {
  415. try {
  416. t.addEventListener ? t.addEventListener(e, n, !!r) : t.attachEvent && t.attachEvent('on' + e, n);
  417. } catch (t) {
  418. f(27);
  419. }
  420. }
  421. function b(t, e) {
  422. return N(J.location[e ? 'href' : 'search'], t);
  423. }
  424. function _() {
  425. var t = '' + J.location.hostname;
  426. return 0 == t.indexOf('www.') ? t.substring(4) : t;
  427. }
  428. function k(t, e) {
  429. var n = t.indexOf(e);
  430. return !(5 != n && 6 != n || '/' != (t = t.charAt(n + e.length)) && '?' != t && '' != t && ':' != t);
  431. }
  432. function O(t, e) {
  433. if (1 == e.length && null != e[0] && 'object' === _typeof(e[0]))
  434. return e[0];
  435. for (var n = {}, r = Math.min(t.length + 1, e.length), a = 0; a < r; a++) {
  436. if ('object' === _typeof(e[a])) {
  437. for (var o in e[a])
  438. e[a].hasOwnProperty(o) && (n[o] = e[a][o]);
  439. break;
  440. }
  441. a < t.length && (n[t[a]] = e[a]);
  442. }
  443. return n;
  444. }
  445. function x() {
  446. this.keys = [], this.values = {}, this.m = {};
  447. }
  448. var S = function (t) {
  449. return t = t.get(Ue), T(t) || (t = []), t;
  450. }, T = function (t) {
  451. return '[object Array]' == Object.prototype.toString.call(Object(t));
  452. }, C = function (t, e) {
  453. return 0 == t.indexOf(e);
  454. }, j = /^[\w\-:/.?=&%!\[\]]+$/, A = /^[\w+/_-]+[=]{0,2}$/, N = function (t, e) {
  455. return (t = t.match('(?:&|#|\\?)' + w(e).replace(/([.*+?^=!:${}()|\[\]\/\\])/g, '\\$1') + '=([^&#]*)')) && 2 == t.length ? t[1] : '';
  456. };
  457. function E(t, e) {
  458. return setTimeout(t, e);
  459. }
  460. function I(t) {
  461. var e = Q._gaUserPrefs;
  462. if (e && e.ioo && e.ioo() || t && !0 === Q['ga-disable-' + t])
  463. return 1;
  464. try {
  465. var n = Q.external;
  466. if (n && n._gaUserPrefs && 'oo' == n._gaUserPrefs)
  467. return 1;
  468. } catch (t) {
  469. }
  470. for (t = [], e = String(tt.cookie || document.cookie).split(';'), n = 0; n < e.length; n++) {
  471. var r = e[n].split('='), a = r[0].replace(/^\s*|\s*$/g, '');
  472. a && 'AMP_TOKEN' == a && ((r = r.slice(1).join('=').replace(/^\s*|\s*$/g, '')) && (r = decodeURIComponent(r)), t.push(r));
  473. }
  474. for (e = 0; e < t.length; e++)
  475. if ('$OPT_OUT' == t[e])
  476. return 1;
  477. return tt.getElementById('__gaOptOutExtension');
  478. }
  479. function R(t) {
  480. var e = [], n = J.cookie.split(';');
  481. t = new RegExp('^\\s*' + t + '=\\s*(.*?)\\s*$');
  482. for (var r = 0; r < n.length; r++) {
  483. var a = n[r].match(t);
  484. a && e.push(a[1]);
  485. }
  486. return e;
  487. }
  488. function L(t, e, n, r, a, o, i) {
  489. if (a = !I(a) && !(nt.test(J.location.hostname) || '/' == n && et.test(r))) {
  490. if (e && 1200 < e.length && (e = e.substring(0, 1200)), n = t + '=' + e + '; path=' + n + '; ', o && (n += 'expires=' + new Date(new Date().getTime() + o).toGMTString() + '; '), r && 'none' !== r && (n += 'domain=' + r + ';'), i && (n += i + ';'), r = J.cookie, J.cookie = n, !(r = r != J.cookie))
  491. t: {
  492. for (t = R(t), r = 0; r < t.length; r++)
  493. if (e == t[r]) {
  494. r = !0;
  495. break t;
  496. }
  497. r = !1;
  498. }
  499. return r;
  500. }
  501. }
  502. function $(t) {
  503. return encodeURIComponent ? encodeURIComponent(t).replace(/\(/g, '%28').replace(/\)/g, '%29') : t;
  504. }
  505. function P() {
  506. if (void 0 !== Y.__ga4__)
  507. return Y.__ga4__;
  508. if (void 0 === z) {
  509. var t = Y.navigator.userAgent;
  510. if (t) {
  511. var e = t;
  512. try {
  513. e = decodeURIComponent(t);
  514. } catch (t) {
  515. }
  516. (t = !(0 <= e.indexOf('Chrome') || 0 <= e.indexOf('CriOS') || !(0 <= e.indexOf('Safari/') || 0 <= e.indexOf('Safari,')))) && (t = 11 <= ((e = rt.exec(e)) ? Number(e[1]) : -1)), z = t;
  517. } else
  518. z = !1;
  519. }
  520. return z;
  521. }
  522. function M(t) {
  523. return (t || i || 'https:' == J.location.protocol ? 'https:' : 'http:') + '//www.google-analytics.com';
  524. }
  525. function U(t) {
  526. this.name = 'len', this.message = t + '-8192';
  527. }
  528. function D(t, e, n) {
  529. if (n = n || m, e.length <= 2036)
  530. ft(t, e, n);
  531. else {
  532. if (!(e.length <= 8192))
  533. throw dt('len', e.length), new U(e.length);
  534. ht(t, e, n) || gt(t, e, n) || ft(t, e, n);
  535. }
  536. }
  537. function G(t, e, n, r) {
  538. gt(t + '?' + e, '', r = r || m, n);
  539. }
  540. function q() {
  541. return Y.gaData = Y.gaData || {};
  542. }
  543. function V(t) {
  544. var e = q();
  545. return e[t] = e[t] || {};
  546. }
  547. function F() {
  548. this.M = [];
  549. }
  550. x.prototype.set = function (t, e, n) {
  551. this.keys.push(t), n ? this.m[':' + t] = e : this.values[':' + t] = e;
  552. }, x.prototype.get = function (t) {
  553. return this.m.hasOwnProperty(':' + t) ? this.m[':' + t] : this.values[':' + t];
  554. }, x.prototype.map = function (t) {
  555. for (var e = 0; e < this.keys.length; e++) {
  556. var n = this.keys[e], r = this.get(n);
  557. r && t(n, r);
  558. }
  559. };
  560. function H() {
  561. Zr.D([m]);
  562. }
  563. function B(t) {
  564. t: {
  565. if (at.test(J.referrer)) {
  566. var e = J.location.hostname.replace(ot, '');
  567. e: {
  568. var n = J.referrer, r = (n = n.replace(/^https?:\/\//, '')).replace(/^[^/]+/, '').split('/'), a = r[2];
  569. if (!(r = (r = 's' == a ? r[3] : a) ? decodeURIComponent(r) : r)) {
  570. if (0 == n.indexOf('xn--')) {
  571. n = '';
  572. break e;
  573. }
  574. (n = n.match(/(.*)\.cdn\.ampproject\.org\/?$/)) && 2 == n.length && (r = n[1].replace(/-/g, '.').replace(/\.\./g, '-'));
  575. }
  576. n = r ? r.replace(ot, '') : '';
  577. }
  578. if ((r = e === n) || (n = '.' + n, r = e.substring(e.length - n.length, e.length) === n), r) {
  579. e = !0;
  580. break t;
  581. }
  582. f(78);
  583. }
  584. e = !1;
  585. }
  586. return e && !1 !== t;
  587. }
  588. var z, K, X, W, Z, Y = window, J = document, Q = window, tt = document, et = /^(www\.)?google(\.com?)?(\.[a-z]{2})?$/, nt = /(^|\.)doubleclick\.net$/i, rt = /^.*Version\/?(\d+)[^\d].*$/i, at = /^https?:\/\/[^/]*cdn\.ampproject\.org\//, ot = /^(?:www\.|m\.|amp\.)+/, it = [], st = function e(n, r, a) {
  589. if (!window.JSON)
  590. return f(58), !1;
  591. var t = Y.XMLHttpRequest;
  592. if (!t)
  593. return f(59), !1;
  594. var o = new t();
  595. return 'withCredentials' in o ? (o.open('POST', (a || 'https://ampcid.google.com/v1/publisher:getClientId') + '?key=AIzaSyA65lEHUEizIsNtlbNo-l2K18dT680nsaM', !0), o.withCredentials = !0, o.setRequestHeader('Content-Type', 'text/plain'), o.onload = function () {
  596. if (K = !1, 4 == o.readyState) {
  597. try {
  598. 200 != o.status && (f(61), ut('', '$ERROR', 30000));
  599. var t = JSON.parse(o.responseText);
  600. t.optOut ? (f(63), ut('', '$OPT_OUT', 31536000000)) : t.clientId ? ut(t.clientId, t.securityToken, 31536000000) : !a && t.alternateUrl ? (X && clearTimeout(X), K = !0, e(n, r, t.alternateUrl)) : (f(64), ut('', '$NOT_FOUND', 3600000));
  601. } catch (t) {
  602. f(65), ut('', '$ERROR', 30000);
  603. }
  604. o = null;
  605. }
  606. }, t = { originScope: 'AMP_ECID_GOOGLE' }, n && (t.securityToken = n), o.send(JSON.stringify(t)), X = E(function () {
  607. f(66), ut('', '$ERROR', 30000);
  608. }, 10000), !0) : (f(60), !1);
  609. }, ct = function () {
  610. K = !1;
  611. }, lt = function (t, e) {
  612. if (void 0 === W) {
  613. W = '';
  614. for (var n = tr(), r = 0; r < n.length; r++) {
  615. var a = n[r];
  616. if (L('AMP_TOKEN', encodeURIComponent(t), '/', a, '', e))
  617. return void (W = a);
  618. }
  619. }
  620. L('AMP_TOKEN', encodeURIComponent(t), '/', W, '', e);
  621. }, ut = function (t, e, n) {
  622. for (X && clearTimeout(X), e && lt(e, n), Z = t, e = it, it = [], n = 0; n < e.length; n++)
  623. e[n](t);
  624. }, ft = function (t, e, n) {
  625. var r = v(t + '?' + e);
  626. r.onload = r.onerror = function () {
  627. r.onload = null, r.onerror = null, n();
  628. };
  629. }, gt = function (t, e, r, a) {
  630. var n = Y.XMLHttpRequest;
  631. if (!n)
  632. return !1;
  633. var o = new n();
  634. return 'withCredentials' in o && (t = t.replace(/^http:/, 'https:'), o.open('POST', t, !0), o.withCredentials = !0, o.setRequestHeader('Content-Type', 'text/plain'), o.onreadystatechange = function () {
  635. if (4 == o.readyState) {
  636. if (a)
  637. try {
  638. var t = o.responseText;
  639. if (t.length < 1)
  640. dt('xhr', 'ver', '0'), r();
  641. else if ('1' != t.charAt(0))
  642. dt('xhr', 'ver', String(t.length)), r();
  643. else if (3 < a.count++)
  644. dt('xhr', 'tmr', '' + a.count), r();
  645. else if (1 == t.length)
  646. r();
  647. else {
  648. var e = t.charAt(1);
  649. if ('d' == e)
  650. G('https://stats.g.doubleclick.net/j/collect', a.U, a, r);
  651. else if ('g' == e) {
  652. ft('https://www.google.%/ads/ga-audiences'.replace('%', 'com'), a.google, r);
  653. var n = t.substring(2);
  654. n && (/^[a-z.]{1,6}$/.test(n) ? ft('https://www.google.%/ads/ga-audiences'.replace('%', n), a.google, m) : dt('tld', 'bcc', n));
  655. } else
  656. dt('xhr', 'brc', e), r();
  657. }
  658. } catch (t) {
  659. dt('xhr', 'rsp'), r();
  660. }
  661. else
  662. r();
  663. o = null;
  664. }
  665. }, o.send(e), !0);
  666. }, ht = function (t, e, n) {
  667. return !!Y.navigator.sendBeacon && !!Y.navigator.sendBeacon(t, e) && (n(), !0);
  668. }, dt = function (t, e, n) {
  669. 1 <= 100 * Math.random() || I('?') || (t = ["t=error","_e="+t,"_v=j81","sr=1"], e && t.push('_f=' + e), n && t.push('_m=' + w(n.substring(0, 100))), t.push('aip=1'), t.push('z=' + St()), ft(M(!0) + '/u/d', t.join('&'), m));
  670. };
  671. function pt(t) {
  672. if (100 != t.get(bn) && s(jt(t, rn)) % 10000 >= 100 * At(t, bn))
  673. throw 'abort';
  674. }
  675. function vt(t) {
  676. if (I(jt(t, cn)))
  677. throw 'abort';
  678. }
  679. function mt() {
  680. var t = J.location.protocol;
  681. if ('http:' != t && 'https:' != t)
  682. throw 'abort';
  683. }
  684. function wt(n) {
  685. try {
  686. Y.navigator.sendBeacon ? f(42) : Y.XMLHttpRequest && 'withCredentials' in new Y.XMLHttpRequest() && f(40);
  687. } catch (t) {
  688. }
  689. n.set(Me, g(n), !0), n.set(Kt, At(n, Kt) + 1);
  690. var r = [];
  691. Pt.map(function (t, e) {
  692. e.F && null != (t = n.get(t)) && t != e.defaultValue && ('boolean' == typeof t && (t *= 1), r.push(e.F + '=' + w('' + t)));
  693. }), !1 === n.get(Mn) && r.push('npa=1'), r.push('z=' + xt()), n.set(Ht, r.join('&'), !0);
  694. }
  695. function yt(t) {
  696. var e = jt(t, zt);
  697. !e && t.get(Bt) && (e = 'beacon');
  698. var n = jt(t, In), r = jt(t, En), a = n || (r ? r + '/3' : M(!1) + '/collect');
  699. switch (jt(t, $n)) {
  700. case 'd':
  701. a = n || (r ? r + '/32' : M(!1) + '/j/collect'), e = t.get(Ln) || void 0, G(a, jt(t, Ht), e, t.Z(Ft));
  702. break;
  703. case 'b':
  704. a = n || (r ? r + '/31' : M(!1) + '/r/collect');
  705. default:
  706. e ? (n = jt(t, Ht), r = (r = t.Z(Ft)) || m, 'image' == e ? ft(a, n, r) : 'xhr' == e && gt(a, n, r) || 'beacon' == e && ht(a, n, r) || D(a, n, r)) : D(a, jt(t, Ht), t.Z(Ft));
  707. }
  708. e = (a = V(a = jt(t, cn))).hitcount, a.hitcount = e ? e + 1 : 1, delete V(a = jt(t, cn)).pending_experiments, t.set(Ft, m, !0);
  709. }
  710. function bt(t) {
  711. q().expId && t.set(Ce, q().expId), q().expVar && t.set(je, q().expVar);
  712. var e = jt(t, cn);
  713. if (e = V(e).pending_experiments) {
  714. var n = [];
  715. for (r in e)
  716. e.hasOwnProperty(r) && e[r] && n.push(encodeURIComponent(r) + '.' + encodeURIComponent(e[r]));
  717. var r = n.join('!');
  718. } else
  719. r = void 0;
  720. r && t.set(Ae, r, !0);
  721. }
  722. function _t() {
  723. if (Y.navigator && 'preview' == Y.navigator.loadPurpose)
  724. throw 'abort';
  725. }
  726. function kt(t) {
  727. var e = Y.gaDevIds;
  728. T(e) && 0 != e.length && t.set('&did', e.join(','), !0);
  729. }
  730. function Ot(t) {
  731. if (!t.get(cn))
  732. throw 'abort';
  733. }
  734. function xt() {
  735. try {
  736. var t = new Uint32Array(1);
  737. return Y.crypto.getRandomValues(t), 2147483647 & t[0];
  738. } catch (t) {
  739. return St();
  740. }
  741. }
  742. F.prototype.add = function (t) {
  743. this.M.push(t);
  744. }, F.prototype.D = function (t) {
  745. try {
  746. for (var e = 0; e < this.M.length; e++) {
  747. var n = t.get(this.M[e]);
  748. n && h(n) && n.call(Y, t);
  749. }
  750. } catch (t) {
  751. }
  752. (e = t.get(Ft)) != m && h(e) && (t.set(Ft, m, !0), setTimeout(e, 10));
  753. };
  754. var St = function () {
  755. return Math.round(2147483647 * Math.random());
  756. };
  757. function Tt(t) {
  758. var e = At(t, Re);
  759. 500 <= e && f(15);
  760. var n = jt(t, Vt);
  761. if ('transaction' != n && 'item' != n) {
  762. n = At(t, $e);
  763. var r = new Date().getTime(), a = At(t, Le);
  764. if (0 == a && t.set(Le, r), 0 < (a = Math.round(2 * (r - a) / 1000)) && (n = Math.min(n + a, 20), t.set(Le, r)), n <= 0)
  765. throw 'abort';
  766. t.set($e, --n);
  767. }
  768. t.set(Re, ++e);
  769. }
  770. function Ct() {
  771. this.data = new x();
  772. }
  773. function jt(t, e) {
  774. return null == (t = t.get(e)) ? '' : '' + t;
  775. }
  776. function At(t, e) {
  777. return null == (t = t.get(e)) || '' === t ? 0 : Number(t);
  778. }
  779. function Nt(t, e, n, r, a) {
  780. this.name = t, this.F = e, this.Z = r, this.o = a, this.defaultValue = n;
  781. }
  782. function Et(t, e, n, r, a) {
  783. return t = new Nt(t, e, n, r, a), Pt.set(t.name, t), t.name;
  784. }
  785. function It(t, e) {
  786. Mt.push([new RegExp("^"+t+"$"),e]);
  787. }
  788. function Rt(t, e, n) {
  789. return Et(t, e, n, void 0, Lt);
  790. }
  791. Ct.prototype.get = function (t) {
  792. var e = Ut(t), n = this.data.get(t);
  793. return e && null == n && (n = h(e.defaultValue) ? e.defaultValue() : e.defaultValue), e && e.Z ? e.Z(this, t, n) : n;
  794. }, Ct.prototype.Z = function (t) {
  795. return (t = this.get(t)) && h(t) ? t : m;
  796. }, Ct.prototype.set = function (t, e, n) {
  797. if (t)
  798. if ('object' == (void 0 === t ? 'undefined' : _typeof(t)))
  799. for (var r in t)
  800. t.hasOwnProperty(r) && $t(this, r, t[r], n);
  801. else
  802. $t(this, t, e, n);
  803. };
  804. function Lt() {
  805. }
  806. var $t = function (t, e, n, r) {
  807. if (null != n)
  808. switch (e) {
  809. case cn:
  810. Rr.test(n);
  811. }
  812. var a = Ut(e);
  813. a && a.o ? a.o(t, e, n, r) : t.data.set(e, n, r);
  814. }, Pt = new x(), Mt = [], Ut = function (t) {
  815. var e = Pt.get(t);
  816. if (!e)
  817. for (var n = 0; n < Mt.length; n++) {
  818. var r = Mt[n], a = r[0].exec(t);
  819. if (a) {
  820. e = r[1](a), Pt.set(e.name, e);
  821. break;
  822. }
  823. }
  824. return e;
  825. }, Dt = Rt('apiVersion', 'v'), Gt = Rt('clientVersion', '_v');
  826. Et('anonymizeIp', 'aip');
  827. var qt = Et('adSenseId', 'a'), Vt = Et('hitType', 't'), Ft = Et('hitCallback'), Ht = Et('hitPayload');
  828. Et('nonInteraction', 'ni'), Et('currencyCode', 'cu'), Et('dataSource', 'ds');
  829. var Bt = Et('useBeacon', void 0, !1), zt = Et('transport');
  830. Et('sessionControl', 'sc', ''), Et('sessionGroup', 'sg'), Et('queueTime', 'qt');
  831. var Kt = Et('_s', '_s');
  832. Et('screenName', 'cd');
  833. var Xt = Et('location', 'dl', ''), Wt = Et('referrer', 'dr'), Zt = Et('page', 'dp', '');
  834. Et('hostname', 'dh');
  835. var Yt = Et('language', 'ul'), Jt = Et('encoding', 'de');
  836. Et('title', 'dt', function () {
  837. return J.title || void 0;
  838. }), It('contentGroup([0-9]+)', function (t) {
  839. return new Nt(t[0], 'cg' + t[1]);
  840. });
  841. var Qt = Et('screenColors', 'sd'), te = Et('screenResolution', 'sr'), ee = Et('viewportSize', 'vp'), ne = Et('javaEnabled', 'je'), re = Et('flashVersion', 'fl');
  842. Et('campaignId', 'ci'), Et('campaignName', 'cn'), Et('campaignSource', 'cs'), Et('campaignMedium', 'cm'), Et('campaignKeyword', 'ck'), Et('campaignContent', 'cc');
  843. var ae = Et('eventCategory', 'ec'), oe = Et('eventAction', 'ea'), ie = Et('eventLabel', 'el'), se = Et('eventValue', 'ev'), ce = Et('socialNetwork', 'sn'), le = Et('socialAction', 'sa'), ue = Et('socialTarget', 'st'), fe = Et('l1', 'plt'), ge = Et('l2', 'pdt'), he = Et('l3', 'dns'), de = Et('l4', 'rrt'), pe = Et('l5', 'srt'), ve = Et('l6', 'tcp'), me = Et('l7', 'dit'), we = Et('l8', 'clt'), ye = Et('l9', '_gst'), be = Et('l10', '_gbt'), _e = Et('l11', '_cst'), ke = Et('l12', '_cbt'), Oe = Et('timingCategory', 'utc'), xe = Et('timingVar', 'utv'), Se = Et('timingLabel', 'utl'), Te = Et('timingValue', 'utt');
  844. Et('appName', 'an'), Et('appVersion', 'av', ''), Et('appId', 'aid', ''), Et('appInstallerId', 'aiid', ''), Et('exDescription', 'exd'), Et('exFatal', 'exf');
  845. var Ce = Et('expId', 'xid'), je = Et('expVar', 'xvar'), Ae = Et('exp', 'exp'), Ne = Et('_utma', '_utma'), Ee = Et('_utmz', '_utmz'), Ie = Et('_utmht', '_utmht'), Re = Et('_hc', void 0, 0), Le = Et('_ti', void 0, 0), $e = Et('_to', void 0, 20);
  846. It('dimension([0-9]+)', function (t) {
  847. return new Nt(t[0], 'cd' + t[1]);
  848. }), It('metric([0-9]+)', function (t) {
  849. return new Nt(t[0], 'cm' + t[1]);
  850. }), Et('linkerParam', void 0, void 0, function (t) {
  851. if (t.get(Pe))
  852. return f(35), sr.generate(mr(t));
  853. var e = jt(t, rn), n = jt(t, On) || '';
  854. return (e = '_ga=2.' + w(fr(n + e, 0) + '.' + n + '-' + e)) + (t = (t = wr(t)) ? (f(44), '&_gac=1.' + w([fr(t.qa,0),t.timestamp,t.qa].join('.'))) : '');
  855. }, Lt);
  856. var Pe = Rt('_cd2l', void 0, !1), Me = Et('usage', '_u'), Ue = Et('_um');
  857. Et('forceSSL', void 0, void 0, function () {
  858. return i;
  859. }, function (t, e, n) {
  860. f(34), i = !!n;
  861. });
  862. var De = Et('_j1', 'jid'), Ge = Et('_j2', 'gjid');
  863. It('\\&(.*)', function (t) {
  864. var n, r, e = new Nt(t[0], t[1]), a = (n = t[0].substring(1), Pt.map(function (t, e) {
  865. e.F == n && (r = e);
  866. }), r && r.name);
  867. return a && (e.Z = function (t) {
  868. return t.get(a);
  869. }, e.o = function (t, e, n, r) {
  870. t.set(a, n, r);
  871. }, e.F = void 0), e;
  872. });
  873. var qe = Rt('_oot'), Ve = Et('previewTask'), Fe = Et('checkProtocolTask'), He = Et('validationTask'), Be = Et('checkStorageTask'), ze = Et('historyImportTask'), Ke = Et('samplerTask'), Xe = Et('_rlt'), We = Et('buildHitTask'), Ze = Et('sendHitTask'), Ye = Et('ceTask'), Je = Et('devIdTask'), Qe = Et('timingTask'), tn = Et('displayFeaturesTask'), en = Et('customTask'), nn = Rt('name'), rn = Rt('clientId', 'cid'), an = Rt('clientIdTime'), on = Rt('storedClientId'), sn = Et('userId', 'uid'), cn = Rt('trackingId', 'tid'), ln = Rt('cookieName', void 0, '_ga'), un = Rt('cookieDomain'), fn = Rt('cookiePath', void 0, '/'), gn = Rt('cookieExpires', void 0, 63072000), hn = Rt('cookieUpdate', void 0, !0), dn = Rt('cookieFlags', void 0, ''), pn = Rt('legacyCookieDomain'), vn = Rt('legacyHistoryImport', void 0, !0), mn = Rt('storage', void 0, 'cookie'), wn = Rt('allowLinker', void 0, !1), yn = Rt('allowAnchor', void 0, !0), bn = Rt('sampleRate', 'sf', 100), _n = Rt('siteSpeedSampleRate', void 0, 1), kn = Rt('alwaysSendReferrer', void 0, !1), On = Rt('_gid', '_gid'), xn = Rt('_gcn'), Sn = Rt('useAmpClientId'), Tn = Rt('_gclid'), Cn = Rt('_gt'), jn = Rt('_ge', void 0, 7776000000), An = Rt('_gclsrc'), Nn = Rt('storeGac', void 0, !0), En = Et('_x_19'), In = Et('transportUrl'), Rn = Et('_r', '_r'), Ln = Et('_dp'), $n = Et('_jt', void 0, 'n'), Pn = Et('allowAdFeatures', void 0, !0), Mn = Et('allowAdPersonalizationSignals', void 0, !0);
  874. function Un(e, t, n, r) {
  875. t[e] = function () {
  876. try {
  877. return r && f(r), n.apply(this, arguments);
  878. } catch (t) {
  879. throw dt('exc', e, t && t.name), t;
  880. }
  881. };
  882. }
  883. function Dn() {
  884. this.V = 100, this.$ = this.fa = !1, this.oa = 'detourexp', this.groups = 1;
  885. }
  886. function Gn(t) {
  887. if ('cookie' == jt(t, mn)) {
  888. if (t.get(hn) || jt(t, on) != jt(t, rn)) {
  889. var e = 1000 * At(t, gn);
  890. Kn(t, rn, ln, e);
  891. }
  892. if (!t.get(hn) && Xn(t) == jt(t, On) || Kn(t, On, xn, 86400000), t.get(Nn)) {
  893. var n = jt(t, Tn);
  894. if (n) {
  895. var r = Math.min(At(t, jn), 1000 * At(t, gn));
  896. r = Math.min(r, 1000 * At(t, Cn) + r - new Date().getTime()), t.data.set(jn, r), e = {};
  897. var a = jt(t, Cn), o = jt(t, An), i = er(jt(t, fn)), s = Qn(jt(t, un)), c = jt(t, cn);
  898. t = jt(t, dn), o && 'aw.ds' != o ? e && (e.ua = !0) : (n = ["1",a,$(n)].join('.'), 0 < r && (e && (e.ta = !0), L('_gac_' + $(c), n, i, s, c, r, t))), rr(e);
  899. }
  900. } else
  901. f(75);
  902. }
  903. }
  904. function qn(t) {
  905. if ('cookie' == jt(t, mn) && !zn && (Gn(t), !zn))
  906. throw 'abort';
  907. }
  908. function Vn(t) {
  909. if (t.get(vn)) {
  910. var e = jt(t, un), n = jt(t, pn) || _(), r = ar('__utma', n, e);
  911. r && (f(19), t.set(Ie, new Date().getTime(), !0), t.set(Ne, r.R), (e = ar('__utmz', n, e)) && r.hash == e.hash && t.set(Ee, e.R));
  912. }
  913. }
  914. var Fn = function (t) {
  915. var e = Y.performance || Y.webkitPerformance;
  916. if (!(e = e && e.timing))
  917. return !1;
  918. var n = e.navigationStart;
  919. return 0 != n && (t[fe] = e.loadEventStart - n, t[he] = e.domainLookupEnd - e.domainLookupStart, t[ve] = e.connectEnd - e.connectStart, t[pe] = e.responseStart - e.requestStart, t[ge] = e.responseEnd - e.responseStart, t[de] = e.fetchStart - n, t[me] = e.domInteractive - n, t[we] = e.domContentLoadedEventStart - n, t[ye] = Yr.L - n, t[be] = Yr.ya - n, Y.google_tag_manager && Y.google_tag_manager._li && (e = Y.google_tag_manager._li, t[_e] = e.cst, t[ke] = e.cbt), !0);
  920. }, Hn = function (t) {
  921. if (Y.top != Y)
  922. return !1;
  923. var e = Y.external, n = e && e.onloadT;
  924. return e && !e.isValidLoadTime && (n = void 0), 2147483648 < n && (n = void 0), 0 < n && e.setPageReadyTime(), null != n && (t[fe] = n, !0);
  925. }, Bn = function (t, e) {
  926. var n = t[e];
  927. (isNaN(n) || 1 / 0 == n || n < 0) && (t[e] = void 0);
  928. }, zn = !1, Kn = function (t, e, n, r) {
  929. var a = Wn(t, e);
  930. if (a) {
  931. n = jt(t, n);
  932. var o = er(jt(t, fn)), i = Qn(jt(t, un)), s = jt(t, dn), c = jt(t, cn);
  933. if ('auto' != i)
  934. L(n, a, o, i, c, r, s) && (zn = !0);
  935. else {
  936. f(32);
  937. for (var l = tr(), u = 0; u < l.length; u++)
  938. if (i = l[u], t.data.set(un, i), L(n, a = Wn(t, e), o, i, c, r, s))
  939. return void (zn = !0);
  940. t.data.set(un, 'auto');
  941. }
  942. }
  943. }, Xn = function (t) {
  944. var e = R(jt(t, xn));
  945. return Zn(t, e);
  946. }, Wn = function (t, e) {
  947. e = $(jt(t, e));
  948. var n = Qn(jt(t, un)).split('.').length;
  949. return 1 < (t = nr(jt(t, fn))) && (n += '-' + t), e ? ["GA1",n,e].join('.') : '';
  950. }, Zn = function (t, e) {
  951. return Yn(e, jt(t, un), jt(t, fn));
  952. }, Yn = function (t, e, n) {
  953. if (!t || t.length < 1)
  954. f(12);
  955. else {
  956. for (var r = [], a = 0; a < t.length; a++) {
  957. var o = t[a], i = o.split('.'), s = i.shift();
  958. (i = ('GA1' == s || '1' == s) && 1 < i.length ? (1 == (o = i.shift().split('-')).length && (o[1] = '1'), o[0] *= 1, o[1] *= 1, {
  959. H: o,
  960. s: i.join('.')
  961. }) : l.test(o) ? {
  962. H: [0,0],
  963. s: o
  964. } : void 0) && r.push(i);
  965. }
  966. if (1 == r.length)
  967. return f(13), r[0].s;
  968. if (0 != r.length)
  969. return f(14), 1 == (r = Jn(r, Qn(e).split('.').length, 0)).length ? r[0].s : (1 < (r = Jn(r, nr(n), 1)).length && f(41), r[0] && r[0].s);
  970. f(12);
  971. }
  972. }, Jn = function (t, e, n) {
  973. for (var r, a = [], o = [], i = 0; i < t.length; i++) {
  974. var s = t[i];
  975. s.H[n] == e ? a.push(s) : null == r || s.H[n] < r ? (o = [s], r = s.H[n]) : s.H[n] == r && o.push(s);
  976. }
  977. return 0 < a.length ? a : o;
  978. }, Qn = function (t) {
  979. return 0 == t.indexOf('.') ? t.substr(1) : t;
  980. }, tr = function () {
  981. var t = [], e = _().split('.');
  982. if (4 == e.length) {
  983. var n = e[e.length - 1];
  984. if (parseInt(n, 10) == n)
  985. return ["none"];
  986. }
  987. for (n = e.length - 2; 0 <= n; n--)
  988. t.push(e.slice(n).join('.'));
  989. return e = J.location.hostname, nt.test(e) || et.test(e) || t.push('none'), t;
  990. }, er = function (t) {
  991. return t ? (1 < t.length && t.lastIndexOf('/') == t.length - 1 && (t = t.substr(0, t.length - 1)), 0 != t.indexOf('/') && (t = '/' + t), t) : '/';
  992. }, nr = function (t) {
  993. return '/' == (t = er(t)) ? 1 : t.split('/').length;
  994. }, rr = function (t) {
  995. t.ta && f(77), t.na && f(74), t.pa && f(73), t.ua && f(69);
  996. };
  997. function ar(t, e, n) {
  998. 'none' == e && (e = '');
  999. var r = [], a = R(t);
  1000. t = '__utma' == t ? 6 : 2;
  1001. for (var o = 0; o < a.length; o++) {
  1002. var i = ('' + a[o]).split('.');
  1003. i.length >= t && r.push({
  1004. hash: i[0],
  1005. R: a[o],
  1006. O: i
  1007. });
  1008. }
  1009. if (0 != r.length)
  1010. return 1 != r.length && (or(e, r) || or(n, r) || or(null, r)) || r[0];
  1011. }
  1012. function or(t, e) {
  1013. if (null == t)
  1014. var n = t = 1;
  1015. else
  1016. n = s(t), t = s(C(t, '.') ? t.substring(1) : '.' + t);
  1017. for (var r = 0; r < e.length; r++)
  1018. if (e[r].hash == n || e[r].hash == t)
  1019. return e[r];
  1020. }
  1021. var ir = new RegExp(/^https?:\/\/([^\/:]+)/), sr = Y.google_tag_data.glBridge, cr = /(.*)([?&#])(?:_ga=[^&#]*)(?:&?)(.*)/, lr = /(.*)([?&#])(?:_gac=[^&#]*)(?:&?)(.*)/;
  1022. function ur(t, e) {
  1023. var n = new Date(), r = Y.navigator, a = r.plugins || [];
  1024. for (t = [t,r.userAgent,n.getTimezoneOffset(),n.getYear(),n.getDate(),n.getHours(),n.getMinutes()+e], e = 0; e < a.length; ++e)
  1025. t.push(a[e].description);
  1026. return s(t.join('.'));
  1027. }
  1028. function fr(t, e) {
  1029. var n = new Date(), r = Y.navigator, a = n.getHours() + Math.floor((n.getMinutes() + e) / 60);
  1030. return s([t,r.userAgent,r.language||"",n.getTimezoneOffset(),n.getYear(),n.getDate()+Math.floor(a/24),(24+a)%24,(60+n.getMinutes()+e)%60].join('.'));
  1031. }
  1032. function gr(t) {
  1033. f(48), this.target = t, this.T = !1;
  1034. }
  1035. gr.prototype.ca = function (t, e) {
  1036. if (t) {
  1037. if (this.target.get(Pe))
  1038. return sr.decorate(mr(this.target), t, e);
  1039. if (t.tagName) {
  1040. if ('a' == t.tagName.toLowerCase())
  1041. return void (t.href && (t.href = hr(this, t.href, e)));
  1042. if ('form' == t.tagName.toLowerCase())
  1043. return dr(this, t);
  1044. }
  1045. if ('string' == typeof t)
  1046. return hr(this, t, e);
  1047. }
  1048. };
  1049. var hr = function (t, e, n) {
  1050. var r = cr.exec(e);
  1051. r && 3 <= r.length && (e = r[1] + (r[3] ? r[2] + r[3] : '')), (r = lr.exec(e)) && 3 <= r.length && (e = r[1] + (r[3] ? r[2] + r[3] : '')), t = t.target.get('linkerParam');
  1052. var a = e.indexOf('?');
  1053. return r = e.indexOf('#'), n ? e += (-1 == r ? '#' : '&') + t : (n = -1 == a ? '?' : '&', e = -1 == r ? e + (n + t) : e.substring(0, r) + n + t + e.substring(r)), (e = e.replace(/&+_ga=/, '&_ga=')).replace(/&+_gac=/, '&_gac=');
  1054. }, dr = function (t, e) {
  1055. if (e && e.action)
  1056. if ('get' == e.method.toLowerCase()) {
  1057. t = t.target.get('linkerParam').split('&');
  1058. for (var n = 0; n < t.length; n++) {
  1059. var r = t[n].split('='), a = r[1];
  1060. r = r[0];
  1061. for (var o = e.childNodes || [], i = !1, s = 0; s < o.length; s++)
  1062. if (o[s].name == r) {
  1063. o[s].setAttribute('value', a), i = !0;
  1064. break;
  1065. }
  1066. i || ((o = J.createElement('input')).setAttribute('type', 'hidden'), o.setAttribute('name', r), o.setAttribute('value', a), e.appendChild(o));
  1067. }
  1068. } else
  1069. 'post' == e.method.toLowerCase() && (e.action = hr(t, e.action));
  1070. };
  1071. function pr(t, e) {
  1072. if (e != J.location.hostname)
  1073. for (var n = 0; n < t.length; n++)
  1074. if (t[n] instanceof RegExp) {
  1075. if (t[n].test(e))
  1076. return 1;
  1077. } else if (0 <= e.indexOf(t[n]))
  1078. return 1;
  1079. }
  1080. function vr(t, e) {
  1081. return e != ur(t, 0) && e != ur(t, -1) && e != ur(t, -2) && e != fr(t, 0) && e != fr(t, -1) && e != fr(t, -2);
  1082. }
  1083. function mr(t) {
  1084. var e = wr(t);
  1085. return {
  1086. _ga: t.get(rn),
  1087. _gid: t.get(On) || void 0,
  1088. _gac: e ? [e.qa,e.timestamp].join('.') : void 0
  1089. };
  1090. }
  1091. function wr(t) {
  1092. function e(t) {
  1093. return null == t || '' === t ? 0 : Number(t);
  1094. }
  1095. var n = t.get(Tn);
  1096. if (n && t.get(Nn)) {
  1097. var r = e(t.get(Cn));
  1098. if (!(1000 * r + e(t.get(jn)) <= new Date().getTime()))
  1099. return {
  1100. timestamp: r,
  1101. qa: n
  1102. };
  1103. f(76);
  1104. }
  1105. }
  1106. function yr(t, e, n) {
  1107. this.aa = e, (e = n) || (e = (e = jt(t, nn)) && 't0' != e ? Ir.test(e) ? '_gat_' + $(jt(t, cn)) : '_gat_' + $(e) : '_gat'), this.Y = e, this.ra = null;
  1108. }
  1109. function br(t, e) {
  1110. if (!(t = t.b).get('dcLoaded')) {
  1111. var n, r = new a(S(t));
  1112. r.set(29), t.set(Ue, r.w), (e = e || {})[ln] && (n = $(e[ln])), function (r, t) {
  1113. var n = t.get(We);
  1114. t.set(We, function (t) {
  1115. Cr(r, t, De), Cr(r, t, Ge);
  1116. var e = n(t);
  1117. return jr(r, t), e;
  1118. });
  1119. var a = t.get(Ze);
  1120. t.set(Ze, function (t) {
  1121. var e = a(t);
  1122. if (Ar(t)) {
  1123. if (P() !== Er(r, t)) {
  1124. f(80);
  1125. var n = {
  1126. U: Nr(r, t, 1),
  1127. google: Nr(r, t, 2),
  1128. count: 0
  1129. };
  1130. G('https://stats.g.doubleclick.net/j/collect', n.U, n);
  1131. } else
  1132. v(Nr(r, t, 0));
  1133. t.set(De, '', !0);
  1134. }
  1135. return e;
  1136. });
  1137. }(e = new yr(t, 'https://stats.g.doubleclick.net/r/collect?t=dc&aip=1&_r=3&', n), t), t.set('dcLoaded', !0);
  1138. }
  1139. }
  1140. function _r(t) {
  1141. if (!t.get('dcLoaded') && 'cookie' == t.get(mn)) {
  1142. var e = new yr(t);
  1143. if (Cr(e, t, De), Cr(e, t, Ge), jr(e, t), Ar(t)) {
  1144. var n = P() !== Er(e, t);
  1145. t.set(Rn, 1, !0), n ? (f(79), t.set($n, 'd', !0), t.set(Ln, {
  1146. U: Nr(e, t, 1),
  1147. google: Nr(e, t, 2),
  1148. count: 0
  1149. }, !0)) : t.set($n, 'b', !0);
  1150. }
  1151. }
  1152. }
  1153. function kr(t) {
  1154. function n(t, e) {
  1155. i.b.data.set(t, e);
  1156. }
  1157. function e(t, e) {
  1158. n(t, e), i.filters.add(t);
  1159. }
  1160. var r, a, o, i = this;
  1161. this.b = new Ct(), this.filters = new F(), n(nn, t[nn]), n(cn, (r = t[cn]) ? r.replace(/^[\s\xa0]+|[\s\xa0]+$/g, '') : ''), n(ln, t[ln]), n(un, t[un] || _()), n(fn, t[fn]), n(gn, t[gn]), n(hn, t[hn]), n(dn, t[dn]), n(pn, t[pn]), n(vn, t[vn]), n(wn, t[wn]), n(yn, t[yn]), n(bn, t[bn]), n(_n, t[_n]), n(kn, t[kn]), n(mn, t[mn]), n(sn, t[sn]), n(an, t[an]), n(Sn, t[Sn]), n(Nn, t[Nn]), n(Pe, t[Pe]), n(En, t[En]), n(Dt, 1), n(Gt, 'j81'), e(qe, vt), e(en, m), e(Ve, _t), e(Fe, mt), e(He, Ot), e(Be, qn), e(ze, Vn), e(Ke, pt), e(Xe, Tt), e(Ye, bt), e(Je, kt), e(tn, _r), e(We, wt), e(Ze, yt), e(Qe, (o = this, function (t) {
  1162. if ('pageview' == t.get(Vt) && !o.I) {
  1163. o.I = !0;
  1164. var e = (r = t, a = Math.min(At(r, _n), 100), !(s(jt(r, rn)) % 100 >= a)), n = 0 < N(jt(t, Xt), 'gclid').length;
  1165. (e || n) && function t(e) {
  1166. var n = {};
  1167. if (Fn(n) || Hn(n)) {
  1168. var r = n[fe];
  1169. null == r || 1 / 0 == r || isNaN(r) || (0 < r ? (Bn(n, he), Bn(n, ve), Bn(n, pe), Bn(n, ge), Bn(n, de), Bn(n, me), Bn(n, we), Bn(n, ye), Bn(n, be), Bn(n, _e), Bn(n, ke), E(function () {
  1170. e(n);
  1171. }, 10)) : y(Y, 'load', function () {
  1172. t(e);
  1173. }, !1));
  1174. }
  1175. }(function (t) {
  1176. e && o.send('timing', t), n && o.send('adtiming', t);
  1177. });
  1178. }
  1179. var r, a;
  1180. })), function (t) {
  1181. var e = Y.navigator, n = Y.screen, r = J.location;
  1182. if (t.set(Wt, function (t, e) {
  1183. var n = J.referrer;
  1184. if (/^(https?|android-app):\/\//i.test(n)) {
  1185. if (t)
  1186. return n;
  1187. if (t = '//' + J.location.hostname, !k(n, t))
  1188. return e && (e = t.replace(/\./g, '-') + '.cdn.ampproject.org', k(n, e)) ? void 0 : n;
  1189. }
  1190. }(!!t.get(kn), !!t.get(Sn))), r) {
  1191. var a = r.pathname || '';
  1192. '/' != a.charAt(0) && (f(31), a = '/' + a), t.set(Xt, r.protocol + '//' + r.hostname + a + r.search);
  1193. }
  1194. n && t.set(te, n.width + 'x' + n.height), n && t.set(Qt, n.colorDepth + '-bit'), n = J.documentElement;
  1195. var o = (a = J.body) && a.clientWidth && a.clientHeight, i = [];
  1196. if (n && n.clientWidth && n.clientHeight && ('CSS1Compat' === J.compatMode || !o) ? i = [n.clientWidth,n.clientHeight] : o && (i = [a.clientWidth,a.clientHeight]), n = i[0] <= 0 || i[1] <= 0 ? '' : i.join('x'), t.set(ee, n), t.set(re, function () {
  1197. var t, e;
  1198. if ((e = (e = Y.navigator) ? e.plugins : null) && e.length)
  1199. for (var n = 0; n < e.length && !t; n++) {
  1200. var r = e[n];
  1201. -1 < r.name.indexOf('Shockwave Flash') && (t = r.description);
  1202. }
  1203. if (!t)
  1204. try {
  1205. var a = new ActiveXObject('ShockwaveFlash.ShockwaveFlash.7');
  1206. t = a.GetVariable('$version');
  1207. } catch (t) {
  1208. }
  1209. if (!t)
  1210. try {
  1211. a = new ActiveXObject('ShockwaveFlash.ShockwaveFlash.6'), t = 'WIN 6,0,21,0', a.AllowScriptAccess = 'always', t = a.GetVariable('$version');
  1212. } catch (t) {
  1213. }
  1214. if (!t)
  1215. try {
  1216. t = (a = new ActiveXObject('ShockwaveFlash.ShockwaveFlash')).GetVariable('$version');
  1217. } catch (t) {
  1218. }
  1219. return t && (a = t.match(/[\d]+/g)) && 3 <= a.length && (t = a[0] + '.' + a[1] + ' r' + a[2]), t || void 0;
  1220. }()), t.set(Jt, J.characterSet || J.charset), t.set(ne, e && 'function' == typeof e.javaEnabled && e.javaEnabled() || !1), t.set(Yt, (e && (e.language || e.browserLanguage) || '').toLowerCase()), t.data.set(Tn, b('gclid', !0)), t.data.set(An, b('gclsrc', !0)), t.data.set(Cn, Math.round(new Date().getTime() / 1000)), r && t.get(yn) && (e = J.location.hash)) {
  1221. for (e = e.split(/[?&#]+/), r = [], n = 0; n < e.length; ++n) {
  1222. (C(e[n], 'utm_id') || C(e[n], 'utm_campaign') || C(e[n], 'utm_source') || C(e[n], 'utm_medium') || C(e[n], 'utm_term') || C(e[n], 'utm_content') || C(e[n], 'gclid') || C(e[n], 'dclid') || C(e[n], 'gclsrc')) && r.push(e[n]);
  1223. }
  1224. 0 < r.length && (e = '#' + r.join('&'), t.set(Xt, t.get(Xt) + e));
  1225. }
  1226. }(this.b), function (t, e) {
  1227. var n = jt(t, ln);
  1228. if (t.data.set(xn, '_ga' == n ? '_gid' : n + '_gid'), 'cookie' == jt(t, mn)) {
  1229. if (zn = !1, n = R(jt(t, ln)), !(n = Zn(t, n))) {
  1230. n = jt(t, un);
  1231. var r = jt(t, pn) || _();
  1232. n = null != (n = ar('__utma', r, n)) ? (f(10), n.O[1] + '.' + n.O[2]) : void 0;
  1233. }
  1234. if (n && (zn = !0), r = n && !t.get(hn))
  1235. if (2 != (r = n.split('.')).length)
  1236. r = !1;
  1237. else if (r = Number(r[1])) {
  1238. var a = At(t, gn);
  1239. r = r + a < new Date().getTime() / 1000;
  1240. } else
  1241. r = !1;
  1242. if (r && (n = void 0), n && (t.data.set(on, n), t.data.set(rn, n), (n = Xn(t)) && t.data.set(On, n)), t.get(Nn) && (n = t.get(Tn), r = t.get(An), !n || r && 'aw.ds' != r)) {
  1243. if (n = {}, J) {
  1244. r = [], a = J.cookie.split(';');
  1245. for (var o = /^\s*_gac_(UA-\d+-\d+)=\s*(.+?)\s*$/, i = 0; i < a.length; i++) {
  1246. var s = a[i].match(o);
  1247. s && r.push({
  1248. ja: s[1],
  1249. value: s[2]
  1250. });
  1251. }
  1252. if (a = {}, r && r.length)
  1253. for (o = 0; o < r.length; o++) {
  1254. '1' != (i = r[o].value.split('.'))[0] || 3 != i.length ? n && (n.na = !0) : i[1] && (a[r[o].ja] ? n && (n.pa = !0) : a[r[o].ja] = [], a[r[o].ja].push({
  1255. timestamp: i[1],
  1256. qa: i[2]
  1257. }));
  1258. }
  1259. r = a;
  1260. } else
  1261. r = {};
  1262. r = r[jt(t, cn)], rr(n), r && 0 != r.length && (n = r[0], t.data.set(Cn, n.timestamp), t.data.set(Tn, n.qa));
  1263. }
  1264. }
  1265. if (t.get(hn) && (n = b('_ga', !!t.get(yn)), o = b('_gl', !!t.get(yn)), a = (r = sr.get(t.get(yn)))._ga, o && 0 < o.indexOf('_ga*') && !a && f(30), o = r.gclid, i = r._gac, n || a || o || i))
  1266. if (n && a && f(36), t.get(wn) || B(t.get(Sn))) {
  1267. if (a && (f(38), t.data.set(rn, a), r._gid && (f(51), t.data.set(On, r._gid))), o ? (f(82), t.data.set(Tn, o), r.gclsrc && t.data.set(An, r.gclsrc)) : i && (r = i.split('.')) && 2 === r.length && (f(37), t.data.set(Tn, r[0]), t.data.set(Cn, r[1])), n)
  1268. t:
  1269. if (r = n.indexOf('.'), -1 == r)
  1270. f(22);
  1271. else {
  1272. if (a = n.substring(0, r), r = (o = n.substring(r + 1)).indexOf('.'), n = o.substring(0, r), o = o.substring(r + 1), '1' == a) {
  1273. if (vr(r = o, n)) {
  1274. f(23);
  1275. break t;
  1276. }
  1277. } else {
  1278. if ('2' != a) {
  1279. f(22);
  1280. break t;
  1281. }
  1282. if (a = '', r = 0 < (r = o.indexOf('-')) ? (a = o.substring(0, r), o.substring(r + 1)) : o.substring(1), vr(a + r, n)) {
  1283. f(53);
  1284. break t;
  1285. }
  1286. a && (f(2), t.data.set(On, a));
  1287. }
  1288. f(11), t.data.set(rn, r), (n = b('_gac', !!t.get(yn))) && ('1' != (n = n.split('.'))[0] || 4 != n.length ? f(72) : vr(n[3], n[1]) ? f(71) : (t.data.set(Tn, n[3]), t.data.set(Cn, n[2]), f(70)));
  1289. }
  1290. } else
  1291. f(21);
  1292. e && (f(9), t.data.set(rn, w(e))), t.get(rn) || ((e = (e = Y.gaGlobal && Y.gaGlobal.vid) && -1 != e.search(c) ? e : void 0) ? (f(17), t.data.set(rn, e)) : (f(8), t.data.set(rn, p()))), t.get(On) || (f(3), t.data.set(On, p())), Gn(t);
  1293. }(this.b, t[rn]), this.b.set(qt, (a = Y.gaGlobal = Y.gaGlobal || {}).hid = a.hid || St());
  1294. }
  1295. gr.prototype.S = function (r, a, t) {
  1296. function e(t) {
  1297. try {
  1298. t = t || Y.event;
  1299. t: {
  1300. var e = t.target || t.srcElement;
  1301. for (t = 100; e && 0 < t;) {
  1302. if (e.href && e.nodeName.match(/^a(?:rea)?$/i)) {
  1303. var n = e;
  1304. break t;
  1305. }
  1306. e = e.parentNode, t--;
  1307. }
  1308. n = {};
  1309. }
  1310. ('http:' == n.protocol || 'https:' == n.protocol) && pr(r, n.hostname || '') && n.href && (n.href = hr(o, n.href, a));
  1311. } catch (t) {
  1312. f(26);
  1313. }
  1314. }
  1315. var o = this;
  1316. this.target.get(Pe) ? sr.auto(function () {
  1317. return mr(o.target);
  1318. }, r, a ? 'fragment' : '', t) : (this.T || (this.T = !0, y(J, 'mousedown', e, !1), y(J, 'keyup', e, !1)), t && y(J, 'submit', function (t) {
  1319. if ((t = (t = t || Y.event).target || t.srcElement) && t.action) {
  1320. var e = t.action.match(ir);
  1321. e && pr(r, e[1]) && dr(o, t);
  1322. }
  1323. }));
  1324. };
  1325. var Or = /^(GTM|OPT)-[A-Z0-9]+$/, xr = /;_gaexp=[^;]*/g, Sr = /;((__utma=)|([^;=]+=GAX?\d+\.))[^;]*/g, Tr = /^https?:\/\/[\w\-.]+\.google.com(:\d+)?\/optimize\/opt-launch\.html\?.*$/, Cr = function (t, e, n) {
  1326. !1 === e.get(Pn) || e.get(n) || ('1' == R(t.Y)[0] ? e.set(n, '', !0) : e.set(n, '' + St(), !0));
  1327. }, jr = function (t, e) {
  1328. Ar(e) && L(t.Y, '1', jt(e, fn), jt(e, un), jt(e, cn), 60000, jt(e, dn));
  1329. }, Ar = function (t) {
  1330. return !!t.get(De) && !1 !== t.get(Pn);
  1331. }, Nr = function (t, e, n) {
  1332. function r(t) {
  1333. Ut(t).F && a.set(Ut(t).F, e.get(t));
  1334. }
  1335. var a = new x();
  1336. r(Dt), r(Gt), r(cn), r(rn), r(De), 0 != n && 1 != n || (r(sn), r(Ge), r(On)), a.set(Ut(Me).F, g(e));
  1337. var o = '';
  1338. return a.map(function (t, e) {
  1339. o += w(t) + '=', o += w('' + e) + '&';
  1340. }), o += 'z=' + St(), 0 == n ? o = t.aa + o : 1 == n ? o = 't=dc&aip=1&_r=3&' + o : 2 == n && (o = 't=sr&aip=1&_r=4&slf_rd=1&' + o), o;
  1341. }, Er = function (t, e) {
  1342. return null === t.ra && (t.ra = 1 === function (t) {
  1343. var e, n = new Dn();
  1344. if (n.fa && n.$)
  1345. return 0;
  1346. if (n.$ = !0, t) {
  1347. if (n.oa && void 0 !== t.get(n.oa))
  1348. return At(t, n.oa);
  1349. if (0 == t.get(_n))
  1350. return 0;
  1351. }
  1352. return 0 == n.V ? 0 : (void 0 === e && (e = xt()), 0 == e % n.V ? Math.floor(e / n.V) % n.groups + 1 : 0);
  1353. }(e), t.ra && f(33)), t.ra;
  1354. }, Ir = /^gtm\d+$/, Rr = /^(UA|YT|MO|GP)-(\d+)-(\d+)$/;
  1355. kr.prototype.get = function (t) {
  1356. return this.b.get(t);
  1357. }, kr.prototype.set = function (t, e) {
  1358. this.b.set(t, e);
  1359. };
  1360. var Lr = {
  1361. pageview: [Zt],
  1362. event: [ae,oe,ie,se],
  1363. social: [ce,le,ue],
  1364. timing: [Oe,xe,Te,Se]
  1365. };
  1366. function $r(t) {
  1367. return 'prerender' != J.visibilityState && (t(), 1);
  1368. }
  1369. function Pr(r) {
  1370. if (!$r(r)) {
  1371. f(16);
  1372. var a = !1;
  1373. y(J, 'visibilitychange', function t() {
  1374. if (!a && $r(r)) {
  1375. a = !0;
  1376. var e = t, n = J;
  1377. n.removeEventListener ? n.removeEventListener('visibilitychange', e, !1) : n.detachEvent && n.detachEvent('onvisibilitychange', e);
  1378. }
  1379. });
  1380. }
  1381. }
  1382. function Mr(t) {
  1383. if (h(t[0]))
  1384. this.u = t[0];
  1385. else {
  1386. var e = Vr.exec(t[0]);
  1387. if (null != e && 4 == e.length && (this.c = e[1] || 't0', this.K = e[2] || '', this.methodName = e[3], this.a = [].slice.call(t, 1), this.K || (this.A = 'create' == this.methodName, this.i = 'require' == this.methodName, this.g = 'provide' == this.methodName, this.ba = 'remove' == this.methodName), this.i && (3 <= this.a.length ? (this.X = this.a[1], this.W = this.a[2]) : this.a[1] && (d(this.a[1]) ? this.X = this.a[1] : this.W = this.a[1]))), e = t[1], t = t[2], !this.methodName)
  1388. throw 'abort';
  1389. if (this.i && (!d(e) || '' == e))
  1390. throw 'abort';
  1391. if (this.g && (!d(e) || '' == e || !h(t)))
  1392. throw 'abort';
  1393. if (Fr(this.c) || Fr(this.K))
  1394. throw 'abort';
  1395. if (this.g && 't0' != this.c)
  1396. throw 'abort';
  1397. }
  1398. }
  1399. kr.prototype.send = function (t) {
  1400. if (!(arguments.length < 1)) {
  1401. if ('string' == typeof t)
  1402. var e = t, n = [].slice.call(arguments, 1);
  1403. else
  1404. e = t && t[Vt], n = arguments;
  1405. e && ((n = O(Lr[e] || [], n))[Vt] = e, this.b.set(n, void 0, !0), this.filters.D(this.b), this.b.data.m = {});
  1406. }
  1407. }, kr.prototype.ma = function (t, e) {
  1408. var n = this;
  1409. Br(t, n, e) || (Kr(t, function () {
  1410. Br(t, n, e);
  1411. }), zr(String(n.get(nn)), t, void 0, e, !0));
  1412. };
  1413. var Ur, Dr, Gr, qr, Vr = /^(?:(\w+)\.)?(?:(\w+):)?(\w+)$/;
  1414. function Fr(t) {
  1415. return 0 <= t.indexOf('.') || 0 <= t.indexOf(':');
  1416. }
  1417. function Hr(t, e) {
  1418. Ur.set(t, e), e = qr.get(t) || [];
  1419. for (var n = 0; n < e.length; n++)
  1420. e[n]();
  1421. qr.set(t, []);
  1422. }
  1423. Ur = new x(), Gr = new x(), qr = new x(), Dr = {
  1424. ec: 45,
  1425. ecommerce: 46,
  1426. linkid: 47
  1427. };
  1428. var Br = function (t, e, n) {
  1429. e == Yr || e.get(nn);
  1430. var r = Ur.get(t);
  1431. return !!h(r) && (e.plugins_ = e.plugins_ || new x(), e.plugins_.get(t) || e.plugins_.set(t, new r(e, n || {})), !0);
  1432. }, zr = function (t, e, n, r, a) {
  1433. if (!h(Ur.get(e)) && !Gr.get(e)) {
  1434. if (Dr.hasOwnProperty(e) && f(Dr[e]), t = Yr.j(t), Or.test(e)) {
  1435. if (f(52), !t)
  1436. return !0;
  1437. r = {
  1438. id: e,
  1439. B: (n = r || {}).dataLayer || 'dataLayer',
  1440. ia: !!t.get('anonymizeIp'),
  1441. sync: a,
  1442. G: !1
  1443. }, t.get('&gtm') == e && (r.G = !0);
  1444. var o = String(t.get('name'));
  1445. 't0' != o && (r.target = o), I(String(t.get('trackingId'))) || (r.clientId = String(t.get(rn)), r.ka = Number(t.get(an)), n = n.palindrome ? Sr : xr, n = (n = J.cookie.replace(/^|(; +)/g, ';').match(n)) ? n.sort().join('').substring(1) : void 0, r.la = n, r.qa = N(t.b.get(Xt) || '', 'gclid')), n = r.B, o = new Date().getTime(), Y[n] = Y[n] || [], o = { 'gtm.start': o }, a || (o.event = 'gtm.js'), Y[n].push(o), l = 'https://www.google-analytics.com/gtm/js?id=' + w((c = r).id), 'dataLayer' != c.B && s('l', c.B), s('t', c.target), s('cid', c.clientId), s('cidt', c.ka), s('gac', c.la), s('aip', c.ia), c.sync && s('m', 'sync'), s('cycle', c.G), c.qa && s('gclid', c.qa), Tr.test(J.referrer) && s('cb', String(St())), n = l;
  1446. }
  1447. if (!n && Dr.hasOwnProperty(e) ? (f(39), n = e + '.js') : f(43), n) {
  1448. if (t) {
  1449. var i = t.get(En);
  1450. d(i) || (i = void 0);
  1451. }
  1452. n && 0 <= n.indexOf('/') || (n = (i ? i + '/34' : M(!1) + '/plugins/ua/') + n), t = (i = Wr(n)).protocol, r = J.location.protocol, ('https:' == t || t == r || 'http:' == t && 'http:' == r) && Xr(i) && ((i = i.url) && (t = (t = J.querySelector && J.querySelector('script[nonce]') || null) && (t.nonce || t.getAttribute && t.getAttribute('nonce')) || '', a ? (a = '', t && A.test(t) && (a = ' nonce="' + t + '"'), j.test(i) && J.write('<script' + a + ' src="' + i + '"></script>')) : ((a = J.createElement('script')).type = 'text/javascript', a.async = !0, a.src = i, t && a.setAttribute('nonce', t), (i = J.getElementsByTagName('script')[0]).parentNode.insertBefore(a, i))), Gr.set(e, !0));
  1453. }
  1454. }
  1455. function s(t, e) {
  1456. e && (l += '&' + t + '=' + w(e));
  1457. }
  1458. var c, l;
  1459. }, Kr = function (t, e) {
  1460. var n = qr.get(t) || [];
  1461. n.push(e), qr.set(t, n);
  1462. }, Xr = function (t) {
  1463. var e = Wr(J.location.href);
  1464. return !(!C(t.url, 'https://www.google-analytics.com/gtm/js?id=') && (t.query || 0 <= t.url.indexOf('?') || 0 <= t.path.indexOf('://') || (t.host != e.host || t.port != e.port) && (e = 'http:' == t.protocol ? 80 : 443, 'www.google-analytics.com' != t.host || (t.port || e) != e || !C(t.path, '/plugins/'))));
  1465. }, Wr = function (t) {
  1466. function e(t) {
  1467. var e = t.hostname || '', n = 0 <= e.indexOf(']');
  1468. return e = e.split(n ? ']' : ':')[0].toLowerCase(), n && (e += ']'), n = (t.protocol || '').toLowerCase(), n = +t.port || ('http:' == n ? 80 : 'https:' == n ? 443 : ''), t = t.pathname || '', C(t, '/') || (t = '/' + t), [e,""+n,t];
  1469. }
  1470. var n = J.createElement('a');
  1471. n.href = J.location.href;
  1472. var r = (n.protocol || '').toLowerCase(), a = e(n), o = n.search || '', i = r + '//' + a[0] + (a[1] ? ':' + a[1] : '');
  1473. return C(t, '//') ? t = r + t : C(t, '/') ? t = i + t : !t || C(t, '?') ? t = i + a[2] + (t || o) : t.split('/')[0].indexOf(':') < 0 && (t = i + a[2].substring(0, a[2].lastIndexOf('/')) + '/' + t), n.href = t, r = e(n), {
  1474. protocol: (n.protocol || '').toLowerCase(),
  1475. host: r[0],
  1476. port: r[1],
  1477. path: r[2],
  1478. query: n.search || '',
  1479. url: t || ''
  1480. };
  1481. }, Zr = {
  1482. ga: function () {
  1483. Zr.f = [];
  1484. }
  1485. };
  1486. Zr.ga(), Zr.D = function (t) {
  1487. var e = Zr.J.apply(Zr, arguments);
  1488. for (e = Zr.f.concat(e), Zr.f = []; 0 < e.length && !Zr.v(e[0]) && (e.shift(), !(0 < Zr.f.length)););
  1489. Zr.f = Zr.f.concat(e);
  1490. }, Zr.J = function (t) {
  1491. for (var e = [], n = 0; n < arguments.length; n++)
  1492. try {
  1493. var r = new Mr(arguments[n]);
  1494. r.g ? Hr(r.a[0], r.a[1]) : (r.i && (r.ha = zr(r.c, r.a[0], r.X, r.W)), e.push(r));
  1495. } catch (t) {
  1496. }
  1497. return e;
  1498. }, Zr.v = function (t) {
  1499. try {
  1500. if (t.u)
  1501. t.u.call(Y, Yr.j('t0'));
  1502. else {
  1503. var e = t.c == o ? Yr : Yr.j(t.c);
  1504. if (t.A) {
  1505. if ('t0' == t.c && null === (e = Yr.create.apply(Yr, t.a)))
  1506. return !0;
  1507. } else if (t.ba)
  1508. Yr.remove(t.c);
  1509. else if (e)
  1510. if (t.i) {
  1511. if (t.ha && (t.ha = zr(t.c, t.a[0], t.X, t.W)), !Br(t.a[0], e, t.W))
  1512. return !0;
  1513. } else if (t.K) {
  1514. var n = t.methodName, r = t.a, a = e.plugins_.get(t.K);
  1515. a[n].apply(a, r);
  1516. } else
  1517. e[t.methodName].apply(e, t.a);
  1518. }
  1519. } catch (t) {
  1520. }
  1521. };
  1522. var Yr = function (t) {
  1523. f(1), Zr.D.apply(Zr, [arguments]);
  1524. };
  1525. Yr.h = {}, Yr.P = [], Yr.L = 0, Yr.ya = 0, Yr.answer = 42;
  1526. var Jr = [cn,un,nn];
  1527. Yr.create = function (t) {
  1528. var e = O(Jr, [].slice.call(arguments));
  1529. e[nn] || (e[nn] = 't0');
  1530. var n = '' + e[nn];
  1531. if (Yr.h[n])
  1532. return Yr.h[n];
  1533. if (function (t) {
  1534. var e;
  1535. if (B(t[Sn]) && (void 0 === Z && (e = (e = sr.get()) && e._ga || void 0) && (Z = e, f(81)), void 0 !== Z))
  1536. return t[rn] || (t[rn] = Z), 0;
  1537. if (t[Sn]) {
  1538. if (f(67), t[mn] && 'cookie' != t[mn])
  1539. return;
  1540. if (void 0 !== Z)
  1541. t[rn] || (t[rn] = Z);
  1542. else {
  1543. t: {
  1544. e = String(t[un] || _());
  1545. var n = String(t[fn] || '/'), r = R(String(t[ln] || '_ga'));
  1546. if (!(e = Yn(r, e, n)) || c.test(e))
  1547. e = !0;
  1548. else if (0 == (e = R('AMP_TOKEN')).length)
  1549. e = !0;
  1550. else {
  1551. if (1 == e.length && ('$RETRIEVING' == (e = decodeURIComponent(e[0])) || '$OPT_OUT' == e || '$ERROR' == e || '$NOT_FOUND' == e)) {
  1552. e = !0;
  1553. break t;
  1554. }
  1555. e = !1;
  1556. }
  1557. }
  1558. if (e && function t(e, n) {
  1559. var r = R('AMP_TOKEN');
  1560. return 1 < r.length ? (f(55), !1) : '$OPT_OUT' == (r = decodeURIComponent(r[0] || '')) || '$ERROR' == r || I(n) ? (f(62), !1) : at.test(J.referrer) || '$NOT_FOUND' != r ? void 0 !== Z ? (f(56), E(function () {
  1561. e(Z);
  1562. }, 0), !0) : K ? (it.push(e), !0) : '$RETRIEVING' == r ? (f(57), E(function () {
  1563. t(e, n);
  1564. }, 10000), !0) : (K = !0, r && '$' != r[0] || (lt('$RETRIEVING', 30000), setTimeout(ct, 30000), r = ''), !!st(r, n) && (it.push(e), !0)) : (f(68), !1);
  1565. }(H, String(t[cn])))
  1566. return 1;
  1567. }
  1568. }
  1569. }(e))
  1570. return null;
  1571. if (e = new kr(e), Yr.h[n] = e, Yr.P.push(e), h(n = q().tracker_created))
  1572. try {
  1573. n(e);
  1574. } catch (t) {
  1575. }
  1576. return e;
  1577. }, Yr.remove = function (t) {
  1578. for (var e = 0; e < Yr.P.length; e++)
  1579. if (Yr.P[e].get(nn) == t) {
  1580. Yr.P.splice(e, 1), Yr.h[t] = null;
  1581. break;
  1582. }
  1583. }, Yr.j = function (t) {
  1584. return Yr.h[t];
  1585. }, Yr.getAll = function () {
  1586. return Yr.P.slice(0);
  1587. }, Yr.N = function () {
  1588. 'ga' != o && f(49);
  1589. var t = Y[o];
  1590. if (!t || 42 != t.answer) {
  1591. Yr.L = t && t.l, Yr.ya = +new Date(), Yr.loaded = !0;
  1592. var e = Y[o] = Yr;
  1593. if (Un('create', e, e.create), Un('remove', e, e.remove), Un('getByName', e, e.j, 5), Un('getAll', e, e.getAll, 6), Un('get', e = kr.prototype, e.get, 7), Un('set', e, e.set, 4), Un('send', e, e.send), Un('requireSync', e, e.ma), Un('get', e = Ct.prototype, e.get), Un('set', e, e.set), 'https:' != J.location.protocol && !i) {
  1594. t: {
  1595. e = J.getElementsByTagName('script');
  1596. for (var n = 0; n < e.length && n < 100; n++) {
  1597. var r = e[n].src;
  1598. if (r && 0 == r.indexOf(M(!0) + '/analytics')) {
  1599. e = !0;
  1600. break t;
  1601. }
  1602. }
  1603. e = !1;
  1604. }
  1605. e && (i = !0);
  1606. }
  1607. e = ((Y.gaplugins = Y.gaplugins || {}).Linker = gr).prototype, Hr('linker', gr), Un('decorate', e, e.ca, 20), Un('autoLink', e, e.S, 25), Hr('displayfeatures', br), Hr('adfeatures', br), t = t && t.q, T(t) ? Zr.D.apply(Yr, t) : f(50);
  1608. }
  1609. }, Yr.da = function () {
  1610. for (var t = Yr.getAll(), e = 0; e < t.length; e++)
  1611. t[e].get(nn);
  1612. };
  1613. var Qr = Yr.N, ta = Y[o];
  1614. ta && ta.r ? Qr() : Pr(Qr), Pr(function () {
  1615. Zr.D(["provide","render",m]);
  1616. });
  1617. }(window);