2021-01-29 00:20:46 +05:30
/ * *
2019-09-04 21:01:54 +05:30
* @ description JavaScript tracker for Snowplow
2021-01-29 00:20:46 +05:30
* @ version 2.16 . 2
2019-09-04 21:01:54 +05:30
* @ copyright Anthon Pang , Snowplow Analytics Ltd
* @ license Simplified BSD
2021-01-29 00:20:46 +05:30
*
* Documentation : http : //bit.ly/sp-js
2019-09-04 21:01:54 +05:30
* /
2021-01-29 00:20:46 +05:30
'use strict' ; ( function ( ) { function H ( a ) { "@babel/helpers - typeof" ; H = "function" === typeof Symbol && "symbol" === typeof Symbol . iterator ? function ( a ) { return typeof a } : function ( a ) { return a && "function" === typeof Symbol && a . constructor === Symbol && a !== Symbol . prototype ? "symbol" : typeof a } ; return H ( a ) } function Db ( a , b ) { var c = Object . keys ( a ) ; if ( Object . getOwnPropertySymbols ) { var e = Object . getOwnPropertySymbols ( a ) ; b && ( e = e . filter ( function ( b ) { return Object . getOwnPropertyDescriptor ( a , b ) . enumerable } ) ) ; c . push . apply ( c , e ) } return c }
function ld ( a ) { for ( var b = 1 ; b < arguments . length ; b ++ ) { var c = null != arguments [ b ] ? arguments [ b ] : { } ; b % 2 ? Db ( Object ( c ) , ! 0 ) . forEach ( function ( b ) { var d = c [ b ] ; b in a ? Object . defineProperty ( a , b , { value : d , enumerable : ! 0 , configurable : ! 0 , writable : ! 0 } ) : a [ b ] = d } ) : Object . getOwnPropertyDescriptors ? Object . defineProperties ( a , Object . getOwnPropertyDescriptors ( c ) ) : Db ( Object ( c ) ) . forEach ( function ( b ) { Object . defineProperty ( a , b , Object . getOwnPropertyDescriptor ( c , b ) ) } ) } return a } function pa ( a ) { var b = Array . isArray ( a ) ? hb ( a ) : void 0 ; b || ( b =
"undefined" !== typeof Symbol && Symbol . iterator in Object ( a ) ? Array . from ( a ) : void 0 ) ; if ( ! ( a = b || Eb ( a ) ) ) throw new TypeError ( "Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method." ) ; return a } function Eb ( a , b ) { if ( a ) { if ( "string" === typeof a ) return hb ( a , b ) ; var c = Object . prototype . toString . call ( a ) . slice ( 8 , - 1 ) ; "Object" === c && a . constructor && ( c = a . constructor . name ) ; if ( "Map" === c || "Set" === c ) return Array . from ( a ) ; if ( "Arguments" === c || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/ . test ( c ) ) return hb ( a ,
b ) } } function hb ( a , b ) { if ( null == b || b > a . length ) b = a . length ; for ( var c = 0 , e = Array ( b ) ; c < b ; c ++ ) e [ c ] = a [ c ] ; return e } function Fa ( a , b ) { var c ; if ( "undefined" === typeof Symbol || null == a [ Symbol . iterator ] ) { if ( Array . isArray ( a ) || ( c = Eb ( a ) ) || b && a && "number" === typeof a . length ) { c && ( a = c ) ; var e = 0 ; b = function ( ) { } ; return { s : b , n : function ( ) { return e >= a . length ? { done : ! 0 } : { done : ! 1 , value : a [ e ++ ] } } , e : function ( a ) { throw a ; } , f : b } } throw new TypeError ( "Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method." ) ;
} var d = ! 0 , f = ! 1 , h ; return { s : function ( ) { c = a [ Symbol . iterator ] ( ) } , n : function ( ) { var a = c . next ( ) ; d = a . done ; return a } , e : function ( a ) { f = ! 0 ; h = a } , f : function ( ) { try { d || null == c . return || c . return ( ) } finally { if ( f ) throw h ; } } } } function qa ( a , b , c ) { return c = { path : b , exports : { } , require : function ( a , b ) { throw Error ( "Dynamic requires are not currently supported by @rollup/plugin-commonjs" ) ; } } , a ( c , c . exports ) , c . exports } function ra ( a ) { var b = - 1 , c = null == a ? 0 : a . length ; for ( this . clear ( ) ; ++ b < c ; ) { var e = a [ b ] ; this . set ( e [ 0 ] , e [ 1 ] ) } } function Y ( a ) { var b =
- 1 , c = null == a ? 0 : a . length ; for ( this . clear ( ) ; ++ b < c ; ) { var e = a [ b ] ; this . set ( e [ 0 ] , e [ 1 ] ) } } function sa ( a ) { var b = - 1 , c = null == a ? 0 : a . length ; for ( this . clear ( ) ; ++ b < c ; ) { var e = a [ b ] ; this . set ( e [ 0 ] , e [ 1 ] ) } } function ta ( a ) { this . size = ( this . _ _data _ _ = new Ga ( a ) ) . size } function ua ( a ) { var b = - 1 , c = null == a ? 0 : a . length ; for ( this . _ _data _ _ = new Ha ; ++ b < c ; ) this . add ( a [ b ] ) } function Ia ( a , b , c , e , d ) { if ( a === b ) b = ! 0 ; else if ( null == a || null == b || ! T ( a ) && ! T ( b ) ) b = a !== a && b !== b ; else a : { var f = F ( a ) , h = F ( b ) , g = f ? "[object Array]" : Fb ( a ) , k = h ? "[object Array]" : Fb ( b ) ;
g = "[object Arguments]" == g ? "[object Object]" : g ; k = "[object Arguments]" == k ? "[object Object]" : k ; var p = "[object Object]" == g ; h = "[object Object]" == k ; if ( ( k = g == k ) && ib ( a ) ) { if ( ! ib ( b ) ) { b = ! 1 ; break a } f = ! 0 ; p = ! 1 } if ( k && ! p ) d || ( d = new Ja ) , b = f || Rb ( a ) ? gc ( a , b , c , e , Ia , d ) : md ( a , b , g , c , e , Ia , d ) ; else { if ( ! ( c & 1 ) && ( f = p && hc . call ( a , "__wrapped__" ) , g = h && hc . call ( b , "__wrapped__" ) , f || g ) ) { a = f ? a . value ( ) : a ; b = g ? b . value ( ) : b ; d || ( d = new Ja ) ; b = Ia ( a , b , c , e , d ) ; break a } if ( k ) b : if ( d || ( d = new Ja ) , f = c & 1 , g = ic ( a , Ka , jc ) , h = g . length , k = ic ( b , Ka , jc ) . length , h == k ||
f ) { for ( k = h ; k -- ; ) { var x = g [ k ] ; if ( ! ( f ? x in b : nd . call ( b , x ) ) ) { b = ! 1 ; break b } } p = d . get ( a ) ; x = d . get ( b ) ; if ( p && x ) b = p == b && x == a ; else { p = ! 0 ; d . set ( a , b ) ; d . set ( b , a ) ; for ( var q = f ; ++ k < h ; ) { x = g [ k ] ; var n = a [ x ] , z = b [ x ] ; if ( e ) var t = f ? e ( z , n , x , b , a , d ) : e ( n , z , x , a , b , d ) ; if ( void 0 === t ? n !== z && ! Ia ( n , z , c , e , d ) : ! t ) { p = ! 1 ; break } q || ( q = "constructor" == x ) } p && ! q && ( c = a . constructor , e = b . constructor , c != e && "constructor" in a && "constructor" in b && ! ( "function" == typeof c && c instanceof c && "function" == typeof e && e instanceof e ) && ( p = ! 1 ) ) ; d [ "delete" ] ( a ) ; d [ "delete" ] ( b ) ;
b = p } } else b = ! 1 ; else b = ! 1 } } return b } function jb ( a , b ) { if ( "function" != typeof a || null != b && "function" != typeof b ) throw new TypeError ( "Expected a function" ) ; var c = function d ( ) { var c = arguments , h = b ? b . apply ( this , c ) : c [ 0 ] , g = d . cache ; if ( g . has ( h ) ) return g . get ( h ) ; c = a . apply ( this , c ) ; d . cache = g . set ( h , c ) || g ; return c } ; c . cache = new ( jb . Cache || Ha ) ; return c } function kc ( a ) { if ( "string" == typeof a ) return a ; if ( F ( a ) ) return lc ( a , kc ) + "" ; if ( ba ( a ) ) return mc ? mc . call ( a ) : "" ; var b = a + "" ; return "0" == b && 1 / a == - od ? "-0" : b } function nc ( a ) { if ( ! oc ( a ) ) { a =
a . text || "" ; var b = va . getElementsByTagName ( "title" ) ; b && void 0 !== b [ 0 ] && ( a = b [ 0 ] . text ) } return a } function Sb ( a ) { var b = /^(?:(?:https?|ftp):)\/*(?:[^@]+@)?([^:/#]+)/ . exec ( a ) ; return b ? b [ 1 ] : a } function bc ( a ) { var b = a . length ; "." === a . charAt ( -- b ) && ( a = a . slice ( 0 , b ) ) ; "*." === a . slice ( 0 , 2 ) && ( a = a . slice ( 1 ) ) ; return a } function cc ( a ) { var b = "" , c = Gb ( "referrer" , ca . location . href ) || Gb ( "referer" , ca . location . href ) ; if ( c ) return c ; if ( a ) return a ; try { b = ca . top . document . referrer } catch ( e ) { if ( ca . parent ) try { b = ca . parent . document . referrer } catch ( d ) { b =
"" } } "" === b && ( b = va . referrer ) ; return b } function v ( a , b , c , e ) { if ( a . addEventListener ) return a . addEventListener ( b , c , e ) , ! 0 ; if ( a . attachEvent ) return a . attachEvent ( "on" + b , c ) ; a [ "on" + b ] = c } function Gb ( a , b ) { return ( a = ( new RegExp ( "^[^#]*[?&]" + a + "=([^&#]*)" ) ) . exec ( b ) ) ? decodeURIComponent ( a [ 1 ] . replace ( /\+/g , " " ) ) : null } function La ( a ) { var b = Array . prototype . slice . call ( arguments , 1 ) ; return pd ( da ( a , function ( a ) { if ( "function" === typeof a ) try { return a . apply ( null , b ) } catch ( e ) { } else return a } ) ) } function E ( a ) { "undefined" !== typeof console &&
console . warn ( "Snowplow: " + a ) } function kb ( a ) { return a . className . match ( /\S+/g ) || [ ] } function Hb ( a , b ) { if ( Array . isArray ( a ) || ! N ( a ) ) return function ( ) { return ! 0 } ; if ( a . hasOwnProperty ( "filter" ) ) return a . filter ; var c = a . hasOwnProperty ( "whitelist" ) ; a = a . whitelist || a . blacklist ; Array . isArray ( a ) || ( a = [ a ] ) ; for ( var e = { } , d = 0 ; d < a . length ; d ++ ) e [ a [ d ] ] = ! 0 ; return b ? function ( a ) { a : { a = kb ( a ) ; var b ; for ( b = 0 ; b < a . length ; b ++ ) if ( e [ a [ b ] ] ) { a = ! 0 ; break a } a = ! 1 } return a === c } : function ( a ) { return a . name in e === c } } function qd ( a ) { return N ( a ) ? a . hasOwnProperty ( "transform" ) ?
a . transform : function ( a ) { return a } : function ( a ) { return a } } function Tb ( a , b ) { var c = 2 < arguments . length && void 0 !== arguments [ 2 ] ? arguments [ 2 ] : 63072E3 ; try { var e = Date . now ( ) + 1E3 * c ; wa . setItem ( "" . concat ( a , ".expires" ) , e ) ; wa . setItem ( a , b ) ; return ! 0 } catch ( d ) { return ! 1 } } function pc ( a ) { try { return wa . removeItem ( a ) , wa . removeItem ( a + ".expires" ) , ! 0 } catch ( b ) { return ! 1 } } function rd ( ) { for ( var a = "_sp_root_domain_test_" + ( new Date ) . getTime ( ) , b = "_test_value_" + ( new Date ) . getTime ( ) , c = ca . location . hostname . split ( "." ) , e = c . length - 1 ; 0 <=
e ; ) { var d = c . slice ( e , c . length ) . join ( "." ) ; A ( a , b , 0 , "/" , d ) ; if ( A ( a ) === b ) { A ( a , "" , - 1 , "/" , d ) ; a = va . cookie . split ( "; " ) ; b = [ ] ; for ( c = 0 ; c < a . length ; c ++ ) "_sp_root_domain_test_" === a [ c ] . substring ( 0 , 21 ) && b . push ( a [ c ] ) ; a = b ; for ( b = 0 ; b < a . length ; b ++ ) A ( a [ b ] , "" , - 1 , "/" , d ) ; return d } -- e } return ca . location . hostname } function qc ( a , b ) { for ( var c = 0 ; c < b . length ; c ++ ) if ( b [ c ] === a ) return ! 0 ; return ! 1 } function A ( a , b , c , e , d , f , h ) { return 1 < arguments . length ? va . cookie = a + "=" + encodeURIComponent ( b ) + ( c ? "; Expires=" + ( new Date ( + new Date + 1E3 * c ) ) . toUTCString ( ) :
"" ) + ( e ? "; Path=" + e : "" ) + ( d ? "; Domain=" + d : "" ) + ( f ? "; SameSite=" + f : "" ) + ( h ? "; Secure" : "" ) : decodeURIComponent ( ( ( "; " + va . cookie ) . split ( "; " + a + "=" ) [ 1 ] || "" ) . split ( ";" ) [ 0 ] ) } function lb ( a ) { a = parseInt ( a ) ; return isNaN ( a ) ? void 0 : a } function Ib ( a ) { a = parseFloat ( a ) ; return isNaN ( a ) ? void 0 : a } function xa ( a ) { return a && "function" === typeof a ? ! 0 : ! 1 } function sd ( a , b , c , e , d ) { function f ( e , f , h ) { h = h || { } ; g . hasOwnProperty ( e ) ? E ( "Tracker namespace " + e + " already exists." ) : ( g [ e ] = new a ( d , e , b , c , h ) , g [ e ] . setCollectorUrl ( f ) ) } function h ( ) { var a ;
for ( a = 0 ; a < arguments . length ; a += 1 ) { var b = arguments [ a ] ; var c = Array . prototype . shift . call ( b ) ; if ( xa ( c ) ) try { c . apply ( g , b ) } catch ( mb ) { E ( "Custom callback error - " . concat ( mb ) ) } finally { continue } var d = c . split ( ":" ) ; c = d [ 0 ] ; d = 1 < d . length ? d [ 1 ] . split ( ";" ) : [ ] ; d = [ c , d ] ; c = d [ 0 ] ; d = d [ 1 ] ; if ( "newTracker" === c ) f ( b [ 0 ] , b [ 1 ] , b [ 2 ] ) ; else if ( "setCollectorCf" !== c && "setCollectorUrl" !== c || d && 0 !== d . length ) { var e = [ ] ; if ( d && 0 !== d . length ) for ( var h = 0 ; h < d . length ; h ++ ) g . hasOwnProperty ( d [ h ] ) ? e . push ( g [ d [ h ] ] ) : E ( 'Warning: Tracker namespace "' + d [ h ] +
'" not configured' ) ; else e = da ( g ) ; 0 === e . length && E ( "Warning: No tracker configured" ) ; for ( d = 0 ; d < e . length ; d ++ ) e [ d ] [ c ] . apply ( e [ d ] , b ) } else d = b [ 0 ] , b = b [ 1 ] , E ( c + " is deprecated. Set the collector when a new tracker instance using newTracker." ) , b = void 0 === b ? "sp" : b , f ( b ) , g [ b ] [ c ] ( d ) } } for ( var g = { } , k = 0 ; k < e . length ; k ++ ) h ( e [ k ] ) ; return { push : h } } function rc ( a , b , c ) { if ( "translate.googleusercontent.com" === a ) "" === c && ( c = b ) , a = /^(?:https?|ftp)(?::\/*(?:[^?]+))([?][^#]+)/ . exec ( b ) , b = Gb ( "u" , a [ 1 ] ) , a = Sb ( b ) ; else { var e ; if ( ! ( e = "cc.bingj.com" ===
a || "webcache.googleusercontent.com" === a ) ) a : { if ( /^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/ . test ( a ) ) try { var d = document . body . children [ 0 ] . children [ 0 ] . children [ 0 ] . children [ 0 ] . children [ 0 ] . children [ 0 ] . innerHTML ; e = "You have reached the cached page for" === d . slice ( 0 , 36 ) ; break a } catch ( f ) { e = ! 1 ; break a } e = void 0 } e && ( b = document . links [ 0 ] . href , a = Sb ( b ) ) } return [ a , b , c ] } function td ( ) { try { var a = ! ! ya . localStorage } catch ( b ) { a =
! 0 } if ( ! a ) return ! 1 ; try { return ya . localStorage . setItem ( "modernizr" , "modernizr" ) , ya . localStorage . removeItem ( "modernizr" ) , ! 0 } catch ( b ) { return ! 1 } } function ud ( ) { var a = ya , b = "inner" ; "innerWidth" in ya || ( b = "client" , a = Ma . documentElement || Ma . body ) ; var c = a [ b + "Width" ] ; a = a [ b + "Height" ] ; return 0 <= c && 0 <= a ? c + "x" + a : null } function vd ( ) { var a = Ma . documentElement , b = Ma . body , c = Math . max ( a . clientWidth , a . offsetWidth , a . scrollWidth ) ; a = Math . max ( a . clientHeight , a . offsetHeight , a . scrollHeight , b ? Math . max ( b . offsetHeight , b . scrollHeight ) :
0 ) ; return isNaN ( c ) || isNaN ( a ) ? "" : c + "x" + a } function wd ( a , b ) { var c , e = { pdf : "application/pdf" , qt : "video/quicktime" , realp : "audio/x-pn-realaudio-plugin" , wma : "application/x-mplayer2" , dir : "application/x-director" , fla : "application/x-shockwave-flash" , java : "application/x-java-vm" , gears : "application/x-googlegears" , ag : "application/x-silverlight" } , d = { } ; if ( R . mimeTypes && R . mimeTypes . length ) for ( c in e ) if ( Object . prototype . hasOwnProperty . call ( e , c ) ) { var f = R . mimeTypes [ e [ c ] ] ; d [ c ] = f && f . enabledPlugin ? "1" : "0" } R . constructor ===
window . Navigator && "unknown" !== typeof R . javaEnabled && void 0 !== R . javaEnabled && R . javaEnabled ( ) && ( d . java = "1" ) ; xa ( ya . GearsFactory ) && ( d . gears = "1" ) ; d . res = nb . width + "x" + nb . height ; d . cd = nb . colorDepth ; a && ( a = b || "testcookie" , void 0 === R . cookieEnabled ? ( A ( a , "1" ) , a = "1" === A ( a ) ? "1" : "0" ) : a = R . cookieEnabled ? "1" : "0" , d . cookie = a ) ; return d } function xd ( a , b , c ) { function e ( b , d ) { for ( var e , f , h , k ; null !== ( e = b . parentNode ) && void 0 !== e && "A" !== ( f = b . tagName . toUpperCase ( ) ) && "AREA" !== f ; ) b = e ; if ( void 0 !== b . href ) { e = b . hostname || Sb ( b . href ) ; f =
e . toLowerCase ( ) ; var p = b . href . replace ( e , f ) ; /^(javascript|vbscript|jscript|mocha|livescript|ecmascript|mailto):/i . test ( p ) || ( e = b . id , f = kb ( b ) , h = b . target , k = g ? b . innerHTML : null , p = unescape ( p ) , a . trackLinkClick ( p , e , f , h , k , c ( La ( d , b ) ) ) ) } } function d ( a ) { return function ( b ) { b = b || window . event ; var c = b . which || b . button ; var d = b . target || b . srcElement ; "click" === b . type ? d && e ( d , a ) : "mousedown" === b . type ? 1 !== c && 2 !== c || ! d ? p = x = null : ( p = c , x = d ) : "mouseup" === b . type && ( c === p && d === x && e ( d , a ) , p = x = null ) } } var f , h , g , k , p , x ; return { configureLinkClickTracking : function ( a ,
b , c , d ) { g = c ; k = d ; h = b ; f = Hb ( a , ! 0 ) } , addClickListeners : function ( ) { var a = document . links , c ; for ( c = 0 ; c < a . length ; c ++ ) if ( f ( a [ c ] ) && ! a [ c ] [ b ] ) { var e = a [ c ] ; h ? ( v ( e , "mouseup" , d ( k ) , ! 1 ) , v ( e , "mousedown" , d ( k ) , ! 1 ) ) : v ( e , "click" , d ( k ) , ! 1 ) ; a [ c ] [ b ] = ! 0 } } } } function yd ( a , b , c ) { function e ( a ) { return a [ zd ( [ "name" , "id" , "type" , "nodeName" ] , function ( b ) { return a [ b ] && "string" === typeof a [ b ] } ) ] } function d ( a ) { for ( ; a && a . nodeName && "HTML" !== a . nodeName . toUpperCase ( ) && "FORM" !== a . nodeName . toUpperCase ( ) ; ) a = a . parentNode ; if ( a && a . nodeName && "FORM" === a . nodeName . toUpperCase ( ) ) return e ( a ) }
function f ( a ) { var b = [ ] ; L ( k , function ( c ) { c = a . getElementsByTagName ( c ) . filter ( function ( a ) { return a . hasOwnProperty ( p ) } ) ; L ( c , function ( a ) { if ( "submit" !== a . type ) { var c = { name : e ( a ) , value : a . value , nodeName : a . nodeName } ; a . type && "INPUT" === a . nodeName . toUpperCase ( ) && ( c . type = a . type ) ; "checkbox" !== a . type && "radio" !== a . type || a . checked || ( c . value = null ) ; b . push ( c ) } } ) } ) ; return b } function h ( b , f ) { return function ( g ) { g = g . target ; var h = g . nodeName && "INPUT" === g . nodeName . toUpperCase ( ) ? g . type : null , k = "checkbox" !== g . type || g . checked ? n ( g . value ,
g ) : null ; ( "change_form" === b || "checkbox" !== h && "radio" !== h ) && a . trackFormFocusOrChange ( b , d ( g ) , e ( g ) , g . nodeName , h , kb ( g ) , k , c ( La ( f , g , h , k ) ) ) } } function g ( b ) { return function ( d ) { d = d . target ; var g = f ( d ) ; L ( g , function ( a ) { a . value = n ( a . value , a ) } ) ; a . trackFormSubmission ( e ( d ) , kb ( d ) , g , c ( La ( b , d , g ) ) ) } } var k = [ "textarea" , "input" , "select" ] , p = b + "form" , x = function ( ) { return ! 0 } , q = function ( ) { return ! 0 } , n = function ( a ) { return a } ; return { configureFormTracking : function ( a ) { a && ( x = Hb ( a . forms , ! 0 ) , q = Hb ( a . fields , ! 1 ) , n = qd ( a . fields ) ) } , addFormListeners : function ( a ) { L ( document . getElementsByTagName ( "form" ) ,
function ( b ) { x ( b ) && ! b [ p ] && ( L ( k , function ( c ) { L ( b . getElementsByTagName ( c ) , function ( b ) { q ( b ) && ! b [ p ] && "password" !== b . type . toLowerCase ( ) && ( v ( b , "focus" , h ( "focus_form" , a ) , ! 1 ) , v ( b , "change" , h ( "change_form" , a ) , ! 1 ) , b [ p ] = ! 0 ) } ) } ) , v ( b , "submit" , g ( a ) ) , b [ p ] = ! 0 ) } ) } } } function Ad ( a ) { function b ( b , e , d , f , h , g ) { a . trackSelfDescribingEvent ( { schema : "iglu:com.snowplowanalytics.snowplow/application_error/jsonschema/1-0-1" , data : { programmingLanguage : "JAVASCRIPT" , message : b || "JS Exception. Browser doesn't support ErrorEvent API" , stackTrace : h &&
h . stack ? h . stack : null , lineNumber : d , lineColumn : f , fileName : e } } , g ) } return { trackError : b , enableErrorTracking : function ( a , e , d ) { v ( Bd , "error" , function ( c ) { if ( xa ( a ) && a ( c ) || null == a ) { var f = xa ( e ) ? d . concat ( e ( c ) ) : d ; b ( c . message , c . filename , c . lineno , c . colno , c . error , f ) } } , ! 0 ) } } } function sc ( a , b , c , e , d , f , h , g , k , p , x ) { function q ( a ) { var b = "?" , c = { co : ! 0 , cx : ! 0 } , d = ! 0 , e ; for ( e in a ) a . hasOwnProperty ( e ) && ! c . hasOwnProperty ( e ) && ( d ? d = ! 1 : b += "&" , b += encodeURIComponent ( e ) + "=" + encodeURIComponent ( a [ e ] ) ) ; for ( var g in c ) a . hasOwnProperty ( g ) && c . hasOwnProperty ( g ) &&
( b += "&" + g + "=" + encodeURIComponent ( a [ g ] ) ) ; return b } function n ( a ) { a = Cd ( a , function ( a ) { return a . toString ( ) } ) ; return { evt : a , bytes : z ( JSON . stringify ( a ) ) } } function z ( a ) { for ( var b = 0 , c = 0 ; c < a . length ; c ++ ) { var d = a . charCodeAt ( c ) ; 127 >= d ? b += 1 : 2047 >= d ? b += 2 : 55296 <= d && 57343 >= d ? ( b += 4 , c ++ ) : b = 65535 > d ? b + 3 : b + 4 } return b } function t ( ) { for ( ; D . length && "string" !== typeof D [ 0 ] && "object" !== H ( D [ 0 ] ) ; ) D . shift ( ) ; if ( 1 > D . length ) O = ! 1 ; else { if ( ! oc ( r ) ) throw "No Snowplow collector configured, cannot track" ; O = ! 0 ; var a = D [ 0 ] ; if ( P ) { var b = function ( a ) { for ( var b =
0 ; b < a ; b ++ ) D . shift ( ) ; e && Tb ( w , JSON . stringify ( D . slice ( 0 , p ) ) ) ; t ( ) } , c = mb ( r ) , d = setTimeout ( function ( ) { c . abort ( ) ; O = ! 1 } , x ) , f = function ( a ) { for ( var b = 0 , c = 0 ; b < a . length && ! ( c += a [ b ] . bytes , c >= g ) ; ) b += 1 ; return b } ( D ) ; c . onreadystatechange = function ( ) { if ( 4 === c . readyState && 200 <= c . status && 400 > c . status ) { clearTimeout ( d ) ; if ( A && ! v ) try { uc . setItem ( J , ! 0 ) } catch ( tc ) { } b ( f ) } else 4 === c . readyState && 400 <= c . status && ( clearTimeout ( d ) , O = ! 1 ) } ; a = da ( D . slice ( 0 , f ) , function ( a ) { return a . evt } ) ; if ( 0 < a . length ) { var h ; if ( ! ( h = v ) && ( h = A ) ) try { h = uc . getItem ( J ) } catch ( tc ) { h =
void 0 } if ( v = h ) { h = new Blob ( [ m ( Jb ( a ) ) ] , { type : "application/json" } ) ; try { var q = navigator . sendBeacon ( r , h ) } catch ( tc ) { q = ! 1 } } ! 0 === q && b ( f ) ; A && q || c . send ( m ( Jb ( a ) ) ) } } else { q = new Image ( 1 , 1 ) ; var n = ! 0 ; q . onload = function ( ) { n && ( n = ! 1 , D . shift ( ) , e && Tb ( w , JSON . stringify ( D . slice ( 0 , p ) ) ) , t ( ) ) } ; q . onerror = function ( ) { n && ( O = n = ! 1 ) } ; q . src = k ? r + a . replace ( "?" , "?stm=" + ( new Date ) . getTime ( ) + "&" ) : r + a ; setTimeout ( function ( ) { n && O && ( n = ! 1 , t ( ) ) } , x ) } } } function mb ( a ) { var b = new XMLHttpRequest ; b . open ( "POST" , a , ! 0 ) ; b . withCredentials = ! 0 ; b . setRequestHeader ( "Content-Type" ,
"application/json; charset=UTF-8" ) ; return b } function m ( a ) { return JSON . stringify ( { schema : "iglu:com.snowplowanalytics.snowplow/payload_data/jsonschema/1-0-4" , data : a } ) } function Jb ( a ) { for ( var b = ( new Date ) . getTime ( ) . toString ( ) , c = 0 ; c < a . length ; c ++ ) a [ c ] . stm = b ; return a } var y = window . localStorage , O = ! 1 , r , v ; d = d . toLowerCase ? d . toLowerCase ( ) : d ; var F = null === d || ! 0 === d || "beacon" === d || "true" === d , A = ! ! ( F && navigator && navigator . sendBeacon ) && F , P = ( "post" === d || A ) && "get" !== d , L = ( P = P && ! ! ( window . XMLHttpRequest && "withCredentials" in
new XMLHttpRequest ) ) ? f : "/i" ; h = td ( ) && e && P && h || 1 ; var w = "snowplowOutQueue_" . concat ( a , "_" ) . concat ( b , "_" ) . concat ( P ? "post2" : "get" ) ; var J = "spBeaconPreflight_" . concat ( a , "_" ) . concat ( b ) ; if ( e ) try { var D = JSON . parse ( y . getItem ( w ) ) } catch ( $e ) { } Array . isArray ( D ) || ( D = [ ] ) ; c . outQueues . push ( D ) ; P && 1 < h && c . bufferFlushers . push ( function ( ) { O || t ( ) } ) ; return { enqueueRequest : function ( a , b ) { r = b + L ; if ( P ) { a = n ( a ) ; if ( a . bytes >= g ) { E ( "Event of size " + a . bytes + " is too long - the maximum size is " + g ) ; mb ( r ) . send ( m ( Jb ( [ a . evt ] ) ) ) ; return } D . push ( a ) } else D . push ( q ( a ) ) ;
a = ! 1 ; e && ( a = Tb ( w , JSON . stringify ( D . slice ( 0 , p ) ) ) ) ; O || a && ! ( D . length >= h ) || t ( ) } , executeQueue : t } } function Dd ( a ) { var b = { } ; "object" === H ( a ) && null !== a && Object . getOwnPropertyNames ( a ) . forEach ( function ( c , e , d ) { "function" === typeof a [ c ] && ( b [ c ] = Ed ( a [ c ] ) ) } ) ; return b } function Fd ( a ) { if ( ! a ) return a ; switch ( 4 - a . length % 4 ) { case 2 : a += "==" ; break ; case 3 : a += "=" } a = a . replace ( /-/g , "+" ) . replace ( /_/g , "/" ) ; return Gd ( a ) } function Gd ( a ) { var b = 0 , c = 0 ; var e = "" ; var d = [ ] ; if ( ! a ) return a ; a += "" ; do { var f = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=" . indexOf ( a . charAt ( b ++ ) ) ;
var h = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=" . indexOf ( a . charAt ( b ++ ) ) ; e = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=" . indexOf ( a . charAt ( b ++ ) ) ; var g = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=" . indexOf ( a . charAt ( b ++ ) ) ; var k = f << 18 | h << 12 | e << 6 | g ; f = k >> 16 & 255 ; h = k >> 8 & 255 ; k &= 255 ; 64 === e ? d [ c ++ ] = String . fromCharCode ( f ) : 64 === g ? d [ c ++ ] = String . fromCharCode ( f , h ) : d [ c ++ ] = String . fromCharCode ( f , h , k ) } while ( b < a . length ) ; e = d . join ( "" ) ; return function ( a ) { return decodeURIComponent ( a . split ( "" ) . map ( function ( a ) { return "%" +
( "00" + a . charCodeAt ( 0 ) . toString ( 16 ) ) . slice ( - 2 ) } ) . join ( "" ) ) } ( e . replace ( /\0+$/ , "" ) ) } function Kb ( a ) { if ( ! vc ( a ) ) return ! 1 ; for ( var b in a ) if ( Object . prototype . hasOwnProperty . call ( a , b ) ) return ! 0 ; return ! 1 } function vc ( a ) { return "undefined" !== typeof a && null !== a && ( a . constructor === { } . constructor || a . constructor === [ ] . constructor ) } function za ( a ) { var b = { } , c = function ( a , c ) { null != c && "" !== c && ( b [ a ] = c ) } ; return { add : c , addDict : function ( a ) { for ( var b in a ) Object . prototype . hasOwnProperty . call ( a , b ) && c ( b , a [ b ] ) } , addJson : function ( b ,
d , f ) { if ( f && Kb ( f ) ) if ( f = JSON . stringify ( f ) , a ) { if ( f ) { d = f ; var e = f = 0 , g = [ ] ; if ( d ) { d = unescape ( encodeURIComponent ( d ) ) ; do { var k = d . charCodeAt ( f ++ ) ; var p = d . charCodeAt ( f ++ ) ; var x = d . charCodeAt ( f ++ ) ; var q = k << 16 | p << 8 | x ; k = q >> 18 & 63 ; p = q >> 12 & 63 ; x = q >> 6 & 63 ; q &= 63 ; g [ e ++ ] = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=" . charAt ( k ) + "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=" . charAt ( p ) + "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=" . charAt ( x ) + "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=" . charAt ( q ) } while ( f <
d . length ) ; f = g . join ( "" ) ; d = d . length % 3 ; d = ( d ? f . slice ( 0 , d - 3 ) : f ) + "===" . slice ( d || 3 ) } d = d . replace ( /=/g , "" ) . replace ( /\+/g , "-" ) . replace ( /\//g , "_" ) } else d = f ; c ( b , d ) } else c ( d , f ) } , build : function ( ) { return b } } } function Hd ( ) { var a = [ ] , b = [ ] ; return { getGlobalPrimitives : function ( ) { return a } , getConditionalProviders : function ( ) { return b } , addGlobalContexts : function ( c ) { var e = [ ] , d = [ ] ; c = Fa ( c ) ; var f ; try { for ( c . s ( ) ; ! ( f = c . n ( ) ) . done ; ) { var h = f . value ; wc ( h ) ? e . push ( h ) : fa ( h ) && d . push ( h ) } } catch ( g ) { c . e ( g ) } finally { c . f ( ) } a = a . concat ( d ) ; b = b . concat ( e ) } ,
clearGlobalContexts : function ( ) { b = [ ] ; a = [ ] } , removeGlobalContexts : function ( c ) { c = Fa ( c ) ; var e ; try { var d = function ( ) { var c = e . value ; wc ( c ) ? b = b . filter ( function ( a ) { return ! ob ( a , c ) } ) : fa ( c ) && ( a = a . filter ( function ( a ) { return ! ob ( a , c ) } ) ) } ; for ( c . s ( ) ; ! ( e = c . n ( ) ) . done ; ) d ( ) } catch ( f ) { c . e ( f ) } finally { c . f ( ) } } , getApplicableContexts : function ( c ) { c = c . build ( ) ; var e = Kb ( c ) && "e" in c ? "string" === typeof c . e : ! 1 ; if ( e ) { c = ld ( { } , c ) ; try { null != c && pb ( c , "ue_px" , qb ) && ( c . ue _px = JSON . parse ( Fd ( J ( c , [ "ue_px" ] ) ) ) ) ; var d = c } catch ( g ) { d = c } c = d ; e = "string" ===
typeof J ( c , "ue_px.data.schema" ) ? J ( c , "ue_px.data.schema" ) : "string" === typeof J ( c , "ue_pr.data.schema" ) ? J ( c , "ue_pr.data.schema" ) : "string" === typeof J ( c , "schema" ) ? J ( c , "schema" ) : "" ; var f = J ( c , "e" , "" ) ; d = [ ] ; var h = Na ( a , c , f , e ) ; d . push . apply ( d , pa ( h ) ) ; c = Id ( b , c , f , e ) ; d . push . apply ( d , pa ( c ) ) ; return d } return [ ] } } } function Jd ( a ) { if ( "*" === a [ 0 ] || "*" === a [ 1 ] ) return ! 1 ; if ( 0 < a . slice ( 2 ) . length ) { var b = ! 1 ; a = Fa ( a . slice ( 2 ) ) ; var c ; try { for ( a . s ( ) ; ! ( c = a . n ( ) ) . done ; ) if ( "*" === c . value ) b = ! 0 ; else if ( b ) return ! 1 } catch ( e ) { a . e ( e ) } finally { a . f ( ) } return ! 0 } return 2 ==
a . length ? ! 0 : ! 1 } function xc ( a ) { return ( a = a . split ( "." ) ) && 1 < a . length ? Jd ( a ) : ! 1 } function yc ( a ) { a = /^iglu:((?:(?:[a-zA-Z0-9-_]+|\*).)+(?:[a-zA-Z0-9-_]+|\*))\/([a-zA-Z0-9-_.]+|\*)\/jsonschema\/([1-9][0-9]*|\*)-(0|[1-9][0-9]*|\*)-(0|[1-9][0-9]*|\*)$/ . exec ( a ) ; if ( null !== a && xc ( a [ 1 ] ) ) return a . slice ( 1 , 6 ) } function Lb ( a ) { if ( a = yc ( a ) ) { var b = a [ 0 ] ; return 5 === a . length && xc ( b ) } return ! 1 } function Kd ( a ) { return Array . isArray ( a ) && a . every ( function ( a ) { return "string" === typeof a } ) } function zc ( a ) { return Kd ( a ) ? a . every ( function ( a ) { return Lb ( a ) } ) :
"string" === typeof a ? Lb ( a ) : ! 1 } function Oa ( a ) { return Kb ( a ) && "schema" in a && "data" in a ? "string" === typeof a . schema && "object" === H ( a . data ) : ! 1 } function Ld ( a ) { var b = 0 ; if ( T ( a ) && "[object Object]" == U ( a ) ) { var c = Md ( a ) ; null === c ? c = ! 0 : ( c = Nd . call ( c , "constructor" ) && c . constructor , c = "function" == typeof c && c instanceof c && Ac . call ( c ) == Od ) } else c = ! 1 ; if ( c ) { if ( null != a && pb ( a , "accept" , qb ) ) if ( zc ( a . accept ) ) b += 1 ; else return ! 1 ; if ( null != a && pb ( a , "reject" , qb ) ) if ( zc ( a . reject ) ) b += 1 ; else return ! 1 ; return 0 < b && 2 >= b } return ! 1 } function Bc ( a ) { return "function" ===
typeof a && 1 >= a . length } function fa ( a ) { return "function" === typeof a && 1 >= a . length || Oa ( a ) } function Cc ( a ) { return Array . isArray ( a ) && 2 === a . length ? Array . isArray ( a [ 1 ] ) ? Bc ( a [ 0 ] ) && rb ( a [ 1 ] , fa ) : Bc ( a [ 0 ] ) && fa ( a [ 1 ] ) : ! 1 } function Dc ( a ) { return Array . isArray ( a ) && 2 === a . length ? Ld ( a [ 0 ] ) ? Array . isArray ( a [ 1 ] ) ? rb ( a [ 1 ] , fa ) : fa ( a [ 1 ] ) : ! 1 : ! 1 } function wc ( a ) { return Cc ( a ) || Dc ( a ) } function Pd ( a , b ) { var c = 0 , e = 0 , d = J ( a , "accept" ) ; Array . isArray ( d ) ? a . accept . some ( function ( a ) { return sb ( a , b ) } ) && e ++ : "string" === typeof d && sb ( d , b ) && e ++ ; d = J ( a , "reject" ) ;
Array . isArray ( d ) ? a . reject . some ( function ( a ) { return sb ( a , b ) } ) && c ++ : "string" === typeof d && sb ( d , b ) && c ++ ; return 0 < e && 0 === c ? ! 0 : ! 1 } function sb ( a , b ) { if ( ! Lb ( a ) ) return ! 1 ; a = yc ( a ) ; b = /^iglu:([a-zA-Z0-9-_.]+)\/([a-zA-Z0-9-_]+)\/jsonschema\/([1-9][0-9]*)-(0|[1-9][0-9]*)-(0|[1-9][0-9]*)$/ . exec ( b ) ; b = null !== b ? b . slice ( 1 , 6 ) : void 0 ; if ( a && b ) { if ( ! Qd ( a [ 0 ] , b [ 0 ] ) ) return ! 1 ; for ( var c = 1 ; 5 > c ; c ++ ) if ( ! Ec ( a [ c ] , b [ c ] ) ) return ! 1 ; return ! 0 } return ! 1 } function Qd ( a , b ) { b = b . split ( "." ) ; a = a . split ( "." ) ; if ( b && a ) { if ( b . length !== a . length ) return ! 1 ;
for ( var c = 0 ; c < a . length ; c ++ ) if ( ! Ec ( b [ c ] , a [ c ] ) ) return ! 1 ; return ! 0 } return ! 1 } function Ec ( a , b ) { return a && b && "*" === a || a === b } function Fc ( a ) { return Array . isArray ( a ) ? a : [ a ] } function Na ( a , b , c , e ) { var d ; a = Fc ( a ) ; a = da ( a , function ( a ) { a : if ( Oa ( a ) ) a = [ a ] ; else { if ( "function" === typeof a && 1 >= a . length ) { b : { var d = void 0 ; try { d = a ( { event : b , eventType : c , eventSchema : e } ) ; if ( Oa ( d ) || Array . isArray ( d ) && rb ( d , Oa ) ) { var g = d ; break b } g = void 0 ; break b } catch ( k ) { } g = void 0 } if ( Oa ( g ) ) { a = [ g ] ; break a } else if ( Array . isArray ( g ) ) { a = g ; break a } } a = void 0 } if ( a &&
0 !== a . length ) return a } ) ; return ( d = [ ] ) . concat . apply ( d , pa ( Gc ( a ) ) ) } function Id ( a , b , c , e ) { var d ; a = Fc ( a ) ; a = da ( a , function ( a ) { a : { if ( Cc ( a ) ) { var d = a [ 0 ] , g = ! 1 ; try { g = d ( { event : b , eventType : c , eventSchema : e } ) } catch ( k ) { g = ! 1 } if ( ! 0 === g ) { a = Na ( a [ 1 ] , b , c , e ) ; break a } } else if ( Dc ( a ) && Pd ( a [ 0 ] , e ) ) { a = Na ( a [ 1 ] , b , c , e ) ; break a } a = [ ] } if ( a && 0 !== a . length ) return a } ) ; return ( d = [ ] ) . concat . apply ( d , pa ( Gc ( a ) ) ) } function Rd ( a , b ) { var c = Hd ( ) , e = { } ; "undefined" === typeof a && ( a = ! 0 ) ; var d = function ( a , b ) { var c = { } ; b = b || { } ; for ( var d in a ) if ( b [ d ] || null !== a [ d ] &&
"undefined" !== typeof a [ d ] ) c [ d ] = a [ d ] ; return c } , f = function ( a , d , f , h ) { a . addDict ( e ) ; a . add ( "eid" , Sd . v4 ( ) ) ; f = null == f ? { type : "dtm" , value : ( new Date ) . getTime ( ) } : "number" === typeof f ? { type : "dtm" , value : f } : "ttm" === f . type ? { type : "ttm" , value : f . value } : { type : "dtm" , value : f . value || ( new Date ) . getTime ( ) } ; a . add ( f . type , f . value . toString ( ) ) ; f = c . getApplicableContexts ( a ) ; var g = [ ] ; d && d . length && g . push . apply ( g , pa ( d ) ) ; f && f . length && g . push . apply ( g , pa ( f ) ) ; d = g && g . length ? { schema : "iglu:com.snowplowanalytics.snowplow/contexts/jsonschema/1-0-0" ,
data : g } : void 0 ; void 0 !== d && a . addJson ( "cx" , "co" , d ) ; "function" === typeof b && b ( a ) ; try { h && h ( a . build ( ) ) } catch ( n ) { console . warn ( "Snowplow: error running custom callback" ) } return a } , h = function ( b , c , d , e ) { var g = za ( a ) ; b = { schema : "iglu:com.snowplowanalytics.snowplow/unstruct_event/jsonschema/1-0-0" , data : b } ; g . add ( "e" , "ue" ) ; g . addJson ( "ue_px" , "ue_pr" , b ) ; return f ( g , c , d , e ) } ; return { addPayloadPair : function ( a , b ) { e [ a ] = b } , setBase64Encoding : function ( b ) { a = b } , addPayloadDict : function ( a ) { for ( var b in a ) Object . prototype . hasOwnProperty . call ( a ,
b ) && ( e [ b ] = a [ b ] ) } , resetPayloadPairs : function ( a ) { e = vc ( a ) ? a : { } } , setTrackerVersion : function ( a ) { e . tv = a } , setTrackerNamespace : function ( a ) { e . tna = a } , setAppId : function ( a ) { e . aid = a } , setPlatform : function ( a ) { e . p = a } , setUserId : function ( a ) { e . uid = a } , setScreenResolution : function ( a , b ) { e . res = a + "x" + b } , setViewport : function ( a , b ) { e . vp = a + "x" + b } , setColorDepth : function ( a ) { e . cd = a } , setTimezone : function ( a ) { e . tz = a } , setLang : function ( a ) { e . lang = a } , setIpAddress : function ( a ) { e . ip = a } , setUseragent : function ( a ) { e . ua = a } , trackUnstructEvent : h ,
trackSelfDescribingEvent : h , trackPageView : function ( b , c , d , e , h , n ) { var g = za ( a ) ; g . add ( "e" , "pv" ) ; g . add ( "url" , b ) ; g . add ( "page" , c ) ; g . add ( "refr" , d ) ; return f ( g , e , h , n ) } , trackPagePing : function ( b , c , d , e , h , n , z , t , mb , m ) { var g = za ( a ) ; g . add ( "e" , "pp" ) ; g . add ( "url" , b ) ; g . add ( "page" , c ) ; g . add ( "refr" , d ) ; g . add ( "pp_mix" , e . toString ( ) ) ; g . add ( "pp_max" , h . toString ( ) ) ; g . add ( "pp_miy" , n . toString ( ) ) ; g . add ( "pp_may" , z . toString ( ) ) ; return f ( g , t , mb , m ) } , trackStructEvent : function ( b , c , d , e , h , n , z , t ) { var g = za ( a ) ; g . add ( "e" , "se" ) ; g . add ( "se_ca" , b ) ;
g . add ( "se_ac" , c ) ; g . add ( "se_la" , d ) ; g . add ( "se_pr" , e ) ; g . add ( "se_va" , null == h ? void 0 : h . toString ( ) ) ; return f ( g , n , z , t ) } , trackEcommerceTransaction : function ( b , c , d , e , h , n , z , t , m , r , Jb , y ) { var g = za ( a ) ; g . add ( "e" , "tr" ) ; g . add ( "tr_id" , b ) ; g . add ( "tr_af" , c ) ; g . add ( "tr_tt" , d ) ; g . add ( "tr_tx" , e ) ; g . add ( "tr_sh" , h ) ; g . add ( "tr_ci" , n ) ; g . add ( "tr_st" , z ) ; g . add ( "tr_co" , t ) ; g . add ( "tr_cu" , m ) ; return f ( g , r , Jb , y ) } , trackEcommerceTransactionItem : function ( b , c , d , e , h , n , z , t , m , r ) { var g = za ( a ) ; g . add ( "e" , "ti" ) ; g . add ( "ti_id" , b ) ; g . add ( "ti_sk" , c ) ; g . add ( "ti_nm" ,
d ) ; g . add ( "ti_ca" , e ) ; g . add ( "ti_pr" , h ) ; g . add ( "ti_qu" , n ) ; g . add ( "ti_cu" , z ) ; return f ( g , t , m , r ) } , trackScreenView : function ( a , b , c , e , f ) { return h ( { schema : "iglu:com.snowplowanalytics.snowplow/screen_view/jsonschema/1-0-0" , data : d ( { name : a , id : b } ) } , c , e , f ) } , trackLinkClick : function ( a , b , c , e , f , n , z , t ) { a = { schema : "iglu:com.snowplowanalytics.snowplow/link_click/jsonschema/1-0-1" , data : d ( { targetUrl : a , elementId : b , elementClasses : c , elementTarget : e , elementContent : f } ) } ; return h ( a , n , z , t ) } , trackAdImpression : function ( a , b , c , e , f , n ,
z , t , m , r , v ) { a = { schema : "iglu:com.snowplowanalytics.snowplow/ad_impression/jsonschema/1-0-0" , data : d ( { impressionId : a , costModel : b , cost : c , targetUrl : e , bannerId : f , zoneId : n , advertiserId : z , campaignId : t } ) } ; return h ( a , m , r , v ) } , trackAdClick : function ( a , b , c , e , f , n , z , t , m , r , v , y ) { a = { schema : "iglu:com.snowplowanalytics.snowplow/ad_click/jsonschema/1-0-0" , data : d ( { targetUrl : a , clickId : b , costModel : c , cost : e , bannerId : f , zoneId : n , impressionId : z , advertiserId : t , campaignId : m } ) } ; return h ( a , r , v , y ) } , trackAdConversion : function ( a , b , c ,
e , f , n , z , t , m , r , v , y ) { a = { schema : "iglu:com.snowplowanalytics.snowplow/ad_conversion/jsonschema/1-0-0" , data : d ( { conversionId : a , costModel : b , cost : c , category : e , action : f , property : n , initialValue : z , advertiserId : t , campaignId : m } ) } ; return h ( a , r , v , y ) } , trackSocialInteraction : function ( a , b , c , e , f , n ) { a = { schema : "iglu:com.snowplowanalytics.snowplow/social_interaction/jsonschema/1-0-0" , data : d ( { action : a , network : b , target : c } ) } ; return h ( a , e , f , n ) } , trackAddToCart : function ( a , b , c , e , f , n , z , t , m ) { return h ( { schema : "iglu:com.snowplowanalytics.snowplow/add_to_cart/jsonschema/1-0-0" ,
data : d ( { sku : a , name : b , category : c , unitPrice : e , quantity : f , currency : n } ) } , z , t , m ) } , trackRemoveFromCart : function ( a , b , c , e , f , n , m , t , r ) { return h ( { schema : "iglu:com.snowplowanalytics.snowplow/remove_from_cart/jsonschema/1-0-0" , data : d ( { sku : a , name : b , category : c , unitPrice : e , quantity : f , currency : n } ) } , m , t , r ) } , trackFormFocusOrChange : function ( a , b , c , e , f , n , m , t , r , v ) { var g = "" ; b = { formId : b , elementId : c , nodeName : e , elementClasses : n , value : m } ; "change_form" === a ? ( g = "iglu:com.snowplowanalytics.snowplow/change_form/jsonschema/1-0-0" ,
b . type = f ) : "focus_form" === a && ( g = "iglu:com.snowplowanalytics.snowplow/focus_form/jsonschema/1-0-0" , b . elementType = f ) ; return h ( { schema : g , data : d ( b , { value : ! 0 } ) } , t , r , v ) } , trackFormSubmission : function ( a , b , c , e , f , n ) { return h ( { schema : "iglu:com.snowplowanalytics.snowplow/submit_form/jsonschema/1-0-0" , data : d ( { formId : a , formClasses : b , elements : c } ) } , e , f , n ) } , trackSiteSearch : function ( a , b , c , e , f , n , m ) { return h ( { schema : "iglu:com.snowplowanalytics.snowplow/site_search/jsonschema/1-0-0" , data : d ( { terms : a , filters : b , totalResults : c ,
pageResults : e } ) } , f , n , m ) } , trackConsentWithdrawn : function ( a , b , c , e , f , n , m , t ) { b = { schema : "iglu:com.snowplowanalytics.snowplow/consent_document/jsonschema/1-0-0" , data : d ( { id : b , version : c , name : e , description : f } ) } ; return h ( { schema : "iglu:com.snowplowanalytics.snowplow/consent_withdrawn/jsonschema/1-0-0" , data : d ( { all : a } ) } , b . data && n ? n . concat ( [ b ] ) : n , m , t ) } , trackConsentGranted : function ( a , b , c , e , f , n , m , t ) { a = { schema : "iglu:com.snowplowanalytics.snowplow/consent_document/jsonschema/1-0-0" , data : d ( { id : a , version : b , name : c , description : e } ) } ;
return h ( { schema : "iglu:com.snowplowanalytics.snowplow/consent_granted/jsonschema/1-0-0" , data : d ( { expiry : f } ) } , n ? n . concat ( [ a ] ) : [ a ] , m , t ) } , addGlobalContexts : function ( a ) { c . addGlobalContexts ( a ) } , clearGlobalContexts : function ( ) { c . clearGlobalContexts ( ) } , removeGlobalContexts : function ( a ) { c . removeGlobalContexts ( a ) } } } function Pa ( a , b , c , e , d ) { function f ( a ) { return - 1 < Rb . map ( function ( a ) { return a . toLowerCase ( ) } ) . indexOf ( a . toLowerCase ( ) ) } function h ( ) { Qa = rc ( B . domain , C . location . href , cc ( ) ) ; Qa [ 1 ] !== Aa && ( Mb = cc ( Aa ) ) ; Ja = bc ( Qa [ 0 ] ) ;
Aa = Qa [ 1 ] } function g ( ) { var a = ( new Date ) . getTime ( ) ; if ( this . href ) { a = "_sp=" + ( Nb + "." + a ) ; var b = this . href . split ( "#" ) , c = b [ 0 ] . split ( "?" ) , d = c . shift ( ) ; if ( c = c . join ( "?" ) ) { for ( var e = ! 0 , f = c . split ( "&" ) , g = 0 ; g < f . length ; g ++ ) if ( "_sp=" === f [ g ] . substr ( 0 , 4 ) ) { e = ! 1 ; f [ g ] = a ; c = f . join ( "&" ) ; break } e && ( c = a + "&" + c ) } else c = a ; b [ 0 ] = d + "?" + c ; this . href = b . join ( "#" ) } } function k ( a ) { for ( var b = 0 ; b < B . links . length ; b ++ ) { var c = B . links [ b ] ; ! c . spDecorationEnabled && a ( c ) && ( v ( c , "click" , g , ! 0 ) , v ( c , "mousedown" , g , ! 0 ) , c . spDecorationEnabled = ! 0 ) } } function p ( a ) { if ( Pa ) { var b =
/#.*/ ; a = a . replace ( b , "" ) } Sa && ( b = /[{}]/g , a = a . replace ( b , "" ) ) ; return a } function m ( a ) { return ( a = /^([a-z]+):/ . exec ( a ) ) ? a [ 1 ] : null } function q ( a ) { return Ua + a + "." + zb } function n ( a ) { a = q ( a ) ; if ( "localStorage" == G ) { a : { try { var b = wa . getItem ( a + ".expires" ) ; if ( null === b || + b > Date . now ( ) ) { var c = wa . getItem ( a ) ; break a } else wa . removeItem ( a ) , wa . removeItem ( a + ".expires" ) ; c = void 0 ; break a } catch ( af ) { } c = void 0 } return c } if ( "cookie" == G || "cookieAndLocalStorage" == G ) return A ( a ) } function r ( ) { h ( ) ; zb = Qb ( ( ka || Ja ) + ( Da || "/" ) ) . slice ( 0 , 4 ) } function t ( ) { Ub =
( new Date ) . getTime ( ) } function F ( ) { var a = H ( ) , b = a [ 0 ] ; b < Vb ? Vb = b : b > Wb && ( Wb = b ) ; a = a [ 1 ] ; a < Xb ? Xb = a : a > Yb && ( Yb = a ) ; t ( ) } function H ( ) { var a = B . compatMode && "BackCompat" !== B . compatMode ? B . documentElement : B . body ; return [ a . scrollLeft || C . pageXOffset , a . scrollTop || C . pageYOffset ] } function J ( ) { var a = H ( ) , b = a [ 0 ] ; Wb = Vb = b ; Yb = Xb = a = a [ 1 ] } function y ( a ) { a = Math . round ( a ) ; if ( ! isNaN ( a ) ) return a } function O ( ) { var a = q ( "ses" ) ; R ( a , "*" , La ) } function N ( a , b , c , d , e , f ) { var dc = q ( "id" ) ; R ( dc , a + "." + b + "." + c + "." + d + "." + e + "." + f , jb ) } function R ( a , b , c ) { if ( ! ha ||
tb ) "localStorage" == G ? Tb ( a , b , c ) : ( "cookie" == G || "cookieAndLocalStorage" == G ) && A ( a , b , c , Da , ka , Ab , Bb ) } function S ( ) { var a = q ( "id" ) , b = q ( "ses" ) ; pc ( a ) ; pc ( b ) ; A ( a , "" , - 1 , "/" , void 0 ) ; A ( b , "" , - 1 , "/" , void 0 ) } function T ( ) { if ( ! ha || tb ) { var a = "none" != G && ! ! n ( "ses" ) , b = P ( ) ; b [ 1 ] ? Nb = b [ 1 ] : ( Nb = ha ? "" : V ( ) , b [ 1 ] = Nb ) ; Q = b [ 6 ] ; a || ( b [ 3 ] ++ , Q = V ( ) , b [ 6 ] = Q , b [ 5 ] = b [ 4 ] ) ; "none" != G && ( O ( ) , b [ 4 ] = Math . round ( ( new Date ) . getTime ( ) / 1E3 ) , b . shift ( ) , N . apply ( null , b ) ) } } function P ( ) { if ( "none" == G ) return [ ] ; var a = Math . round ( ( new Date ) . getTime ( ) / 1E3 ) , b = n ( "id" ) ; b ?
( a = b . split ( "." ) , a . unshift ( "0" ) ) : a = [ "1" , Nb , a , 0 , a , "" ] ; a [ 6 ] || ( a [ 6 ] = V ( ) ) ; return a } function U ( a ) { return nb ? "https://" + a : Kb ? "http://" + a : ( "https:" === B . location . protocol ? "https" : "http" ) + "://" + a } function w ( a ) { var b = ec . concat ( a || [ ] ) ; I . webPage && b . push ( { schema : "iglu:com.snowplowanalytics.snowplow/web_page/jsonschema/1-0-0" , data : { id : D ( ) } } ) ; I . performanceTiming && ( a = aa ( ) ) && b . push ( a ) ; if ( C . optimizely ) { I . optimizelySummary && ( a = ta ( ) , L ( a , function ( a ) { b . push ( a ) } ) ) ; I . optimizelyXSummary && ( a = ya ( ) , L ( a , function ( a ) { b . push ( a ) } ) ) ;
if ( I . optimizelyExperiments ) { var c = ma ( ) ; for ( a = 0 ; a < c . length ; a ++ ) b . push ( c [ a ] ) } if ( I . optimizelyStates ) for ( c = oa ( ) , a = 0 ; a < c . length ; a ++ ) b . push ( c [ a ] ) ; if ( I . optimizelyVariations ) for ( c = pa ( ) , a = 0 ; a < c . length ; a ++ ) b . push ( c [ a ] ) ; I . optimizelyVisitor && ( a = qa ( ) ) && b . push ( a ) ; if ( I . optimizelyAudiences ) for ( c = ra ( ) , a = 0 ; a < c . length ; a ++ ) b . push ( c [ a ] ) ; if ( I . optimizelyDimensions ) for ( c = sa ( ) , a = 0 ; a < c . length ; a ++ ) b . push ( c [ a ] ) } I . parrable && ( a = za ( ) ) && b . push ( a ) ; I . gdprBasis && Ra . gdprBasis && ( a = Ra . gdprBasis ? { schema : "iglu:com.snowplowanalytics.snowplow/gdpr/jsonschema/1-0-0" ,
data : { basisForProcessing : Ra . gdprBasis , documentId : Ra . gdprDocId || null , documentVersion : Ra . gdprDocVer || null , documentDescription : Ra . gdprDocDesc || null } } : void 0 , a && b . push ( a ) ) ; I . clientHints && Ba && b . push ( { schema : "iglu:org.ietf/http_client_hints/jsonschema/1-0-0" , data : Ba } ) ; return b } function X ( ) { Eb && null != e . pageViewId || ( e . pageViewId = V ( ) ) } function D ( ) { null == e . pageViewId && ( e . pageViewId = V ( ) ) ; return e . pageViewId } function aa ( ) { var a = "navigationStart redirectStart redirectEnd fetchStart domainLookupStart domainLookupEnd connectStart secureConnectionStart connectEnd requestStart responseStart responseEnd unloadEventStart unloadEventEnd domLoading domInteractive domContentLoadedEventStart domContentLoadedEventEnd domComplete loadEventStart loadEventEnd msFirstPaint chromeFirstPaint requestEnd proxyStart proxyEnd" . split ( " " ) ,
b = C . performance || C . mozPerformance || C . msPerformance || C . webkitPerformance ; if ( b ) { var c = { } , d ; for ( d in b . timing ) qc ( d , a ) && null !== b . timing [ d ] && ( c [ d ] = b . timing [ d ] ) ; delete c . requestEnd ; return { schema : "iglu:org.w3/PerformanceTiming/jsonschema/1-0-0" , data : c } } } function ea ( a , b ) { if ( C . optimizely && C . optimizely . data ) { var c = C . optimizely . data [ a ] ; "undefined" !== typeof b && void 0 !== c && ( c = c [ b ] ) } return c } function Y ( a , b ) { if ( C . optimizely && "function" === typeof C . optimizely . get ) { var c = C . optimizely . get ( a ) ; "undefined" !== typeof b &&
void 0 !== c && ( c = c [ b ] ) } return c } function ca ( ) { var a = ea ( "state" ) , b = ea ( "experiments" ) ; return da ( a && b && a . activeExperiments , function ( c ) { var d = b [ c ] ; return { activeExperimentId : c . toString ( ) , variation : a . variationIdsMap [ c ] [ 0 ] . toString ( ) , conditional : d && d . conditional , manual : d && d . manual , name : d && d . name } } ) } function la ( ) { var a = Y ( "state" ) , b = a && a . getActiveExperimentIds ( ) , c = a && a . getVariationMap ( ) , d = Y ( "visitor" ) ; return da ( b , function ( a ) { var b = c [ a ] , e = b && b . name && b . name . toString ( ) || null ; b = b && b . id ; var f = d && d . visitorId && d . visitorId . toString ( ) ||
null ; return { experimentId : lb ( a ) || null , variationName : e , variation : lb ( b ) || null , visitorId : f } } ) } function ma ( ) { var a = ea ( "experiments" ) ; if ( a ) { var b = [ ] , c ; for ( c in a ) if ( a . hasOwnProperty ( c ) ) { var d = { } ; d . id = c ; var e = a [ c ] ; d . code = e . code ; d . manual = e . manual ; d . conditional = e . conditional ; d . name = e . name ; d . variationIds = e . variation _ids ; b . push ( { schema : "iglu:com.optimizely/experiment/jsonschema/1-0-0" , data : d } ) } return b } return [ ] } function oa ( ) { var a = [ ] , b = ea ( "experiments" ) ; if ( b ) for ( var c in b ) b . hasOwnProperty ( c ) && a . push ( c ) ; if ( b =
ea ( "state" ) ) { c = [ ] ; for ( var d = b . activeExperiments || [ ] , e = 0 ; e < a . length ; e ++ ) { var f = a [ e ] , g = { } ; g . experimentId = f ; g . isActive = qc ( a [ e ] , d ) ; g . variationIndex = ( b . variationMap || { } ) [ f ] ; g . variationName = ( b . variationNamesMap || { } ) [ f ] ; var h = b . variationIdsMap || { } ; h [ f ] && 1 === h [ f ] . length && ( g . variationId = h [ f ] [ 0 ] ) ; c . push ( { schema : "iglu:com.optimizely/state/jsonschema/1-0-0" , data : g } ) } return c } return [ ] } function pa ( ) { var a = ea ( "variations" ) ; if ( a ) { var b = [ ] , c ; for ( c in a ) if ( a . hasOwnProperty ( c ) ) { var d = { } ; d . id = c ; var e = a [ c ] ; d . name = e . name ;
d . code = e . code ; b . push ( { schema : "iglu:com.optimizely/variation/jsonschema/1-0-0" , data : d } ) } return b } return [ ] } function qa ( ) { var a = ea ( "visitor" ) ; if ( a ) { var b = { } ; b . browser = a . browser ; b . browserVersion = a . browserVersion ; b . device = a . device ; b . deviceType = a . deviceType ; b . ip = a . ip ; var c = a . platform || { } ; b . platformId = c . id ; b . platformVersion = c . version ; c = a . location || { } ; b . locationCity = c . city ; b . locationRegion = c . region ; b . locationCountry = c . country ; b . mobile = a . mobile ; b . mobileId = a . mobileId ; b . referrer = a . referrer ; b . os = a . os ; return { schema : "iglu:com.optimizely/visitor/jsonschema/1-0-0" ,
data : b } } } function ra ( ) { var a = ea ( "visitor" , "audiences" ) ; if ( a ) { var b = [ ] , c ; for ( c in a ) a . hasOwnProperty ( c ) && b . push ( { schema : "iglu:com.optimizely/visitor_audience/jsonschema/1-0-0" , data : { id : c , isMember : a [ c ] } } ) ; return b } return [ ] } function sa ( ) { var a = ea ( "visitor" , "dimensions" ) ; if ( a ) { var b = [ ] , c ; for ( c in a ) a . hasOwnProperty ( c ) && b . push ( { schema : "iglu:com.optimizely/visitor_dimension/jsonschema/1-0-0" , data : { id : c , value : a [ c ] } } ) ; return b } return [ ] } function ta ( ) { return da ( ca ( ) , function ( a ) { return { schema : "iglu:com.optimizely.snowplow/optimizely_summary/jsonschema/1-0-0" ,
data : a } } ) } function ya ( ) { return da ( la ( ) , function ( a ) { return { schema : "iglu:com.optimizely.optimizelyx/summary/jsonschema/1-0-0" , data : a } } ) } function za ( ) { var a = window . _hawk ; if ( a ) { var b = { encryptedId : null , optout : null } ; b . encryptedId = a . browserid ; a = new RegExp ( "(?:^|;)\\s?" + "_parrable_hawk_optout" . replace ( /([.*+?^=!:${}()|[\]\/\\])/g , "\\$1" ) + "=(.*?)(?:;|$)" , "i" ) ; a = document . cookie . match ( a ) ; b . optout = a && decodeURIComponent ( a [ 1 ] ) ? a && decodeURIComponent ( a [ 1 ] ) : "false" ; return { schema : "iglu:com.parrable/encrypted_payload/jsonschema/1-0-0" ,
data : b } } } function fa ( ) { ! Db && M . geolocation && M . geolocation . getCurrentPosition && ( Db = ! 0 , M . geolocation . getCurrentPosition ( function ( a ) { var b = a . coords ; ec . push ( { schema : "iglu:com.snowplowanalytics.snowplow/geolocation_context/jsonschema/1-1-0" , data : { latitude : b . latitude , longitude : b . longitude , latitudeLongitudeAccuracy : b . accuracy , altitude : b . altitude , altitudeAccuracy : b . altitudeAccuracy , bearing : b . heading , speed : b . speed , timestamp : Math . round ( a . timestamp ) } } ) } ) ) } function Ea ( ) { var a = { } ; L ( "__utma __utmb __utmc __utmv __utmz _ga" . split ( " " ) ,
function ( b ) { var c = A ( b ) ; c && ( a [ b ] = c ) } ) ; return { schema : "iglu:com.google.analytics/cookies/jsonschema/1-0-0" , data : a } } function Ia ( a , b , c , d , e ) { h ( ) ; Fb && X ( ) ; Fb = ! 0 ; ub = B . title ; Ob = a ; a = nc ( Ob || ub ) ; u . trackPageView ( p ( vb || Aa ) , a , p ( ba || Mb ) , w ( ( b || [ ] ) . concat ( c ? c ( ) : [ ] ) ) , d , e ) ; d = new Date ; e = ! 1 ; if ( W . enabled && ! W . installed ) { e = W . installed = ! 0 ; var f = { update : function ( ) { if ( "undefined" !== typeof window && "function" === typeof window . addEventListener ) { var a = ! 1 , b = Object . defineProperty ( { } , "passive" , { get : function ( ) { a = ! 0 } } ) , c = function ( ) { } ;
window . addEventListener ( "testPassiveEventSupport" , c , b ) ; window . removeEventListener ( "testPassiveEventSupport" , c , b ) ; f . hasSupport = a } } } ; f . update ( ) ; a = "onwheel" in document . createElement ( "div" ) ? "wheel" : void 0 !== document . onmousewheel ? "mousewheel" : "DOMMouseScroll" ; Object . prototype . hasOwnProperty . call ( f , "hasSupport" ) ? v ( B , a , t , { passive : ! 0 } ) : v ( B , a , t ) ; J ( ) ; a = function ( a ) { var b = 1 < arguments . length && void 0 !== arguments [ 1 ] ? arguments [ 1 ] : t ; return function ( a ) { return v ( B , a , b ) } } ; L ( "click mouseup mousedown mousemove keypress keydown keyup" . split ( " " ) ,
a ( B ) ) ; L ( [ "resize" , "focus" , "blur" ] , a ( C ) ) ; a ( C , F ) ( "scroll" ) } if ( W . enabled && ( sb || e ) ) { Ub = d . getTime ( ) ; for ( var g in W . configurations ) W . configurations . hasOwnProperty ( g ) && ( d = W . configurations [ g ] , clearInterval ( d . activityInterval ) , Ka ( d , ( b || [ ] ) . concat ( c ? c ( ) : [ ] ) ) ) } } function Ka ( a , b ) { var c = function ( a , b ) { h ( ) ; a ( { context : b , pageViewId : D ( ) , minXOffset : Vb , minYOffset : Xb , maxXOffset : Wb , maxYOffset : Yb } ) ; J ( ) } , d = function ( ) { Ub + a . configHeartBeatTimer > ( new Date ) . getTime ( ) && c ( a . callback , b ) } ; a . activityInterval = 0 != a . configMinimumVisitLength ?
setTimeout ( function ( ) { Ub + a . configMinimumVisitLength > ( new Date ) . getTime ( ) && c ( a . callback , b ) ; a . activityInterval = setInterval ( d , a . configHeartBeatTimer ) } , a . configMinimumVisitLength ) : setInterval ( d , a . configHeartBeatTimer ) } function va ( a , b , c ) { if ( "number" == typeof a && a == fc ( a ) && "number" == typeof b && b == fc ( b ) ) return { configMinimumVisitLength : 1E3 * a , configHeartBeatTimer : 1E3 * b , activityInterval : null , callback : c } ; E ( "Activity tracking not enabled, please provide integer values for minimumVisitLength and heartBeatDelay." ) ;
return { } } function Oa ( a ) { var b = a . context , c = a . minXOffset , d = a . minYOffset , e = a . maxXOffset ; a = a . maxYOffset ; var f = B . title ; f !== ub && ( ub = f , Ob = null ) ; u . trackPagePing ( p ( vb || Aa ) , nc ( Ob || ub ) , p ( ba || Mb ) , y ( c ) , y ( e ) , y ( d ) , y ( a ) , w ( b ) ) } function ja ( a , b ) { return "" !== a ? a + b . charAt ( 0 ) . toUpperCase ( ) + b . slice ( 1 ) : b } function K ( a ) { var b , c , d = [ "" , "webkit" , "ms" , "moz" ] ; if ( ! ib ) for ( c = 0 ; c < d . length ; c ++ ) { var e = d [ c ] ; if ( B [ ja ( e , "hidden" ) ] ) { "prerender" === B [ ja ( e , "visibilityState" ) ] && ( b = ! 0 ) ; break } else if ( ! 1 === B [ ja ( e , "hidden" ) ] ) break } b ? v ( B , e + "visibilitychange" ,
function Td ( ) { B . removeEventListener ( e + "visibilitychange" , Td , ! 1 ) ; a ( ) } ) : a ( ) } d = d || { } ; d . hasOwnProperty ( "post" ) ? d . eventMethod = ! 0 === d . post ? "post" : "get" : d . eventMethod = d . eventMethod || "post" ; d . hasOwnProperty ( "useStm" ) || ( d . useStm = ! 0 ) ; var Ca = function ( a ) { return a . hasOwnProperty ( "stateStorageStrategy" ) ? a . stateStorageStrategy : Na || qb ? Na && qb ? "cookieAndLocalStorage" : Na ? "cookie" : "localStorage" : "none" } , na = function ( a ) { return a . hasOwnProperty ( "anonymousTracking" ) ? ! 0 === a . anonymousTracking . withSessionTracking : ! 1 } , Wa = Object . freeze ( { consent : "consent" ,
contract : "contract" , legalObligation : "legal_obligation" , vitalInterests : "vital_interests" , publicTask : "public_task" , legitimateInterests : "legitimate_interests" } ) , u = Rd ( ! 0 , function ( a ) { var b = Math . round ( ( new Date ) . getTime ( ) / 1E3 ) , c = n ( "ses" ) , d = P ( ) , f = d [ 0 ] , g = d [ 1 ] , dc = d [ 2 ] , k = d [ 3 ] , l = d [ 4 ] , m = d [ 5 ] ; d = d [ 6 ] ; var q = Pb ? ! ! A ( Pb ) : ! 1 ; Fa || q ? S ( ) : ( "0" === f ? ( Q = d , c || "none" == G || ( k ++ , m = l , Q = V ( ) ) , ia = k ) : ( new Date ) . getTime ( ) - Ta > 1E3 * La && ( Q = V ( ) , ia ++ ) , a . add ( "vp" , ud ( ) ) , a . add ( "ds" , vd ( ) ) , a . add ( "vid" , tb ? ia : ha ? null : ia ) , a . add ( "sid" , tb ? Q : ha ? null :
Q ) , a . add ( "duid" , ha ? null : g ) , a . add ( "uid" , ha ? null : wb ) , h ( ) , a . add ( "refr" , p ( ba || Mb ) ) , a . add ( "url" , p ( vb || Aa ) ) , "none" != G && ( N ( g , dc , ia , b , m , Q ) , O ( ) ) , Ta = ( new Date ) . getTime ( ) ) ; b = pb ; c = new Date ; f = Pb ? ! ! A ( Pb ) : ! 1 ; Fa || f || ( gb . enqueueRequest ( a . build ( ) , xa ) , e . expireDateTime = c . getTime ( ) + b ) } ) , Ga = ! 1 , l = { } , ua = { } , Ha = { } , B = document , C = window , M = navigator , Qa = rc ( B . domain , C . location . href , cc ( ) ) , Ja = bc ( Qa [ 0 ] ) , Aa = Qa [ 1 ] , Mb = Qa [ 2 ] , ba , kb = d . hasOwnProperty ( "platform" ) ? d . platform : "web" , xa , Ma = d . hasOwnProperty ( "postPath" ) ? d . postPath : "/com.snowplowanalytics.snowplow/tp2" ,
ob = d . hasOwnProperty ( "appId" ) ? d . appId : "" , vb , ub = B . title , Ob , pb = d . hasOwnProperty ( "pageUnloadTimer" ) ? d . pageUnloadTimer : 500 , sb = d . hasOwnProperty ( "resetActivityTrackingOnPageView" ) ? d . resetActivityTrackingOnPageView : ! 0 , Pa , Sa , Ua = d . hasOwnProperty ( "cookieName" ) ? d . cookieName : "_sp_" , ka = d . hasOwnProperty ( "cookieDomain" ) ? d . cookieDomain : null , Da = "/" , Ab = d . hasOwnProperty ( "cookieSameSite" ) ? d . cookieSameSite : "None" , Bb = d . hasOwnProperty ( "cookieSecure" ) ? d . cookieSecure : ! 0 , hb = M . doNotTrack || M . msDoNotTrack || C . doNotTrack , Fa = d . hasOwnProperty ( "respectDoNotTrack" ) ?
d . respectDoNotTrack && ( "yes" === hb || "1" === hb ) : ! 1 , Pb , ib , jb = d . hasOwnProperty ( "cookieLifetime" ) ? d . cookieLifetime : 63072E3 , La = d . hasOwnProperty ( "sessionCookieTimeout" ) ? d . sessionCookieTimeout : 1800 , Hb = B . characterSet || B . charset , nb = d . hasOwnProperty ( "forceSecureTracker" ) ? ! 0 === d . forceSecureTracker : ! 1 , Kb = ! nb && d . hasOwnProperty ( "forceUnsecureTracker" ) ? ! 0 === d . forceUnsecureTracker : ! 1 , tb = na ( d ) , ha = ! ! d . anonymousTracking , qb = d . hasOwnProperty ( "useLocalStorage" ) ? ( E ( "argmap.useLocalStorage is deprecated. Use argmap.stateStorageStrategy instead." ) ,
d . useLocalStorage ) : ! 0 , Na = d . hasOwnProperty ( "useCookies" ) ? ( E ( "argmap.useCookies is deprecated. Use argmap.stateStorageStrategy instead." ) , d . useCookies ) : ! 0 , G = Ca ( d ) , Lb = M . userLanguage || M . language , Zb = wd ( "cookie" == G || "cookieAndLocalStorage" == G , q ( "testcookie" ) ) , rb = a + "_" + b , Ub , Ta = ( new Date ) . getTime ( ) , Vb , Wb , Xb , Yb , Qb = Ud , zb , Nb , Q , ia = 1 , wb , Va , Xa , Ya , Za , $a , ab , bb , cb , db , eb , fb , $b = [ ] , xb = new xd ( u , rb , w ) , ac = new yd ( u , rb , w ) , Cb = new Ad ( u ) , gb = new sc ( a , b , e , "localStorage" == G || "cookieAndLocalStorage" == G , d . eventMethod , Ma , d . bufferSize ,
d . maxPostBytes || 4E4 , d . useStm , d . maxLocalStorageQueueSize || 1E3 , d . connectionTimeout || 5E3 ) , Db = ! 1 , I = d . contexts || { } , ec = [ ] , yb = [ ] , Eb = ! 1 , Fb = ! 1 , W = { enabled : ! 1 , installed : ! 1 , configurations : { } } , Ba = null ; I . clientHints && M . userAgentData && ( Ba = { isMobile : M . userAgentData . mobile , brands : M . userAgentData . brands } , I . clientHints . includeHighEntropy && M . userAgentData . getHighEntropyValues && M . userAgentData . getHighEntropyValues ( [ "platform" , "platformVersion" , "architecture" , "model" , "uaFullVersion" ] ) . then ( function ( a ) { Ba . architecture =
a . architecture ; Ba . model = a . model ; Ba . platform = a . platform ; Ba . uaFullVersion = a . uaFullVersion ; Ba . platformVersion = a . platformVersion } ) ) ; var Rb = d . skippedBrowserFeatures || [ ] , Ra = { } ; d . hasOwnProperty ( "discoverRootDomain" ) && d . discoverRootDomain && ( ka = rd ( ) ) ; I . gaCookies && ec . push ( Ea ( ) ) ; I . geolocation && fa ( ) ; u . setBase64Encoding ( d . hasOwnProperty ( "encodeBase64" ) ? d . encodeBase64 : ! 0 ) ; u . setTrackerVersion ( c ) ; u . setTrackerNamespace ( b ) ; u . setAppId ( ob ) ; u . setPlatform ( kb ) ; u . setTimezone ( Vd . jstz . determine ( ) . name ( ) ) ; u . addPayloadPair ( "lang" ,
Lb ) ; u . addPayloadPair ( "cs" , Hb ) ; for ( var Z in Zb ) Object . prototype . hasOwnProperty . call ( Zb , Z ) && ( "res" !== Z && "cd" !== Z && "cookie" !== Z || f ( Z ) ? f ( Z ) || u . addPayloadPair ( "f_" + Z , Zb [ Z ] ) : u . addPayloadPair ( Z , Zb [ Z ] ) ) ; r ( ) ; T ( ) ; d . crossDomainLinker && k ( d . crossDomainLinker ) ; l . getDomainSessionIndex = function ( ) { return ia } ; l . getPageViewId = function ( ) { return D ( ) } ; l . newSession = function ( ) { var a = Math . round ( ( new Date ) . getTime ( ) / 1E3 ) , b = P ( ) , c = b [ 1 ] , d = b [ 2 ] , e = b [ 3 ] , f = b [ 4 ] , g = b [ 5 ] , h = b [ 6 ] ; "0" === b [ 0 ] ? ( Q = h , "none" != G && ( e ++ , g = f , Q = V ( ) ) , ia = e , O ( ) ) : ( Q =
V ( ) , ia ++ ) ; "none" != G && ( N ( c , d , ia , a , g , Q ) , O ( ) ) ; Ta = ( new Date ) . getTime ( ) } ; l . getCookieName = function ( a ) { return q ( a ) } ; l . getUserId = function ( ) { return wb } ; l . getDomainUserId = function ( ) { return P ( ) [ 1 ] } ; l . getDomainUserInfo = function ( ) { return P ( ) } ; l . getUserFingerprint = function ( ) { E ( "User Fingerprinting is no longer supported. This function will be removed in a future release." ) ; return 0 } ; l . setAppId = function ( a ) { E ( "setAppId is deprecated. Instead use the argmap argument on tracker initialisation: appId" ) ; u . setAppId ( a ) } ;
l . setReferrerUrl = function ( a ) { ba = a } ; l . setCustomUrl = function ( a ) { h ( ) ; var b = Aa , c ; m ( a ) ? vb = a : "/" === a . slice ( 0 , 1 ) ? vb = m ( b ) + "://" + Sb ( b ) + a : ( b = p ( b ) , 0 <= ( c = b . indexOf ( "?" ) ) && ( b = b . slice ( 0 , c ) ) , ( c = b . lastIndexOf ( "/" ) ) !== b . length - 1 && ( b = b . slice ( 0 , c + 1 ) ) , vb = b + a ) } ; l . setDocumentTitle = function ( a ) { ub = B . title ; Ob = a } ; l . discardHashTag = function ( a ) { Pa = a } ; l . discardBrace = function ( a ) { Sa = a } ; l . setCookieNamePrefix = function ( a ) { E ( "setCookieNamePrefix is deprecated. Instead use the argmap argument on tracker initialisation: cookieName" ) ;
Ua = a } ; l . setCookieDomain = function ( a ) { E ( "setCookieDomain is deprecated. Instead use the argmap argument on tracker initialisation: cookieDomain" ) ; ka = bc ( a ) ; r ( ) } ; l . setCookiePath = function ( a ) { Da = a ; r ( ) } ; l . setVisitorCookieTimeout = function ( a ) { jb = a } ; l . setSessionCookieTimeout = function ( a ) { E ( "setSessionCookieTimeout is deprecated. Instead use the argmap argument on tracker initialisation: sessionCookieTimeout" ) ; La = a } ; l . setUserFingerprintSeed = function ( ) { E ( "User Fingerprinting is no longer supported. This function will be removed in a future release." ) } ;
l . enableUserFingerprint = function ( ) { E ( "User Fingerprinting is no longer supported. This function will be removed in a future release." ) } ; l . respectDoNotTrack = function ( a ) { E ( "respectDoNotTrack is deprecated. Instead use the argmap argument on tracker initialisation: respectDoNotTrack" ) ; var b = M . doNotTrack || M . msDoNotTrack ; Fa = a && ( "yes" === b || "1" === b ) } ; l . crossDomainLinker = function ( a ) { k ( a ) } ; l . enableLinkClickTracking = function ( a , b , c , d ) { e . hasLoaded ? ( xb . configureLinkClickTracking ( a , b , c , d ) , xb . addClickListeners ( ) ) :
e . registeredOnLoadHandlers . push ( function ( ) { xb . configureLinkClickTracking ( a , b , c , d ) ; xb . addClickListeners ( ) } ) } ; l . refreshLinkClickTracking = function ( ) { e . hasLoaded ? xb . addClickListeners ( ) : e . registeredOnLoadHandlers . push ( function ( ) { xb . addClickListeners ( ) } ) } ; l . enableActivityTracking = function ( a , b ) { W . enabled = ! 0 ; W . configurations . pagePing = va ( a , b , Oa ) } ; l . enableActivityTrackingCallback = function ( a , b , c ) { W . enabled = ! 0 ; W . configurations . callback = va ( a , b , c ) } ; l . updatePageActivity = function ( ) { t ( ) } ; l . enableFormTracking = function ( a ,
b ) { e . hasLoaded ? ( ac . configureFormTracking ( a ) , ac . addFormListeners ( b ) ) : e . registeredOnLoadHandlers . push ( function ( ) { ac . configureFormTracking ( a ) ; ac . addFormListeners ( b ) } ) } ; l . killFrame = function ( ) { C . location !== C . top . location && ( C . top . location = C . location ) } ; l . redirectFile = function ( a ) { "file:" === C . location . protocol && ( C . location = a ) } ; l . setOptOutCookie = function ( a ) { Pb = a } ; l . setCountPreRendered = function ( a ) { ib = a } ; l . setUserId = function ( a ) { wb = a } ; l . identifyUser = function ( a ) { l . setUserId ( a ) } ; l . setUserIdFromLocation = function ( a ) { h ( ) ;
wb = Gb ( a , Aa ) } ; l . setUserIdFromReferrer = function ( a ) { h ( ) ; wb = Gb ( a , Mb ) } ; l . setUserIdFromCookie = function ( a ) { wb = A ( a ) } ; l . setCollectorCf = function ( a ) { xa = U ( a + ".cloudfront.net" ) } ; l . setCollectorUrl = function ( a ) { xa = U ( a ) } ; l . setPlatform = function ( a ) { E ( "setPlatform is deprecated. Instead use the argmap argument on tracker initialisation: platform" ) ; u . setPlatform ( a ) } ; l . encodeBase64 = function ( a ) { E ( "encodeBase64 is deprecated. Instead use the argmap argument on tracker initialisation: encodeBase64" ) ; u . setBase64Encoding ( a ) } ;
l . flushBuffer = function ( ) { gb . executeQueue ( ) } ; l . enableGeolocationContext = fa ; l . trackPageView = function ( a , b , c , d , e ) { K ( function ( ) { Ia ( a , b , c , d , e ) } ) } ; l . trackStructEvent = function ( a , b , c , d , e , f , g , h ) { K ( function ( ) { u . trackStructEvent ( a , b , c , d , e , w ( f ) , g , h ) } ) } ; l . trackSelfDescribingEvent = function ( a , b , c , d ) { K ( function ( ) { u . trackSelfDescribingEvent ( a , w ( b ) , c , d ) } ) } ; l . trackUnstructEvent = function ( a , b , c ) { K ( function ( ) { u . trackSelfDescribingEvent ( a , w ( b ) , c ) } ) } ; l . addTrans = function ( a , b , c , d , e , f , g , h , k , l , p ) { Va = a ; Xa = b ; Ya = c ; Za = d ; $a = e ; ab =
f ; bb = g ; cb = h ; db = k ; eb = l ; fb = p } ; l . addItem = function ( a , b , c , d , e , f , g , h , k ) { $b . push ( { orderId : a , sku : b , name : c , category : d , price : e , quantity : f , currency : g , context : h , tstamp : k } ) } ; l . trackTrans = function ( ) { K ( function ( ) { var a = fb ; u . trackEcommerceTransaction ( Va , Xa , Ya , Za , $a , ab , bb , cb , db , w ( eb ) , a ) ; for ( a = 0 ; a < $b . length ; a ++ ) { var b = $b [ a ] , c = b . tstamp ; u . trackEcommerceTransactionItem ( b . orderId , b . sku , b . name , b . category , b . price , b . quantity , b . currency , w ( b . context ) , c ) } fb = eb = db = cb = bb = ab = $a = Za = Ya = Xa = Va = void 0 ; $b = [ ] } ) } ; l . trackLinkClick = function ( a ,
b , c , d , e , f , g ) { K ( function ( ) { u . trackLinkClick ( a , b , c , d , e , w ( f ) , g ) } ) } ; l . trackAdImpression = function ( a , b , c , d , e , f , g , h , k , l ) { K ( function ( ) { u . trackAdImpression ( a , b , c , d , e , f , g , h , w ( k ) , l ) } ) } ; l . trackAdClick = function ( a , b , c , d , e , f , g , h , k , l , p ) { K ( function ( ) { u . trackAdClick ( a , b , c , d , e , f , g , h , k , w ( l ) , p ) } ) } ; l . trackAdConversion = function ( a , b , c , d , e , f , g , h , k , l , p ) { K ( function ( ) { u . trackAdConversion ( a , b , c , d , e , f , g , h , k , w ( l ) , p ) } ) } ; l . trackSocialInteraction = function ( a , b , c , d , e ) { K ( function ( ) { u . trackSocialInteraction ( a , b , c , w ( d ) , e ) } ) } ; l . trackAddToCart =
function ( a , b , c , d , e , f , g , h ) { K ( function ( ) { u . trackAddToCart ( a , b , c , d , e , f , w ( g ) , h ) } ) } ; l . trackRemoveFromCart = function ( a , b , c , d , e , f , g , h ) { K ( function ( ) { u . trackRemoveFromCart ( a , b , c , d , e , f , w ( g ) , h ) } ) } ; l . trackSiteSearch = function ( a , b , c , d , e , f ) { K ( function ( ) { u . trackSiteSearch ( a , b , c , d , w ( e ) , f ) } ) } ; l . trackTiming = function ( a , b , c , d , e , f ) { K ( function ( ) { u . trackSelfDescribingEvent ( { schema : "iglu:com.snowplowanalytics.snowplow/timing/jsonschema/1-0-0" , data : { category : a , variable : b , timing : c , label : d } } , w ( e ) , f ) } ) } ; l . trackConsentWithdrawn =
function ( a , b , c , d , e , f , g ) { K ( function ( ) { u . trackConsentWithdrawn ( a , b , c , d , e , w ( f ) , g ) } ) } ; l . trackConsentGranted = function ( a , b , c , d , e , f , g ) { K ( function ( ) { u . trackConsentGranted ( a , b , c , d , e , w ( f ) , g ) } ) } ; l . trackEnhancedEcommerceAction = function ( a , b , c ) { var d = yb . concat ( b || [ ] ) ; yb . length = 0 ; K ( function ( ) { u . trackSelfDescribingEvent ( { schema : "iglu:com.google.analytics.enhanced-ecommerce/action/jsonschema/1-0-0" , data : { action : a } } , w ( d ) , c ) } ) } ; l . addEnhancedEcommerceActionContext = function ( a , b , c , d , e , f , g , h , k , l ) { yb . push ( { schema : "iglu:com.google.analytics.enhanced-ecommerce/actionFieldObject/jsonschema/1-0-0" ,
data : { id : a , affiliation : b , revenue : Ib ( c ) , tax : Ib ( d ) , shipping : Ib ( e ) , coupon : f , list : g , step : lb ( h ) , option : k , currency : l } } ) } ; l . addEnhancedEcommerceImpressionContext = function ( a , b , c , d , e , f , g , h , k ) { yb . push ( { schema : "iglu:com.google.analytics.enhanced-ecommerce/impressionFieldObject/jsonschema/1-0-0" , data : { id : a , name : b , list : c , brand : d , category : e , variant : f , position : lb ( g ) , price : Ib ( h ) , currency : k } } ) } ; l . addEnhancedEcommerceProductContext = function ( a , b , c , d , e , f , g , h , k , l , p ) { yb . push ( { schema : "iglu:com.google.analytics.enhanced-ecommerce/productFieldObject/jsonschema/1-0-0" ,
data : { id : a , name : b , list : c , brand : d , category : e , variant : f , price : Ib ( g ) , quantity : lb ( h ) , coupon : k , position : lb ( l ) , currency : p } } ) } ; l . addEnhancedEcommercePromoContext = function ( a , b , c , d , e ) { yb . push ( { schema : "iglu:com.google.analytics.enhanced-ecommerce/promoFieldObject/jsonschema/1-0-0" , data : { id : a , name : b , creative : c , position : d , currency : e } } ) } ; l . enableGdprContext = function ( a ) { var b = 1 < arguments . length && void 0 !== arguments [ 1 ] ? arguments [ 1 ] : null , c = 2 < arguments . length && void 0 !== arguments [ 2 ] ? arguments [ 2 ] : null , d = 3 < arguments . length &&
void 0 !== arguments [ 3 ] ? arguments [ 3 ] : null , e = Wa [ a ] ; e ? ( I . gdprBasis = ! 0 , Ra = { gdprBasis : e , gdprDocId : b , gdprDocVer : c , gdprDocDesc : d } ) : E ( "enableGdprContext failed. basisForProcessing must be set to one of: consent, legalObligation, vitalInterests publicTask, legitimateInterests" ) } ; l . addGlobalContexts = function ( a ) { u . addGlobalContexts ( a ) } ; l . removeGlobalContexts = function ( a ) { u . removeGlobalContexts ( a ) } ; l . clearGlobalContexts = function ( ) { u . clearGlobalContexts ( ) } ; l . enableErrorTracking = function ( a , b ) { Cb . enableErrorTracking ( a ,
b , w ( ) ) } ; l . trackError = function ( a , b , c , d , e , f ) { f = w ( f ) ; Cb . trackError ( a , b , c , d , e , f ) } ; l . preservePageViewId = function ( ) { Eb = ! 0 } ; l . disableAnonymousTracking = function ( c ) { c ? ( Object . assign ( d , { stateStorageStrategy : c , anonymousTracking : ! 1 } ) , G = Ca ( d ) , gb = new sc ( a , b , e , "localStorage" == G || "cookieAndLocalStorage" == G , d . eventMethod , Ma , d . bufferSize , d . maxPostBytes || 4E4 , d . useStm , d . maxLocalStorageQueueSize || 1E3 , d . connectionTimeout || 5E3 ) ) : Object . assign ( d , { anonymousTracking : ! 1 } ) ; ha = ! ! d . anonymousTracking ; tb = na ( d ) ; T ( ) } ; l . enableAnonymousTracking =
function ( a ) { Object . assign ( d , { anonymousTracking : a || ! 0 } ) ; ha = ! ! d . anonymousTracking ; ( tb = na ( d ) ) || X ( ) } ; l . clearUserData = S ; l . setDebug = function ( a ) { Ha = ( Ga = ( ! ! a ) . valueOf ( ) ) ? l : ua } ; ua = Dd ( l ) ; return Ha = Ga ? l : ua } function Hc ( a , b ) { function c ( ) { var a ; if ( ! f . hasLoaded ) for ( f . hasLoaded = ! 0 , a = 0 ; a < f . registeredOnLoadHandlers . length ; a ++ ) f . registeredOnLoadHandlers [ a ] ( ) ; return ! 0 } var e = document , d = window , f = { outQueues : [ ] , bufferFlushers : [ ] , expireDateTime : null , hasLoaded : ! 1 , registeredOnLoadHandlers : [ ] , pageViewId : null } ; d . Snowplow = { getTrackerCf : function ( a ) { var c =
new Pa ( b , "" , "js-2.16.2" , f , { } ) ; c . setCollectorCf ( a ) ; return c } , getTrackerUrl : function ( a ) { var c = new Pa ( b , "" , "js-2.16.2" , f , { } ) ; c . setCollectorUrl ( a ) ; return c } , getAsyncTracker : function ( ) { return new Pa ( b , "" , "js-2.16.2" , f , { } ) } } ; v ( d , "beforeunload" , function ( ) { L ( f . bufferFlushers , function ( a ) { a ( ) } ) ; if ( f . expireDateTime ) { do { var a = new Date ; if ( 0 === f . outQueues . filter ( function ( a ) { return 0 < a . length } ) . length ) break } while ( a . getTime ( ) < f . expireDateTime ) } } , ! 1 ) ; ( function ( ) { var a ; e . addEventListener ? v ( e , "DOMContentLoaded" , function k ( ) { e . removeEventListener ( "DOMContentLoaded" ,
k , ! 1 ) ; c ( ) } ) : e . attachEvent && ( e . attachEvent ( "onreadystatechange" , function k ( ) { "complete" === e . readyState && ( e . detachEvent ( "onreadystatechange" , k ) , c ( ) ) } ) , e . documentElement . doScroll && d === d . top && function p ( ) { if ( ! f . hasLoaded ) { try { e . documentElement . doScroll ( "left" ) } catch ( x ) { setTimeout ( p , 0 ) ; return } c ( ) } } ( ) ) ; /WebKit/ . test ( navigator . userAgent ) && ( a = setInterval ( function ( ) { if ( f . hasLoaded || /loaded|complete/ . test ( e . readyState ) ) clearInterval ( a ) , c ( ) } , 10 ) ) ; v ( d , "load" , c , ! 1 ) } ) ( ) ; return new sd ( Pa , "js-2.16.2" , f , a , b ) } var Wd =
function ( a , b ) { for ( var c = - 1 , e = null == a ? 0 : a . length ; ++ c < e && ! 1 !== b ( a [ c ] , c , a ) ; ) ; return a } , Xd = function ( a ) { return function ( b , c , e ) { var d = - 1 , f = Object ( b ) ; e = e ( b ) ; for ( var h = e . length ; h -- ; ) { var g = e [ a ? h : ++ d ] ; if ( ! 1 === c ( f [ g ] , g , f ) ) break } return b } } ( ) , Sa = "undefined" !== typeof globalThis ? globalThis : "undefined" !== typeof window ? window : "undefined" !== typeof global ? global : "undefined" !== typeof self ? self : { } , Ic = "object" == H ( Sa ) && Sa && Sa . Object === Object && Sa , Yd = "object" == ( "undefined" === typeof self ? "undefined" : H ( self ) ) && self && self . Object ===
Object && self , S = Ic || Yd || Function ( "return this" ) ( ) , X = S . Symbol , Jc = Object . prototype , Zd = Jc . hasOwnProperty , $d = Jc . toString , ja = X ? X . toStringTag : void 0 , ae = Object . prototype . toString , Kc = X ? X . toStringTag : void 0 , U = function ( a ) { if ( null == a ) a = void 0 === a ? "[object Undefined]" : "[object Null]" ; else if ( Kc && Kc in Object ( a ) ) { var b = Zd . call ( a , ja ) , c = a [ ja ] ; try { a [ ja ] = void 0 ; var e = ! 0 } catch ( f ) { } var d = $d . call ( a ) ; e && ( b ? a [ ja ] = c : delete a [ ja ] ) ; a = d } else a = ae . call ( a ) ; return a } , T = function ( a ) { return null != a && "object" == H ( a ) } , Lc = function ( a ) { return T ( a ) &&
"[object Arguments]" == U ( a ) } , Mc = Object . prototype , be = Mc . hasOwnProperty , ce = Mc . propertyIsEnumerable , Nc = Lc ( function ( ) { return arguments } ( ) ) ? Lc : function ( a ) { return T ( a ) && be . call ( a , "callee" ) && ! ce . call ( a , "callee" ) } , F = Array . isArray , de = function ( ) { return ! 1 } , ib = qa ( function ( a , b ) { var c = ( b = b && ! b . nodeType && b ) && a && ! a . nodeType && a ; b = c && c . exports === b ? S . Buffer : void 0 ; a . exports = ( b ? b . isBuffer : void 0 ) || de } ) , ee = /^(?:0|[1-9]\d*)$/ , Ta = function ( a , b ) { var c = H ( a ) ; b = null == b ? 9007199254740991 : b ; return ! ! b && ( "number" == c || "symbol" != c &&
ee . test ( a ) ) && - 1 < a && 0 == a % 1 && a < b } , Qb = function ( a ) { return "number" == typeof a && - 1 < a && 0 == a % 1 && 9007199254740991 >= a } , m = { } ; m [ "[object Float32Array]" ] = m [ "[object Float64Array]" ] = m [ "[object Int8Array]" ] = m [ "[object Int16Array]" ] = m [ "[object Int32Array]" ] = m [ "[object Uint8Array]" ] = m [ "[object Uint8ClampedArray]" ] = m [ "[object Uint16Array]" ] = m [ "[object Uint32Array]" ] = ! 0 ; m [ "[object Arguments]" ] = m [ "[object Array]" ] = m [ "[object ArrayBuffer]" ] = m [ "[object Boolean]" ] = m [ "[object DataView]" ] = m [ "[object Date]" ] = m [ "[object Error]" ] =
m [ "[object Function]" ] = m [ "[object Map]" ] = m [ "[object Number]" ] = m [ "[object Object]" ] = m [ "[object RegExp]" ] = m [ "[object Set]" ] = m [ "[object String]" ] = m [ "[object WeakMap]" ] = ! 1 ; var fe = function ( a ) { return T ( a ) && Qb ( a . length ) && ! ! m [ U ( a ) ] } , ge = function ( a ) { return function ( b ) { return a ( b ) } } , Oc = qa ( function ( a , b ) { var c = b && ! b . nodeType && b ; c = ( b = c && a && ! a . nodeType && a ) && b . exports === c && Ic . process ; a : { try { var e = b && b . require && b . require ( "util" ) . types ; if ( e ) { var d = e ; break a } d = c && c . binding && c . binding ( "util" ) ; break a } catch ( f ) { } d = void 0 } a . exports =
d } ) , Pc = Oc && Oc . isTypedArray , Rb = Pc ? ge ( Pc ) : fe , he = Object . prototype . hasOwnProperty , ie = Object . prototype , Qc = function ( a , b ) { return function ( c ) { return a ( b ( c ) ) } } , je = Qc ( Object . keys , Object ) , ke = Object . prototype . hasOwnProperty , N = function ( a ) { var b = H ( a ) ; return null != a && ( "object" == b || "function" == b ) } , Rc = function ( a ) { if ( ! N ( a ) ) return ! 1 ; a = U ( a ) ; return "[object Function]" == a || "[object GeneratorFunction]" == a || "[object AsyncFunction]" == a || "[object Proxy]" == a } , Ca = function ( a ) { return null != a && Qb ( a . length ) && ! Rc ( a ) } , Ka = function ( a ) { if ( Ca ( a ) ) { var b =
F ( a ) , c = ! b && Nc ( a ) , e = ! b && ! c && ib ( a ) , d = ! b && ! c && ! e && Rb ( a ) ; if ( b = b || c || e || d ) { c = a . length ; for ( var f = String , h = - 1 , g = Array ( c ) ; ++ h < c ; ) g [ h ] = f ( h ) ; c = g } else c = [ ] ; f = c . length ; for ( var k in a ) ! he . call ( a , k ) || b && ( "length" == k || e && ( "offset" == k || "parent" == k ) || d && ( "buffer" == k || "byteLength" == k || "byteOffset" == k ) || Ta ( k , f ) ) || c . push ( k ) ; a = c } else if ( k = a && a . constructor , a === ( "function" == typeof k && k . prototype || ie ) ) { k = [ ] ; for ( e in Object ( a ) ) ke . call ( a , e ) && "constructor" != e && k . push ( e ) ; a = k } else a = je ( a ) ; return a } , Sc = function ( a , b ) { return a &&
Xd ( a , b , Ka ) } , Ua = function ( a , b ) { return function ( c , e ) { if ( null == c ) return c ; if ( ! Ca ( c ) ) return a ( c , e ) ; for ( var d = c . length , f = b ? d : - 1 , h = Object ( c ) ; ( b ? f -- : ++ f < d ) && ! 1 !== e ( h [ f ] , f , h ) ; ) ; return c } } ( Sc ) , Tc = function ( a ) { return a } , L = function ( a , b ) { return ( F ( a ) ? Wd : Ua ) ( a , "function" == typeof b ? b : Tc ) } , Uc = function ( a , b ) { for ( var c = - 1 , e = null == a ? 0 : a . length , d = 0 , f = [ ] ; ++ c < e ; ) { var h = a [ c ] ; b ( h , c , a ) && ( f [ d ++ ] = h ) } return f } , le = function ( a , b ) { var c = [ ] ; Ua ( a , function ( a , d , f ) { b ( a , d , f ) && c . push ( a ) } ) ; return c } , zb = function ( a , b ) { return a === b || a !== a && b !==
b } , ka = function ( a , b ) { for ( var c = a . length ; c -- ; ) if ( zb ( a [ c ] [ 0 ] , b ) ) return c ; return - 1 } , me = Array . prototype . splice ; ra . prototype . clear = function ( ) { this . _ _data _ _ = [ ] ; this . size = 0 } ; ra . prototype [ "delete" ] = function ( a ) { var b = this . _ _data _ _ ; a = ka ( b , a ) ; if ( 0 > a ) return ! 1 ; a == b . length - 1 ? b . pop ( ) : me . call ( b , a , 1 ) ; -- this . size ; return ! 0 } ; ra . prototype . get = function ( a ) { var b = this . _ _data _ _ ; a = ka ( b , a ) ; return 0 > a ? void 0 : b [ a ] [ 1 ] } ; ra . prototype . has = function ( a ) { return - 1 < ka ( this . _ _data _ _ , a ) } ; ra . prototype . set = function ( a , b ) { var c = this . _ _data _ _ ,
e = ka ( c , a ) ; 0 > e ? ( ++ this . size , c . push ( [ a , b ] ) ) : c [ e ] [ 1 ] = b ; return this } ; var Ga = ra , Va = S [ "__core-js_shared__" ] , Vc = function ( ) { var a = /[^.]+$/ . exec ( Va && Va . keys && Va . keys . IE _PROTO || "" ) ; return a ? "Symbol(src)_1." + a : "" } ( ) , ne = Function . prototype . toString , la = function ( a ) { if ( null != a ) { try { return ne . call ( a ) } catch ( b ) { } return a + "" } return "" } , oe = /^\[object .+?Constructor\]$/ , pe = RegExp ( "^" + Function . prototype . toString . call ( Object . prototype . hasOwnProperty ) . replace ( /[\\^$.*+?()[\]{}|]/g , "\\$&" ) . replace ( /hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g ,
"$1.*?" ) + "$" ) , ma = function ( a , b ) { a = null == a ? void 0 : a [ b ] ; return ( ! N ( a ) || Vc && Vc in a ? 0 : ( Rc ( a ) ? pe : oe ) . test ( la ( a ) ) ) ? a : void 0 } , na = ma ( S , "Map" ) , Wa = ma ( Object , "create" ) , qe = Object . prototype . hasOwnProperty , re = Object . prototype . hasOwnProperty ; Y . prototype . clear = function ( ) { this . _ _data _ _ = Wa ? Wa ( null ) : { } ; this . size = 0 } ; Y . prototype [ "delete" ] = function ( a ) { a = this . has ( a ) && delete this . _ _data _ _ [ a ] ; this . size -= a ? 1 : 0 ; return a } ; Y . prototype . get = function ( a ) { var b = this . _ _data _ _ ; return Wa ? ( a = b [ a ] , "__lodash_hash_undefined__" === a ? void 0 :
a ) : qe . call ( b , a ) ? b [ a ] : void 0 } ; Y . prototype . has = function ( a ) { var b = this . _ _data _ _ ; return Wa ? void 0 !== b [ a ] : re . call ( b , a ) } ; Y . prototype . set = function ( a , b ) { var c = this . _ _data _ _ ; this . size += this . has ( a ) ? 0 : 1 ; c [ a ] = Wa && void 0 === b ? "__lodash_hash_undefined__" : b ; return this } ; var Da = function ( a , b ) { a = a . _ _data _ _ ; var c = H ( b ) ; return ( "string" == c || "number" == c || "symbol" == c || "boolean" == c ? "__proto__" !== b : null === b ) ? a [ "string" == typeof b ? "string" : "hash" ] : a . map } ; sa . prototype . clear = function ( ) { this . size = 0 ; this . _ _data _ _ = { hash : new Y , map : new ( na ||
Ga ) , string : new Y } } ; sa . prototype [ "delete" ] = function ( a ) { a = Da ( this , a ) [ "delete" ] ( a ) ; this . size -= a ? 1 : 0 ; return a } ; sa . prototype . get = function ( a ) { return Da ( this , a ) . get ( a ) } ; sa . prototype . has = function ( a ) { return Da ( this , a ) . has ( a ) } ; sa . prototype . set = function ( a , b ) { var c = Da ( this , a ) , e = c . size ; c . set ( a , b ) ; this . size += c . size == e ? 0 : 1 ; return this } ; var Ha = sa ; ta . prototype . clear = function ( ) { this . _ _data _ _ = new Ga ; this . size = 0 } ; ta . prototype [ "delete" ] = function ( a ) { var b = this . _ _data _ _ ; a = b [ "delete" ] ( a ) ; this . size = b . size ; return a } ; ta . prototype . get =
function ( a ) { return this . _ _data _ _ . get ( a ) } ; ta . prototype . has = function ( a ) { return this . _ _data _ _ . has ( a ) } ; ta . prototype . set = function ( a , b ) { var c = this . _ _data _ _ ; if ( c instanceof Ga ) { var e = c . _ _data _ _ ; if ( ! na || 199 > e . length ) return e . push ( [ a , b ] ) , this . size = ++ c . size , this ; c = this . _ _data _ _ = new Ha ( e ) } c . set ( a , b ) ; this . size = c . size ; return this } ; var Ja = ta ; ua . prototype . add = ua . prototype . push = function ( a ) { this . _ _data _ _ . set ( a , "__lodash_hash_undefined__" ) ; return this } ; ua . prototype . has = function ( a ) { return this . _ _data _ _ . has ( a ) } ; var se =
function ( a , b ) { for ( var c = - 1 , e = null == a ? 0 : a . length ; ++ c < e ; ) if ( b ( a [ c ] , c , a ) ) return ! 0 ; return ! 1 } , gc = function ( a , b , c , e , d , f ) { var h = c & 1 , g = a . length , k = b . length ; if ( g != k && ! ( h && k > g ) ) return ! 1 ; k = f . get ( a ) ; var p = f . get ( b ) ; if ( k && p ) return k == b && p == a ; k = - 1 ; p = ! 0 ; var m = c & 2 ? new ua : void 0 ; f . set ( a , b ) ; for ( f . set ( b , a ) ; ++ k < g ; ) { var q = a [ k ] , n = b [ k ] ; if ( e ) var r = h ? e ( n , q , k , b , a , f ) : e ( q , n , k , a , b , f ) ; if ( void 0 !== r ) { if ( r ) continue ; p = ! 1 ; break } if ( m ) { if ( ! se ( b , function ( a , b ) { if ( ! m . has ( b ) && ( q === a || d ( q , a , c , e , f ) ) ) return m . push ( b ) } ) ) { p = ! 1 ; break } } else if ( q !==
n && ! d ( q , n , c , e , f ) ) { p = ! 1 ; break } } f [ "delete" ] ( a ) ; f [ "delete" ] ( b ) ; return p } , Wc = S . Uint8Array , te = function ( a ) { var b = - 1 , c = Array ( a . size ) ; a . forEach ( function ( a , d ) { c [ ++ b ] = [ d , a ] } ) ; return c } , ue = function ( a ) { var b = - 1 , c = Array ( a . size ) ; a . forEach ( function ( a ) { c [ ++ b ] = a } ) ; return c } , Xc = X ? X . prototype : void 0 , Xa = Xc ? Xc . valueOf : void 0 , md = function ( a , b , c , e , d , f , h ) { switch ( c ) { case "[object DataView]" : if ( a . byteLength != b . byteLength || a . byteOffset != b . byteOffset ) break ; a = a . buffer ; b = b . buffer ; case "[object ArrayBuffer]" : if ( a . byteLength != b . byteLength ||
! f ( new Wc ( a ) , new Wc ( b ) ) ) break ; return ! 0 ; case "[object Boolean]" : case "[object Date]" : case "[object Number]" : return zb ( + a , + b ) ; case "[object Error]" : return a . name == b . name && a . message == b . message ; case "[object RegExp]" : case "[object String]" : return a == b + "" ; case "[object Map]" : var g = te ; case "[object Set]" : g || ( g = ue ) ; if ( a . size != b . size && ! ( e & 1 ) ) break ; if ( c = h . get ( a ) ) return c == b ; e |= 2 ; h . set ( a , b ) ; b = gc ( g ( a ) , g ( b ) , e , d , f , h ) ; h [ "delete" ] ( a ) ; return b ; case "[object Symbol]" : if ( Xa ) return Xa . call ( a ) == Xa . call ( b ) } return ! 1 } ,
ic = function ( a , b , c ) { b = b ( a ) ; if ( ! F ( a ) ) { a = c ( a ) ; c = - 1 ; for ( var e = a . length , d = b . length ; ++ c < e ; ) b [ d + c ] = a [ c ] } return b } , ve = function ( ) { return [ ] } , we = Object . prototype . propertyIsEnumerable , Yc = Object . getOwnPropertySymbols , jc = Yc ? function ( a ) { if ( null == a ) return [ ] ; a = Object ( a ) ; return Uc ( Yc ( a ) , function ( b ) { return we . call ( a , b ) } ) } : ve , nd = Object . prototype . hasOwnProperty , Ya = ma ( S , "DataView" ) , Za = ma ( S , "Promise" ) , $a = ma ( S , "Set" ) , ab = ma ( S , "WeakMap" ) , xe = la ( Ya ) , ye = la ( na ) , ze = la ( Za ) , Ae = la ( $a ) , Be = la ( ab ) , oa = U ; if ( Ya && "[object DataView]" != oa ( new Ya ( new ArrayBuffer ( 1 ) ) ) ||
na && "[object Map]" != oa ( new na ) || Za && "[object Promise]" != oa ( Za . resolve ( ) ) || $a && "[object Set]" != oa ( new $a ) || ab && "[object WeakMap]" != oa ( new ab ) ) oa = function ( a ) { var b = U ( a ) ; if ( a = ( a = "[object Object]" == b ? a . constructor : void 0 ) ? la ( a ) : "" ) switch ( a ) { case xe : return "[object DataView]" ; case ye : return "[object Map]" ; case ze : return "[object Promise]" ; case Ae : return "[object Set]" ; case Be : return "[object WeakMap]" } return b } ; var Fb = oa , hc = Object . prototype . hasOwnProperty , ob = Ia , Ce = function ( a , b , c , e ) { var d = c . length , f = d , h = ! e ;
if ( null == a ) return ! f ; for ( a = Object ( a ) ; d -- ; ) { var g = c [ d ] ; if ( h && g [ 2 ] ? g [ 1 ] !== a [ g [ 0 ] ] : ! ( g [ 0 ] in a ) ) return ! 1 } for ( ; ++ d < f ; ) { g = c [ d ] ; var k = g [ 0 ] , p = a [ k ] , m = g [ 1 ] ; if ( h && g [ 2 ] ) { if ( void 0 === p && ! ( k in a ) ) return ! 1 } else { g = new Ja ; if ( e ) var q = e ( p , m , k , a , b , g ) ; if ( void 0 === q ? ! ob ( m , p , 3 , e , g ) : ! q ) return ! 1 } } return ! 0 } , De = function ( a ) { for ( var b = Ka ( a ) , c = b . length ; c -- ; ) { var e = b [ c ] , d = a [ e ] ; b [ c ] = [ e , d , d === d && ! N ( d ) ] } return b } , Zc = function ( a , b ) { return function ( c ) { return null == c ? ! 1 : c [ a ] === b && ( void 0 !== b || a in Object ( c ) ) } } , Ee = function ( a ) { var b = De ( a ) ;
return 1 == b . length && b [ 0 ] [ 2 ] ? Zc ( b [ 0 ] [ 0 ] , b [ 0 ] [ 1 ] ) : function ( c ) { return c === a || Ce ( c , a , b ) } } , ba = function ( a ) { return "symbol" == H ( a ) || T ( a ) && "[object Symbol]" == U ( a ) } , Fe = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/ , Ge = /^\w*$/ , bb = function ( a , b ) { if ( F ( a ) ) return ! 1 ; var c = H ( a ) ; return "number" == c || "symbol" == c || "boolean" == c || null == a || ba ( a ) ? ! 0 : Ge . test ( a ) || ! Fe . test ( a ) || null != b && a in Object ( b ) } ; jb . Cache = Ha ; var He = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g , Ie = /\\(\\)?/g ,
Je = function ( a ) { a = jb ( a , function ( a ) { 500 === b . size && b . clear ( ) ; return a } ) ; var b = a . cache ; return a } ( function ( a ) { var b = [ ] ; 46 === a . charCodeAt ( 0 ) && b . push ( "" ) ; a . replace ( He , function ( a , e , d , f ) { b . push ( d ? f . replace ( Ie , "$1" ) : e || a ) } ) ; return b } ) , lc = function ( a , b ) { for ( var c = - 1 , e = null == a ? 0 : a . length , d = Array ( e ) ; ++ c < e ; ) d [ c ] = b ( a [ c ] , c , a ) ; return d } , od = 1 / 0 , $c = X ? X . prototype : void 0 , mc = $c ? $c . toString : void 0 , ad = function ( a , b ) { return F ( a ) ? a : bb ( a , b ) ? [ a ] : Je ( null == a ? "" : kc ( a ) ) } , Ke = 1 / 0 , Ab = function ( a ) { if ( "string" == typeof a || ba ( a ) ) return a ;
var b = a + "" ; return "0" == b && 1 / a == - Ke ? "-0" : b } , bd = function ( a , b ) { b = ad ( b , a ) ; for ( var c = 0 , e = b . length ; null != a && c < e ; ) a = a [ Ab ( b [ c ++ ] ) ] ; return c && c == e ? a : void 0 } , J = function ( a , b , c ) { a = null == a ? void 0 : bd ( a , b ) ; return void 0 === a ? c : a } , Le = function ( a , b ) { return null != a && b in Object ( a ) } , pb = function ( a , b , c ) { b = ad ( b , a ) ; for ( var e = - 1 , d = b . length , f = ! 1 ; ++ e < d ; ) { var h = Ab ( b [ e ] ) ; if ( ! ( f = null != a && c ( a , h ) ) ) break ; a = a [ h ] } if ( f || ++ e != d ) return f ; d = null == a ? 0 : a . length ; return ! ! d && Qb ( d ) && Ta ( h , d ) && ( F ( a ) || Nc ( a ) ) } , Me = function ( a , b ) { return bb ( a ) && b === b &&
! N ( b ) ? Zc ( Ab ( a ) , b ) : function ( c ) { var e = J ( c , a ) ; return void 0 === e && e === b ? null != c && pb ( c , a , Le ) : ob ( b , e , 3 ) } } , Ne = function ( a ) { return function ( b ) { return null == b ? void 0 : b [ a ] } } , Oe = function ( a ) { return function ( b ) { return bd ( b , a ) } } , Ea = function ( a ) { return "function" == typeof a ? a : null == a ? Tc : "object" == H ( a ) ? F ( a ) ? Me ( a [ 0 ] , a [ 1 ] ) : Ee ( a ) : bb ( a ) ? Ne ( Ab ( a ) ) : Oe ( a ) } , pd = function ( a , b ) { return ( F ( a ) ? Uc : le ) ( a , Ea ( b ) ) } , oc = function ( a ) { return "string" == typeof a || ! F ( a ) && T ( a ) && "[object String]" == U ( a ) } , Pe = function ( a , b ) { var c = - 1 , e = Ca ( a ) ? Array ( a . length ) :
[ ] ; Ua ( a , function ( a , f , h ) { e [ ++ c ] = b ( a , f , h ) } ) ; return e } , da = function ( a , b ) { return ( F ( a ) ? lc : Pe ) ( a , Ea ( b ) ) } , ca = window , va = document , wa = window . localStorage , uc = window . sessionStorage , cd = 0 / 0 , Qe = /^\s+|\s+$/g , Re = /^[-+]0x[0-9a-f]+$/i , Se = /^0b[01]+$/i , Te = /^0o[0-7]+$/i , Ue = parseInt , Ve = function ( a ) { if ( "number" == typeof a ) return a ; if ( ba ( a ) ) return cd ; N ( a ) && ( a = "function" == typeof a . valueOf ? a . valueOf ( ) : a , a = N ( a ) ? a + "" : a ) ; if ( "string" != typeof a ) return 0 === a ? a : + a ; a = a . replace ( Qe , "" ) ; var b = Se . test ( a ) ; return b || Te . test ( a ) ? Ue ( a . slice ( 2 ) ,
b ? 2 : 8 ) : Re . test ( a ) ? cd : + a } , dd = 1 / 0 , fc = function ( a ) { a ? ( a = Ve ( a ) , a = a === dd || a === - dd ? 1.7976931348623157 E308 * ( 0 > a ? - 1 : 1 ) : a === a ? a : 0 ) : a = 0 === a ? a : 0 ; var b = a % 1 ; return a === a ? b ? a - b : a : 0 } , Vd = qa ( function ( a , b ) { ( function ( a ) { var c = function ( ) { var a = function ( a ) { a = - a . getTimezoneOffset ( ) ; return null !== a ? a : 0 } , b = function ( a , b , c ) { var d = new Date ; void 0 !== a && d . setFullYear ( a ) ; d . setMonth ( b ) ; d . setDate ( c ) ; return d } ; return { determine : function ( ) { var d = a ( b ( void 0 , 0 , 2 ) ) , e = a ( b ( void 0 , 5 , 2 ) ) , f = d - e ; return new c . TimeZone ( c . olson . timezones [ 0 > f ? d +
",1" : 0 < f ? e + ",1,s" : d + ",0" ] ) } , date _is _dst : function ( c ) { var d = 7 < c . getMonth ( ) , e = d ? a ( b ( c . getFullYear ( ) , 5 , 2 ) ) : a ( b ( c . getFullYear ( ) , 0 , 2 ) ) ; c = a ( c ) ; c = e - c ; return 0 > e || d ? 0 !== c : 0 > c } , dst _start _for : function ( a ) { var b = new Date ( 2010 , 6 , 15 , 1 , 0 , 0 , 0 ) ; return { "America/Denver" : new Date ( 2011 , 2 , 13 , 3 , 0 , 0 , 0 ) , "America/Mazatlan" : new Date ( 2011 , 3 , 3 , 3 , 0 , 0 , 0 ) , "America/Chicago" : new Date ( 2011 , 2 , 13 , 3 , 0 , 0 , 0 ) , "America/Mexico_City" : new Date ( 2011 , 3 , 3 , 3 , 0 , 0 , 0 ) , "America/Asuncion" : new Date ( 2012 , 9 , 7 , 3 , 0 , 0 , 0 ) , "America/Santiago" : new Date ( 2012 , 9 ,
3 , 3 , 0 , 0 , 0 ) , "America/Campo_Grande" : new Date ( 2012 , 9 , 21 , 5 , 0 , 0 , 0 ) , "America/Montevideo" : new Date ( 2011 , 9 , 2 , 3 , 0 , 0 , 0 ) , "America/Sao_Paulo" : new Date ( 2011 , 9 , 16 , 5 , 0 , 0 , 0 ) , "America/Los_Angeles" : new Date ( 2011 , 2 , 13 , 8 , 0 , 0 , 0 ) , "America/Santa_Isabel" : new Date ( 2011 , 3 , 5 , 8 , 0 , 0 , 0 ) , "America/Havana" : new Date ( 2012 , 2 , 10 , 2 , 0 , 0 , 0 ) , "America/New_York" : new Date ( 2012 , 2 , 10 , 7 , 0 , 0 , 0 ) , "Europe/Helsinki" : new Date ( 2013 , 2 , 31 , 5 , 0 , 0 , 0 ) , "Pacific/Auckland" : new Date ( 2011 , 8 , 26 , 7 , 0 , 0 , 0 ) , "America/Halifax" : new Date ( 2011 , 2 , 13 , 6 , 0 , 0 , 0 ) , "America/Goose_Bay" : new Date ( 2011 ,
2 , 13 , 2 , 1 , 0 , 0 ) , "America/Miquelon" : new Date ( 2011 , 2 , 13 , 5 , 0 , 0 , 0 ) , "America/Godthab" : new Date ( 2011 , 2 , 27 , 1 , 0 , 0 , 0 ) , "Europe/Moscow" : b , "Asia/Amman" : new Date ( 2013 , 2 , 29 , 1 , 0 , 0 , 0 ) , "Asia/Beirut" : new Date ( 2013 , 2 , 31 , 2 , 0 , 0 , 0 ) , "Asia/Damascus" : new Date ( 2013 , 3 , 6 , 2 , 0 , 0 , 0 ) , "Asia/Jerusalem" : new Date ( 2013 , 2 , 29 , 5 , 0 , 0 , 0 ) , "Asia/Yekaterinburg" : b , "Asia/Omsk" : b , "Asia/Krasnoyarsk" : b , "Asia/Irkutsk" : b , "Asia/Yakutsk" : b , "Asia/Vladivostok" : b , "Asia/Baku" : new Date ( 2013 , 2 , 31 , 4 , 0 , 0 ) , "Asia/Yerevan" : new Date ( 2013 , 2 , 31 , 3 , 0 , 0 ) , "Asia/Kamchatka" : b ,
"Asia/Gaza" : new Date ( 2010 , 2 , 27 , 4 , 0 , 0 ) , "Africa/Cairo" : new Date ( 2010 , 4 , 1 , 3 , 0 , 0 ) , "Europe/Minsk" : b , "Pacific/Apia" : new Date ( 2010 , 10 , 1 , 1 , 0 , 0 , 0 ) , "Pacific/Fiji" : new Date ( 2010 , 11 , 1 , 0 , 0 , 0 ) , "Australia/Perth" : new Date ( 2008 , 10 , 1 , 1 , 0 , 0 , 0 ) } [ a ] } } } ( ) ; c . TimeZone = function ( a ) { var b = { "America/Denver" : [ "America/Denver" , "America/Mazatlan" ] , "America/Chicago" : [ "America/Chicago" , "America/Mexico_City" ] , "America/Santiago" : [ "America/Santiago" , "America/Asuncion" , "America/Campo_Grande" ] , "America/Montevideo" : [ "America/Montevideo" ,
"America/Sao_Paulo" ] , "Asia/Beirut" : [ "Asia/Amman" , "Asia/Jerusalem" , "Asia/Beirut" , "Europe/Helsinki" , "Asia/Damascus" ] , "Pacific/Auckland" : [ "Pacific/Auckland" , "Pacific/Fiji" ] , "America/Los_Angeles" : [ "America/Los_Angeles" , "America/Santa_Isabel" ] , "America/New_York" : [ "America/Havana" , "America/New_York" ] , "America/Halifax" : [ "America/Goose_Bay" , "America/Halifax" ] , "America/Godthab" : [ "America/Miquelon" , "America/Godthab" ] , "Asia/Dubai" : [ "Europe/Moscow" ] , "Asia/Dhaka" : [ "Asia/Yekaterinburg" ] , "Asia/Jakarta" : [ "Asia/Omsk" ] ,
"Asia/Shanghai" : [ "Asia/Krasnoyarsk" , "Australia/Perth" ] , "Asia/Tokyo" : [ "Asia/Irkutsk" ] , "Australia/Brisbane" : [ "Asia/Yakutsk" ] , "Pacific/Noumea" : [ "Asia/Vladivostok" ] , "Pacific/Tarawa" : [ "Asia/Kamchatka" , "Pacific/Fiji" ] , "Pacific/Tongatapu" : [ "Pacific/Apia" ] , "Asia/Baghdad" : [ "Europe/Minsk" ] , "Asia/Baku" : [ "Asia/Yerevan" , "Asia/Baku" ] , "Africa/Johannesburg" : [ "Asia/Gaza" , "Africa/Cairo" ] } , d = a ; a = function ( ) { for ( var a = b [ d ] , e = a . length , f = 0 , h ; f < e ; f += 1 ) if ( h = a [ f ] , c . date _is _dst ( c . dst _start _for ( h ) ) ) { d = h ; break } } ; "undefined" !==
typeof b [ d ] && a ( ) ; return { name : function ( ) { return d } } } ; c . olson = { } ; c . olson . timezones = { "-720,0" : "Pacific/Majuro" , "-660,0" : "Pacific/Pago_Pago" , "-600,1" : "America/Adak" , "-600,0" : "Pacific/Honolulu" , "-570,0" : "Pacific/Marquesas" , "-540,0" : "Pacific/Gambier" , "-540,1" : "America/Anchorage" , "-480,1" : "America/Los_Angeles" , "-480,0" : "Pacific/Pitcairn" , "-420,0" : "America/Phoenix" , "-420,1" : "America/Denver" , "-360,0" : "America/Guatemala" , "-360,1" : "America/Chicago" , "-360,1,s" : "Pacific/Easter" , "-300,0" : "America/Bogota" , "-300,1" : "America/New_York" ,
"-270,0" : "America/Caracas" , "-240,1" : "America/Halifax" , "-240,0" : "America/Santo_Domingo" , "-240,1,s" : "America/Santiago" , "-210,1" : "America/St_Johns" , "-180,1" : "America/Godthab" , "-180,0" : "America/Argentina/Buenos_Aires" , "-180,1,s" : "America/Montevideo" , "-120,0" : "America/Noronha" , "-120,1" : "America/Noronha" , "-60,1" : "Atlantic/Azores" , "-60,0" : "Atlantic/Cape_Verde" , "0,0" : "UTC" , "0,1" : "Europe/London" , "60,1" : "Europe/Berlin" , "60,0" : "Africa/Lagos" , "60,1,s" : "Africa/Windhoek" , "120,1" : "Asia/Beirut" , "120,0" : "Africa/Johannesburg" ,
"180,0" : "Asia/Baghdad" , "180,1" : "Europe/Moscow" , "210,1" : "Asia/Tehran" , "240,0" : "Asia/Dubai" , "240,1" : "Asia/Baku" , "270,0" : "Asia/Kabul" , "300,1" : "Asia/Yekaterinburg" , "300,0" : "Asia/Karachi" , "330,0" : "Asia/Kolkata" , "345,0" : "Asia/Kathmandu" , "360,0" : "Asia/Dhaka" , "360,1" : "Asia/Omsk" , "390,0" : "Asia/Rangoon" , "420,1" : "Asia/Krasnoyarsk" , "420,0" : "Asia/Jakarta" , "480,0" : "Asia/Shanghai" , "480,1" : "Asia/Irkutsk" , "525,0" : "Australia/Eucla" , "525,1,s" : "Australia/Eucla" , "540,1" : "Asia/Yakutsk" , "540,0" : "Asia/Tokyo" , "570,0" : "Australia/Darwin" ,
"570,1,s" : "Australia/Adelaide" , "600,0" : "Australia/Brisbane" , "600,1" : "Asia/Vladivostok" , "600,1,s" : "Australia/Sydney" , "630,1,s" : "Australia/Lord_Howe" , "660,1" : "Asia/Kamchatka" , "660,0" : "Pacific/Noumea" , "690,0" : "Pacific/Norfolk" , "720,1,s" : "Pacific/Auckland" , "720,0" : "Pacific/Tarawa" , "765,1,s" : "Pacific/Chatham" , "780,0" : "Pacific/Tongatapu" , "780,1,s" : "Pacific/Apia" , "840,0" : "Pacific/Kiritimati" } ; b . jstz = c } ) ( ) } ) , ya = window , R = navigator , nb = screen , Ma = document , cb = qa ( function ( a ) { ( function ( ) { var b = { rotl : function ( a ,
b ) { return a << b | a >>> 32 - b } , rotr : function ( a , b ) { return a << 32 - b | a >>> b } , endian : function ( a ) { if ( a . constructor == Number ) return b . rotl ( a , 8 ) & 16711935 | b . rotl ( a , 24 ) & 4278255360 ; for ( var c = 0 ; c < a . length ; c ++ ) a [ c ] = b . endian ( a [ c ] ) ; return a } , randomBytes : function ( a ) { for ( var b = [ ] ; 0 < a ; a -- ) b . push ( Math . floor ( 256 * Math . random ( ) ) ) ; return b } , bytesToWords : function ( a ) { for ( var b = [ ] , c = 0 , f = 0 ; c < a . length ; c ++ , f += 8 ) b [ f >>> 5 ] |= a [ c ] << 24 - f % 32 ; return b } , wordsToBytes : function ( a ) { for ( var b = [ ] , c = 0 ; c < 32 * a . length ; c += 8 ) b . push ( a [ c >>> 5 ] >>> 24 - c % 32 & 255 ) ;
return b } , bytesToHex : function ( a ) { for ( var b = [ ] , c = 0 ; c < a . length ; c ++ ) b . push ( ( a [ c ] >>> 4 ) . toString ( 16 ) ) , b . push ( ( a [ c ] & 15 ) . toString ( 16 ) ) ; return b . join ( "" ) } , hexToBytes : function ( a ) { for ( var b = [ ] , c = 0 ; c < a . length ; c += 2 ) b . push ( parseInt ( a . substr ( c , 2 ) , 16 ) ) ; return b } , bytesToBase64 : function ( a ) { for ( var b = [ ] , c = 0 ; c < a . length ; c += 3 ) for ( var f = a [ c ] << 16 | a [ c + 1 ] << 8 | a [ c + 2 ] , h = 0 ; 4 > h ; h ++ ) 8 * c + 6 * h <= 8 * a . length ? b . push ( "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" . charAt ( f >>> 6 * ( 3 - h ) & 63 ) ) : b . push ( "=" ) ; return b . join ( "" ) } ,
base64ToBytes : function ( a ) { a = a . replace ( /[^A-Z0-9+\/]/ig , "" ) ; for ( var b = [ ] , c = 0 , f = 0 ; c < a . length ; f = ++ c % 4 ) 0 != f && b . push ( ( "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" . indexOf ( a . charAt ( c - 1 ) ) & Math . pow ( 2 , - 2 * f + 8 ) - 1 ) << 2 * f | "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" . indexOf ( a . charAt ( c ) ) >>> 6 - 2 * f ) ; return b } } ; a . exports = b } ) ( ) } ) , db = { utf8 : { stringToBytes : function ( a ) { return db . bin . stringToBytes ( unescape ( encodeURIComponent ( a ) ) ) } , bytesToString : function ( a ) { return decodeURIComponent ( escape ( db . bin . bytesToString ( a ) ) ) } } ,
bin : { stringToBytes : function ( a ) { for ( var b = [ ] , c = 0 ; c < a . length ; c ++ ) b . push ( a . charCodeAt ( c ) & 255 ) ; return b } , bytesToString : function ( a ) { for ( var b = [ ] , c = 0 ; c < a . length ; c ++ ) b . push ( String . fromCharCode ( a [ c ] ) ) ; return b . join ( "" ) } } } , ed = db , Ud = qa ( function ( a ) { ( function ( ) { var b = ed . utf8 , c = ed . bin , e = function ( a ) { a . constructor == String && ( a = b . stringToBytes ( a ) ) ; var c = cb . bytesToWords ( a ) , d = 8 * a . length ; a = [ ] ; var e = 1732584193 , f = - 271733879 , m = - 1732584194 , q = 271733878 , n = - 1009589776 ; c [ d >> 5 ] |= 128 << 24 - d % 32 ; c [ ( d + 64 >>> 9 << 4 ) + 15 ] = d ; for ( d = 0 ; d < c . length ; d +=
16 ) { for ( var r = e , t = f , v = m , E = q , F = n , y = 0 ; 80 > y ; y ++ ) { if ( 16 > y ) a [ y ] = c [ d + y ] ; else { var A = a [ y - 3 ] ^ a [ y - 8 ] ^ a [ y - 14 ] ^ a [ y - 16 ] ; a [ y ] = A << 1 | A >>> 31 } A = ( e << 5 | e >>> 27 ) + n + ( a [ y ] >>> 0 ) + ( 20 > y ? ( f & m | ~ f & q ) + 1518500249 : 40 > y ? ( f ^ m ^ q ) + 1859775393 : 60 > y ? ( f & m | f & q | m & q ) - 1894007588 : ( f ^ m ^ q ) - 899497514 ) ; n = q ; q = m ; m = f << 30 | f >>> 2 ; f = e ; e = A } e += r ; f += t ; m += v ; q += E ; n += F } return [ e , f , m , q , n ] } , d = function ( a , b ) { a = cb . wordsToBytes ( e ( a ) ) ; return b && b . asBytes ? a : b && b . asString ? c . bytesToString ( a ) : cb . bytesToHex ( a ) } ; d . _blocksize = 16 ; d . _digestsize = 20 ; a . exports = d } ) ( ) } ) , We = Math . max ,
zd = function ( a ) { return function ( b , c , e ) { var d = Object ( b ) ; if ( ! Ca ( b ) ) { var f = Ea ( c ) ; b = Ka ( b ) ; c = function ( a ) { return f ( d [ a ] , a , d ) } } c = a ( b , c , e ) ; return - 1 < c ? d [ f ? b [ c ] : c ] : void 0 } } ( function ( a , b , c ) { var e = null == a ? 0 : a . length ; if ( ! e ) return - 1 ; c = null == c ? 0 : fc ( c ) ; 0 > c && ( c = We ( e + c , 0 ) ) ; a : { b = Ea ( b ) ; e = a . length ; for ( c += - 1 ; ++ c < e ; ) if ( b ( a [ c ] , c , a ) ) { a = c ; break a } a = - 1 } return a } ) , Bd = window , fd = function ( ) { try { var a = ma ( Object , "defineProperty" ) ; a ( { } , "" , { } ) ; return a } catch ( b ) { } } ( ) , Cd = function ( a , b ) { var c = { } ; b = Ea ( b ) ; Sc ( a , function ( a , d , f ) { a = b ( a , d , f ) ;
"__proto__" == d && fd ? fd ( c , d , { configurable : ! 0 , enumerable : ! 0 , value : a , writable : ! 0 } ) : c [ d ] = a } ) ; return c } , Ed = function ( a ) { return function ( ) { try { return a . apply ( this , arguments ) } catch ( b ) { } } } , gd = qa ( function ( a ) { var b = "undefined" != typeof crypto && crypto . getRandomValues && crypto . getRandomValues . bind ( crypto ) || "undefined" != typeof msCrypto && "function" == typeof window . msCrypto . getRandomValues && msCrypto . getRandomValues . bind ( msCrypto ) ; if ( b ) { var c = new Uint8Array ( 16 ) ; a . exports = function ( ) { b ( c ) ; return c } } else { var e = Array ( 16 ) ;
a . exports = function ( ) { for ( var a = 0 , b ; 16 > a ; a ++ ) 0 === ( a & 3 ) && ( b = 4294967296 * Math . random ( ) ) , e [ a ] = b >>> ( ( a & 3 ) << 3 ) & 255 ; return e } } } ) , r = [ ] , Bb = 0 ; for ( ; 256 > Bb ; ++ Bb ) r [ Bb ] = ( Bb + 256 ) . toString ( 16 ) . substr ( 1 ) ; var hd = function ( a , b ) { b = b || 0 ; return [ r [ a [ b ++ ] ] , r [ a [ b ++ ] ] , r [ a [ b ++ ] ] , r [ a [ b ++ ] ] , "-" , r [ a [ b ++ ] ] , r [ a [ b ++ ] ] , "-" , r [ a [ b ++ ] ] , r [ a [ b ++ ] ] , "-" , r [ a [ b ++ ] ] , r [ a [ b ++ ] ] , "-" , r [ a [ b ++ ] ] , r [ a [ b ++ ] ] , r [ a [ b ++ ] ] , r [ a [ b ++ ] ] , r [ a [ b ++ ] ] , r [ a [ b ++ ] ] ] . join ( "" ) } , id , eb , fb = 0 , Cb = 0 , V = function ( a , b , c ) { c = b && c || 0 ; "string" == typeof a && ( b = "binary" === a ? Array ( 16 ) : null ,
a = null ) ; a = a || { } ; a = a . random || ( a . rng || gd ) ( ) ; a [ 6 ] = a [ 6 ] & 15 | 64 ; a [ 8 ] = a [ 8 ] & 63 | 128 ; if ( b ) for ( var e = 0 ; 16 > e ; ++ e ) b [ c + e ] = a [ e ] ; return b || hd ( a ) } , gb = V ; gb . v1 = function ( a , b , c ) { c = b && c || 0 ; var e = b || [ ] ; a = a || { } ; var d = a . node || id , f = void 0 !== a . clockseq ? a . clockseq : eb ; if ( null == d || null == f ) { var h = gd ( ) ; null == d && ( d = id = [ h [ 0 ] | 1 , h [ 1 ] , h [ 2 ] , h [ 3 ] , h [ 4 ] , h [ 5 ] ] ) ; null == f && ( f = eb = ( h [ 6 ] << 8 | h [ 7 ] ) & 16383 ) } h = void 0 !== a . msecs ? a . msecs : ( new Date ) . getTime ( ) ; var g = void 0 !== a . nsecs ? a . nsecs : Cb + 1 , k = h - fb + ( g - Cb ) / 1E4 ; 0 > k && void 0 === a . clockseq && ( f = f + 1 & 16383 ) ;
( 0 > k || h > fb ) && void 0 === a . nsecs && ( g = 0 ) ; if ( 1E4 <= g ) throw Error ( "uuid.v1(): Can't create more than 10M uuids/sec" ) ; fb = h ; Cb = g ; eb = f ; h += 122192928E5 ; a = ( 1E4 * ( h & 268435455 ) + g ) % 4294967296 ; e [ c ++ ] = a >>> 24 & 255 ; e [ c ++ ] = a >>> 16 & 255 ; e [ c ++ ] = a >>> 8 & 255 ; e [ c ++ ] = a & 255 ; a = h / 4294967296 * 1E4 & 268435455 ; e [ c ++ ] = a >>> 8 & 255 ; e [ c ++ ] = a & 255 ; e [ c ++ ] = a >>> 24 & 15 | 16 ; e [ c ++ ] = a >>> 16 & 255 ; e [ c ++ ] = f >>> 8 | 128 ; e [ c ++ ] = f & 255 ; for ( f = 0 ; 6 > f ; ++ f ) e [ c + f ] = d [ f ] ; return b ? b : hd ( e ) } ; gb . v4 = V ; var Sd = gb , Xe = Object . prototype . hasOwnProperty , qb = function ( a , b ) { return null != a && Xe . call ( a ,
b ) } , Ye = function ( a , b ) { for ( var c = - 1 , e = null == a ? 0 : a . length ; ++ c < e ; ) if ( ! b ( a [ c ] , c , a ) ) return ! 1 ; return ! 0 } , Ze = function ( a , b ) { var c = ! 0 ; Ua ( a , function ( a , d , f ) { return c = ! ! b ( a , d , f ) } ) ; return c } , rb = function ( a , b , c ) { var e = F ( a ) ? Ye : Ze , d ; if ( d = c ) if ( d = b , N ( c ) ) { var f = H ( d ) ; d = ( "number" == f ? Ca ( c ) && Ta ( d , c . length ) : "string" == f && d in c ) ? zb ( c [ d ] , a ) : ! 1 } else d = ! 1 ; d && ( b = void 0 ) ; return e ( a , Ea ( b ) ) } , Gc = function ( a ) { for ( var b = - 1 , c = null == a ? 0 : a . length , e = 0 , d = [ ] ; ++ b < c ; ) { var f = a [ b ] ; f && ( d [ e ++ ] = f ) } return d } , Md = Qc ( Object . getPrototypeOf , Object ) , Ac = Function . prototype . toString ,
Nd = Object . prototype . hasOwnProperty , Od = Ac . call ( Object ) , aa = window ; if ( aa . GlobalSnowplowNamespace && 0 < aa . GlobalSnowplowNamespace . length ) { var jd = aa . GlobalSnowplowNamespace . shift ( ) ; var kd = aa [ jd ] ; kd . q = new Hc ( kd . q , jd ) } else aa . _snaq = aa . _snaq || [ ] , aa . _snaq = new Hc ( aa . _snaq , "_snaq" ) } ) ( )