{"version":3,"file":"TaggingFull.js","mappings":";;;;;;AAAO,IAAI,wBAAO;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK,iDAAiD;AACtD,CAAC,EAAE,wBAAO,KAAK,wBAAO,KAAK;AAC3B;;ACbO;AACP;AACA;AACA;AACA;AACA;AACA,CAAC,8BAA8B;AACxB;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,kCAAkC;AACnC;;AChB8D;AACd;AACF;AACvC;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,yCAAe,iFAAiF,SAAS;AACrH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,4BAA4B;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,yCAAe,4DAA4D,SAAS;AAChG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,yCAAe;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC,yCAAe;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,yCAAe;AAC3B;AACA,sDAAsD,yCAAe;AACrE,gCAAgC,qBAAqB;AACrD;AACA;AACA;AACA;AACA,gBAAgB,yCAAe,gFAAgF,SAAS;AACxH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,yCAAe;AAC/B;AACA,kBAAkB,yCAAe;AACjC,0BAA0B,yCAAe;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,oCAAoC;AAChE;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,2CAA2C;AAC3E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,yCAAe;AAChC;AACA;AACA,sDAAsD,yCAAe;AACrE,gCAAgC,qBAAqB;AACrD;AACA;AACA;AACA;AACA,gBAAgB,yCAAe,gFAAgF,SAAS;AACxH;AACA;AACA,iBAAiB,yCAAe;AAChC;AACA,6BAA6B,yCAAe;AAC5C;AACA;AACA,gBAAgB,yCAAe,kFAAkF,SAAS;AAC1H;AACA;AACA;AACA;AACA,6BAA6B,yCAAe;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,2CAA2C;AACvE;AACA;AACA;AACA,iBAAiB,yCAAe;AAChC,2BAA2B,yCAAe;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,yCAAe;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,yCAAe;AACnC;AACA;AACA;AACA;AACA;AACA,gBAAgB,yCAAe,2BAA2B,yCAAe;AACzE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,wBAAO;AACnB;AACA,yCAAyC,wBAAO;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,wBAAO;AACtC;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,wBAAO;AAClC;AACA;AACA;AACA,iBAAiB,wBAAO;AACxB,gBAAgB,wBAAO;AACvB,oBAAoB,wBAAO;AAC3B;AACA;AACA;AACA;AACA;AACA,iBAAiB,wBAAO;AACxB,gBAAgB,wBAAO;AACvB,oBAAoB,wBAAO;AAC3B;AACA;AACA;AACA;AACA;AACA,iBAAiB,wBAAO;AACxB,4BAA4B,wBAAO;AACnC;AACA,iBAAiB,wBAAO;AACxB,8BAA8B,wBAAO;AACrC;AACA,iBAAiB,wBAAO;AACxB,0BAA0B,wBAAO,oCAAoC,wBAAO;AAC5E;AACA,iBAAiB,yCAAe,iCAAiC,wBAAO;AACxE;AACA,gBAAgB,yCAAe;AAC/B,2BAA2B,yCAAe;AAC1C;AACA;AACA;AACA;AACA,gBAAgB,yCAAe;AAC/B,2BAA2B,yCAAe;AAC1C;AACA;AACA,iBAAiB,wBAAO;AACxB,gBAAgB,wBAAO;AACvB,oBAAoB,wBAAO;AAC3B;AACA;AACA,4BAA4B,wBAAO;AACnC;AACA;AACA;AACA;AACA;AACA,iBAAiB,yCAAe;AAChC,gBAAgB,yCAAe;AAC/B;AACA,oBAAoB,wBAAO;AAC3B;AACA;AACA;AACA;AACA,+BAA+B,wBAAO;AACtC;AACA;AACA;AACA;AACA;AACA,iBAAiB,yCAAe;AAChC,gBAAgB,yCAAe;AAC/B;AACA,iBAAiB,wBAAO;AACxB,8BAA8B,wBAAO;AACrC;AACA,iBAAiB,wBAAO;AACxB;AACA;AACA,iBAAiB,wBAAO;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,oCAAoC;AACpE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,yCAAe;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,yCAAe,uCAAuC,yCAAe;AACtF,kBAAkB,yCAAe;AACjC;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,wBAAO;AACnB,yBAAyB,wBAAO;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,wBAAO;AACnB,gBAAgB,wBAAO;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,wBAAO;AACvB,oBAAoB,wBAAO;AAC3B;AACA;AACA;AACA;AACA,qBAAqB,yCAAe;AACpC,oBAAoB,yCAAe;AACnC;AACA;AACA,yBAAyB,yCAAe;AACxC;AACA;AACA,yBAAyB,yCAAe;AACxC;AACA;AACA,yBAAyB,yCAAe;AACxC;AACA;AACA;AACA,wBAAwB,yCAAe;AACvC;AACA;AACA,qBAAqB,yCAAe;AACpC,oBAAoB,yCAAe;AACnC;AACA;AACA,yBAAyB,yCAAe;AACxC;AACA;AACA,yBAAyB,yCAAe;AACxC;AACA;AACA,yBAAyB,yCAAe;AACxC;AACA;AACA;AACA,wBAAwB,yCAAe;AACvC;AACA;AACA,qBAAqB,yCAAe;AACpC,gCAAgC,yCAAe;AAC/C;AACA,sBAAsB,yCAAe,wDAAwD,yCAAe;AAC5G;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,wBAAO;AACnB,yBAAyB,wBAAO;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,sCAAsC;AACtE;AACA,oCAAoC,2DAA2D;AAC/F;AACA;AACA;AACA;AACA,iCAAiC;AACjC;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,wBAAO;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB,yCAAe;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB,yCAAe;AACxC;AACA;AACA,yBAAyB,yCAAe;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB,yCAAe;AACxC,uCAAuC,yCAAe;AACtD;AACA,yBAAyB,yCAAe;AACxC,uCAAuC,yCAAe;AACtD;AACA,uCAAuC,yCAAe;AACtD,wBAAwB,yCAAe;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,yCAAe;AAC3B,gBAAgB,yCAAe;AAC/B;AACA;AACA;AACA;AACA;AACA,YAAY,yCAAe;AAC3B,mBAAmB,yCAAe;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,6DAA6D;AAC7F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,6DAA6D;AAC7F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,yCAAe;AAChC,gBAAgB,yCAAe;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,wBAAO;AACnB;AACA;AACA;AACA;AACA;AACA,gCAAgC,cAAc;AAC9C;AACA,wBAAwB,wBAAO;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,cAAc;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,2DAA2D;AACvF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,2DAA2D;AACvF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,kBAAkB;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,kDAAkD;AAC9E,gCAAgC,uEAAuE;AACvG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,sCAAsC;AACtE,oCAAoC,2DAA2D;AAC/F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,wBAAO;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC,wBAAO;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,wBAAO;AAC5B;AACA;AACA;AACA;AACA;AACA,yBAAyB,yCAAe,iCAAiC,wBAAO;AAChF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB,yCAAe;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0DAA0D,wBAAO,oDAAoD,yCAAe;AACpI;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,yCAAe,mCAAmC,wBAAO;AAC9E;AACA;AACA,qBAAqB,yCAAe,iCAAiC,wBAAO;AAC5E;AACA;AACA,qBAAqB,yCAAe,yCAAyC,yCAAe;AAC5F;AACA;AACA,qBAAqB,wBAAO;AAC5B;AACA;AACA,qBAAqB,wBAAO;AAC5B;AACA;AACA,qBAAqB,wBAAO;AAC5B;AACA;AACA,qBAAqB,wBAAO;AAC5B;AACA;AACA,qBAAqB,wBAAO;AAC5B;AACA;AACA,qBAAqB,wBAAO;AAC5B;AACA;AACA,qBAAqB,wBAAO;AAC5B;AACA;AACA,qBAAqB,yCAAe;AACpC,+BAA+B,yCAAe;AAC9C;AACA,qBAAqB,yCAAe;AACpC;AACA;AACA;AACA,8FAA8F,wBAAO,4CAA4C,wBAAO;AACxJ;AACA,qGAAqG,wBAAO,4CAA4C,wBAAO;AAC/J;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,wBAAO;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,oCAAoC;AACpE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,oCAAoC;AACpE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,sCAAsC;AACtE,oCAAoC,2DAA2D;AAC/F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,gEAAgE;AAChG,oCAAoC,qFAAqF;AACzH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,2DAA2D;AAC3F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,oCAAoC;AACpE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,sCAAsC;AACtE,oCAAoC,2DAA2D;AAC/F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,oCAAoC;AACpE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,yCAAe;AAC3B,mBAAmB,yCAAe;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,oCAAoC;AACpE;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,2DAA2D;AAC3F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,wBAAO;AACnB,gBAAgB,wBAAO;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,yCAAe;AAC3B,oBAAoB,yCAAe;AACnC,YAAY,yCAAe;AAC3B,YAAY,yCAAe;AAC3B,YAAY,yCAAe;AAC3B;AACA,iBAAiB,yCAAe;AAChC,oBAAoB,yCAAe;AACnC;AACA;AACA;AACA,YAAY,yCAAe;AAC3B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,wBAAO;AACnB,gBAAgB,wBAAO;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,2BAA2B;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,yCAAe;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC,0CAA0C;AAC3E,cAAc,oDAAoD;AAClE,cAAc,iDAAiD;AAC/D,cAAc,sDAAsD;AACpE,cAAc,kDAAkD;AAChE,cAAc,gDAAgD;AAC9D,cAAc,kDAAkD;AAChE,cAAc,gDAAgD;AAC9D;AACA;AACA;AACA,4BAA4B,kCAAkC;AAC9D,gCAAgC,yCAAyC;AACzE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,yCAAe;AAC3B;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,yCAAe;AAC/C;AACA;AACA;AACA,iBAAiB,yCAAe;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gDAAgD,EAAE;AAClD;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,yCAAe;AAC3B,yBAAyB,yCAAe;AACxC;AACA,iBAAiB,yCAAe;AAChC,yBAAyB,yCAAe;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,yCAAe;AAC9C;AACA;AACA;AACA;AACA;AACA,CAAC,8BAA8B;AAC/B;AACA;;ACx4D8D;AACJ;AACnD;AACP,iBAAiB,+BAA+B,8BAA8B,mBAAmB;AACjG,2BAA2B,yFAAyF,4DAA4D;AAChL,sBAAsB,oFAAoF,2DAA2D;AACrK,8BAA8B,gGAAgG,2FAA2F;AACzN,2BAA2B,+HAA+H,0DAA0D;AACpN,uBAAuB,kEAAkE,qGAAqG;AAC9L,mBAAmB,4DAA4D,0DAA0D;AACzI,iBAAiB,0DAA0D,+CAA+C;AAC1H,wBAAwB,uCAAuC,iDAAiD;AAChH,yBAAyB,wDAAwD,6DAA6D;AAC9I,4BAA4B,4CAA4C,0FAA0F;AAClK,0BAA0B,yCAAyC,yGAAyG;AAC5K,kBAAkB,iCAAiC,6GAA6G;AAChK,kBAAkB,gCAAgC,4CAA4C;AAC9F,gBAAgB,8BAA8B,4CAA4C;AAC1F,0BAA0B,oEAAoE,2CAA2C;AACzI,wBAAwB,uCAAuC,4CAA4C;AAC3G,gBAAgB,8BAA8B,gDAAgD;AAC9F,wBAAwB,uCAAuC,2CAA2C;AAC1G,uBAAuB,qCAAqC,2DAA2D;AACvH,cAAc,4BAA4B,8EAA8E;AACxH,4BAA4B,oDAAoD,2DAA2D;AAC3I,wBAAwB,wCAAwC,2DAA2D;AAC3H,wCAAwC,yDAAyD,iEAAiE;AAClK,gCAAgC,gDAAgD,8DAA8D;AAC9I,iCAAiC,iDAAiD,+DAA+D;AACjJ,0BAA0B,yCAAyC,wDAAwD;AAC3H,yBAAyB,4DAA4D,6DAA6D;AAClJ,wBAAwB,uCAAuC,uEAAuE;AACtI,2BAA2B,0CAA0C,8FAA8F;AACnK,kBAAkB,iCAAiC,oDAAoD;AACvG,2BAA2B,yCAAyC,qDAAqD;AACzH,gBAAgB,8BAA8B,2CAA2C;AACzF,eAAe,6BAA6B,kDAAkD;AAC9F,2BAA2B,sEAAsE,mJAAmJ,EAAE,0BAA0B;AAChR,gCAAgC,4EAA4E,mJAAmJ,EAAE,gCAAgC;AACjS,uBAAuB,sCAAsC,2FAA2F;AACxJ,sBAAsB,qCAAqC,oDAAoD;AAC/G,4BAA4B,4CAA4C,mDAAmD;AAC3H,mBAAmB,kCAAkC,8IAA8I,QAAQ,SAAS,KAAK,SAAS,yFAAyF,SAAS,oEAAoE;AACxY,yBAAyB,8DAA8D,sEAAsE;AAC7J,uBAAuB,yFAAyF,oDAAoD;AACpK,+BAA+B,mEAAmE,2EAA2E;AAC7K,+BAA+B,0EAA0E,qEAAqE;AAC9K,gCAAgC,qEAAqE,yDAAyD;AAC9J,iCAAiC,iDAAiD,yDAAyD;AAC3I,4BAA4B,4CAA4C,wEAAwE;AAChJ,+BAA+B,+CAA+C,+DAA+D;AAC7I,yBAAyB,wCAAwC,yDAAyD;AAC1H,qBAAqB,oCAAoC,wDAAwD;AACjH,qBAAqB,oCAAoC,gDAAgD;AACzG,oBAAoB,mCAAmC,gDAAgD;AACvG,kBAAkB,4BAA4B,6CAA6C;AAC3F,iCAAiC,iDAAiD,+CAA+C;AACjI,yBAAyB,mEAAmE,4CAA4C;AACxI,qBAAqB,+BAA+B,iDAAiD;AACrG,wBAAwB,wCAAwC,iDAAiD;AACjH,kBAAkB,4DAA4D,8CAA8C;AAC5H,eAAe,wDAAwD;AACvE;AACA,wBAAwB,SAAS,MAAM,SAAS;AAChD,qBAAqB,SAAS;AAC9B,qBAAqB,wBAAO,8BAA8B,SAAS;AACnE,qBAAqB,wBAAO,qCAAqC,SAAS;AAC1E,qBAAqB,wBAAO,kCAAkC,SAAS;AACvE;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB,cAAc,4BAA4B;AAC1C;AACA;;AC5EO;AACP;AACA,UAAU;AACV;AACA;AACA;;ACLoE;AACM;AAC1B;AACzC;AACP;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,0BAA0B;AAC1D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oDAAoD,uDAAuD;AAC3G;AACA,4CAA4C,yCAAe,yMAAyM,SAAS;AAC7Q;AACA;AACA;AACA;AACA;AACA,oDAAoD,uDAAuD;AAC3G;AACA;AACA;AACA;AACA;AACA,gCAAgC,yCAAe,uMAAuM,SAAS;AAC/P;AACA;AACA;AACA;AACA,4BAA4B,yCAAe,uMAAuM,SAAS;AAC3P;AACA;AACA;AACA;AACA,wBAAwB,yCAAe,kGAAkG,SAAS;AAClJ;AACA;AACA;AACA;AACA;AACA,gBAAgB,yCAAe,2DAA2D,SAAS;AACnG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,YAAY;AACxC;AACA;AACA;AACA;AACA,6CAA6C,YAAY;AACzD;AACA;AACA;AACA;;ACtE+D;AACf;AACc;AAChB;AACsB;AAClB;AAC3C;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,yCAAe;AACvC;AACA;AACA,yBAAyB;AACzB;AACA;AACA,mEAAmE,+CAA+C;AAClH,wBAAwB,yCAAe,0EAA0E;AACjH;AACA;AACA;AACA;AACA,wBAAwB,yCAAe,wGAAwG,SAAS;AACxJ;AACA;AACA,wBAAwB,yCAAe,wEAAwE,SAAS;AACxH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,yCAAe,+FAA+F,SAAS;AACvI;AACA;AACA,gBAAgB,yCAAe,+DAA+D,SAAS;AACvG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,wBAAO,8BAA8B,wBAAO;AACpE,wCAAwC,IAAI,wBAAO,8CAA8C;AACjG,gDAAgD,UAAU,wBAAO,yDAAyD,wBAAO;AACjI,6EAA6E,wBAAO;AACpF;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2CAA2C,yCAAe,cAAc;AACxE;AACA;AACA,2CAA2C,yCAAe,cAAc;AACxE;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,yCAAe,6CAA6C,SAAS;AACrG;AACA,gDAAgD,aAAa;AAC7D;AACA;AACA,oCAAoC,yCAAe;AACnD;AACA;AACA;AACA,gCAAgC,yCAAe,kGAAkG,SAAS;AAC1J;AACA;AACA,4CAA4C,qDAAqD;AACjG;AACA;AACA;AACA;AACA,4BAA4B,yCAAe,uGAAuG,SAAS;AAC3J;AACA,qBAAqB;AACrB;AACA;AACA,oBAAoB,yCAAe,sGAAsG,SAAS;AAClJ;AACA;AACA;AACA,gEAAgE,2GAA2G;AAC3K;AACA,oCAAoC,wDAAwD;AAC5F;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,yCAAe,6EAA6E,SAAS;AACjH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,YAAY,yCAAe,uEAAuE,SAAS;AAC3G;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,IAAI,wBAAO,8BAA8B;AACjE,4BAA4B,wBAAO;AACnC;AACA,oEAAoE,yCAAe,gCAAgC,gCAAgC;AACnJ,QAAQ,wBAAO;AACf;AACA,8BAA8B,wBAAO;AACrC,gBAAgB,yCAAe;AAC/B;AACA;AACA,SAAS;AACT,QAAQ,wBAAO;AACf;AACA;AACA;AACA,yBAAyB,wBAAO;AAChC,wBAAwB,wBAAO;AAC/B,wBAAwB,yCAAe;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,0BAA0B;AAC1B,oBAAoB,yCAAe,wDAAwD;AAC3F;AACA;AACA;AACA,0BAA0B;AAC1B,oBAAoB,yCAAe,6DAA6D;AAChG;AACA;AACA;AACA,0BAA0B;AAC1B,oBAAoB,yCAAe,kEAAkE;AACrG;AACA;AACA;AACA,SAAS;AACT,QAAQ,kBAAkB;AAC1B,mDAAmD,kBAAkB;AACrE,qDAAqD,kBAAkB;AACvE,gDAAgD,kBAAkB;AAClE;AACA;AACA;AACA;AACA;AACA,4BAA4B,SAAS;AACrC;AACA,gBAAgB,yCAAe,iEAAiE,SAAS;AACzG;AACA;AACA;AACA;AACA,YAAY,yCAAe,wEAAwE,SAAS;AAC5G;AACA,KAAK;AACL;AACA,QAAQ,yCAAe,wEAAwE,SAAS;AACxG;AACA,KAAK;AACL,CAAC,sCAAsC;AACvC;AACA;;ACvOO;AACP;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AChD8C;AACE;AACM;AACI;AACR;AACE;AAC7C,IAAI,yCAAe;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4EAA4E;AAC5E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC,mBAAmB;AACzD;AACA;AACA;AACA;AACA;AACA,eAAe;AACf;AACA,sDAAsD,kCAAkC;AACxF;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uFAAuF,kCAAkC;AACzH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,cAAc;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,iBAAiB;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gDAAgD,qBAAqB;AACrE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,SAAS;AAC7C;AACA;AACA,6BAA6B,SAAS;AACtC,wCAAwC,SAAS;AACjD;AACA,+FAA+F,SAAS,2BAA2B,SAAS;AAC5I;AACA,kDAAkD,SAAS,uCAAuC,SAAS;AAC3G,oEAAoE;AACpE;AACA;AACA,gCAAgC,cAAc;AAC9C;AACA;AACA,uDAAuD;AACvD;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC,SAAS,sEAAsE,SAAS;AACzH;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,SAAS;AACtC,wDAAwD;AACxD;AACA;AACA,sDAAsD;AACtD;AACA;AACA;AACA,6BAA6B,SAAS;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB,SAAS;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uDAAuD,QAAQ;AAC/D;AACA;AACA;AACA;AACA,qDAAqD,QAAQ;AAC7D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,SAAS;AAChC;AACA;AACA;AACA;AACA;AACA,gBAAgB,SAAS;AACzB,0BAA0B,SAAS;AACnC;AACA,2BAA2B,SAAS;AACpC,0BAA0B,SAAS;AACnC;AACA,2BAA2B,SAAS;AACpC;AACA,8BAA8B,SAAS;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,SAAS;AACzC;AACA,2BAA2B,SAAS;AACpC;AACA;AACA;AACA,2CAA2C,SAAS;AACpD,YAAY,aAAa,qCAAqC,wBAAO,uBAAuB,aAAa,6BAA6B,aAAa;AACnJ,YAAY,aAAa;AACzB,qBAAqB,aAAa,6BAA6B,aAAa;AAC5E;AACA,iDAAiD,0BAA0B;AAC3E,oBAAoB,aAAa;AACjC;AACA,aAAa;AACb,YAAY,wBAAO;AACnB;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,SAAS;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,wBAAO,2BAA2B,wBAAO;AACrD;AACA,uCAAuC,wBAAO;AAC9C;AACA;AACA,YAAY,wBAAO;AACnB;AACA;AACA,2BAA2B,wBAAO;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB,wBAAO;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2CAA2C,wBAAO;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oGAAoG,SAAS;AAC7G;AACA;AACA;AACA,6FAA6F,SAAS;AACtG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,gCAAgC;AACpE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,6BAA6B;AAC7D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iEAAiE,uBAAuB,8BAA8B;AACtH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,wBAAO;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,4BAA4B;AAChE;AACA;AACA;AACA;AACA;AACA,0DAA0D,yCAAyC;AACnG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,sBAAsB;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA,aAAa;AACb,4BAA4B,oBAAoB;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,wBAAO,cAAc,wBAAO;AACxC,sDAAsD,wBAAO;AAC7D;AACA,gCAAgC,iBAAiB;AACjD,6CAA6C,wBAAO;AACpD;AACA;AACA;AACA;AACA;AACA,8DAA8D,wBAAO;AACrE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oEAAoE,wBAAO,cAAc,wBAAO;AAChG,4BAA4B,wBAAO,gBAAgB,wBAAO;AAC1D,gCAAgC,wBAAO;AACvC,gCAAgC,wBAAO;AACvC;AACA,gDAAgD,oCAAoC;AACpF;AACA;AACA;AACA;AACA,oDAAoD,qCAAqC;AACzF;AACA;AACA;AACA;AACA,oCAAoC,wBAAO,cAAc,wBAAO;AAChE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB,wBAAO;AAChC,uBAAuB,wBAAO,gCAAgC,wBAAO;AACrE,gCAAgC,IAAI,wBAAO,qBAAqB;AAChE,oBAAoB,wBAAO;AAC3B;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,YAAY;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iGAAiG,SAAS;AAC1G;AACA;AACA,wEAAwE,wBAAO,0CAA0C,SAAS;AAClI;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,iCAAiC;AAC7D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qGAAqG,SAAS;AAC9G;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB;AACvB;AACA;AACA,wBAAwB,QAAQ;AAChC,iCAAiC,QAAQ;AACzC;AACA,yDAAyD,wBAAO;AAChE;AACA;AACA,yCAAyC,UAAU,yBAAyB,eAAe,4BAA4B,UAAU,4BAA4B,SAAS,6CAA6C,cAAc,kDAAkD,QAAQ,wDAAwD,QAAQ,wCAAwC,QAAQ,kCAAkC,UAAU,oCAAoC,WAAW,6BAA6B,SAAS,2BAA2B,mBAAmB,qCAAqC,YAAY,qCAAqC,aAAa,+BAA+B,SAAS,6CAA6C,eAAe,oCAAoC,YAAY,8BAA8B,eAAe,iCAAiC,cAAc,uCAAuC,WAAW,wDAAwD,gBAAgB,wCAAwC,WAAW,iFAAiF,QAAQ,4BAA4B,aAAa,6BAA6B,cAAc,uDAAuD,gBAAgB,kCAAkC,cAAc,gCAAgC,UAAU,mCAAmC,YAAY,0BAA0B,QAAQ,0BAA0B,gBAAgB,6DAA6D,cAAc,oCAAoC,UAAU,mDAAmD,oBAAoB,4CAA4C,mBAAmB,8BAA8B,kBAAkB,gCAAgC,sBAAsB,iCAAiC,uBAAuB,qCAAqC,cAAc,4BAA4B,WAAW,yBAAyB,cAAc,gCAAgC,YAAY,2DAA2D,aAAa,+BAA+B,cAAc,4BAA4B,eAAe,iCAAiC,QAAQ,0BAA0B,WAAW,kEAAkE,2BAA2B,qCAAqC,eAAe,iCAAiC;AAC7+E,wCAAwC,QAAQ,oBAAoB,EAAE,6BAA6B,EAAE,2BAA2B,EAAE,6BAA6B,EAAE,4BAA4B,EAAE,0BAA0B,EAAE,+BAA+B,EAAE,gCAAgC,EAAE,6BAA6B,EAAE,8BAA8B,EAAE,+BAA+B,EAAE,yBAAyB,EAAE,2BAA2B,EAAE,gCAAgC,EAAE,0BAA0B,EAAE,yBAAyB,EAAE,yBAAyB,EAAE,8BAA8B,EAAE,2BAA2B,EAAE,2BAA2B,EAAE,kCAAkC,EAAE,0BAA0B,EAAE,+BAA+B,EAAE,6BAA6B,EAAE,6BAA6B,EAAE,gCAAgC,EAAE,0BAA0B,EAAE,6BAA6B,EAAE,4BAA4B,EAAE,0BAA0B,EAAE,6BAA6B,EAAE,2BAA2B,EAAE,0BAA0B,EAAE,0BAA0B,EAAE,2BAA2B,EAAE,0BAA0B,EAAE,gCAAgC,EAAE,gCAAgC,EAAE,4BAA4B,EAAE,4BAA4B,EAAE,+BAA+B,EAAE,+BAA+B,EAAE,2BAA2B,EAAE,2BAA2B,EAAE,+BAA+B,EAAE,yBAAyB,EAAE,yBAAyB,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,4BAA4B,EAAE,0BAA0B,EAAE,8BAA8B,EAAE,+BAA+B,EAAE,8BAA8B,EAAE,0BAA0B,EAAE,4BAA4B,UAAU,2BAA2B,EAAE,gCAAgC,EAAE,6BAA6B,EAAE,4BAA4B,EAAE,2CAA2C,EAAE;AACr3D,8BAA8B,uIAAuI;AACrK;AACA,2BAA2B,SAAS;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,yDAAyD;AACzF;AACA;AACA;AACA;AACA,6BAA6B;AAC7B;AACA;AACA;AACA;AACA,oCAAoC,qDAAqD;AACzF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,sDAAsD;AAC1F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wEAAwE,EAAE;AAC1E;AACA;AACA;AACA;AACA;AACA,kDAAkD,IAAI;AACtD;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C,4BAA4B;AACxE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB,IAAI;AAC7B;AACA;AACA;AACA;AACA;AACA,iCAAiC,SAAS;AAC1C;AACA,gCAAgC,8BAA8B;AAC9D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,iDAAiD;AACrF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iGAAiG,SAAS;AAC1G;AACA;AACA;AACA;AACA,CAAC,EAAE,yCAAe,KAAK,yCAAe,KAAK;AAC3C;AACA;;AC57BO;AACP;;ACD0E;AACJ;AACZ;AACJ;AACJ;AACF;AAC8B;AACvE;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,WAAW;AAC3C;AACA;AACA,qCAAqC,WAAW;AAChD,gBAAgB,aAAa;AAC7B;AACA,qCAAqC,WAAW;AAChD,gBAAgB,aAAa;AAC7B;AACA,qCAAqC,WAAW;AAChD,oBAAoB,wBAAO;AAC3B,oBAAoB,aAAa;AACjC;AACA;AACA,oBAAoB,yCAAe,oBAAoB,wBAAO,2DAA2D,gCAAgC,SAAS;AAClK,oBAAoB,aAAa;AACjC;AACA;AACA,qCAAqC,WAAW;AAChD,gBAAgB,aAAa,yCAAyC,aAAa,6DAA6D;AAChJ;AACA,qCAAqC,WAAW;AAChD,2BAA2B,wBAAO;AAClC,oBAAoB,wBAAO;AAC3B;AACA;AACA,oBAAoB,yCAAe,oBAAoB,wBAAO,8CAA8C;AAC5G,oBAAoB,aAAa;AACjC;AACA;AACA;AACA;AACA,YAAY,yCAAe,qEAAqE,SAAS;AACzG;AACA;AACA;AACA;AACA;AACA,wBAAwB,IAAI,wBAAO,qBAAqB;AACxD,iDAAiD,wBAAO;AACxD;AACA,6BAA6B,wBAAO;AACpC;AACA,4BAA4B,4BAA4B;AACxD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2CAA2C,wBAAO;AAClD,qCAAqC,yCAAe,wBAAwB,SAAS;AACrF;AACA;AACA,wBAAwB,aAAa,6CAA6C,4BAA4B;AAC9G;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,yCAAe;AAC3B;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,wBAAO;AAC1B,YAAY,wBAAO;AACnB;AACA;AACA;AACA;AACA,gBAAgB,yCAAe;AAC/B;AACA;AACA;AACA,4BAA4B,aAAa;AACzC;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,uBAAuB;AAC3D;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,IAAI,qBAAqB,mBAAmB;AAChF,qDAAqD,qBAAqB;AAC1E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,yCAAe,wDAAwD,SAAS;AAChG;AACA;AACA,gCAAgC,4BAA4B;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACvJ8C;AACgB;AACR;AACJ;AACP;AACK;AACU;AACnD;AACP;AACA;AACA,aAAa,wBAAO,aAAa,wBAAO,cAAc,SAAS;AAC/D,0BAA0B,yCAAe,kBAAkB,SAAS,GAAG,SAAS;AAChF,4BAA4B,SAAS;AACrC,gBAAgB,wBAAO,YAAY,wBAAO;AAC1C;AACA;AACA,gBAAgB,wBAAO;AACvB;AACA;AACA,QAAQ,yCAAe,4BAA4B,wBAAO;AAC1D,YAAY,wBAAO;AACnB,YAAY,yCAAe;AAC3B;AACA;AACA;AACA;AACA;AACA,iCAAiC,GAAG;AACpC,YAAY,wBAAO;AACnB;AACA;AACA,YAAY,yCAAe,6EAA6E,SAAS;AACjH;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,wBAAO;AACf,wBAAwB,IAAI,wBAAO,iCAAiC;AACpE,YAAY,wBAAO;AACnB;AACA;AACA;AACA;AACA;AACA,QAAQ,wBAAO;AACf,wBAAwB,IAAI,wBAAO,qBAAqB;AACxD,6BAA6B,wBAAO;AACpC;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,wBAAO;AACf,wBAAwB,IAAI,wBAAO,kCAAkC;AACrE,YAAY,wBAAO;AACnB;AACA;AACA;AACA;AACA;AACA,QAAQ,wBAAO;AACf,wBAAwB,IAAI,wBAAO,sBAAsB;AACzD,6BAA6B,wBAAO;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yEAAyE,aAAa,iCAAiC;AACvH,oBAAoB,wBAAO;AAC3B,oBAAoB,wBAAO;AAC3B;AACA,gBAAgB,wBAAO;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,wBAAO;AACzC,4BAA4B,IAAI,wBAAO,uBAAuB;AAC9D;AACA;AACA,gBAAgB,wBAAO;AACvB,sCAAsC,wBAAO;AAC7C,kCAAkC,wBAAO;AACzC;AACA,8BAA8B,wBAAO,cAAc,SAAS;AAC5D,iCAAiC,SAAS;AAC1C,mCAAmC,SAAS;AAC5C,wCAAwC,SAAS;AACjD;AACA;AACA,+BAA+B,wBAAO,cAAc,SAAS,aAAa,wBAAO,cAAc,SAAS;AACxG,uCAAuC,wBAAO;AAC9C,iCAAiC,SAAS,2BAA2B,SAAS;AAC9E,mCAAmC,SAAS,6BAA6B,SAAS;AAClF;AACA;AACA;AACA,YAAY,yCAAe;AAC3B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,yCAAe,mEAAmE,SAAS;AACvG;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,aAAa;AACpC;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,aAAa;AACb,YAAY,aAAa;AACzB,SAAS;AACT;AACA;AACA;AACA;AACA,CAAC,gDAAgD;AACjD;;AC5J0D;AACgB;AACnE;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,wBAAO;AACzC;AACA;AACA,kCAAkC,yCAAe;AACjD;AACA;AACA;AACA;AACA,0CAA0C,wBAAO;AACjD;AACA;AACA;AACA,yCAAyC,wBAAO;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,wBAAO;AACpC;AACA;AACA,6BAA6B,wBAAO;AACpC;AACA;AACA,6BAA6B,wBAAO;AACpC;AACA;AACA,6BAA6B,wBAAO;AACpC;AACA;AACA,qCAAqC,yCAAe;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;;ACrE8C;AACgB;AACJ;AACR;AACI;AACF;AACJ;AACzC;AACP;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC;AACjC,kCAAkC;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,wBAAO;AACf;AACA;AACA;AACA,qCAAqC,wBAAO,uEAAuE,wBAAO;AAC1H;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,wBAAO;AAC/C;AACA;AACA;AACA;AACA,oCAAoC,wBAAO;AAC3C;AACA,wBAAwB,sBAAsB;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,SAAS;AACzC;AACA,8BAA8B,gCAAgC;AAC9D;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,wDAAwD;AACtG;AACA;AACA;AACA;AACA,6BAA6B;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,yCAAe;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC,SAAS;AAC1C;AACA,8BAA8B,kCAAkC;AAChE;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,kCAAkC,yCAAe;AACjD;AACA,uDAAuD,wBAAO;AAC9D;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,sCAAsC;AACpE;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,gCAAgC,SAAS;AACzC,kCAAkC,yCAAe;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,sCAAsC;AACpE;AACA,yBAAyB,wBAAO,cAAc,SAAS;AACvD;AACA;AACA;AACA,gCAAgC,yCAAe;AAC/C,8CAA8C,oDAAoD;AAClG,iCAAiC;AACjC,6BAA6B;AAC7B;AACA;AACA;AACA,wBAAwB,yCAAe,qEAAqE,SAAS;AACrH;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,+BAA+B,yCAAe;AAC9C;AACA,8BAA8B,gCAAgC;AAC9D;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC,8CAA8C;AACpF;AACA;AACA;AACA;AACA,qBAAqB;AACrB,wBAAwB,yCAAe;AACvC,qBAAqB;AACrB;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,gCAAgC,yCAAe;AAC/C;AACA,8BAA8B,kCAAkC;AAChE;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,wBAAO;AACnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4DAA4D,kCAAkC;AAC9F;AACA;AACA;AACA;AACA;AACA;AACA,uFAAuF;AACvF;AACA;AACA,QAAQ,yCAAe;AACvB;AACA;AACA;AACA;AACA,4BAA4B,sBAAsB;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,yCAAe,kEAAkE,SAAS;AACtG;AACA;AACA;AACA;AACA;AACA,2CAA2C,4CAA4C;AACvF;AACA;AACA;AACA,YAAY,yCAAe,8DAA8D,SAAS;AAClG;AACA;AACA;AACA;AACA;AACA,YAAY,wBAAO;AACnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,yCAAe;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,sBAAsB;AAClD;AACA;AACA,oBAAoB,wBAAO;AAC3B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,wBAAO;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,wBAAO,2BAA2B,wBAAO;AAC7D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,wBAAO,oBAAoB,QAAQ;AAC/D;AACA;AACA,wLAAwL,wBAAO;AAC/L;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,yCAAe;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,yCAAe,yCAAyC,SAAS;AACzF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,aAAa,qCAAqC,8BAA8B;AAChG;AACA;AACA;AACA,YAAY,yCAAe;AAC3B;AACA;AACA,CAAC,8CAA8C;AAC/C;;ACjayD;AACoB;AAChB;AACY;AACR;AACd;AACI;AAC0B;AACf;AAC3D;AACP;AACA,2BAA2B,SAAS;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,yCAAe,mEAAmE,SAAS;AAC3G;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC,wBAAO;AAC7C;AACA,sCAAsC,SAAS;AAC/C;AACA;AACA,yBAAyB,SAAS;AAClC;AACA;AACA,yBAAyB,SAAS;AAClC;AACA;AACA,yBAAyB,SAAS;AAClC,yBAAyB,SAAS;AAClC;AACA;AACA,yBAAyB,SAAS;AAClC;AACA;AACA,yBAAyB,SAAS;AAClC;AACA;AACA,yBAAyB,SAAS;AAClC;AACA;AACA,yBAAyB,SAAS;AAClC;AACA;AACA,yBAAyB,SAAS;AAClC;AACA;AACA,yBAAyB,SAAS;AAClC,yBAAyB,SAAS;AAClC,yBAAyB,SAAS;AAClC,yBAAyB,SAAS;AAClC,yBAAyB,SAAS;AAClC,yBAAyB,SAAS;AAClC;AACA;AACA,yBAAyB,SAAS;AAClC;AACA;AACA,yBAAyB,SAAS;AAClC;AACA;AACA,yBAAyB,SAAS;AAClC,yBAAyB,SAAS;AAClC;AACA;AACA,yBAAyB,SAAS;AAClC;AACA;AACA,yBAAyB,SAAS;AAClC;AACA;AACA,yBAAyB,SAAS;AAClC;AACA;AACA,yBAAyB,SAAS;AAClC;AACA;AACA,yBAAyB,SAAS;AAClC;AACA,yBAAyB,SAAS;AAClC,yBAAyB,SAAS;AAClC;AACA;AACA,yBAAyB,SAAS;AAClC;AACA;AACA,yBAAyB,SAAS;AAClC;AACA;AACA,yBAAyB,SAAS;AAClC;AACA;AACA,yBAAyB,SAAS;AAClC;AACA;AACA,yBAAyB,SAAS;AAClC;AACA;AACA,yBAAyB,SAAS;AAClC;AACA;AACA,yBAAyB,SAAS;AAClC;AACA;AACA,yBAAyB,SAAS;AAClC;AACA;AACA,yBAAyB,SAAS;AAClC;AACA;AACA,yBAAyB,SAAS;AAClC;AACA;AACA,yBAAyB,SAAS;AAClC,yBAAyB,SAAS;AAClC;AACA;AACA,yBAAyB,SAAS;AAClC,yBAAyB,SAAS;AAClC;AACA;AACA,yBAAyB,SAAS;AAClC;AACA;AACA,yBAAyB,SAAS;AAClC;AACA;AACA,yBAAyB,SAAS;AAClC,yBAAyB,SAAS;AAClC;AACA;AACA,yBAAyB,SAAS;AAClC;AACA;AACA,yBAAyB,SAAS;AAClC;AACA;AACA,yBAAyB,SAAS;AAClC;AACA;AACA,yBAAyB,SAAS;AAClC,yBAAyB,SAAS;AAClC,yBAAyB,SAAS;AAClC;AACA;AACA,yBAAyB,SAAS;AAClC;AACA;AACA,yBAAyB,SAAS;AAClC;AACA;AACA,yBAAyB,SAAS;AAClC;AACA;AACA,yBAAyB,SAAS;AAClC;AACA;AACA,yBAAyB,SAAS;AAClC;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,yBAAyB;AACzD;AACA;AACA;AACA;AACA,wBAAwB,yCAAe,2FAA2F,SAAS;AAC3I;AACA;AACA;AACA;AACA,oBAAoB,aAAa;AACjC;AACA,iBAAiB;AACjB;AACA,yBAAyB,aAAa;AACtC,wBAAwB,aAAa;AACrC,4BAA4B,aAAa;AACzC;AACA,4CAA4C,IAAI,aAAa,+BAA+B;AAC5F,uDAAuD,aAAa;AACpE;AACA,4BAA4B,yCAAe,4BAA4B,aAAa;AACpF,4CAA4C,IAAI,aAAa,+BAA+B;AAC5F,mDAAmD,aAAa;AAChE,gCAAgC,aAAa;AAC7C;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA,oBAAoB,yCAAe,gDAAgD,wBAAO;AAC1F;AACA;AACA;AACA;AACA,gBAAgB,yCAAe,uEAAuE,SAAS;AAC/G;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,wBAAO;AACvB;AACA,4CAA4C,yCAAe;AAC3D;AACA;AACA,wBAAwB,wBAAO;AAC/B;AACA;AACA;AACA,oBAAoB,yCAAe,gFAAgF,SAAS;AAC5H;AACA,gBAAgB,yCAAe;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,yCAAe;AAC/B;AACA;AACA;AACA,oBAAoB,yCAAe;AACnC;AACA;AACA;AACA;AACA;AACA,gCAAgC,yCAAe,cAAc;AAC7D;AACA;AACA,+BAA+B,wBAAO;AACtC;AACA,+BAA+B,SAAS;AACxC;AACA;AACA,yBAAyB,SAAS;AAClC,wBAAwB,yCAAe;AACvC;AACA;AACA,yBAAyB,SAAS;AAClC,wBAAwB,yCAAe;AACvC;AACA;AACA;AACA;AACA,mBAAmB,yCAAe,cAAc;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,SAAS,wBAAO,8BAA8B;AAC1E,kCAAkC,iBAAiB,wBAAO;AAC1D;AACA;AACA;AACA,oBAAoB,yCAAe;AACnC;AACA;AACA;AACA,gBAAgB,yCAAe,4EAA4E,SAAS;AACpH;AACA;AACA;AACA;AACA;AACA,2BAA2B;AAC3B,mCAAmC;AACnC;AACA;AACA;AACA;AACA,2BAA2B,UAAU;AACrC,uDAAuD,wBAAO;AAC9D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC,wBAAO;AAC1C;AACA;AACA;AACA;AACA,iCAAiC,SAAS;AAC1C;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA,YAAY,SAAS;AACrB;AACA;AACA;AACA,0CAA0C,uBAAuB;AACjE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB;AACzB;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,YAAY,wBAAO,WAAW,yCAAe;AAC7C;AACA;AACA;AACA;AACA,uBAAuB,wBAAO;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,wBAAO,cAAc,SAAS,UAAU,wBAAO;AAC3D,sCAAsC,aAAa;AACnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA,wBAAwB,yCAAe;AACvC,wBAAwB,yCAAe;AACvC,gCAAgC,wBAAO,oCAAoC,wBAAO,kCAAkC,wBAAO;AAC3H;AACA;AACA,oBAAoB,yCAAe;AACnC,0BAA0B,yCAAe;AACzC,oBAAoB,yCAAe;AACnC;AACA;AACA,aAAa;AACb;AACA,0CAA0C,yCAAe;AACzD;AACA,aAAa;AACb;AACA;AACA,oBAAoB,wBAAO;AAC3B,wBAAwB,wBAAO;AAC/B;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,oBAAoB,wBAAO;AAC3B,sCAAsC,wBAAO;AAC7C;AACA;AACA;AACA,yBAAyB,yCAAe;AACxC;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,oBAAoB,wBAAO,oBAAoB,QAAQ,uBAAuB,wBAAO;AACrF,kCAAkC,yCAAe;AACjD;AACA;AACA,aAAa;AACb;AACA,uBAAuB,yCAAe;AACtC,aAAa;AACb;AACA;AACA,yBAAyB,yCAAe;AACxC;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA,oBAAoB,wBAAO;AAC3B;AACA;AACA,gCAAgC,wBAAO;AACvC,8CAA8C,wBAAO;AACrD;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA,uBAAuB,wBAAO;AAC9B,aAAa;AACb;AACA,uBAAuB,wBAAO;AAC9B,aAAa;AACb;AACA,uBAAuB,wBAAO;AAC9B,aAAa;AACb;AACA,uBAAuB,yCAAe;AACtC,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,wBAAwB,wBAAO,yFAAyF,yCAAe,6CAA6C,yCAAe;AACnM;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC,yCAAe;AAChD;AACA,oBAAoB,yCAAe;AACnC,0BAA0B,yCAAe;AACzC;AACA;AACA;AACA,oBAAoB,yCAAe,4BAA4B,yCAAe;AAC9E;AACA,oBAAoB,yCAAe;AACnC;AACA,oBAAoB,wBAAO,oBAAoB,QAAQ,gBAAgB,yCAAe;AACtF;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,oCAAoC,oBAAoB;AACxD;AACA,4CAA4C,mCAAmC;AAC/E;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6DAA6D,GAAG;AAChE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,wBAAwB,SAAS;AACjC,uBAAuB,wBAAO;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,wBAAO;AAC9B,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,6BAA6B,wBAAO;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,oBAAoB,wBAAO,cAAc,SAAS;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,wBAAwB,SAAS;AACjC,yBAAyB,SAAS;AAClC,yBAAyB,SAAS;AAClC;AACA;AACA;AACA,uBAAuB,wBAAO;AAC9B,aAAa;AACb;AACA,wBAAwB,SAAS;AACjC,yBAAyB,SAAS;AAClC,yBAAyB,SAAS;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,wBAAO;AAC/B,8CAA8C,wBAAO;AACrD;AACA,6BAA6B,wBAAO;AACpC,8CAA8C,wBAAO;AACrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,0BAA0B;AAClE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+CAA+C,mDAAmD;AAClG;AACA,2DAA2D,yCAAyC;AACpG;AACA,wCAAwC,wBAAwB;AAChE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,yCAAyC;AACjF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C,6BAA6B;AACzE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C,sCAAsC;AAClF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,yCAAe,iDAAiD,SAAS;AACrG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,wBAAO,oBAAoB,QAAQ;AAC/D,4BAA4B,yCAAe;AAC3C;AACA;AACA,6BAA6B,wBAAO,oBAAoB,QAAQ;AAChE,wBAAwB,yCAAe;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,wBAAO;AAC/B;AACA,yCAAyC,wBAAO;AAChD;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB,wBAAO,oBAAoB,QAAQ;AAC5D,oBAAoB,yCAAe;AACnC;AACA;AACA,aAAa;AACb;AACA,wBAAwB,wBAAO;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,wCAAwC,gDAAgD;AACxF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb,2BAA2B,SAAS;AACpC;AACA,8BAA8B,wBAAO;AACrC;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,aAAa;AAC7B;AACA,iBAAiB;AACjB;AACA;AACA,gBAAgB,yCAAe;AAC/B;AACA,gCAAgC,wBAAwB;AACxD;AACA;AACA,aAAa;AACb;AACA,uBAAuB,wBAAO;AAC9B,aAAa;AACb;AACA;AACA;AACA,gCAAgC,yCAAe,oCAAoC,yCAAe;AAClG;AACA,oBAAoB,yCAAe;AACnC;AACA;AACA,aAAa;AACb;AACA,uBAAuB,SAAS;AAChC,aAAa;AACb;AACA,oBAAoB,wBAAO;AAC3B,mCAAmC,wBAAO;AAC1C,2BAA2B,wBAAO;AAClC;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,qCAAqC,uFAAuF;AAC5H,wCAAwC,2FAA2F;AACnI,yCAAyC,iFAAiF;AAC1H,iCAAiC,0FAA0F;AAC3H,iCAAiC;AACjC;AACA;AACA;AACA;AACA,6BAA6B,SAAS;AACtC;AACA,8CAA8C,yCAAe;AAC7D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8EAA8E,QAAQ;AACtF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6CAA6C,wBAAO;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA,qDAAqD,+FAA+F;AACpJ;AACA,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB,gBAAgB,yCAAe;AAC/B,gCAAgC,yBAAyB;AACzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gEAAgE,wBAAO,cAAc,SAAS,mCAAmC,wBAAO,cAAc,SAAS;AAC/J;AACA,wBAAwB,SAAS,uCAAuC,SAAS;AACjF;AACA;AACA,sCAAsC,SAAS;AAC/C;AACA,wBAAwB,aAAa;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,gCAAgC,yCAAe;AAC/C;AACA;AACA,oBAAoB,yCAAe;AACnC;AACA;AACA,aAAa;AACb;AACA;AACA,4BAA4B,yCAAe;AAC3C,4BAA4B,yCAAe;AAC3C,kCAAkC,yCAAe;AACjD;AACA;AACA;AACA;AACA,mDAAmD,wBAAO,2CAA2C,wBAAO;AAC5G,mEAAmE,wBAAO;AAC1E;AACA;AACA,aAAa;AACb;AACA;AACA,wBAAwB,wBAAO;AAC/B,yBAAyB,SAAS;AAClC,yBAAyB,SAAS;AAClC;AACA;AACA,yBAAyB,SAAS;AAClC;AACA;AACA,yBAAyB,SAAS;AAClC;AACA;AACA,yBAAyB,SAAS;AAClC;AACA;AACA,yBAAyB,SAAS;AAClC;AACA;AACA,yBAAyB,SAAS;AAClC;AACA;AACA,2BAA2B,wBAAO;AAClC;AACA,aAAa;AACb;AACA;AACA,+BAA+B,SAAS;AACxC;AACA;AACA,oCAAoC,qBAAqB;AACzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C,0CAA0C;AACtF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mDAAmD,+DAA+D;AAClH;AACA,+DAA+D,yCAAyC;AACxG;AACA,4CAA4C,wBAAwB;AACpE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,gCAAgC;AACpE;AACA;AACA;AACA,yBAAyB,yCAAe;AACxC,qDAAqD,yCAAe;AACpE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,wCAAwC,yCAAe;AACvD;AACA;AACA;AACA;AACA;AACA,4BAA4B,wBAAO;AACnC,6BAA6B,SAAS;AACtC;AACA;AACA;AACA;AACA;AACA,6BAA6B,SAAS;AACtC;AACA;AACA;AACA;AACA;AACA,6BAA6B,SAAS;AACtC;AACA;AACA;AACA;AACA;AACA,6BAA6B,SAAS;AACtC,6BAA6B,SAAS;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,SAAS;AACtC;AACA;AACA;AACA,oBAAoB,yCAAe;AACnC;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,IAAI,wBAAO,yCAAyC;AACxF,8CAA8C,wBAAO;AACrD;AACA;AACA,wBAAwB,wBAAO;AAC/B;AACA;AACA,yBAAyB;AACzB;AACA,wBAAwB,wBAAO;AAC/B,wBAAwB,wBAAO;AAC/B;AACA,oBAAoB,wBAAO,gBAAgB,wBAAO;AAClD,oBAAoB,yCAAe,qCAAqC,wBAAO;AAC/E;AACA;AACA;AACA,gBAAgB,yCAAe,+DAA+D,SAAS;AACvG;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA,6BAA6B,wBAAO;AACpC,aAAa;AACb;AACA;AACA,uBAAuB,wBAAO;AAC9B,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,qBAAqB;AACzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,qBAAqB;AACzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,wBAAO;AAC/B,qCAAqC,wBAAO;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb,YAAY,yCAAe;AAC3B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,wBAAO;AAC/B;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,YAAY,yCAAe;AAC3B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,wBAAO;AAC/B;AACA;AACA;AACA,wBAAwB,wBAAO;AAC/B;AACA;AACA;AACA,wBAAwB,wBAAO;AAC/B;AACA;AACA;AACA,wBAAwB,wBAAO;AAC/B;AACA;AACA;AACA,wBAAwB,wBAAO;AAC/B;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,wBAAwB,wBAAO;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB;AACzB;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,uBAAuB,SAAS;AAChC,aAAa;AACb;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,oBAAoB,SAAS;AAC7B;AACA;AACA,wBAAwB,wBAAO;AAC/B;AACA;AACA,oCAAoC,SAAS;AAC7C;AACA;AACA,kDAAkD,GAAG,GAAG,EAAE;AAC1D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,sBAAsB;AAC1D;AACA;AACA;AACA,wDAAwD,SAAS;AACjE;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,aAAa;AACrC,qBAAqB;AACrB;AACA,6BAA6B,yCAAe;AAC5C,gBAAgB,yCAAe;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,wBAAO;AACvB,gBAAgB,iBAAiB;AACjC,8BAA8B,wBAAO;AACrC;AACA;AACA;AACA;AACA,uBAAuB,wBAAO;AAC9B,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,uBAAuB,wBAAO;AAC9B,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,uBAAuB,wBAAO;AAC9B,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,0BAA0B,wBAAO;AACjC;AACA;AACA;AACA;AACA,2BAA2B,wBAAO;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,wBAAO;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,wBAAO;AACrD;AACA,aAAa;AACb;AACA;AACA;AACA,0BAA0B,wBAAO;AACjC;AACA;AACA;AACA,0BAA0B,wBAAO;AACjC;AACA;AACA;AACA;AACA,8BAA8B,wBAAO;AACrC;AACA;AACA,8BAA8B,wBAAO;AACrC;AACA;AACA;AACA;AACA;AACA,0BAA0B,wBAAO;AACjC;AACA,gBAAgB,yCAAe;AAC/B,6BAA6B,yCAAe;AAC5C;AACA;AACA;AACA;AACA,uBAAuB,wBAAO,iDAAiD,wBAAO;AACtF,aAAa;AACb;AACA;AACA;AACA;AACA,gCAAgC,uCAAuC;AACvE,qFAAqF,GAAG;AACxF;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,oBAAoB,wBAAO;AAC3B;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,wBAAO;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,wBAAO;AACjC;AACA;AACA;AACA;AACA,iCAAiC,yCAAe;AAChD,8BAA8B,yCAAe;AAC7C,0BAA0B,wBAAO;AACjC;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,yBAAyB;AACrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,wBAAO;AAC3B,qBAAqB,QAAQ;AAC7B;AACA;AACA,qBAAqB,QAAQ;AAC7B;AACA;AACA;AACA;AACA,yCAAyC;AACzC;AACA;AACA;AACA;AACA;AACA,yBAAyB,yCAAe;AACxC,0BAA0B,wBAAO;AACjC;AACA;AACA,yCAAyC;AACzC;AACA;AACA;AACA;AACA,0BAA0B,wBAAO,sCAAsC,wBAAO;AAC9E;AACA;AACA;AACA,0BAA0B,wBAAO,sCAAsC,wBAAO;AAC9E,uBAAuB,wBAAO;AAC9B;AACA;AACA;AACA;AACA,2BAA2B,wBAAO;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,uCAAuC,iDAAiD;AACxF,uCAAuC,wDAAwD;AAC/F;AACA;AACA,wCAAwC,WAAW,yCAAe,2CAA2C,wBAAO,6EAA6E;AACjM;AACA;AACA;AACA;AACA;AACA,6BAA6B,wBAAO;AACpC,gCAAgC,uBAAuB;AACvD;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,6BAA6B,wBAAO;AACpC;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;ACx9DyD;AACoB;AAChB;AACY;AACR;AACd;AACgC;AACF;AAC1E;AACP;AACA;AACA;AACA,oCAAoC,iCAAiC;AACrE,iDAAiD,iCAAiC;AAClF,oCAAoC,iCAAiC;AACrE,6BAA6B,gCAAgC;AAC7D,qCAAqC,gCAAgC;AACrE,6BAA6B,+BAA+B;AAC5D,kCAAkC,+BAA+B;AACjE,mCAAmC,gCAAgC;AACnE,0BAA0B,iCAAiC;AAC3D,yCAAyC,iCAAiC;AAC1E,4BAA4B,iCAAiC;AAC7D,0CAA0C,iCAAiC;AAC3E,mCAAmC,iCAAiC;AACpE,sCAAsC,iCAAiC;AACvE,wCAAwC,iCAAiC;AACzE,oCAAoC,gCAAgC;AACpE,uCAAuC,iCAAiC;AACxE,2CAA2C,iCAAiC;AAC5E,yCAAyC,iCAAiC;AAC1E,+BAA+B,iCAAiC;AAChE,6BAA6B,iDAAiD;AAC9E,gCAAgC,iCAAiC;AACjE,oCAAoC,iCAAiC;AACrE,iCAAiC,iCAAiC;AAClE,yCAAyC,iCAAiC;AAC1E,wCAAwC,iCAAiC;AACzE,oCAAoC,iCAAiC;AACrE,wCAAwC,iCAAiC;AACzE,0CAA0C,iCAAiC;AAC3E,0CAA0C,iCAAiC;AAC3E,6BAA6B,iCAAiC;AAC9D,mDAAmD,iCAAiC;AACpF,oCAAoC,iCAAiC;AACrE,2BAA2B,iCAAiC;AAC5D,6BAA6B,iCAAiC;AAC9D,6BAA6B,iCAAiC;AAC9D,yCAAyC,iCAAiC;AAC1E,2CAA2C,iCAAiC;AAC5E,wCAAwC,iCAAiC;AACzE,wCAAwC,iCAAiC;AACzE,yCAAyC,iCAAiC;AAC1E,4CAA4C,iCAAiC;AAC7E,6CAA6C,iCAAiC;AAC9E,8CAA8C,iCAAiC;AAC/E,6CAA6C,iCAAiC;AAC9E,sDAAsD,iCAAiC;AACvF,qDAAqD,iCAAiC;AACtF,iCAAiC,iCAAiC;AAClE,mCAAmC;AACnC;AACA,YAAY,wBAAO;AACnB,4BAA4B,IAAI,wBAAO,oBAAoB;AAC3D,4BAA4B,wBAAO,8BAA8B,WAAW,wBAAO,0CAA0C,wBAAO,8CAA8C,wBAAO;AACzL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC;AACvC;AACA,4BAA4B,kBAAkB;AAC9C;AACA;AACA,uBAAuB;AACvB,aAAa;AACb;AACA,+BAA+B;AAC/B,oBAAoB,wBAAO,wBAAwB,wBAAO;AAC1D,gCAAgC,wBAAO,gCAAgC,wBAAO;AAC9E;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B,gBAAgB,aAAa;AAC7B,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,SAAS;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA,oBAAoB,wBAAO;AAC3B;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA,qBAAqB,yCAAe;AACpC;AACA,oBAAoB,yCAAe;AACnC,oBAAoB,aAAa;AACjC;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf;AACA,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA,4BAA4B,aAAa;AACzC;AACA,qBAAqB;AACrB;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B,gBAAgB,aAAa;AAC7B;AACA,iBAAiB;AACjB,eAAe;AACf,+BAA+B;AAC/B;AACA,iDAAiD,yCAAe;AAChE;AACA;AACA;AACA;AACA,wBAAwB,yCAAe;AACvC;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf;AACA,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B,8EAA8E;AAC7G,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA,gBAAgB,SAAS;AACzB;AACA;AACA,wCAAwC,qBAAqB;AAC7D;AACA;AACA,wBAAwB,yCAAe;AACvC;AACA;AACA,iBAAiB;AACjB,gBAAgB,SAAS;AACzB;AACA;AACA,0CAA0C,kCAAkC;AAC5E;AACA;AACA;AACA,uCAAuC,SAAS;AAChD;AACA,wCAAwC,qBAAqB;AAC7D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA,wCAAwC,yCAAe,oCAAoC,yCAAe;AAC1G;AACA,4BAA4B,yCAAe;AAC3C;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA,4BAA4B,iBAAiB;AAC7C;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA,qBAAqB;AACrB;AACA;AACA,qBAAqB;AACrB;AACA;AACA,qBAAqB;AACrB;AACA,+BAA+B,SAAS;AACxC,qBAAqB;AACrB;AACA,gEAAgE,6CAA6C;AAC7G;AACA,oCAAoC,uBAAuB;AAC3D;AACA;AACA;AACA;AACA,4BAA4B,yCAAe,6EAA6E,SAAS;AACjI;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA,mCAAmC;AACnC,0BAA0B;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA,mCAAmC;AACnC,+BAA+B,SAAS;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kDAAkD,EAAE;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,aAAa;AACrC;AACA;AACA;AACA;AACA;AACA,wBAAwB,wBAAO,4BAA4B,wBAAO;AAClE,wBAAwB,wBAAO;AAC/B;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA,yBAAyB,yCAAe;AACxC,8BAA8B,yCAAe;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iDAAiD,SAAS;AAC1D,wCAAwC,sDAAsD;AAC9F,4CAA4C,+BAA+B;AAC3E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B,kFAAkF;AACjH,+BAA+B;AAC/B;AACA;AACA,yCAAyC;AACzC,oBAAoB,yCAAe;AACnC,oBAAoB,aAAa;AACjC;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA,0CAA0C,SAAS;AACnD,oCAAoC,6CAA6C;AACjF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA,mCAAmC,oBAAoB;AACvD;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,oDAAoD;AAC5F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA,wCAAwC,iDAAiD;AACzF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA,+BAA+B,SAAS;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C;AAC5C;AACA;AACA,wBAAwB,yCAAe;AACvC,qBAAqB;AACrB;AACA,wBAAwB,yCAAe;AACvC,qBAAqB;AACrB;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,SAAS;AAC3C;AACA;AACA;AACA,oBAAoB,iBAAiB;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,SAAS;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA,gBAAgB,yCAAe;AAC/B,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA,wBAAwB,IAAmH;AAC3I;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA,eAAe;AACf;AACA,+BAA+B;AAC/B;AACA,kCAAkC,SAAS;AAC3C;AACA;AACA,oCAAoC,6BAA6B;AACjE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B,gBAAgB,aAAa;AAC7B,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA,6CAA6C,wBAAO;AACpD,6CAA6C,wBAAO;AACpD;AACA;AACA,oCAAoC,0BAA0B;AAC9D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC,wBAAO;AACxC;AACA,oDAAoD,yCAAe;AACnE;AACA;AACA;AACA,wBAAwB,yCAAe;AACvC;AACA,oBAAoB,wBAAO;AAC3B,oBAAoB,wBAAO;AAC3B;AACA,2CAA2C,yCAAe;AAC1D,0CAA0C,yCAAe;AACzD;AACA;AACA;AACA,+CAA+C,qCAAqC;AACpF;AACA;AACA;AACA;AACA,gCAAgC,SAAS;AACzC,+CAA+C,IAAI,SAAS,8BAA8B;AAC1F;AACA;AACA,+CAA+C,qCAAqC;AACpF;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,wBAAO;AAC3B,oBAAoB,wBAAO;AAC3B;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B,gBAAgB,aAAa,6BAA6B,uCAAuC;AACjG,eAAe;AACf,+BAA+B;AAC/B;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B,kCAAkC,SAAS;AAC3C;AACA,oBAAoB,yCAAe;AACnC;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B,gBAAgB,yCAAe;AAC/B,eAAe;AACf,+BAA+B;AAC/B;AACA,oBAAoB,wBAAO;AAC3B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0CAA0C,wBAAO;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uEAAuE,yCAAe;AACtF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oEAAoE,wBAAO;AAC3E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,wBAAO;AAC3C,oCAAoC,wBAAO;AAC3C;AACA;AACA;AACA,gCAAgC,yCAAe,8FAA8F,SAAS;AACtJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,aAAa;AACjC;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B,oBAAoB,wBAAO,iBAAiB,wBAAO,kCAAkC,wBAAO;AAC5F,+CAA+C,wBAAO,gCAAgC,wBAAO;AAC7F;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,SAAS;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA,gCAAgC,SAAS;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,wBAAO;AACvC;AACA;AACA;AACA,gCAAgC,wBAAO;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,wBAAO;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gDAAgD,oCAAoC;AACpF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wDAAwD,IAAI,wBAAO,sCAAsC;AACzG,0DAA0D,wBAAO,kCAAkC,wBAAO;AAC1G,2DAA2D,wBAAO,mCAAmC,wBAAO;AAC5G;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,wBAAO;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C,wBAAO,cAAc,SAAS;AAC1E;AACA;AACA;AACA,iDAAiD,wBAAO,cAAc,SAAS;AAC/E;AACA;AACA;AACA;AACA;AACA;AACA,uDAAuD;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA,oBAAoB,aAAa;AACjC;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA,mCAAmC;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B,4BAA4B,SAAS;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA,gCAAgC,yCAAe;AAC/C;AACA;AACA,0CAA0C,SAAS;AACnD;AACA,oCAAoC,2DAA2D;AAC/F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gDAAgD,6BAA6B;AAC7E;AACA;AACA;AACA;AACA,4CAA4C,wFAAwF;AACpI;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA,gCAAgC,yCAAe;AAC/C;AACA;AACA;AACA,oCAAoC,6CAA6C;AACjF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,6BAA6B;AACrE;AACA;AACA;AACA,wCAAwC,0BAA0B;AAClE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA,gBAAgB,yCAAe;AAC/B,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,0BAA0B;AAC5D;AACA;AACA;AACA;AACA;AACA,oCAAoC,SAAS;AAC7C,mCAAmC,qBAAqB;AACxD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf;AACA,+BAA+B;AAC/B,4BAA4B,SAAS;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf;AACA;AACA;AACA;AACA,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,wBAAO;AAC/B,wBAAwB,wBAAO;AAC/B;AACA;AACA;AACA,wBAAwB,wBAAO;AAC/B,wBAAwB,wBAAO;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,wBAAwB;AAChE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA,+BAA+B,SAAS;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA,wBAAwB,SAAS;AACjC,yDAAyD,SAAS;AAClE;AACA;AACA;AACA;AACA,iDAAiD;AACjD;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B,oBAAoB,wBAAO;AAC3B,oBAAoB,wBAAO,cAAc,wBAAO;AAChD,yBAAyB,wBAAO;AAChC;AACA,uEAAuE,wBAAO;AAC9E,wBAAwB,wBAAO;AAC/B,4BAA4B,aAAa;AACzC;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B,4BAA4B,SAAS;AACrC,4BAA4B,wBAAO;AACnC;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B,wCAAwC,yCAAe;AACvD,sCAAsC,SAAS;AAC/C;AACA;AACA,oCAAoC,SAAS;AAC7C;AACA;AACA;AACA;AACA;AACA,oBAAoB,yCAAe;AACnC;AACA;AACA,oBAAoB,yCAAe;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,yCAAe;AACvC,qBAAqB;AACrB;AACA,wBAAwB,yCAAe;AACvC,qBAAqB;AACrB;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf,wBAAwB,4BAA4B;AACpD;AACA;AACA;AACA,QAAQ,wBAAO;AACf,QAAQ,wBAAO;AACf,QAAQ,wBAAO;AACf,QAAQ,wBAAO;AACf;AACA;AACA,4BAA4B,sBAAsB;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,uCAAuC;AAC7D,sBAAsB,uCAAuC;AAC7D,sBAAsB,qCAAqC;AAC3D,sBAAsB,8BAA8B;AACpD,sBAAsB,6BAA6B;AACnD,sBAAsB,0BAA0B;AAChD,sBAAsB;AACtB;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B;AAC3B,sBAAsB,yCAAyC;AAC/D,sBAAsB,2BAA2B;AACjD,sBAAsB,4CAA4C;AAClE,sBAAsB,4CAA4C;AAClE,sBAAsB,gCAAgC;AACtD,sBAAsB;AACtB,4BAA4B,yCAAe;AAC3C,2BAA2B;AAC3B,sBAAsB,wBAAwB;AAC9C,sBAAsB,4CAA4C;AAClE,sBAAsB,8CAA8C;AACpE,sBAAsB,8BAA8B;AACpD,sBAAsB,8BAA8B;AACpD,sBAAsB,0CAA0C;AAChE,sBAAsB,wCAAwC;AAC9D,sBAAsB,2CAA2C;AACjE,sBAAsB;AACtB;AACA,2BAA2B;AAC3B,sBAAsB;AACtB;AACA,2BAA2B;AAC3B,sBAAsB;AACtB;AACA;AACA;AACA;AACA,2BAA2B;AAC3B,sBAAsB,sCAAsC;AAC5D,sBAAsB;AACtB;AACA,4BAA4B,aAAa;AACzC;AACA;AACA,6BAA6B;AAC7B,2BAA2B;AAC3B,sBAAsB;AACtB,4BAA4B,iBAAiB;AAC7C,2BAA2B;AAC3B,sBAAsB,8BAA8B;AACpD,sBAAsB,8BAA8B;AACpD,sBAAsB,6BAA6B;AACnD,sBAAsB,kCAAkC;AACxD,sBAAsB,oCAAoC;AAC1D,sBAAsB;AACtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B;AAC3B,sBAAsB,2BAA2B;AACjD,sBAAsB,oDAAoD;AAC1E,sBAAsB,8CAA8C;AACpE,sBAAsB;AACtB,wCAAwC,SAAS;AACjD;AACA;AACA;AACA;AACA,2BAA2B;AAC3B,sBAAsB,mCAAmC;AACzD,sBAAsB,+BAA+B;AACrD,sBAAsB,mCAAmC;AACzD,sBAAsB,wCAAwC;AAC9D,sBAAsB,8CAA8C;AACpE,sBAAsB,4CAA4C;AAClE,sBAAsB,6CAA6C;AACnE,sBAAsB,6BAA6B;AACnD,sBAAsB,8BAA8B;AACpD,sBAAsB,8BAA8B;AACpD,sBAAsB,sCAAsC;AAC5D,sBAAsB,8EAA8E;AACpG,sBAAsB,4EAA4E;AAClG,sBAAsB,0EAA0E;AAChG,sBAAsB,kEAAkE;AACxF,sBAAsB,4EAA4E;AAClG,sBAAsB,oEAAoE;AAC1F,sBAAsB,8CAA8C;AACpE,sBAAsB,yCAAyC;AAC/D,sBAAsB,2CAA2C;AACjE,sBAAsB,kCAAkC;AACxD,sBAAsB,+EAA+E;AACrG,sBAAsB,6EAA6E;AACnG,sBAAsB,iFAAiF;AACvG,sBAAsB,+EAA+E;AACrG,sBAAsB,uCAAuC;AAC7D,sBAAsB,2CAA2C;AACjE,sBAAsB,0CAA0C;AAChE,sBAAsB,6CAA6C;AACnE,sBAAsB,2CAA2C;AACjE,sBAAsB,8CAA8C;AACpE,sBAAsB,wCAAwC;AAC9D,sBAAsB;AACtB;AACA,2BAA2B;AAC3B,sBAAsB,0DAA0D;AAChF,sBAAsB,iCAAiC;AACvD,sBAAsB;AACtB;AACA,2BAA2B;AAC3B,sBAAsB,qBAAqB;AAC3C,sBAAsB;AACtB,4BAA4B,aAAa;AACzC,2BAA2B;AAC3B,sBAAsB;AACtB;AACA,4BAA4B,aAAa;AACzC;AACA;AACA,6BAA6B;AAC7B,2BAA2B;AAC3B,sBAAsB,iCAAiC;AACvD,sBAAsB,yBAAyB;AAC/C,sBAAsB,6CAA6C;AACnE,sBAAsB;AACtB;AACA,gCAAgC,+BAA+B;AAC/D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0CAA0C,uBAAuB;AACjE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,wBAAO,cAAc,SAAS;AAClE;AACA;AACA,sDAAsD,SAAS;AAC/D;AACA,oDAAoD,SAAS;AAC7D;AACA,yCAAyC,wBAAO,cAAc,SAAS;AACvE;AACA;AACA;AACA;AACA;AACA,4DAA4D,SAAS;AACrE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uDAAuD,wBAAO,uCAAuC,wBAAO;AAC5G,wFAAwF,wBAAO,0FAA0F,wBAAO;AAChM;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gDAAgD,SAAS;AACzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oEAAoE,yCAAe,oCAAoC,yCAAe;AACtI;AACA,gCAAgC,yCAAe;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,yCAAe,gEAAgE,SAAS;AACxG;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,SAAS;AACxC;AACA,sCAAsC;AACtC;AACA,4BAA4B,sDAAsD;AAClF;AACA,gCAAgC,iFAAiF;AACjH;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,qDAAqD;AACjF;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,4DAA4D;AAC5F,oCAAoC,qEAAqE;AACzG;AACA,4CAA4C,2DAA2D;AACvG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yCAAyC;AACzC,oBAAoB,yCAAe;AACnC;AACA;AACA;AACA,YAAY,yCAAe;AAC3B,YAAY,aAAa;AACzB;AACA,aAAa;AACb;AACA;AACA;AACA,gBAAgB,yCAAe;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,0CAA0C;AAC9E;AACA;AACA,wCAAwC,yCAAyC;AACjF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,+DAA+D;AACvG;AACA;AACA;AACA;AACA,wCAAwC,mCAAmC;AAC3E;AACA;AACA;AACA;AACA;AACA,4CAA4C,mCAAmC;AAC/E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gDAAgD,wCAAwC;AACxF;AACA;AACA;AACA;AACA;AACA,4DAA4D,uBAAuB;AACnF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,yDAAyD;AACjG;AACA;AACA;AACA,4CAA4C,sCAAsC;AAClF;AACA;AACA;AACA;AACA;AACA;AACA,gDAAgD,oBAAoB;AACpE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,yCAAe,oEAAoE,SAAS;AAChH;AACA,gBAAgB,aAAa;AAC7B;AACA,iBAAiB;AACjB;AACA;AACA,gBAAgB,yCAAe,8EAA8E,SAAS;AACtH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,wBAAO;AACf;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,aAAa,6BAA6B,wBAAO;AAC7E;AACA,qBAAqB;AACrB;AACA,wBAAwB,aAAa;AACrC,qBAAqB;AACrB;AACA,qBAAqB;AACrB;AACA,wBAAwB,wBAAO;AAC/B,qBAAqB;AACrB;AACA,wBAAwB,aAAa,6BAA6B;AAClE,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,gBAAgB,wBAAO;AACvB,qCAAqC,wBAAO;AAC5C;AACA;AACA,SAAS;AACT,QAAQ,yCAAe;AACvB,YAAY,aAAa;AACzB,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,yCAAe;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,aAAa;AACrD;AACA;AACA;AACA;AACA,wCAAwC,aAAa;AACrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,YAAY,yCAAe;AAC3B;AACA;AACA;AACA;AACA;AACA,wBAAwB,yCAAe;AACvC,4BAA4B,aAAa;AACzC,yBAAyB;AACzB;AACA;AACA,aAAa;AACb;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA,sGAAsG,uBAAuB;AAC7H;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,qBAAqB;AAC7D;AACA;AACA;AACA;AACA,iCAAiC;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B;AAC7B;AACA;AACA;AACA;AACA;AACA,6BAA6B;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6CAA6C,mCAAmC;AAChF;AACA;AACA;AACA;AACA;AACA,oCAAoC,kBAAkB;AACtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;ACrhFA;AACO;AACP;AACA;AACO;AACP;AACA;AACA;AACA;AACA;AACA;AACA,oFAAoF;AACpF;AACO;AACP;AACA,6BAA6B;AAC7B,oBAAoB,iBAAiB;AACrC;AACA;AACA;AACA;AACA;AACO,2BAA2B,cAAc,iBAAiB;AACjE,2BAA2B;AAC3B;AACO,8BAA8B;AACrC,kBAAkB,4BAA4B;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB,sCAAsC,cAAc;AACtE;AACA;AACA;AACA,qBAAqB;AACrB;AACO,sCAAsC,iDAAiD,qBAAqB,+BAA+B;AAClJ;AACA;AACA;AACA,mCAAmC,QAAQ;AAC3C,uCAAuC,QAAQ;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;AACF;AACA;AACA;AACA,EAAE;AACF;AACO;AACP;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,QAAQ;AAC5B;AACA,oBAAoB,SAAS;AAC7B;AACA,gBAAgB,OAAO;AACvB;AACA,gBAAgB,OAAO;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,wBAAwB,cAAc;AAC7C;AACA;AACA;AACA;AACA;AACA;AACO,4BAA4B,cAAc;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,0BAA0B,kCAAkC;AACnE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;AACF;AACO,kCAAkC,0HAA0H;AACnK;AACA;AACA,EAAE;AACF;AACO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC5LuD;AACF;AACF;AACU;AACgB;AACZ;AACD;AACmB;AACV;AAChB;AACM;AACW;AAC1E,wBAAwB,2CAA2C;AACnE;AACA,gBAAgB,2BAA2B;AAC3C,wBAAwB,YAAY;AACpC;AACO,uBAAuB,gCAAgC,WAAW;AACzE;AACA;AACA;AACA;AACA,oBAAoB,GAAW;AAC/B,oBAAoB,GAAW;AAC/B,oBAAoB,GAAW;AAC/B,oBAAoB,GAAW;AAC/B,uBAAuB,MAAc;AACrC,iCAAiC,gBAAwB;AACzD,2BAA2B,UAAkB;AAC7C,0BAA0B,SAAiB;AAC3C,8BAA8B,aAAqB;AACnD,mBAAmB,EAAU;AAC7B,2BAA2B,UAAkB;AAC7C,sCAAsC,qBAA6B;AACnE;AACA;AACA,oBAAoB,UAAU;AAC9B;AACA;AACA,oBAAoB,SAAS;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sDAAsD,wBAAO;AAC7D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,QAAQ;AACpC,gBAAgB,QAAQ,cAAc,wBAAO;AAC7C,sCAAsC,QAAQ;AAC9C;AACA;AACA;AACA,QAAQ,kBAAkB;AAC1B,QAAQ,mBAAmB;AAC3B,QAAQ,yCAAe;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,kEAAkE;AACtG;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,+CAA+C;AACvF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B;AAC7B;AACA;AACA;AACA;AACA,4BAA4B,wBAAO;AACnC,iDAAiD,yCAAe;AAChE,4BAA4B,yCAAe;AAC3C;AACA,gCAAgC,yCAAe;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,yCAAe,yDAAyD,SAAS;AACjG;AACA,SAAS;AACT;AACA;AACA,QAAQ,yCAAe,wDAAwD,SAAS;AACxF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,mCAAmC;AAC3D;AACA;AACA;AACA;AACA,gBAAgB,yCAAe,+DAA+D,SAAS;AACvG;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,oCAAoC;AAC5D;AACA;AACA;AACA;AACA,gBAAgB,yCAAe,gEAAgE,SAAS;AACxG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,QAAQ,wBAAO;AAC5C;AACA;AACA;AACA;AACA;AACA,iCAAiC,mCAAmC;AACpE,uCAAuC,0BAA0B;AACjE,kCAAkC,4BAA4B;AAC9D,wCAAwC,2BAA2B;AACnE,oCAAoC,4CAA4C;AAChF,+BAA+B,mCAAmC;AAClE,4CAA4C,uCAAuC;AACnF,oCAAoC,oCAAoC;AACxE,kCAAkC,mCAAmC;AACrE,qCAAqC,+BAA+B;AACpE,gCAAgC,6BAA6B;AAC7D,kCAAkC,4BAA4B;AAC9D,8BAA8B,oDAAoD;AAClF,yBAAyB;AACzB;AACA;AACA,sBAAsB,oJAAoJ;AAC1K,mBAAmB,sJAAsJ;AACzK,kBAAkB,yFAAyF;AAC3G,qBAAqB;AACrB;AACA;AACA;AACA,4BAA4B,sDAAsD;AAClF;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,yCAAe;AAC9C;AACA;AACA,QAAQ,yCAAe;AACvB,YAAY,wBAAO;AACnB,YAAY,yCAAe;AAC3B,YAAY,wBAAO;AACnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C,wBAAO,iBAAiB,yCAAe,8CAA8C,yCAAe;AAChJ,oDAAoD,SAAS;AAC7D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,yCAAe,wEAAwE,SAAS;AACpH;AACA;AACA;AACA;AACA;AACA,QAAQ,yCAAe;AACvB;AACA;AACA;AACA;AACA;AACA,QAAQ,aAAa;AACrB;AACA;AACA;AACA;AACA,2BAA2B,yCAAe;AAC1C;AACA;AACA;AACA;AACA,gCAAgC,sBAAsB;AACtD;AACA;AACA;AACA;AACA;AACA,4CAA4C,kBAAkB;AAC9D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C,qBAAqB;AACjE;AACA,oEAAoE;AACpE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oDAAoD,mBAAmB;AACvE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oDAAoD,kBAAkB;AACtE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC;AACtC,wCAAwC,0BAA0B;AAClE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC,2CAA2C;AAClF;AACA;AACA;AACA,oBAAoB,wBAAO;AAC3B,oBAAoB,yCAAe;AACnC;AACA;AACA,oBAAoB,yCAAe;AACnC;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,yCAAe;AAC3B;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,yCAAe,kFAAkF,SAAS;AAC1H;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,qBAAqB;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,yCAAe,mEAAmE,SAAS;AACvG;AACA;AACA,sCAAsC;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+CAA+C,OAAO;AACtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mDAAmD,OAAO;AAC1D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,wBAAO;AACX;AACA,IAAI,kBAAkB;AACtB;AACA;AACA;AACA;AACA;AACA,kEAAkE,aAAa,iCAAiC;AAChH,oBAAoB,wBAAO;AAC3B,oBAAoB,wBAAO;AAC3B;AACA,gBAAgB,wBAAO;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,wBAAO;AACvB;AACA;AACA,gBAAgB,yCAAe;AAC/B;AACA;AACA,6BAA6B,yCAAe;AAC5C;AACA;AACA;AACA;AACA,8BAA8B,yCAAe;AAC7C;AACA;AACA,oBAAoB,wBAAO,+GAA+G,wBAAO,2BAA2B,wBAAO;AACnL,oCAAoC;AACpC;AACA;AACA;AACA;AACA,wCAAwC,0KAA0K;AAClN;AACA;AACA;AACA,wCAAwC,yCAAe;AACvD;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,yCAAe;AACnC,+BAA+B,yCAAe;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,yCAAe,gGAAgG,SAAS;AACpI;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB,6BAA6B;AAC7B;AACA,mBAAmB;AACnB,6BAA6B;AAC7B,wBAAwB,wBAAO;AAC/B,mCAAmC,wBAAO;AAC1C,mCAAmC,wBAAO;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB,6BAA6B;AAC7B;AACA,qCAAqC,wBAAO;AAC5C;AACA;AACA,mBAAmB;AACnB,6BAA6B;AAC7B;AACA,uCAAuC;AACvC,mBAAmB;AACnB,6BAA6B;AAC7B;AACA,qCAAqC,yCAAe;AACpD,mBAAmB;AACnB,6BAA6B;AAC7B;AACA;AACA;AACA;AACA,mBAAmB;AACnB,6BAA6B;AAC7B,+BAA+B,wBAAO;AACtC,mBAAmB;AACnB,6BAA6B;AAC7B;AACA;AACA,oCAAoC,iDAAiD;AACrF,4CAA4C,yCAAe;AAC3D;AACA;AACA;AACA;AACA,mBAAmB;AACnB,6BAA6B;AAC7B,wBAAwB,yCAAe;AACvC;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB,6BAA6B;AAC7B,mBAAmB;AACnB,6BAA6B;AAC7B;AACA,mBAAmB;AACnB,6BAA6B;AAC7B;AACA,qCAAqC,wBAAO,cAAc,wBAAO;AACjE;AACA;AACA;AACA,mBAAmB;AACnB,6BAA6B;AAC7B,+BAA+B,wBAAO;AACtC,oCAAoC,wBAAO;AAC3C;AACA,mBAAmB;AACnB,6BAA6B;AAC7B,+BAA+B,yCAAe;AAC9C,mBAAmB;AACnB,6BAA6B;AAC7B,+BAA+B,yCAAe;AAC9C,mBAAmB;AACnB,6BAA6B;AAC7B;AACA,mBAAmB;AACnB,6BAA6B;AAC7B,wBAAwB,yCAAe;AACvC,mCAAmC,wBAAO;AAC1C;AACA,mBAAmB;AACnB,6BAA6B;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC,yCAAe;AACrD;AACA;AACA;AACA;AACA,mBAAmB;AACnB,6BAA6B;AAC7B,wBAAwB,yCAAe;AACvC,4BAA4B,wBAAO;AACnC,uCAAuC,wBAAO;AAC9C;AACA;AACA,mBAAmB;AACnB,6BAA6B;AAC7B,wBAAwB,yCAAe;AACvC,mCAAmC,yCAAe;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB,6BAA6B;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB,6BAA6B;AAC7B,+BAA+B,wBAAO;AACtC,mBAAmB;AACnB,6BAA6B;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2CAA2C,wBAAO;AAClD;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB,6BAA6B;AAC7B,+BAA+B,wBAAO;AACtC,mBAAmB;AACnB,6BAA6B;AAC7B;AACA,mBAAmB;AACnB,6BAA6B;AAC7B,+BAA+B,wBAAO;AACtC,mBAAmB;AACnB,6BAA6B;AAC7B,+BAA+B,wBAAO;AACtC,mBAAmB;AACnB,6BAA6B;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB,6BAA6B;AAC7B;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB,6BAA6B;AAC7B;AACA;AACA;AACA,mBAAmB;AACnB,6BAA6B;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB,6BAA6B;AAC7B,+BAA+B,yCAAe;AAC9C,mBAAmB;AACnB,6BAA6B;AAC7B,+BAA+B,yCAAe;AAC9C,mBAAmB;AACnB,6BAA6B;AAC7B,sCAAsC,yCAAe;AACrD;AACA,mBAAmB;AACnB,6BAA6B;AAC7B,gCAAgC,wBAAO;AACvC,mBAAmB;AACnB,6BAA6B;AAC7B,gCAAgC,yCAAe;AAC/C,mBAAmB;AACnB,6BAA6B;AAC7B,gCAAgC,yCAAe;AAC/C,mBAAmB;AACnB,6BAA6B;AAC7B,gCAAgC,yCAAe,oCAAoC,yCAAe;AAClG,mBAAmB;AACnB,6BAA6B;AAC7B,gCAAgC,yCAAe,qBAAqB,yCAAe;AACnF;AACA,mBAAmB;AACnB,6BAA6B;AAC7B;AACA;AACA,oCAAoC,uBAAuB;AAC3D,2CAA2C,wBAAO;AAClD;AACA;AACA,mBAAmB;AACnB,6BAA6B;AAC7B,yBAAyB,wBAAO;AAChC;AACA;AACA;AACA;AACA,mBAAmB;AACnB,4BAA4B,sBAAsB;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,yCAAe,wBAAwB,SAAS;AACxE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,yCAAe,gEAAgE,SAAS;AACpG;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,gCAAgC;AACxD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,qBAAqB;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,yCAAe,+EAA+E,SAAS;AACnH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,aAAa;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,yCAAe,2EAA2E,SAAS;AAC/G;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,yCAAe,cAAc;AAC3D;AACA,gBAAgB,wBAAO;AACvB,gBAAgB,kBAAkB;AAClC;AACA;AACA,gBAAgB,wBAAO,+BAA+B,wBAAO;AAC7D,gBAAgB,wBAAO,oCAAoC,gCAAgC;AAC3F;AACA;AACA;AACA,YAAY,yCAAe,8DAA8D,SAAS;AAClG;AACA;AACA,gBAAgB,aAAa,6BAA6B,sDAAsD;AAChH;AACA;AACA;AACA;AACA,2BAA2B;AAC3B;AACA;AACA;AACA;AACA,4BAA4B,sBAAsB;AAClD;AACA;AACA;AACA;AACA;AACA,wCAAwC,kBAAkB;AAC1D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC;AAClC,oCAAoC,0BAA0B;AAC9D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,yCAAe,aAAa,SAAS;AACjD;AACA;AACA,gBAAgB,aAAa,6BAA6B,mBAAmB;AAC7E;AACA;AACA;AACA;AACA,yBAAyB,kBAAkB;AAC3C;AACA;AACA;AACA;AACA;AACA,YAAY,yCAAe,aAAa,SAAS;AACjD;AACA;AACA,gBAAgB,aAAa,6BAA6B,mBAAmB;AAC7E;AACA;AACA;AACA;AACA;AACA,mBAAmB,yCAAe,cAAc;AAChD;AACA;AACA;AACA,YAAY,aAAa;AACzB;AACA;AACA,YAAY,aAAa;AACzB;AACA;AACA;AACA;AACA,iBAAiB,wBAAO;AACxB,gBAAgB,kBAAkB;AAClC;AACA;AACA;AACA,YAAY,yCAAe;AAC3B;AACA,KAAK;AACL;AACA;AACA;;ACngCO;AACP;;ACDO;AACP,iCAAiC,sJAAsJ;AACvL,0BAA0B,gJAAgJ;AAC1K;AACA,iBAAiB,gJAAgJ;AACjK,kBAAkB,gJAAgJ;AAClK,iBAAiB,gJAAgJ;AACjK,kBAAkB;AAClB;AACA;AACA;;ACVoD;AACE;AACJ;AACF;AACU;AACgB;AACZ;AACD;AACmB;AACF;AAChB;AACI;AAClE,IAAI,qCAAc,MAAM,oEAAoE,IAAI,gCAAgC,IAAI,mCAAmC;AACvK,IAAI,iCAAU;AACd,SAAS,wBAAC,MAAM,wBAAC,GAAG,qCAAc,SAAS,wBAAC;AAC5C,IAAI,iCAAU,UAAU,YAAY,CAAC,qCAAc,CAAC,wBAAC,KAAK,qCAAc,CAAC,wBAAC,KAAK,qCAAc,CAAC,wBAAC;AAC/F;AACO,+BAA+B,wCAAwC,WAAW,wBAAwB,iCAAU,gBAAgB,2BAAI;AAC/I,SAAS,2BAAI;AACb,6BAA6B,wBAAO,kBAAkB,yCAAe;AACrE,yBAAyB,wBAAO;AAChC,QAAQ,wBAAO,yCAAyC,wBAAO;AAC/D,yBAAyB,QAAQ;AACjC;AACA,oBAAoB,yCAAe;AACnC,qBAAqB,gBAAgB;AACrC;AACA;AACA,uCAAuC,cAAc,gBAAgB,qCAAqC,gBAAgB;AAC1H,8BAA8B;AAC9B;AACA,YAAY,wBAAO;AACnB,mCAAmC,kBAAkB;AACrD;AACA;AACA;AACA;AACA,YAAY,kBAAkB;AAC9B,YAAY,wBAAO;AACnB,gBAAgB,wBAAO;AACvB,gCAAgC,IAAI,wBAAO,qCAAqC;AAChF,0CAA0C,wBAAO,oCAAoC,wBAAO;AAC5F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,wBAAO;AACpB;AACA;AACA;AACA;AACA,YAAY,yCAAe;AAC3B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC;AACtC,YAAY,wBAAO;AACnB,0CAA0C,gBAAgB,MAAM,wBAAO,+DAA+D;AACtI;AACA,+DAA+D,sCAAsC,wBAAwB,yCAAe,2DAA2D,SAAS,UAAU;AAC1N;AACA;AACA;AACA,sBAAsB,aAAa,wBAAwB;AAC3D;AACA;AACA,iCAAiC,2BAA2B;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,wBAAO;AACnB,8BAA8B,iBAAiB,gBAAgB,MAAM,wBAAO,+DAA+D;AAC3I;AACA,QAAQ,wBAAO,cAAc,wBAAO;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gDAAgD,IAAI,wBAAO,+BAA+B;AAC1F,6CAA6C,wBAAO;AACpD;AACA;AACA,oCAAoC,wBAAO;AAC3C;AACA;AACA,yBAAyB;AACzB;AACA,iBAAiB;AACjB;AACA,SAAS;AACT,+DAA+D,sCAAsC,wBAAwB,yCAAe,wDAAwD,SAAS,UAAU;AACvN;AACA;AACA,aAAa,wBAAO;AACpB,6BAA6B;AAC7B;AACA;AACA;AACA,gBAAgB,yCAAe;AAC/B,4CAA4C,yCAAe;AAC3D;AACA,gBAAgB,yCAAe;AAC/B,2CAA2C,yCAAe;AAC1D;AACA,wBAAwB,yCAAe;AACvC,iBAAiB,wBAAO;AACxB;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA,uBAAuB,SAAS;AAChC;AACA;AACA,4BAA4B,qBAAqB;AACjD,8CAA8C,oBAAoB;AAClE;AACA;AACA;AACA;AACA;AACA,gBAAgB,wBAAO;AACvB,iBAAiB,SAAS;AAC1B;AACA;AACA;AACA,iBAAiB,SAAS;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,yDAAyD;AACxF,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,wBAAO,cAAc,SAAS;AAC9C;AACA,kEAAkE,SAAS;AAC3E;AACA,qBAAqB,wBAAO,cAAc,SAAS;AACnD;AACA,gEAAgE,SAAS;AACzE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,yDAAyD;AACpF,aAAa;AACb;AACA;AACA;AACA,0BAA0B,SAAS;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,uBAAuB;AACzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC,yDAAyD;AAChG,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA;AACA,2CAA2C,yDAAyD;AACpG,6BAA6B;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B;AAC/B,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,SAAS;AACjB;AACA;AACA;AACA;AACA,sCAAsC,uBAAuB;AAC7D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B;AAC/B,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC,wBAAO;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,wBAAO;AACvB,iBAAiB,SAAS;AAC1B;AACA;AACA;AACA,iBAAiB,SAAS;AAC1B;AACA;AACA;AACA,iBAAiB,SAAS;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA,8BAA8B,SAAS;AACvC;AACA;AACA,qCAAqC,SAAS;AAC9C,oCAAoC,SAAS;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,SAAS;AACjB;AACA;AACA;AACA;AACA,sCAAsC,uBAAuB;AAC7D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC;AACtC;AACA;AACA;AACA,4CAA4C,IAAI,aAAa,SAAS;AACtE,4DAA4D,aAAa;AACzE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC,uBAAuB;AAC7D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,iBAAiB;AACzB;AACA,KAAK;AACL;AACA;AACA;;ACthBoD;AACE;AACJ;AACQ;AACgB;AACZ;AACD;AAC7D,IAAI,wBAAc,MAAM,4DAA4D,IAAI,8BAA8B,IAAI,iCAAiC;AAC3J,IAAI,oBAAU;AACd,SAAS,WAAC,MAAM,WAAC,GAAG,wBAAc,SAAS,WAAC;AAC5C,IAAI,oBAAU,UAAU,YAAY,CAAC,wBAAc,CAAC,WAAC,KAAK,wBAAc,CAAC,WAAC,KAAK,wBAAc,CAAC,WAAC;AAC/F;AACO,kBAAkB,2BAA2B,WAAW,iCAAiC,oBAAU,gBAAgB,cAAI;AAC9H,SAAS,cAAI;AACb;AACA,YAAY,wBAAO;AACnB,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,yCAAe;AACvB;AACA,wBAAwB,wBAAO;AAC/B,0BAA0B,SAAS;AACnC;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,0BAA0B,SAAS;AACnC,wBAAwB,wBAAwB;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,yBAAyB,SAAS;AAClC;AACA,SAAS;AACT;AACA;AACA;AACA;;ACjHoD;AACE;AACJ;AACF;AACU;AACgB;AACZ;AACD;AAC7D,IAAI,0BAAc,MAAM,uCAAuC,IAAI,4BAA4B,IAAI,2DAA2D;AAC9J,IAAI,sBAAU;AACd,SAAS,aAAC,MAAM,aAAC,GAAG,0BAAc,SAAS,aAAC;AAC5C,IAAI,sBAAU,UAAU,YAAY,CAAC,0BAAc,CAAC,aAAC,KAAK,0BAAc,CAAC,aAAC,KAAK,0BAAc,CAAC,aAAC;AAC/F;AACO,oBAAoB,6BAA6B,WAAW,iCAAiC,sBAAU,gBAAgB,gBAAI;AAClI,SAAS,gBAAI;AACb;AACA,YAAY,wBAAO;AACnB,aAAa,QAAQ;AACrB;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,SAAS;AACjB;AACA;AACA,4BAA4B,qBAAqB;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,yCAAe,qFAAqF,SAAS;AAC7H;AACA,SAAS;AACT;AACA;AACA,gHAAgH,wBAAO;AACvH,QAAQ,yCAAe;AACvB;AACA,oBAAoB,wBAAO,cAAc,SAAS;AAClD;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;;ACzEoD;AACE;AACJ;AACQ;AACgB;AACZ;AACD;AAC7D,IAAI,mBAAc,MAAM,4DAA4D,IAAI,gCAAgC,IAAI,8BAA8B,IAAI,iCAAiC,IAAI,UAAU;AAC7M,IAAI,eAAU;AACd,SAAS,MAAC,MAAM,MAAC,GAAG,mBAAc,SAAS,MAAC;AAC5C,IAAI,eAAU,UAAU,YAAY,CAAC,mBAAc,CAAC,MAAC,KAAK,mBAAc,CAAC,MAAC,KAAK,mBAAc,CAAC,MAAC;AAC/F;AACO,aAAa,sBAAsB,WAAW,iCAAiC,eAAU,gBAAgB,SAAI;AACpH,SAAS,SAAI;AACb;AACA,YAAY,wBAAO;AACnB,aAAa,QAAQ;AACrB;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,wBAAO;AAC3B,qBAAqB,SAAS;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,SAAS;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,SAAS;AAC9B,qBAAqB,SAAS;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,SAAS;AAC9B,oBAAoB,SAAS;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA,qBAAqB,SAAS;AAC9B,oBAAoB,SAAS;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA,qBAAqB,SAAS;AAC9B,oBAAoB,SAAS;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB,oBAAoB,SAAS;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA,QAAQ,yCAAe;AACvB;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;;ACjIoD;AACF;AACQ;AACgB;AACb;AAC7D,IAAI,4BAAc,MAAM,0CAA0C;AAClE,IAAI,wBAAU;AACd,SAAS,eAAC,MAAM,eAAC,GAAG,4BAAc,SAAS,eAAC;AAC5C,IAAI,wBAAU,UAAU,YAAY,CAAC,4BAAc,CAAC,eAAC,KAAK,4BAAc,CAAC,eAAC,KAAK,4BAAc,CAAC,eAAC;AAC/F;AACO,qBAAqB,8BAA8B,WAAW,wBAAwB,wBAAU,gBAAgB,kBAAI;AAC3H,SAAS,kBAAI;AACb;AACA,YAAY,wBAAO;AACnB,aAAa,QAAQ;AACrB;AACA,wBAAwB,wBAAO;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,wBAAO;AAC3C;AACA;AACA;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,yCAAe;AACvB;AACA;AACA;AACA;;AC7DO;AACP;AACA;AACA,mBAAmB,aAAa;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;;ACrBoD;AACF;AACQ;AACG;AACR;AACrD,IAAI,qBAAc,MAAM,sCAAsC,IAAI,gCAAgC,IAAI,wCAAwC,IAAI,iCAAiC;AACnL,IAAI,iBAAU;AACd,SAAS,QAAC,MAAM,QAAC,GAAG,qBAAc,SAAS,QAAC;AAC5C,IAAI,iBAAU,UAAU,YAAY,CAAC,qBAAc,CAAC,QAAC,KAAK,qBAAc,CAAC,QAAC,KAAK,qBAAc,CAAC,QAAC;AAC/F;AACO,eAAe,wBAAwB,WAAW,iCAAiC,iBAAU,gBAAgB,WAAI;AACxH,SAAS,WAAI;AACb;AACA,YAAY,wBAAO;AACnB,aAAa,QAAQ;AACrB,uBAAuB,wBAAO;AAC9B;AACA;AACA,aAAa,QAAQ;AACrB,uBAAuB,wBAAO;AAC9B;AACA;AACA;AACA;AACA;AACA,YAAY,UAAU;AACtB,0DAA0D;AAC1D;AACA;AACA;AACA;AACA;AACA;;AChCO;AACP;AACA;AACA;AACA,wBAAwB;AACxB;AACA;AACA;AACA,wBAAwB;AACxB;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB;AACtB,uBAAuB;AACvB;AACA;AACA,sBAAsB;AACtB,wBAAwB;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC;AACtC,gCAAgC,cAAc;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB;AACtB,uBAAuB;AACvB;AACA;AACA;AACA;AACA,gCAAgC,cAAc;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B;AAC3B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB;AACxB;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV,iCAAiC;AACjC;AACA;AACA;AACA;AACA,iFAAiF,uCAAuC,qBAAqB;AAC7I;AACA;AACA;AACA;AACA,uBAAuB;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,cAAc;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kDAAkD;AAClD,0CAA0C;AAC1C,wCAAwC,cAAc;AACtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB;AACtB,wBAAwB;AACxB;AACA;AACA,mCAAmC,QAAQ;AAC3C;AACA;AACA;AACA;AACA,sBAAsB;AACtB,uBAAuB;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV,wBAAwB;AACxB;AACA;AACA;AACA,4BAA4B,iCAAiC;AAC7D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB;AACxB;AACA;AACA;AACA,oCAAoC;AACpC;AACA,gCAAgC,cAAc;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB;AACtB,uBAAuB;AACvB;AACA;AACA,kCAAkC,IAAI,IAAI,EAAE,GAAG,IAAI;AACnD;AACA;AACA;AACA,sCAAsC,EAAE,YAAY,EAAE,OAAO,EAAE;AAC/D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV,uBAAuB;AACvB;AACA,wBAAwB,QAAQ;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV,wBAAwB;AACxB,sBAAsB,iBAAiB;AACvC;AACA;AACA;AACA;AACA,4BAA4B,cAAc;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC,iCAAiC;AACxE,4BAA4B,cAAc;AAC1C,kCAAkC;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB;AACtB,wBAAwB;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,UAAU,iBAAiB,KAAK;AACxD;AACA;AACA;AACA,wBAAwB,cAAc;AACtC;AACA;AACA;AACA;AACA,UAAU;AACV,uBAAuB,IAAI,gBAAgB,GAAG,iBAAiB;AAC/D,iBAAiB,6BAA6B,MAAM,+BAA+B,OAAO,yBAAyB,MAAM,cAAc,qBAAqB;AAC5J,KAAK;AACL,8BAA8B,eAAe;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,gBAAgB,wOAAwO,QAAQ,qDAAqD,kCAAkC,wBAAwB;AACvX;AACA;AACA;AACA;AACA,WAAW,2BAA2B;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,2BAA2B,2BAA2B,oBAAoB;AACrF;AACA;AACA;AACA,mCAAmC,OAAO;AAC1C;AACA;AACA,cAAc,cAAc,iCAAiC;AAC7D;AACA;AACA;AACA,2BAA2B,KAAK;AAChC;AACA;AACA;AACA;AACA;AACA,cAAc,cAAc,yBAAyB,gCAAgC,cAAc,4BAA4B,qBAAqB,wBAAwB,OAAO,QAAQ,kBAAkB,WAAW,uBAAuB,sFAAsF,8CAA8C,yDAAyD,aAAa,6CAA6C,mGAAmG,GAAG,sBAAsB,eAAe,WAAW,eAAe;AAC3oB;AACA;AACA;AACA;;ACveoD;AACE;AACJ;AACQ;AACgB;AACZ;AACD;AACmB;AACzB;AACe;AACtE,IAAI,8BAAc,MAAM,sDAAsD,IAAI,qCAAqC,IAAI,gCAAgC,IAAI,8BAA8B,IAAI,iCAAiC;AAClO,IAAI,0BAAU;AACd,SAAS,iBAAC,MAAM,iBAAC,GAAG,8BAAc,SAAS,iBAAC;AAC5C,IAAI,0BAAU,UAAU,YAAY,CAAC,8BAAc,CAAC,iBAAC,KAAK,8BAAc,CAAC,iBAAC,KAAK,8BAAc,CAAC,iBAAC;AAC/F;AACO,gBAAgB,yBAAyB,WAAW,iCAAiC,0BAAU,gBAAgB,oBAAI;AAC1H,SAAS,oBAAI;AACb,IAAI,WAAW;AACf;AACA;AACA;AACA,cAAc,SAAS;AACvB,YAAY,wBAAO;AACnB,YAAY,wBAAO;AACnB;AACA,mCAAmC,QAAQ,6BAA6B,QAAQ,sBAAsB,QAAQ;AAC9G;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,QAAQ;AACxB;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA,gCAAgC,yCAAe;AAC/C;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA,gCAAgC,yCAAe;AAC/C;AACA,iBAAiB;AACjB;AACA,2CAA2C,OAAO,SAAS,sEAAsE;AACjI;AACA,iBAAiB;AACjB;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA,gCAAgC,yCAAe;AAC/C;AACA,iBAAiB;AACjB,+BAA+B;AAC/B;AACA;AACA;AACA,2CAA2C;AAC3C,iBAAiB;AACjB;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA,+BAA+B,SAAS;AACxC,qBAAqB;AACrB;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA,gCAAgC,yCAAe;AAC/C;AACA,iBAAiB;AACjB;AACA;AACA;AACA,qCAAqC,WAAW,YAAY,WAAW;AACvE,iBAAiB;AACjB;AACA;AACA;AACA,qCAAqC,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,YAAY,YAAY,YAAY;AACjK,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA,iBAAiB;AACjB;AACA;AACA;AACA,sCAAsC,WAAW,YAAY,YAAY,YAAY;AACrF,iBAAiB;AACjB;AACA;AACA;AACA,qCAAqC,YAAY;AACjD,iBAAiB;AACjB;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA,oCAAoC;AACpC,iBAAiB;AACjB;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA,qCAAqC;AACrC,iBAAiB;AACjB;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA,qCAAqC;AACrC,iBAAiB;AACjB;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA,mCAAmC;AACnC;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC,SAAS,QAAQ,SAAS,SAAS,gBAAgB;AAC1F,qBAAqB;AACrB;AACA;AACA,qBAAqB;AACrB;AACA,yCAAyC,WAAW,WAAW;AAC/D,qBAAqB;AACrB;AACA,2CAA2C,OAAO,SAAS,0EAA0E,YAAY;AACjJ,qBAAqB;AACrB;AACA;AACA;AACA;AACA,sDAAsD,eAAe;AACrE;AACA,+DAA+D,yCAAe,uCAAuC,SAAS,sEAAsE,yCAAe;AACnN;AACA,8DAA8D,mBAAmB;AACjF;AACA;AACA,8DAA8D,cAAc,YAAY,kBAAkB;AAC1G;AACA;AACA;AACA,mDAAmD,YAAY,WAAW;AAC1E;AACA;AACA;AACA;AACA,qCAAqC;AACrC;AACA;AACA,qBAAqB;AACrB;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,uCAAuC,SAAS,QAAQ,SAAS,SAAS,iBAAiB;AAC3F,qBAAqB;AACrB;AACA;AACA,qBAAqB;AACrB;AACA,yCAAyC,UAAU,WAAW,WAAW;AACzE,qBAAqB;AACrB;AACA,2CAA2C,OAAO,SAAS,yDAAyD,4BAA4B,YAAY;AAC5J,qBAAqB;AACrB;AACA;AACA;AACA;AACA,sDAAsD,eAAe,eAAe,YAAY,WAAW;AAC3G;AACA,+DAA+D,yCAAe,uCAAuC,SAAS,sEAAsE,yCAAe;AACnN;AACA,8DAA8D,mBAAmB;AACjF;AACA;AACA,8DAA8D,cAAc,YAAY,kBAAkB;AAC1G;AACA;AACA;AACA,mDAAmD,YAAY,WAAW;AAC1E;AACA;AACA;AACA;AACA,qCAAqC;AACrC;AACA;AACA,qBAAqB;AACrB;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,uCAAuC,eAAe;AACtD,qBAAqB;AACrB;AACA;AACA,qBAAqB;AACrB;AACA,yCAAyC,UAAU;AACnD,qBAAqB;AACrB;AACA,2CAA2C,OAAO,SAAS,6DAA6D;AACxH,qBAAqB;AACrB;AACA;AACA,iGAAiG,YAAY,WAAW,YAAY,4BAA4B,cAAc,WAAW;AACzL;AACA,qBAAqB;AACrB;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,uCAAuC,eAAe;AACtD,qBAAqB;AACrB;AACA,2CAA2C,OAAO,SAAS,yDAAyD,4BAA4B;AAChJ,qBAAqB;AACrB;AACA;AACA,iGAAiG,YAAY,WAAW,YAAY,4BAA4B,cAAc,WAAW;AACzL;AACA,qBAAqB;AACrB;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,uCAAuC,QAAQ,SAAS,SAAS;AACjE,qBAAqB;AACrB;AACA;AACA,qBAAqB;AACrB;AACA,yCAAyC,WAAW,WAAW;AAC/D,qBAAqB;AACrB;AACA,2CAA2C,OAAO,SAAS,0EAA0E,YAAY;AACjJ,qBAAqB;AACrB;AACA;AACA;AACA;AACA,sDAAsD,eAAe;AACrE;AACA,6DAA6D,yCAAe,uCAAuC,SAAS,sEAAsE,yCAAe;AACjN,0DAA0D,cAAc,YAAY,kBAAkB;AACtG;AACA;AACA,mDAAmD,YAAY,WAAW;AAC1E;AACA;AACA;AACA;AACA,qCAAqC;AACrC;AACA;AACA,qBAAqB;AACrB;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,uCAAuC,QAAQ,SAAS,SAAS;AACjE,qBAAqB;AACrB;AACA;AACA,qBAAqB;AACrB;AACA,yCAAyC,WAAW,WAAW;AAC/D,qBAAqB;AACrB;AACA,2CAA2C,OAAO,SAAS,0EAA0E,YAAY;AACjJ,qBAAqB;AACrB;AACA;AACA;AACA;AACA,sDAAsD,eAAe;AACrE;AACA,6DAA6D,yCAAe,uCAAuC,SAAS,sEAAsE,yCAAe;AACjN,0DAA0D,cAAc,YAAY,kBAAkB;AACtG;AACA;AACA,mDAAmD,YAAY,WAAW;AAC1E;AACA;AACA;AACA;AACA,qCAAqC;AACrC;AACA;AACA,qBAAqB;AACrB;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,uCAAuC,QAAQ,SAAS,SAAS;AACjE,qBAAqB;AACrB;AACA;AACA,qBAAqB;AACrB;AACA,yCAAyC,WAAW,WAAW;AAC/D,qBAAqB;AACrB;AACA,2CAA2C,OAAO,SAAS,0EAA0E,YAAY;AACjJ,qBAAqB;AACrB;AACA;AACA;AACA;AACA,sDAAsD,eAAe;AACrE;AACA,8DAA8D,yCAAe,uCAAuC,SAAS,sEAAsE,yCAAe;AAClN;AACA,8DAA8D,mBAAmB;AACjF;AACA;AACA,8DAA8D,cAAc,YAAY,kBAAkB;AAC1G;AACA;AACA;AACA,mDAAmD,YAAY,WAAW;AAC1E;AACA;AACA;AACA;AACA,qCAAqC;AACrC;AACA;AACA,qBAAqB;AACrB;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,uCAAuC,QAAQ,SAAS,SAAS;AACjE,qBAAqB;AACrB;AACA;AACA,qBAAqB;AACrB;AACA,yCAAyC,WAAW,WAAW;AAC/D,qBAAqB;AACrB;AACA,2CAA2C,OAAO,SAAS,0EAA0E,YAAY;AACjJ,qBAAqB;AACrB;AACA;AACA;AACA;AACA,sDAAsD,eAAe;AACrE;AACA,8DAA8D,yCAAe,uCAAuC,SAAS,sEAAsE,yCAAe;AAClN;AACA,8DAA8D,mBAAmB;AACjF;AACA;AACA,8DAA8D,cAAc,YAAY,kBAAkB;AAC1G;AACA;AACA;AACA,mDAAmD,YAAY,WAAW;AAC1E;AACA;AACA;AACA;AACA,qCAAqC;AACrC;AACA;AACA,qBAAqB;AACrB;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,SAAS,yBAAyB,wBAAO,cAAc,SAAS;AACvF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,yCAAe;AACpC;AACA,yBAAyB,wBAAO,0BAA0B,wBAAO;AACjE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,wBAAO,cAAc,wBAAO;AACpC,QAAQ,wBAAO;AACf;AACA;AACA,YAAY,kBAAkB;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,gCAAgC;AAC5D,oBAAoB,wBAAO,cAAc,SAAS;AAClD;AACA;AACA;AACA;AACA;AACA,+CAA+C;AAC/C,0DAA0D;AAC1D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,SAAS;AACtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB,QAAQ;AAC1B;AACA;AACA,8BAA8B,SAAS;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,mCAAmC;AAC/D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,uBAAuB;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,uBAAuB;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,qCAAqC;AACjE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gDAAgD;AAChD;AACA,gEAAgE;AAChE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,8BAA8B;AAC1D;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gDAAgD;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C;AAC9C;AACA;AACA,4BAA4B,8BAA8B;AAC1D;AACA;AACA,gDAAgD;AAChD;AACA;AACA;AACA;AACA;AACA,wCAAwC;AACxC;AACA,4CAA4C;AAC5C;AACA;AACA;AACA;AACA;AACA,2BAA2B,SAAS;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,yBAAyB;AACrD;AACA;AACA;AACA;AACA,yCAAyC;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,SAAS;AACzB;AACA;AACA,wCAAwC,iBAAiB;AACzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sGAAsG,wBAAO;AAC7G;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0CAA0C,yCAAe;AACzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6GAA6G,KAAK,yCAAe,oCAAoC,yCAAe;AACpL;AACA;AACA;AACA,+GAA+G,KAAK,yCAAe,oCAAoC,yCAAe;AACtL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gDAAgD,gCAAgC;AAChF;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iFAAiF;AACjF;AACA;AACA;AACA,gDAAgD,mBAAmB;AACnE;AACA;AACA,iEAAiE;AACjE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oDAAoD,qCAAqC;AACzF;AACA;AACA;AACA;AACA,kEAAkE;AAClE;AACA;AACA,yDAAyD;AACzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,yCAAe;AACnD;AACA;AACA;AACA,wCAAwC,uBAAuB;AAC/D;AACA;AACA;AACA,oEAAoE;AACpE;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,yCAAe;AACvC;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,kBAAkB;AAClC;AACA;AACA,gBAAgB,kBAAkB;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gDAAgD,kBAAkB;AAClE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,kBAAkB;AACtB,wBAAwB,0CAA0C;AAClE;AACA;AACA,gBAAgB,aAAa,0CAA0C,0EAA0E;AACjJ;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,wBAAO;AACP,wBAAO;AACP;;AC7zCoD;AACE;AACJ;AACQ;AACgB;AACZ;AACD;AAC7D,IAAI,iCAAc,MAAM,sDAAsD,IAAI,gCAAgC,IAAI,8BAA8B,IAAI,iCAAiC,IAAI,UAAU;AACvM,IAAI,6BAAU;AACd,SAAS,oBAAC,MAAM,oBAAC,GAAG,iCAAc,SAAS,oBAAC;AAC5C,IAAI,6BAAU,UAAU,YAAY,CAAC,iCAAc,CAAC,oBAAC,KAAK,iCAAc,CAAC,oBAAC,KAAK,iCAAc,CAAC,oBAAC;AAC/F;AACO,2BAA2B,oCAAoC,WAAW,iCAAiC,6BAAU,gBAAgB,uBAAI;AAChJ,SAAS,uBAAI;AACb;AACA,YAAY,wBAAO;AACnB,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,yCAAe;AAC3B;AACA;AACA;AACA,oBAAoB,wBAAO;AAC3B,qBAAqB,SAAS;AAC9B;AACA;AACA;AACA,qBAAqB,SAAS;AAC9B;AACA;AACA;AACA,qBAAqB,SAAS;AAC9B;AACA;AACA;AACA,qBAAqB,SAAS;AAC9B;AACA;AACA;AACA,qBAAqB,SAAS;AAC9B;AACA;AACA;AACA,qBAAqB,SAAS;AAC9B;AACA;AACA;AACA,qBAAqB,SAAS;AAC9B;AACA;AACA;AACA,qBAAqB,SAAS;AAC9B;AACA;AACA;AACA,qBAAqB,SAAS;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,wBAAO,cAAc,SAAS;AAC9C,gBAAgB,SAAS;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,yCAAe;AACvC,6CAA6C,yCAAe;AAC5D;AACA;AACA,oCAAoC,wBAAwB;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,wBAAO;AAC/B,uCAAuC,wBAAO;AAC9C;AACA,wBAAwB,wBAAO;AAC/B,0CAA0C,wBAAO;AACjD;AACA,wCAAwC,yCAAe,2CAA2C,yCAAe;AACjH;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA,2CAA2C,yCAAe;AAC1D,4CAA4C,yCAAe;AAC3D;AACA;AACA;AACA;AACA;AACA,wBAAwB,yCAAe;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,yCAAe;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,wBAAO;AAC/B,6CAA6C,wBAAO;AACpD;AACA,wBAAwB,wBAAO;AAC/B,gDAAgD,wBAAO;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACjNoD;AACE;AACJ;AACQ;AACgB;AACZ;AACD;AAC7D,IAAI,gCAAc,MAAM,oDAAoD,IAAI,gCAAgC,IAAI,8BAA8B,IAAI,iCAAiC,IAAI,UAAU;AACrM,IAAI,4BAAU;AACd,SAAS,mBAAC,MAAM,mBAAC,GAAG,gCAAc,SAAS,mBAAC;AAC5C,IAAI,4BAAU,UAAU,YAAY,CAAC,gCAAc,CAAC,mBAAC,KAAK,gCAAc,CAAC,mBAAC,KAAK,gCAAc,CAAC,mBAAC;AAC/F;AACO,0BAA0B,mCAAmC,WAAW,iCAAiC,4BAAU,gBAAgB,sBAAI;AAC9I,SAAS,sBAAI;AACb;AACA;AACA;AACA,YAAY,wBAAO;AACnB,aAAa,QAAQ;AACrB;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,yCAAe,uHAAuH;AAC9I;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,kBAAkB,wBAAO,mCAAmC,wBAAO,4BAA4B,wBAAO,sCAAsC,wBAAO;AACnJ,SAAS;AACT;AACA,mBAAmB,wBAAO;AAC1B;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,wBAAO;AAC3B,qBAAqB,SAAS;AAC9B;AACA;AACA;AACA,yBAAyB;AACzB;AACA;AACA,qBAAqB,SAAS;AAC9B,qBAAqB,SAAS;AAC9B;AACA;AACA;AACA,yBAAyB;AACzB;AACA;AACA,qBAAqB,SAAS;AAC9B;AACA,wBAAwB,SAAS;AACjC;AACA;AACA;AACA,6BAA6B;AAC7B,yBAAyB;AACzB;AACA;AACA,qBAAqB,SAAS;AAC9B;AACA,wBAAwB,SAAS;AACjC;AACA;AACA,gDAAgD,qBAAqB;AACrE;AACA;AACA;AACA;AACA,qCAAqC;AACrC;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B;AAC7B,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,kCAAkC;AACtE;AACA;AACA;AACA;AACA;AACA,6BAA6B;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA,YAAY,SAAS;AACrB;AACA;AACA,oCAAoC,qBAAqB;AACzD;AACA;AACA;AACA;AACA,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AC/JsD;AACJ;AACQ;AACI;AACD;AAC7D,IAAI,sBAAc,MAAM,4BAA4B,IAAI,4CAA4C;AACpG,IAAI,kBAAU;AACd,SAAS,SAAC,MAAM,SAAC,GAAG,sBAAc,SAAS,SAAC;AAC5C,IAAI,kBAAU,UAAU,YAAY,CAAC,sBAAc,CAAC,SAAC,KAAK,sBAAc,CAAC,SAAC,KAAK,sBAAc,CAAC,SAAC;AAC/F;AACO,gBAAgB,yBAAyB,WAAW,iCAAiC,kBAAU,gBAAgB,YAAI;AAC1H,SAAS,YAAI;AACb;AACA;AACA,QAAQ,SAAS;AACjB;AACA;AACA;AACA,uBAAuB,wBAAO;AAC9B;AACA;AACA,4BAA4B,gCAAgC;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,YAAY,wBAAO,cAAc,SAAS;AAC1C;AACA;AACA,KAAK;AACL;AACA;AACA;;ACtCO;AACP,4BAA4B,CAAO;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AChBoD;AACE;AACJ;AACF;AACU;AACgB;AACZ;AACD;AACC;AACL;AACzD,IAAI,uBAAc,MAAM,4DAA4D,IAAI,gCAAgC,IAAI,8BAA8B,IAAI,iCAAiC,IAAI,UAAU;AAC7M,IAAI,mBAAU;AACd,SAAS,UAAC,MAAM,UAAC,GAAG,uBAAc,SAAS,UAAC;AAC5C,IAAI,mBAAU,UAAU,YAAY,CAAC,uBAAc,CAAC,UAAC,KAAK,uBAAc,CAAC,UAAC,KAAK,uBAAc,CAAC,UAAC;AAC/F;AACO,iBAAiB,0BAA0B,WAAW,iCAAiC,mBAAU,gBAAgB,aAAI;AAC5H,SAAS,aAAI;AACb;AACA;AACA;AACA,YAAY,wBAAO;AACnB,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,8BAA8B;AACvC,QAAQ,YAAY;AACpB,QAAQ,yCAAe;AACvB;AACA;AACA;AACA,gBAAgB,yCAAe,6CAA6C,yCAAe;AAC3F,mCAAmC;AACnC;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,SAAS;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qFAAqF;AACrF;AACA;AACA;AACA;AACA,0DAA0D,8BAA8B;AACxF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,0CAA0C;AAClF;AACA;AACA,gDAAgD,4GAA4G;AAC5J;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,yCAAe,yEAAyE,SAAS;AACrH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,SAAS;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,wBAAwB;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C,IAAI,aAAa,SAAS;AACtE,wEAAwE,aAAa;AACrF;AACA;AACA;AACA;AACA,4CAA4C,wEAAwE;AACpH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,oBAAoB,wBAAO;AAC3B,kCAAkC,wBAAO;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kDAAkD,kBAAkB;AACpE;AACA;AACA,yCAAyC,kBAAkB;AAC3D;AACA;AACA;AACA;AACA,gBAAgB,wBAAO,cAAc,SAAS;AAC9C;AACA;AACA,qBAAqB,wBAAO,cAAc,SAAS;AACnD;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;;ACvNoD;AACE;AACJ;AACQ;AACgB;AACZ;AACD;AAC7D,IAAI,0BAAc,MAAM,4DAA4D,IAAI,gCAAgC,IAAI,8BAA8B,IAAI,iCAAiC,IAAI,UAAU;AAC7M,IAAI,sBAAU;AACd,SAAS,aAAC,MAAM,aAAC,GAAG,0BAAc,SAAS,aAAC;AAC5C,IAAI,sBAAU,UAAU,YAAY,CAAC,0BAAc,CAAC,aAAC,KAAK,0BAAc,CAAC,aAAC,KAAK,0BAAc,CAAC,aAAC;AAC/F;AACO,eAAe,wBAAwB,WAAW,iCAAiC,sBAAU,gBAAgB,gBAAI;AACxH,SAAS,gBAAI;AACb;AACA,YAAY,wBAAO;AACnB,aAAa,QAAQ;AACrB;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA,iCAAiC;AACjC,+BAA+B;AAC/B;AACA;AACA,oBAAoB,wBAAO;AAC3B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,SAAS;AACjB;AACA;AACA;AACA,oBAAoB,wBAAO;AAC3B,qBAAqB,QAAQ;AAC7B;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC,wBAAO;AAC1C,yBAAyB;AACzB,qBAAqB;AACrB;AACA;AACA,qBAAqB,QAAQ;AAC7B;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA,qBAAqB,QAAQ;AAC7B;AACA;AACA;AACA,+BAA+B,wBAAO;AACtC,qBAAqB;AACrB;AACA;AACA,qBAAqB,QAAQ;AAC7B;AACA;AACA;AACA,+BAA+B,wBAAO;AACtC,qBAAqB;AACrB;AACA;AACA;AACA,gBAAgB,wBAAO,cAAc,SAAS;AAC9C,wBAAwB,wBAAO;AAC/B,yBAAyB,QAAQ;AACjC;AACA;AACA;AACA;AACA,mCAAmC,wBAAO;AAC1C,yBAAyB;AACzB;AACA;AACA,yBAAyB,QAAQ;AACjC;AACA;AACA;AACA;AACA,mCAAmC,wBAAO;AAC1C,yBAAyB;AACzB;AACA;AACA;AACA;AACA,qBAAqB,wBAAO,cAAc,SAAS;AACnD;AACA;AACA,iBAAiB;AACjB;AACA,qBAAqB,wBAAO,cAAc,SAAS;AACnD,wBAAwB,wBAAO;AAC/B,yBAAyB,QAAQ;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B;AAC7B;AACA;AACA;AACA;AACA;AACA,qBAAqB,wBAAO,cAAc,SAAS;AACnD;AACA;AACA,iBAAiB;AACjB;AACA,qBAAqB,wBAAO,cAAc,SAAS;AACnD,gBAAgB,SAAS;AACzB;AACA;AACA;AACA;AACA;AACA,6BAA6B;AAC7B,qBAAqB;AACrB,4BAA4B,wBAAO;AACnC,6BAA6B,QAAQ;AACrC;AACA;AACA;AACA;AACA;AACA,uCAAuC,wBAAO;AAC9C,6BAA6B;AAC7B;AACA;AACA;AACA;AACA;AACA,uCAAuC,wBAAO;AAC9C,6BAA6B;AAC7B;AACA;AACA;AACA;AACA;AACA,iCAAiC;AACjC;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA,qBAAqB,wBAAO,cAAc,SAAS;AACnD;AACA,oBAAoB,SAAS;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,qBAAqB;AAC7D;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB;AACzB,gCAAgC,wBAAO;AACvC,iCAAiC,QAAQ;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2CAA2C,wBAAO;AAClD,iCAAiC;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+CAA+C,wBAAO;AACtD,qCAAqC;AACrC,iCAAiC;AACjC;AACA;AACA,iCAAiC,QAAQ;AACzC;AACA;AACA;AACA,iCAAiC;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2CAA2C,wBAAO;AAClD,iCAAiC;AACjC;AACA;AACA;AACA,qBAAqB;AACrB,iBAAiB;AACjB;AACA,qBAAqB,wBAAO,cAAc,SAAS;AACnD,gBAAgB,SAAS;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,qBAAqB;AACzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB;AACzB;AACA;AACA;AACA,wCAAwC,mEAAmE;AAC3G;AACA,4CAA4C,6DAA6D;AACzG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,2BAA2B;AAC/D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,wBAAO;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA,qDAAqD,wBAAO;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qCAAqC;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wEAAwE,wBAAO;AAC/E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+CAA+C,wBAAO;AACtD,+CAA+C,wBAAO;AACtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,wBAAO;AACnC,6BAA6B,QAAQ;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B;AAC7B;AACA;AACA;AACA,6BAA6B;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC;AACjC;AACA,4BAA4B,yCAAe;AAC3C;AACA;AACA,6BAA6B,QAAQ;AACrC;AACA;AACA,4BAA4B,yCAAe;AAC3C;AACA;AACA,6BAA6B,QAAQ;AACrC;AACA;AACA;AACA;AACA,6BAA6B,QAAQ;AACrC;AACA;AACA;AACA;AACA,6BAA6B,QAAQ;AACrC;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA,qBAAqB,wBAAO,cAAc,SAAS;AACnD,wBAAwB,wBAAO;AAC/B,yBAAyB,QAAQ;AACjC;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC,wBAAO;AAC9C,6BAA6B;AAC7B,yBAAyB;AACzB;AACA;AACA;AACA;AACA,qBAAqB,wBAAO,cAAc,SAAS;AACnD;AACA,sCAAsC;AACtC;AACA,4BAA4B,yCAAe;AAC3C,0BAA0B,yCAAe;AACzC;AACA;AACA;AACA;AACA,+BAA+B,wBAAO;AACtC;AACA;AACA,+BAA+B,wBAAO;AACtC;AACA,qBAAqB;AACrB;AACA;AACA;AACA,wBAAwB,wBAAO;AAC/B,yBAAyB,QAAQ;AACjC;AACA;AACA;AACA;AACA,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA,wBAAwB,wBAAO;AAC/B,yBAAyB,QAAQ;AACjC;AACA;AACA;AACA;AACA,mCAAmC,wBAAO;AAC1C,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA,wBAAwB,wBAAO;AAC/B,yBAAyB,QAAQ;AACjC;AACA;AACA;AACA;AACA,mCAAmC,wBAAO;AAC1C,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA,wBAAwB,wBAAO;AAC/B,yBAAyB,QAAQ;AACjC;AACA;AACA;AACA;AACA,mCAAmC,wBAAO;AAC1C,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA,wBAAwB,wBAAO;AAC/B,yBAAyB,QAAQ;AACjC;AACA;AACA;AACA;AACA,mCAAmC,wBAAO;AAC1C,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA,gBAAgB,SAAS;AACzB,+CAA+C;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC,wBAAO;AAC1C;AACA,yBAAyB;AACzB;AACA,iBAAiB;AACjB;AACA;AACA,oBAAoB,wBAAO,oBAAoB,QAAQ;AACvD;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA,gBAAgB,SAAS;AACzB,4BAA4B,wBAAO;AACnC,6BAA6B,QAAQ;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC,wBAAO;AAC9C,6BAA6B;AAC7B;AACA;AACA,6BAA6B,QAAQ;AACrC;AACA;AACA;AACA;AACA,uCAAuC,wBAAO;AAC9C,6BAA6B;AAC7B;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,wDAAwD;AAC5F;AACA;AACA;AACA;AACA,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB,4BAA4B,wBAAO;AACnC,6BAA6B,QAAQ;AACrC;AACA;AACA;AACA;AACA,6BAA6B;AAC7B;AACA;AACA;AACA;AACA;AACA,iCAAiC;AACjC;AACA;AACA;AACA,6BAA6B,QAAQ;AACrC;AACA;AACA;AACA,uCAAuC,wBAAO;AAC9C,6BAA6B;AAC7B;AACA;AACA,6BAA6B,QAAQ;AACrC;AACA;AACA;AACA,uCAAuC,wBAAO;AAC9C,6BAA6B;AAC7B;AACA;AACA;AACA;AACA,aAAa;AACb,gBAAgB,yCAAe,6CAA6C,yCAAe;AAC3F;AACA;AACA;AACA;AACA,2BAA2B,wBAAO;AAClC,iBAAiB;AACjB;AACA,YAAY,yCAAe;AAC3B;AACA;AACA;AACA,iBAAiB;AACjB,aAAa;AACb;AACA,gBAAgB,yCAAe;AAC/B;AACA;AACA;AACA;AACA;AACA,+BAA+B,wBAAO;AACtC,qBAAqB;AACrB,iBAAiB;AACjB;AACA;AACA,gBAAgB,yCAAe;AAC/B;AACA;AACA;AACA;AACA;AACA,+BAA+B,wBAAO;AACtC,qBAAqB;AACrB,iBAAiB;AACjB;AACA;AACA;AACA;AACA,gCAAgC,8BAA8B;AAC9D;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB,kDAAkD,iDAAiD;AACnG;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,QAAQ,yCAAe;AACvB;AACA,SAAS;AACT;AACA;AACA;AACA;;AC1yBoD;AACE;AACJ;AACQ;AACgB;AACZ;AACD;AAC7D,IAAI,wBAAc,MAAM,uCAAuC,IAAI,gCAAgC,IAAI,8BAA8B,IAAI,iCAAiC,IAAI,UAAU;AACxL,IAAI,oBAAU;AACd,SAAS,WAAC,MAAM,WAAC,GAAG,wBAAc,SAAS,WAAC;AAC5C,IAAI,oBAAU,UAAU,YAAY,CAAC,wBAAc,CAAC,WAAC,KAAK,wBAAc,CAAC,WAAC,KAAK,wBAAc,CAAC,WAAC;AAC/F;AACO,kBAAkB,2BAA2B,WAAW,iCAAiC,oBAAU,gBAAgB,cAAI;AAC9H,SAAS,cAAI;AACb;AACA,YAAY,wBAAO;AACnB,aAAa,QAAQ;AACrB,6CAA6C,wBAAO;AACpD;AACA;AACA,aAAa,QAAQ;AACrB,6CAA6C,wBAAO;AACpD;AACA;AACA;AACA;AACA,iDAAiD;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,uBAAuB;AACnD;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA,oBAAoB,wBAAO;AAC3B,qEAAqE,wBAAO;AAC5E;AACA;AACA,gCAAgC,mBAAmB;AACnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,wBAAO;AAC/B,+CAA+C,wBAAO;AACtD;AACA,wBAAwB,wBAAO;AAC/B,gDAAgD,wBAAO;AACvD;AACA,yDAAyD,wBAAO,+BAA+B,wBAAO;AACtG;AACA;AACA,wBAAwB,wBAAO,cAAc,SAAS;AACtD;AACA;AACA;AACA,6BAA6B,wBAAO,cAAc,SAAS;AAC3D;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,SAAS;AACrC,sDAAsD,SAAS;AAC/D;AACA,4BAA4B,SAAS;AACrC,wDAAwD,SAAS;AACjE;AACA;AACA;AACA;AACA,4CAA4C,oDAAoD;AAChG;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,wBAAO,cAAc,SAAS;AAC3D;AACA;AACA;AACA,4BAA4B,SAAS;AACrC,oDAAoD,SAAS;AAC7D;AACA,4BAA4B,SAAS;AACrC,sDAAsD,SAAS;AAC/D;AACA;AACA;AACA;AACA,4CAA4C,oDAAoD;AAChG;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,wBAAO,cAAc,SAAS;AAC3D;AACA;AACA;AACA,4BAA4B,SAAS;AACrC,sDAAsD,SAAS;AAC/D;AACA;AACA,6BAA6B,wBAAO,cAAc,SAAS;AAC3D;AACA;AACA;AACA,4BAA4B,SAAS;AACrC,sDAAsD,SAAS;AAC/D;AACA,4BAA4B,SAAS;AACrC,uDAAuD,SAAS;AAChE;AACA,4BAA4B,SAAS;AACrC,kDAAkD,SAAS;AAC3D;AACA,4BAA4B,SAAS;AACrC,uDAAuD,SAAS;AAChE;AACA,4BAA4B,SAAS;AACrC,wDAAwD,SAAS;AACjE;AACA;AACA,6BAA6B,wBAAO,cAAc,SAAS;AAC3D;AACA;AACA;AACA;AACA,6BAA6B,wBAAO,cAAc,SAAS;AAC3D;AACA;AACA;AACA;AACA,6BAA6B,wBAAO,cAAc,SAAS;AAC3D;AACA;AACA;AACA,6BAA6B,wBAAO,cAAc,SAAS;AAC3D;AACA;AACA;AACA,6BAA6B,wBAAO,cAAc,SAAS;AAC3D;AACA;AACA,mDAAmD,yCAAe;AAClE,iDAAiD,yCAAe;AAChE;AACA,6BAA6B,wBAAO,cAAc,SAAS,WAAW,wBAAO,cAAc,SAAS;AACpG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB;AACzB;AACA;AACA;AACA,SAAS;AACT;AACA,IAAI,yCAAe;AACnB;AACA,KAAK;AACL;AACA;AACA;;AC5NkD;AACY;AACD;AAC7D,IAAI,yBAAc,MAAM,oDAAoD,IAAI,4BAA4B,IAAI,4CAA4C;AAC5J,IAAI,qBAAU;AACd,SAAS,YAAC,MAAM,YAAC,GAAG,yBAAc,SAAS,YAAC;AAC5C,IAAI,qBAAU,UAAU,YAAY,CAAC,yBAAc,CAAC,YAAC,KAAK,yBAAc,CAAC,YAAC,KAAK,yBAAc,CAAC,YAAC;AAC/F;AACO,mBAAmB,4BAA4B,WAAW,iCAAiC,qBAAU,gBAAgB,eAAI;AAChI,SAAS,eAAI;AACb;AACA,QAAQ,SAAS;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,wBAAwB;AACxD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;AACL;AACA;AACA;;AC/CoD;AACE;AACJ;AACQ;AACgB;AACZ;AACD;AAC7D,IAAI,uBAAc,MAAM,+BAA+B,IAAI,8BAA8B,IAAI,iCAAiC,IAAI,UAAU;AAC5I,IAAI,mBAAU;AACd,SAAS,UAAC,MAAM,UAAC,GAAG,uBAAc,SAAS,UAAC;AAC5C,IAAI,mBAAU,UAAU,YAAY,CAAC,uBAAc,CAAC,UAAC,KAAK,uBAAc,CAAC,UAAC,KAAK,uBAAc,CAAC,UAAC;AAC/F;AACO,iBAAiB,0BAA0B,WAAW,iCAAiC,mBAAU,gBAAgB,aAAI;AAC5H,SAAS,aAAI;AACb;AACA,YAAY,wBAAO;AACnB,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,SAAS;AACjB,6BAA6B,wBAAO;AACpC;AACA;AACA,gCAAgC,wBAAwB;AACxD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8DAA8D,6CAA6C;AAC3G,aAAa,KAAK,QAAQ,MAAM,WAAW,MAAM,QAAQ;AACzD,SAAS;AACT;AACA;AACA,QAAQ,yCAAe;AACvB,gBAAgB,wBAAO,cAAc,SAAS;AAC9C;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;;AClDoD;AACF;AACQ;AACgB;AACZ;AACD;AAC7D,IAAI,uBAAc,MAAM,4DAA4D,IAAI,mCAAmC,IAAI,sCAAsC,IAAI,gCAAgC,IAAI,iCAAiC,IAAI,UAAU;AAC5P,IAAI,mBAAU;AACd,SAAS,UAAC,MAAM,UAAC,GAAG,uBAAc,SAAS,UAAC;AAC5C,IAAI,mBAAU,UAAU,YAAY,CAAC,uBAAc,CAAC,UAAC,KAAK,uBAAc,CAAC,UAAC,KAAK,uBAAc,CAAC,UAAC;AAC/F;AACO,iBAAiB,0BAA0B,WAAW,iCAAiC,mBAAU,gBAAgB,aAAI;AAC5H,SAAS,aAAI;AACb;AACA,YAAY,wBAAO,oBAAoB,wBAAO;AAC9C,aAAa,QAAQ;AACrB;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA;AACA,6BAA6B,SAAS;AACtC,QAAQ,yCAAe;AACvB;AACA;AACA;AACA;;AC1CoD;AACE;AACJ;AACQ;AACgB;AACZ;AACD;AAC7D,IAAI,uBAAc,MAAM,sCAAsC,IAAI,gCAAgC,IAAI,+CAA+C,IAAI,8BAA8B,IAAI,iCAAiC;AAC5N,IAAI,mBAAU;AACd,SAAS,UAAC,MAAM,UAAC,GAAG,uBAAc,SAAS,UAAC;AAC5C,IAAI,mBAAU,UAAU,YAAY,CAAC,uBAAc,CAAC,UAAC,KAAK,uBAAc,CAAC,UAAC,KAAK,uBAAc,CAAC,UAAC;AAC/F;AACO,iBAAiB,0BAA0B,WAAW,iCAAiC,mBAAU,gBAAgB,aAAI;AAC5H,SAAS,aAAI;AACb;AACA;AACA;AACA,YAAY,wBAAO;AACnB,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,wBAAO;AAC7B;AACA;AACA;AACA;AACA,sCAAsC,SAAS;AAC/C,wCAAwC,SAAS;AACjD,sCAAsC,SAAS;AAC/C,kDAAkD,SAAS;AAC3D,sCAAsC,SAAS;AAC/C,iCAAiC,SAAS;AAC1C,mCAAmC,SAAS;AAC5C,gCAAgC,SAAS;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,gCAAgC;AAChE;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,SAAS;AACvC,8BAA8B,wBAAO;AACrC,6BAA6B,wBAAO;AACpC,4BAA4B,wBAAO;AACnC;AACA;AACA,oBAAoB,wBAAO;AAC3B,qBAAqB,SAAS;AAC9B,+BAA+B,yCAAe;AAC9C,oCAAoC,SAAS;AAC7C,kCAAkC,SAAS;AAC3C;AACA,wCAAwC,SAAS;AACjD;AACA,sCAAsC,SAAS;AAC/C,0CAA0C,SAAS;AACnD;AACA,qBAAqB;AACrB;AACA;AACA,qBAAqB,SAAS;AAC9B,qBAAqB,SAAS;AAC9B,qBAAqB,SAAS;AAC9B,qBAAqB,SAAS;AAC9B,qBAAqB,SAAS;AAC9B,qBAAqB,SAAS;AAC9B,qBAAqB,SAAS;AAC9B,+BAA+B,yCAAe;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,SAAS;AAC3C;AACA;AACA,qBAAqB;AACrB;AACA;AACA,qBAAqB,SAAS;AAC9B,+BAA+B,yCAAe;AAC9C;AACA,mCAAmC,SAAS;AAC5C,qCAAqC,SAAS;AAC9C,mCAAmC,SAAS;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,SAAS;AAC3C;AACA;AACA,mCAAmC,SAAS;AAC5C;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kEAAkE,4CAA4C;AAC9G;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA,gBAAgB,SAAS;AACzB;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,SAAS;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA,+EAA+E;AAC/E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,8BAA8B,GAAG,yBAAyB;AACtF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B;AAC/B;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA,+EAA+E;AAC/E;AACA;AACA;AACA;AACA,QAAQ,yCAAe,sDAAsD,wBAAO;AACpF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,wBAAO,cAAc,SAAS;AACtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA,gBAAgB,yCAAe;AAC/B;AACA,SAAS;AACT;AACA;AACA;AACA;;ACzUoD;AACE;AACJ;AACQ;AACgB;AACZ;AACD;AACmB;AAChF,IAAI,uBAAc,MAAM,sDAAsD,IAAI,qCAAqC,IAAI,gCAAgC,IAAI,8BAA8B,IAAI,iCAAiC;AAClO,IAAI,mBAAU;AACd,SAAS,UAAC,MAAM,UAAC,GAAG,uBAAc,SAAS,UAAC;AAC5C,IAAI,mBAAU,UAAU,YAAY,CAAC,uBAAc,CAAC,UAAC,KAAK,uBAAc,CAAC,UAAC,KAAK,uBAAc,CAAC,UAAC;AAC/F;AACO,iBAAiB,0BAA0B,WAAW,iCAAiC,mBAAU,gBAAgB,aAAI;AAC5H,SAAS,aAAI;AACb;AACA;AACA,YAAY,wBAAO;AACnB,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,wBAAO;AACnB,4DAA4D,0BAA0B,wBAAO,wBAAwB;AACrH;AACA;AACA;AACA,4DAA4D,wBAAwB,SAAS,0CAA0C;AACvI;AACA;AACA,wBAAwB,yBAAyB;AACjD;AACA;AACA;AACA;AACA,YAAY,yCAAe,iIAAiI,6BAA6B;AACzL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,wBAAO;AACvB,iBAAiB,SAAS;AAC1B;AACA;AACA;AACA;AACA,iBAAiB,SAAS;AAC1B;AACA;AACA,oEAAoE,2BAA2B,SAAS,4BAA4B;AACpI,6DAA6D,SAAS,4BAA4B,SAAS;AAC3G;AACA;AACA,iBAAiB,SAAS;AAC1B;AACA;AACA,oEAAoE,2BAA2B,SAAS,0BAA0B;AAClI,6DAA6D,SAAS,0BAA0B,SAAS;AACzG;AACA;AACA,iBAAiB,SAAS;AAC1B;AACA,kCAAkC,SAAS;AAC3C,+BAA+B,SAAS;AACxC;AACA,0DAA0D,0CAA0C;AACpG;AACA,wEAAwE,iCAAiC;AACzG;AACA;AACA;AACA,iBAAiB,SAAS;AAC1B;AACA;AACA;AACA,4BAA4B,SAAS;AACrC,kCAAkC,SAAS;AAC3C;AACA;AACA,0CAA0C,SAAS;AACnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iDAAiD,SAAS;AAC1D;AACA,iCAAiC;AACjC;AACA;AACA;AACA,gDAAgD,uBAAuB;AACvE;AACA;AACA;AACA;AACA;AACA;AACA,mDAAmD,+BAA+B,IAAI,yCAAyC,IAAI,kDAAkD,IAAI,sDAAsD,IAAI,+CAA+C,IAAI,mEAAmE;AACzW;AACA;AACA;AACA;AACA,wDAAwD,sEAAsE;AAC9H;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iDAAiD,SAAS;AAC1D,iCAAiC;AACjC,wEAAwE,4BAA4B,SAAS,6BAA6B;AAC1I;AACA;AACA;AACA,iBAAiB,SAAS;AAC1B;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA,uCAAuC,SAAS;AAChD;AACA,4CAA4C,qBAAqB;AACjE;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA,iBAAiB,SAAS;AAC1B;AACA;AACA,kCAAkC,SAAS;AAC3C;AACA,mCAAmC,SAAS;AAC5C;AACA,wCAAwC,qBAAqB;AAC7D;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B;AAC7B;AACA;AACA;AACA,oBAAoB,kBAAkB;AACtC;AACA;AACA,iBAAiB,SAAS;AAC1B;AACA;AACA;AACA;AACA,iBAAiB,SAAS;AAC1B;AACA;AACA;AACA;AACA,iBAAiB,SAAS;AAC1B;AACA;AACA,gCAAgC,SAAS;AACzC;AACA;AACA;AACA,oCAAoC,SAAS;AAC7C,iDAAiD;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wEAAwE,6BAA6B;AACrG;AACA;AACA;AACA;AACA,iBAAiB,SAAS;AAC1B;AACA;AACA,oEAAoE,wBAAwB,SAAS,yCAAyC;AAC9I;AACA;AACA,iBAAiB,SAAS;AAC1B;AACA;AACA;AACA;AACA,iBAAiB,SAAS;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA,4DAA4D,8CAA8C;AAC1G;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,SAAS;AAC1B;AACA;AACA,0BAA0B,SAAS;AACnC;AACA;AACA;AACA;AACA,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC,4DAA4D;AACnG;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC,SAAS;AAC1C;AACA,iBAAiB;AACjB,4BAA4B,wBAAO;AACnC,uCAAuC,QAAQ;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,gCAAgC;AAC5D;AACA,gEAAgE,mDAAmD;AACnH;AACA;AACA;AACA;AACA;AACA,wDAAwD,iCAAiC;AACzF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,kCAAkC;AAClE;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB,qCAAqC,6FAA6F;AAClI;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4DAA4D,mCAAmC;AAC/F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,6BAA6B;AACzD,oBAAoB,wBAAO,cAAc,SAAS;AAClD;AACA;AACA;AACA;AACA;AACA;AACA,gFAAgF,8CAA8C;AAC9H;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,yCAAe,+CAA+C,wBAAO,oBAAoB,QAAQ,mBAAmB,wBAAO,oBAAoB,QAAQ,gBAAgB,wBAAO,oBAAoB,QAAQ;AAClN,QAAQ,kBAAkB,kDAAkD,yCAAe;AAC3F,QAAQ,kBAAkB,6BAA6B,kBAAkB;AACzE,QAAQ,wBAAO,4BAA4B,wBAAO;AAClD;AACA;AACA;AACA,wBAAO;AACP,wBAAO;AACP;;AClaO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACfsD;AACJ;AACQ;AACI;AACD;AACA;AAC7D,IAAI,yBAAc,MAAM,sDAAsD,IAAI,gCAAgC,IAAI,8BAA8B,IAAI,iCAAiC;AACzL,IAAI,qBAAU;AACd,SAAS,YAAC,MAAM,YAAC,GAAG,yBAAc,SAAS,YAAC;AAC5C,IAAI,qBAAU,UAAU,YAAY,CAAC,yBAAc,CAAC,YAAC,KAAK,yBAAc,CAAC,YAAC,KAAK,yBAAc,CAAC,YAAC;AAC/F;AACO,mBAAmB,4BAA4B,WAAW,iCAAiC,qBAAU,gBAAgB,eAAI;AAChI,SAAS,eAAI;AACb,uBAAuB,wBAAO;AAC9B;AACA;AACA,gBAAgB,wBAAO,cAAc,SAAS;AAC9C;AACA;AACA;AACA;AACA,YAAY,SAAS;AACrB;AACA,gCAAgC,qBAAqB;AACrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA,aAAa;AACb;AACA,QAAQ,cAAc;AACtB;AACA;AACA;AACA;AACA;;AC1DO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yDAAyD,iEAAiE;AAC1H;AACA;AACA;AACA;;ACjBoD;AACE;AACJ;AACQ;AACI;AACD;AACmB;AACvB;AACzD,IAAI,uBAAc,MAAM,uCAAuC,IAAI,gCAAgC,IAAI,8BAA8B,IAAI,iCAAiC,IAAI,UAAU;AACxL,IAAI,mBAAU;AACd,SAAS,UAAC,MAAM,UAAC,GAAG,uBAAc,SAAS,UAAC;AAC5C,IAAI,mBAAU,UAAU,YAAY,CAAC,uBAAc,CAAC,UAAC,KAAK,uBAAc,CAAC,UAAC,KAAK,uBAAc,CAAC,UAAC;AAC/F;AACO,iBAAiB,0BAA0B,WAAW,iCAAiC,mBAAU,gBAAgB,aAAI;AAC5H,SAAS,aAAI;AACb;AACA,YAAY,wBAAO;AACnB,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,SAAS;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,wBAAwB;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kDAAkD,IAAI,yCAAyC;AAC/F,gBAAgB,kBAAkB;AAClC,aAAa;AACb;AACA,QAAQ,YAAY;AACpB;AACA;AACA,gBAAgB,wBAAO,cAAc,SAAS;AAC9C;AACA;AACA,qBAAqB,wBAAO,cAAc,SAAS;AACnD;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;;AC9EO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,kCAAkC,qCAAqC;AACvE;AACA;AACA;;ACjBoD;AACE;AACJ;AACQ;AACI;AACD;AACF;AAC3D,IAAI,wBAAc,MAAM,uCAAuC,IAAI,gCAAgC,IAAI,8BAA8B,IAAI,iCAAiC,IAAI,UAAU;AACxL,IAAI,oBAAU;AACd,SAAS,WAAC,MAAM,WAAC,GAAG,wBAAc,SAAS,WAAC;AAC5C,IAAI,oBAAU,UAAU,YAAY,CAAC,wBAAc,CAAC,WAAC,KAAK,wBAAc,CAAC,WAAC,KAAK,wBAAc,CAAC,WAAC;AAC/F;AACO,kBAAkB,2BAA2B,WAAW,iCAAiC,oBAAU,gBAAgB,cAAI;AAC9H,SAAS,cAAI;AACb;AACA;AACA,YAAY,wBAAO;AACnB,aAAa,QAAQ;AACrB;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA,QAAQ,aAAa;AACrB;AACA;AACA;AACA,oBAAoB,wBAAO;AAC3B,qBAAqB,SAAS;AAC9B,qBAAqB,SAAS;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC;AACjC,yBAAyB;AACzB;AACA;AACA,qBAAqB,SAAS;AAC9B;AACA,wBAAwB,SAAS;AACjC;AACA;AACA;AACA,6BAA6B;AAC7B,yBAAyB;AACzB;AACA;AACA,qBAAqB,SAAS;AAC9B;AACA,wBAAwB,SAAS;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6CAA6C;AAC7C,qCAAqC;AACrC;AACA;AACA;AACA,yBAAyB;AACzB;AACA;AACA,qBAAqB,SAAS;AAC9B;AACA,wBAAwB,SAAS;AACjC;AACA;AACA;AACA;AACA;AACA,4CAA4C,qBAAqB;AACjE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B;AAC7B,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,qCAAqC;AACrE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACnJoD;AACE;AACJ;AACQ;AACgB;AACZ;AACD;AAC7D,IAAI,wBAAc,MAAM,6BAA6B,IAAI,gCAAgC,IAAI,8BAA8B,IAAI,iCAAiC,IAAI,UAAU;AAC9K,IAAI,oBAAU;AACd,SAAS,WAAC,MAAM,WAAC,GAAG,wBAAc,SAAS,WAAC;AAC5C,IAAI,oBAAU,UAAU,YAAY,CAAC,wBAAc,CAAC,WAAC,KAAK,wBAAc,CAAC,WAAC,KAAK,wBAAc,CAAC,WAAC;AAC/F;AACO,kBAAkB,2BAA2B,WAAW,iCAAiC,oBAAU,gBAAgB,cAAI;AAC9H,SAAS,cAAI;AACb;AACA,YAAY,wBAAO;AACnB,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA;AACA,YAAY,yCAAe;AAC3B,gBAAgB,SAAS;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,wBAAwB;AAChE;AACA;AACA;AACA;AACA,mDAAmD,wBAAO;AAC1D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC,wBAAO;AAC9C;AACA;AACA,2CAA2C,wBAAO;AAClD;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB,aAAa;AACb;AACA;AACA,gBAAgB,wBAAO,cAAc,SAAS;AAC9C;AACA;AACA;AACA;AACA,SAAS;AACT,QAAQ,yCAAe;AACvB;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;;AC3EO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACRkD;AACW;AACM;AACnE,IAAI,4BAAc,MAAM,mCAAmC,IAAI,uCAAuC,IAAI,gCAAgC,IAAI,8BAA8B,IAAI,iCAAiC;AACjN,IAAI,wBAAU;AACd,SAAS,eAAC,MAAM,eAAC,GAAG,4BAAc,SAAS,eAAC;AAC5C,IAAI,wBAAU,UAAU,YAAY,CAAC,4BAAc,CAAC,eAAC,KAAK,4BAAc,CAAC,eAAC,KAAK,4BAAc,CAAC,eAAC;AAC/F;AACO,sBAAsB,+BAA+B,WAAW,wBAAwB,wBAAU,gBAAgB,kBAAI;AAC7H,SAAS,kBAAI;AACb;AACA;AACA,QAAQ,iBAAiB;AACzB;AACA;AACA;AACA;;AChBO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;ACXoD;AACF;AACQ;AACI;AACD;AACF;AAC3D,IAAI,wBAAc,MAAM,uCAAuC,IAAI,gCAAgC,IAAI,8BAA8B,IAAI,iCAAiC;AAC1K,IAAI,oBAAU;AACd,SAAS,WAAC,MAAM,WAAC,GAAG,wBAAc,SAAS,WAAC;AAC5C,IAAI,oBAAU,UAAU,YAAY,CAAC,wBAAc,CAAC,WAAC,KAAK,wBAAc,CAAC,WAAC,KAAK,wBAAc,CAAC,WAAC;AAC/F;AACO,kBAAkB,2BAA2B,WAAW,iCAAiC,oBAAU,gBAAgB,cAAI;AAC9H,SAAS,cAAI;AACb;AACA;AACA;AACA;AACA,oBAAoB,wBAAO;AAC3B,qBAAqB,QAAQ;AAC7B;AACA;AACA;AACA;AACA,qBAAqB,QAAQ;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,aAAa;AAC7B;AACA;AACA;AACA;AACA;AACA,iCAAiC,SAAS;AAC1C;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,KAAK;AACL;AACA;AACA;;AC/CoD;AACE;AACJ;AACQ;AACgB;AACZ;AACD;AAC7D,IAAI,mBAAc,MAAM,uCAAuC,IAAI,4CAA4C,IAAI,8BAA8B,IAAI,iCAAiC,IAAI,UAAU;AACpM,IAAI,eAAU;AACd,SAAS,MAAC,MAAM,MAAC,GAAG,mBAAc,SAAS,MAAC;AAC5C,IAAI,eAAU,UAAU,YAAY,CAAC,mBAAc,CAAC,MAAC,KAAK,mBAAc,CAAC,MAAC,KAAK,mBAAc,CAAC,MAAC;AAC/F;AACO,aAAa,sBAAsB,WAAW,6BAA6B,eAAU,gBAAgB,SAAI;AAChH,SAAS,SAAI;AACb;AACA,YAAY,wBAAO;AACnB,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,yCAAe;AACvB;AACA;AACA;AACA,8BAA8B,wBAAO;AACrC,iBAAiB;AACjB;AACA;AACA,4BAA4B,wBAAO,cAAc,SAAS;AAC1D;AACA;AACA,qBAAqB;AACrB,iBAAiB;AACjB;AACA,SAAS;AACT;AACA;AACA,QAAQ,SAAS;AACjB;AACA;AACA;AACA;AACA,gCAAgC,wBAAwB;AACxD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;;ACnFO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AChBoD;AACE;AACJ;AACQ;AACI;AACD;AACJ;AACzD,IAAI,uBAAc,MAAM,8CAA8C,IAAI,8BAA8B,IAAI,iCAAiC,IAAI,UAAU;AAC3J,IAAI,mBAAU;AACd,SAAS,UAAC,MAAM,UAAC,GAAG,uBAAc,SAAS,UAAC;AAC5C,IAAI,mBAAU,UAAU,YAAY,CAAC,uBAAc,CAAC,UAAC,KAAK,uBAAc,CAAC,UAAC,KAAK,uBAAc,CAAC,UAAC;AAC/F;AACO,iBAAiB,0BAA0B,WAAW,iCAAiC,mBAAU,gBAAgB,aAAI;AAC5H,SAAS,aAAI;AACb;AACA,YAAY,wBAAO;AACnB,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,YAAY;AACpB,YAAY,wBAAO;AACnB;AACA,qCAAqC,wBAAO;AAC5C,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,wBAAO,cAAc,SAAS,mBAAmB,SAAS,CAAC,SAAS,sCAAsC,SAAS;AACnI;AACA,qBAAqB,SAAS;AAC9B;AACA;AACA,gCAAgC,SAAS;AACzC,kDAAkD,aAAa,SAAS,mGAAmG;AAC3K;AACA,qBAAqB,wBAAO,cAAc,SAAS;AACnD,kCAAkC,SAAS;AAC3C;AACA;AACA;AACA;AACA,gCAAgC,wBAAwB;AACxD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC,SAAS;AAC/C;AACA;AACA,uCAAuC,SAAS;AAChD,iBAAiB;AACjB;AACA,2CAA2C,qCAAqC;AAChF;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,0CAA0C;AAC9E;AACA,oCAAoC,SAAS;AAC7C;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;;ACnGoD;AACE;AACJ;AACQ;AACgB;AACZ;AACD;AAC7D,IAAI,wBAAc,MAAM,8CAA8C,IAAI,4CAA4C,IAAI,8BAA8B,IAAI,iCAAiC;AAC7L,IAAI,oBAAU;AACd,SAAS,WAAC,MAAM,WAAC,GAAG,wBAAc,SAAS,WAAC;AAC5C,IAAI,oBAAU,UAAU,YAAY,CAAC,wBAAc,CAAC,WAAC,KAAK,wBAAc,CAAC,WAAC,KAAK,wBAAc,CAAC,WAAC;AAC/F;AACO,kBAAkB,2BAA2B,WAAW,iCAAiC,oBAAU,gBAAgB,cAAI;AAC9H,SAAS,cAAI;AACb;AACA,YAAY,wBAAO;AACnB,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,yCAAe;AACvB;AACA;AACA,oBAAoB,wBAAO,cAAc,SAAS;AAClD,oBAAoB,SAAS;AAC7B;AACA;AACA;AACA;AACA;AACA,6BAA6B,wBAAO;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4CAA4C,wBAAwB;AACpE;AACA;AACA;AACA,gDAAgD,+BAA+B;AAC/E;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;;ACrEO;AACP;AACA;AACA;AACA;AACA,gDAAgD,qBAAqB;AACrE,wBAAwB,wBAAwB;AAChD;AACA,sCAAsC,qCAAqC,wBAAwB;AACnG,gDAAgD,WAAW;AAC3D;AACA,iCAAiC,yDAAyD,8CAA8C;AACxI;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;ACpBoD;AACE;AACO;AACH;AACgB;AACZ;AACD;AACR;AACrD,IAAI,qBAAc,MAAM,8CAA8C,IAAI,gCAAgC,IAAI,8BAA8B,IAAI,iCAAiC,IAAI,UAAU;AAC/L,IAAI,iBAAU;AACd,SAAS,QAAC,MAAM,QAAC,GAAG,qBAAc,SAAS,QAAC;AAC5C,IAAI,iBAAU,UAAU,YAAY,CAAC,qBAAc,CAAC,QAAC,KAAK,qBAAc,CAAC,QAAC,KAAK,qBAAc,CAAC,QAAC;AAC/F;AACO,eAAe,wBAAwB,WAAW,iCAAiC,iBAAU,gBAAgB,WAAI;AACxH,SAAS,WAAI;AACb;AACA,YAAY,wBAAO;AACnB,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,UAAU;AAClB;AACA;AACA;AACA,gBAAgB,wBAAO;AACvB;AACA,oCAAoC,wBAAO;AAC3C,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC,SAAS;AAChD;AACA;AACA;AACA;AACA,4BAA4B,SAAS;AACrC;AACA,8BAA8B,SAAS;AACvC,uBAAuB,SAAS;AAChC;AACA,sDAAsD,4BAA4B;AAClF,4BAA4B,SAAS;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,0CAA0C;AAClF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2CAA2C,SAAS;AACpD,iCAAiC;AACjC;AACA;AACA;AACA;AACA;AACA,oBAAoB,yCAAe,uEAAuE,SAAS;AACnH;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8DAA8D,oCAAoC;AAClG;AACA;AACA;AACA;AACA;AACA,YAAY,SAAS;AACrB;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,wBAAwB;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0DAA0D,mBAAmB;AAC7E,aAAa;AACb;AACA;AACA;AACA;AACA,uBAAuB,4BAA4B;AACnD,gBAAgB,wBAAO,cAAc,SAAS,mBAAmB,SAAS;AAC1E;AACA;AACA,qBAAqB,wBAAO,cAAc,SAAS;AACnD;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;;AClJO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;ACzBoD;AACE;AACJ;AACQ;AACI;AACD;AACN;AACvD,IAAI,sBAAc,MAAM,8CAA8C,IAAI,4CAA4C,IAAI,8BAA8B,IAAI,iCAAiC;AAC7L,IAAI,kBAAU;AACd,SAAS,SAAC,MAAM,SAAC,GAAG,sBAAc,SAAS,SAAC;AAC5C,IAAI,kBAAU,UAAU,YAAY,CAAC,sBAAc,CAAC,SAAC,KAAK,sBAAc,CAAC,SAAC,KAAK,sBAAc,CAAC,SAAC;AAC/F;AACO,gBAAgB,yBAAyB,WAAW,iCAAiC,kBAAU,gBAAgB,YAAI;AAC1H,SAAS,YAAI;AACb;AACA,YAAY,wBAAO;AACnB,aAAa,QAAQ;AACrB;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,SAAS;AACrB;AACA;AACA;AACA,oCAAoC,wBAAwB;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC,wBAAO;AAC1C;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,QAAQ,WAAW;AACnB;AACA,gBAAgB,wBAAO,cAAc,SAAS;AAC9C;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;;AC5DO;AACP;AACA;AACA;AACA,SAAS;AACT;AACA,KAAK;AACL;AACA;;ACRoD;AACE;AACJ;AACQ;AACI;AACD;AACN;AACvD,IAAI,sBAAc,MAAM,uCAAuC,IAAI,mCAAmC,IAAI,gCAAgC,IAAI,8BAA8B,IAAI,iCAAiC,IAAI,UAAU;AAC/N,IAAI,kBAAU;AACd,SAAS,SAAC,MAAM,SAAC,GAAG,sBAAc,SAAS,SAAC;AAC5C,IAAI,kBAAU,UAAU,YAAY,CAAC,sBAAc,CAAC,SAAC,KAAK,sBAAc,CAAC,SAAC,KAAK,sBAAc,CAAC,SAAC;AAC/F;AACO,gBAAgB,yBAAyB,WAAW,iCAAiC,kBAAU,gBAAgB,YAAI;AAC1H,SAAS,YAAI;AACb;AACA,YAAY,wBAAO;AACnB,aAAa,QAAQ;AACrB;AACA,gCAAgC,2FAA2F;AAC3H;AACA;AACA,aAAa,QAAQ;AACrB;AACA,gCAAgC,2FAA2F;AAC3H;AACA;AACA;AACA;AACA,QAAQ,WAAW;AACnB;AACA;AACA;AACA,4BAA4B,qBAAqB;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,SAAS;AACnC;AACA;AACA,wCAAwC,SAAS;AACjD,4CAA4C,SAAS;AACrD;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA,YAAY,SAAS;AACrB;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,wBAAwB;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB;AACzB;AACA;AACA,6BAA6B;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,oBAAoB,wBAAO;AAC3B,qBAAqB,SAAS;AAC9B;AACA;AACA;AACA,qBAAqB,SAAS;AAC9B;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;;ACvH+E;AACf;AACO;AAC1B;AACI;AACd;AACiB;AACb;AACU;AACc;AACF;AACpB;AACE;AACC;AACC;AACE;AACJ;AACA;AACA;AACA;AACI;AACJ;AACE;AACA;AACQ;AACR;AACV;AACQ;AACE;AACN;AACE;AACA;AACgB;AAClD;AACP,IAAI,wBAAO;AACX,IAAI,wBAAO,eAAe,cAAc;AACxC,IAAI,wBAAO,eAAe,sBAAsB;AAChD,IAAI,wBAAO,eAAe,SAAS;AACnC,IAAI,wBAAO,eAAe,WAAW;AACrC,IAAI,wBAAO,eAAe,IAAI;AAC9B,IAAI,wBAAO,eAAe,YAAY;AACtC,IAAI,wBAAO,eAAe,MAAM;AAChC,IAAI,wBAAO,eAAe,OAAO;AACjC,IAAI,wBAAO,eAAe,kBAAkB;AAC5C,IAAI,wBAAO,eAAe,iBAAiB;AAC3C,IAAI,wBAAO,eAAe,OAAO;AACjC,IAAI,wBAAO,eAAe,QAAQ;AAClC,IAAI,wBAAO,eAAe,MAAM;AAChC,IAAI,wBAAO,eAAe,SAAS;AACnC,IAAI,wBAAO,eAAe,UAAU;AACpC,IAAI,wBAAO,eAAe,QAAQ;AAClC,IAAI,wBAAO,eAAe,QAAQ;AAClC,IAAI,wBAAO,eAAe,QAAQ;AAClC,IAAI,wBAAO,eAAe,QAAQ;AAClC,IAAI,wBAAO,eAAe,UAAU;AACpC,IAAI,wBAAO,eAAe,QAAQ;AAClC,IAAI,wBAAO,eAAe,SAAS;AACnC,IAAI,wBAAO,eAAe,SAAS;AACnC,IAAI,wBAAO,eAAe,aAAa;AACvC,IAAI,wBAAO,eAAe,SAAS;AACnC,IAAI,wBAAO,eAAe,IAAI;AAC9B,IAAI,wBAAO,eAAe,QAAQ;AAClC,IAAI,wBAAO,eAAe,SAAS;AACnC,IAAI,wBAAO,eAAe,MAAM;AAChC,IAAI,wBAAO,eAAe,OAAO;AACjC,IAAI,wBAAO,eAAe,OAAO;AACjC,IAAI,wBAAO;AACX,oBAAoB,IAAI,wBAAO,kBAAkB;AACjD,QAAQ,kBAAkB,aAAa,wBAAO;AAC9C;AACA;AACA;;ACvEO;AACP;AACA;AACA;AACA;AACA;AACA,qDAAqD,yBAAyB;AAC9E,aAAa;AACb,SAAS;AACT,KAAK;AACL;AACA;;ACXsC;AACwB;AACO;AACZ;AACN;AACsB;AACpB;AACN;AACgC;AACF;AACZ;AACA;AACJ;AAC7D;AACA,qBAAqB,wBAAO;AAC5B,gCAAgC,kBAAkB;AAClD,IAAI,wBAAO;AACX,IAAI,wBAAO,cAAc,aAAW;AACpC,IAAI,yCAAe,wCAAwC,wBAAO;AAClE;AACA,QAAQ,wBAAO;AACf,aAAa,wBAAO;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,wBAAO;AACX,IAAI,wBAAO;AACX,IAAI,wBAAO,sBAAsB,kBAAkB;AACnD;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,aAAa;AACjB,IAAI,iBAAiB;AACrB,IAAI,QAAQ;AACZ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,QAAQ;AACxB,YAAY,QAAQ;AACpB,sBAAsB,QAAQ;AAC9B;AACA;AACA;AACA;AACA,SAAS,yCAAe,4BAA4B,SAAS,oBAAoB,yCAAe,4BAA4B,SAAS;AACrI;AACA;AACA,wBAAwB,QAAQ;AAChC;AACA,oBAAoB,QAAQ;AAC5B,oBAAoB,wBAAO,mBAAmB,QAAQ;AACtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,QAAQ;AAC9B;AACA;AACA,sBAAsB,QAAQ;AAC9B;AACA;AACA;AACA;AACA,sBAAsB,QAAQ;AAC9B;AACA;AACA,sBAAsB,QAAQ;AAC9B;AACA;AACA,sBAAsB,QAAQ;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,yCAAe;AACvD,gBAAgB,yCAAe;AAC/B;AACA;AACA,qBAAqB,yCAAe;AACpC;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,QAAQ;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC;AAClC;AACA;AACA;AACA;AACA,OAAO;AACP,IAAI,wBAAO;AACX,IAAI,wBAAO;AACX,IAAI,wBAAO;AACX,IAAI,wBAAO;AACX,IAAI,wBAAO;AACX,IAAI,wBAAO;AACX,IAAI,wBAAO;AACX;AACA;AACA,IAAI,yCAAe;AACnB;AACA;AACA;AACA,QAAQ,wBAAO,oBAAoB,QAAQ;AAC3C,+BAA+B,yCAAe;AAC9C;AACA,aAAa,wBAAO,oBAAoB,QAAQ;AAChD,+BAA+B,yCAAe;AAC9C;AACA,aAAa,wBAAO,oBAAoB,QAAQ;AAChD,+BAA+B,yCAAe;AAC9C;AACA,aAAa,wBAAO,oBAAoB,QAAQ;AAChD,+BAA+B,yCAAe;AAC9C;AACA,aAAa,wBAAO,oBAAoB,QAAQ;AAChD,+BAA+B,yCAAe;AAC9C;AACA;AACA;AACA;AACA;AACA,YAAY,wBAAO;AACnB,4BAA4B,uBAAuB;AACnD,gBAAgB,yCAAe;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,yCAAe;AAC3B,8BAA8B,yCAAe;AAC7C,4BAA4B,4BAA4B;AACxD;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,wBAAO,kBAAkB,wBAAO;AACxC;AACA;AACA;AACA,YAAY,yCAAe;AAC3B,wCAAwC,yCAAe;AACvD,4BAA4B,uBAAuB;AACnD,oBAAoB,wBAAO,qBAAqB,wBAAO;AACvD,oBAAoB,yCAAe;AACnC;AACA;AACA;AACA;AACA,QAAQ,yCAAe,wCAAwC,wBAAO;AACtE,QAAQ,yCAAe;AACvB;AACA;AACA,YAAY,wBAAO;AACnB,YAAY,yCAAe,wCAAwC,wBAAO;AAC1E;AACA;AACA;AACA,qBAAqB,yCAAe;AACpC,YAAY,yCAAe,2BAA2B,yCAAe;AACrE;AACA;AACA;AACA,QAAQ,yCAAe,4DAA4D,SAAS;AAC5F;AACA,uBAAuB,yCAAe;AACtC;AACA,QAAQ,wBAAO;AACf,wBAAwB,IAAI,wBAAO,uBAAuB;AAC1D,YAAY,wBAAO;AACnB;AACA;AACA;AACA;AACA,IAAI,OAAO;AACX,6BAA6B,wBAAO,kBAAkB,yCAAe;AACrE,yBAAyB,wBAAO;AAChC,uCAAuC,cAAc,gBAAgB,qCAAqC,gBAAgB;AAC1H;AACA;AACA;AACA,sDAAsD,yDAAyD;AAC/G;AACA;AACA;AACA;AACA;AACA,YAAY,wBAAO;AACnB,sCAAsC,MAAM,wBAAO,+CAA+C,SAAS,0EAA0E,wBAAO,wBAAwB,IAAI,wBAAO;AAC/N;AACA,YAAY,wBAAO;AACnB,2CAA2C,MAAM,wBAAO,8CAA8C,SAAS,+EAA+E,IAAI,wBAAO;AACzM;AACA,YAAY,wBAAO;AACnB,2CAA2C,MAAM,wBAAO,gDAAgD,SAAS,gFAAgF,IAAI,wBAAO;AAC5M;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,wBAAO;AACxB,yBAAyB,wBAAO;AAChC;AACA;AACA;AACA;AACA;AACA,IAAI,yCAAe,iDAAiD,wBAAO;AAC3E;AACA;AACA,QAAQ,wBAAO,kDAAkD,wBAAO;AACxE;AACA,6CAA6C,yCAAe;AAC5D;AACA,iBAAiB,wBAAO;AACxB,gBAAgB,wBAAO,iBAAiB,wBAAO;AAC/C,oBAAoB,wBAAO;AAC3B;AACA,4GAA4G,wBAAO,gDAAgD,yCAAe;AAClL,oBAAoB,wBAAO;AAC3B;AACA,4BAA4B,yCAAe;AAC3C;AACA;AACA,4BAA4B,yCAAe;AAC3C;AACA,qBAAqB;AACrB;AACA;AACA,oBAAoB,yCAAe;AACnC;AACA;AACA;AACA,gBAAgB,yCAAe;AAC/B;AACA;AACA;AACA,YAAY,yCAAe,uDAAuD,SAAS;AAC3F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,yCAAe;AACzC;AACA;AACA;AACA;AACA;AACA,8CAA8C,wBAAO;AACrD;AACA;AACA;AACA;AACA;AACA,4CAA4C,wBAAO;AACnD,wBAAwB,iCAAiC;AACzD;AACA;AACA;AACA;AACA;AACA,QAAQ,wBAAO;AACf,QAAQ,wBAAO;AACf,QAAQ,wBAAO;AACf,QAAQ,wBAAO;AACf,QAAQ,yCAAe;AACvB;AACA;AACA,QAAQ,yCAAe,uCAAuC;AAC9D,QAAQ,yCAAe,uDAAuD,SAAS;AACvF;AACA;AACA,4BAA4B,yCAAe;AAC3C,QAAQ,wBAAO;AACf;AACA;AACA,gBAAgB,wBAAO;AACvB;AACA;AACA,gBAAgB,wBAAO;AACvB,gBAAgB,wBAAO;AACvB;AACA;AACA,QAAQ,wBAAO;AACf,2DAA2D,wBAAO;AAClE,YAAY,wBAAO,YAAY,wBAAO;AACtC;AACA;AACA,YAAY,wBAAO;AACnB;AACA,QAAQ,yCAAe;AACvB;AACA;AACA;AACA;AACA,oBAAoB,yCAAe,6BAA6B,wBAAO;AACvE;AACA;AACA;AACA,SAAS;AACT,YAAY,yCAAe;AAC3B,YAAY,wBAAO,2CAA2C,yCAAe;AAC7E,YAAY,yCAAe;AAC3B;AACA;AACA;AACA;AACA;AACA,IAAI,wBAAO;AACX,IAAI,wBAAO,cAAc,yCAAe,0BAA0B,yCAAe;AACjF,QAAQ,yCAAe;AACvB,QAAQ,wBAAO,eAAe,wBAAO,oBAAoB,yCAAe;AACxE;AACA;AACO;AACP;AACA,+CAA+C;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,wCAAwC;AAChE;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,aAAa;AAC3D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sEAAsE,uBAAuB,gCAAgC,IAAI,YAAY;AAC7I;AACA;AACA;AACA;AACA;AACA;AACA,uC","sources":["webpack://ecommdar-analytics-tagging/./dist/namespaces/_dsgTag.namespace.js","webpack://ecommdar-analytics-tagging/./dist/enums/enums.enum.js","webpack://ecommdar-analytics-tagging/./dist/namespaces/dataLayer.namespace.js","webpack://ecommdar-analytics-tagging/./dist/consts/pageTypes.const.js","webpack://ecommdar-analytics-tagging/./dist/namespaces/eventDataMap.namespace.js","webpack://ecommdar-analytics-tagging/./dist/classes/eventInstance.class.js","webpack://ecommdar-analytics-tagging/./dist/namespaces/eventHandlers.namespace.js","webpack://ecommdar-analytics-tagging/./dist/consts/websites.const.js","webpack://ecommdar-analytics-tagging/./dist/namespaces/helperFunctions.namespace.js","webpack://ecommdar-analytics-tagging/./dist/consts/excludedDNSCategories.const.js","webpack://ecommdar-analytics-tagging/./dist/classes/tag.class.js","webpack://ecommdar-analytics-tagging/./dist/namespaces/functionRepository.namespace.js","webpack://ecommdar-analytics-tagging/./dist/classes/tagCondition.class.js","webpack://ecommdar-analytics-tagging/./dist/namespaces/customerIDService.namespace.js","webpack://ecommdar-analytics-tagging/./dist/tags/analytics/AnalyticsPageCode.js","webpack://ecommdar-analytics-tagging/./dist/tags/analytics/AnalyticsEventHandlers.js","webpack://ecommdar-analytics-tagging/./dist/vendorScripts/adobeappmeasurementplugins.js","webpack://ecommdar-analytics-tagging/./dist/tags/analytics/AnalyticsInit.js","webpack://ecommdar-analytics-tagging/./dist/consts/brandsToTrack.const.js","webpack://ecommdar-analytics-tagging/./dist/consts/aepDataStreams.const.js","webpack://ecommdar-analytics-tagging/./dist/tags/AdobeExperienceManager.js","webpack://ecommdar-analytics-tagging/./dist/tags/Attentive.js","webpack://ecommdar-analytics-tagging/./dist/tags/BazaarVoice.js","webpack://ecommdar-analytics-tagging/./dist/tags/Bing.js","webpack://ecommdar-analytics-tagging/./dist/tags/Blue Triangle.js","webpack://ecommdar-analytics-tagging/./dist/vendorScripts/branch.js","webpack://ecommdar-analytics-tagging/./dist/tags/Branch.js","webpack://ecommdar-analytics-tagging/./dist/vendorScripts/certona.js","webpack://ecommdar-analytics-tagging/./dist/tags/CertonaHostless.js","webpack://ecommdar-analytics-tagging/./dist/tags/CommissionJunction.js","webpack://ecommdar-analytics-tagging/./dist/tags/CriteoRemarketing.js","webpack://ecommdar-analytics-tagging/./dist/tags/Epsilon.js","webpack://ecommdar-analytics-tagging/./dist/vendorScripts/facebook.js","webpack://ecommdar-analytics-tagging/./dist/tags/Facebook.js","webpack://ecommdar-analytics-tagging/./dist/tags/Google GTag.js","webpack://ecommdar-analytics-tagging/./dist/tags/GoogleAds.js","webpack://ecommdar-analytics-tagging/./dist/tags/LivePerson.js","webpack://ecommdar-analytics-tagging/./dist/tags/LiveRamp.js","webpack://ecommdar-analytics-tagging/./dist/tags/Medallia.js","webpack://ecommdar-analytics-tagging/./dist/tags/Metrical.js","webpack://ecommdar-analytics-tagging/./dist/tags/Monetate.js","webpack://ecommdar-analytics-tagging/./dist/vendorScripts/movableink.js","webpack://ecommdar-analytics-tagging/./dist/tags/MovableInk.js","webpack://ecommdar-analytics-tagging/./dist/vendorScripts/nextdoor.js","webpack://ecommdar-analytics-tagging/./dist/tags/NextDoor.js","webpack://ecommdar-analytics-tagging/./dist/vendorScripts/pinterest.js","webpack://ecommdar-analytics-tagging/./dist/tags/Pinterest.js","webpack://ecommdar-analytics-tagging/./dist/tags/PromoteIQ.js","webpack://ecommdar-analytics-tagging/./dist/vendorScripts/quantummetric.js","webpack://ecommdar-analytics-tagging/./dist/tags/QuantumMetric.js","webpack://ecommdar-analytics-tagging/./dist/vendorScripts/riskified.js","webpack://ecommdar-analytics-tagging/./dist/tags/Riskified.js","webpack://ecommdar-analytics-tagging/./dist/tags/Rokt.js","webpack://ecommdar-analytics-tagging/./dist/vendorScripts/snapchat.js","webpack://ecommdar-analytics-tagging/./dist/tags/Snapchat.js","webpack://ecommdar-analytics-tagging/./dist/tags/Stylitics.js","webpack://ecommdar-analytics-tagging/./dist/vendorScripts/tiktok.js","webpack://ecommdar-analytics-tagging/./dist/tags/TikTok.js","webpack://ecommdar-analytics-tagging/./dist/vendorScripts/truefit.js","webpack://ecommdar-analytics-tagging/./dist/tags/TrueFit.js","webpack://ecommdar-analytics-tagging/./dist/vendorScripts/twitter.js","webpack://ecommdar-analytics-tagging/./dist/tags/Twitter.js","webpack://ecommdar-analytics-tagging/./dist/LoadTags.js","webpack://ecommdar-analytics-tagging/./dist/vendorScripts/adobeexperiencemanager.js","webpack://ecommdar-analytics-tagging/./dist/TaggingMain.js"],"sourcesContent":["export var _dsgTag;\n(function (_dsgTag) {\n _dsgTag.searchEventMboxFired = false;\n _dsgTag.searchEventPagePixelFired = false;\n _dsgTag.SendXDMEventAnalyticsSetup = false;\n _dsgTag.subdomainChangeLinkClick = false;\n let consts;\n (function (consts) {\n consts.NewVisitTimeDifference = 30 * 60 * 1000;\n consts.OrderHistoryRollingWindow = 30 * 24 * 60 * 60 * 1000;\n consts.MaxOrderHistoryLength = 10;\n })(consts = _dsgTag.consts || (_dsgTag.consts = {}));\n})(_dsgTag || (_dsgTag = {}));\n//# sourceMappingURL=_dsgTag.namespace.js.map","export var LogLevels;\n(function (LogLevels) {\n LogLevels[LogLevels[\"Error\"] = 1] = \"Error\";\n LogLevels[LogLevels[\"Warning\"] = 2] = \"Warning\";\n LogLevels[LogLevels[\"Info\"] = 3] = \"Info\";\n LogLevels[LogLevels[\"Verbose\"] = 4] = \"Verbose\";\n})(LogLevels || (LogLevels = {}));\nexport var InitTimings;\n(function (InitTimings) {\n InitTimings[InitTimings[\"Immediate\"] = 1] = \"Immediate\";\n InitTimings[InitTimings[\"DOMLoaded\"] = 2] = \"DOMLoaded\";\n InitTimings[InitTimings[\"WindowComplete\"] = 3] = \"WindowComplete\";\n InitTimings[InitTimings[\"FirstInteractionPostWindowComplete\"] = 4] = \"FirstInteractionPostWindowComplete\";\n InitTimings[InitTimings[\"PageCustomTrigger\"] = 5] = \"PageCustomTrigger\";\n InitTimings[InitTimings[\"Page3rdPartySignal\"] = 6] = \"Page3rdPartySignal\";\n})(InitTimings || (InitTimings = {}));\n//# sourceMappingURL=enums.enum.js.map","import { HelperFunctions } from \"./helperFunctions.namespace\";\nimport { LogLevels } from \"../enums/enums.enum\";\nimport { _dsgTag } from \"./_dsgTag.namespace\";\nexport var DataLayer;\n(function (DataLayer) {\n var DataLayerExtractors = {};\n function AddExtractor(dataElementName, extractorFunction) {\n DataLayerExtractors[dataElementName] = extractorFunction;\n }\n DataLayer.AddExtractor = AddExtractor;\n ;\n function GetValue(dataElementName, dataSource) {\n try {\n if (typeof dataSource === \"undefined\" || dataSource == null || Object.keys(dataSource).length === 0) {\n dataSource = window.siteData || {};\n }\n return DataLayerExtractors[dataElementName](dataSource);\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Error resolving data value '\" + dataElementName + \"': \" + ex.message, LogLevels.Error);\n return null;\n }\n }\n DataLayer.GetValue = GetValue;\n ;\n function PassValuesToFunction(dataElementList, resolveFunction, dataSource) {\n try {\n var dataValues = [];\n var i = 0;\n var currentValue;\n for (; i < dataElementList.length; i++) {\n currentValue = this.GetValue(dataElementList[i], dataSource);\n dataValues.push(currentValue);\n }\n resolveFunction(...dataValues);\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Error resolving data value list: \" + ex.message, LogLevels.Error);\n }\n }\n DataLayer.PassValuesToFunction = PassValuesToFunction;\n ;\n DataLayerExtractors[\"AddressCount\"] = function (dataSource) {\n var a = \"0\";\n if (typeof dataSource !== 'undefined' && typeof dataSource.TotalAddressCount !== 'undefined') {\n a = dataSource.TotalAddressCount;\n }\n return a;\n };\n DataLayerExtractors[\"AOSStoreID\"] = function (dataSource) {\n return HelperFunctions.GetValue(\"AOSStoreID\");\n ;\n };\n DataLayerExtractors[\"AppID\"] = function (dataSource) {\n var a = \"\";\n if (typeof dataSource !== 'undefined' && typeof dataSource.appID !== 'undefined') {\n a = dataSource.appID;\n }\n return a;\n };\n DataLayerExtractors[\"AppointmentCount\"] = function (dataSource) {\n var a = 0;\n if (typeof dataSource !== 'undefined' && typeof dataSource.appointmentsPresent !== 'undefined') {\n a = dataSource.appointmentsPresent;\n }\n return a;\n };\n DataLayerExtractors[\"AppointmentTab\"] = function (dataSource) {\n var a = \"\";\n if (typeof dataSource !== 'undefined' && typeof dataSource.appointmentsTab !== 'undefined') {\n a = dataSource.appointmentsTab.toLowerCase();\n }\n return a;\n };\n DataLayerExtractors[\"BillingState\"] = function (dataSource) {\n var a = \"\";\n if (typeof dataSource !== 'undefined' && typeof dataSource.BillingState !== 'undefined') {\n a = dataSource.BillingState;\n }\n return a;\n };\n DataLayerExtractors[\"BillingZip\"] = function (dataSource) {\n var a = \"\";\n if (typeof dataSource !== 'undefined' && typeof dataSource.BillingZIP !== 'undefined') {\n a = dataSource.BillingZIP;\n }\n else if (typeof dataSource !== 'undefined' && typeof dataSource.BillingZip !== 'undefined') {\n a = dataSource.BillingZip;\n }\n else {\n var addressDivText = HelperFunctions.ScrapeTextViaSelector(\"#WC_CheckoutPaymentAndBillingAddressSummaryf_div_2_1\");\n var indexOfUS = addressDivText.indexOf(\"US \");\n a = addressDivText.substring(indexOfUS + 3, indexOfUS + 8);\n }\n return a;\n };\n DataLayerExtractors[\"BrandShopName\"] = function (dataSource) {\n var a = \"\";\n if (typeof dataSource !== 'undefined' && typeof dataSource.BrandShop !== 'undefined') {\n a = dataSource.BrandShop;\n }\n else if (typeof dataSource !== 'undefined' && typeof dataSource.PageName !== 'undefined') {\n a = dataSource.PageName;\n }\n return a;\n };\n DataLayerExtractors[\"CartCookieSKUList\"] = function (dataSource) {\n var a = [];\n if (HelperFunctions.GetCookieValue(\"DCSG-CART\")) {\n try {\n var cartData = JSON.parse(window.atob(HelperFunctions.GetCookieValue(\"DCSG-CART\"))).contents;\n for (var i = 0; i < cartData.length; i++) {\n a.push(cartData[i].sku);\n }\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Failed to parse cart quantity from DCSG-CART cookie: \" + ex.message, LogLevels.Error);\n }\n }\n return a;\n };\n DataLayerExtractors[\"CartID\"] = function (dataSource) {\n var a = \"\";\n if (typeof dataSource !== 'undefined' && typeof dataSource.CartID !== 'undefined') {\n a = dataSource.CartID;\n }\n else {\n a = HelperFunctions.ScrapeTextViaSelector(\".ref-number,body > div.off-canvas-wrap > div > section > div.cart-content > h1 > span\");\n }\n if (!a && HelperFunctions.GetValue(\"TagCartID\")) {\n a = decodeURI(HelperFunctions.GetValue(\"TagCartID\")).split(\"|\")[0];\n }\n return a;\n };\n DataLayerExtractors[\"CartItemQuantity\"] = function (dataSource) {\n var a = null;\n if (typeof dataSource !== \"undefined\" && typeof dataSource.ProductArray !== \"undefined\" && ((typeof dataSource.PageURL !== \"undefined\" ? dataSource.PageURL : window.location.href).toLowerCase().indexOf(\"orderitemdisplay\") >= 0)) {\n a = 0;\n for (var i = 0; i < dataSource.ProductArray.length; i++) {\n a += parseInt(dataSource.ProductArray[i].ProductQty);\n }\n }\n else if (typeof dataSource !== \"undefined\" && typeof dataSource.checkout !== \"undefined\") {\n try {\n a = 0;\n for (var i = 0; i < dataSource.checkout.cart.items.length; i++) {\n a += dataSource.checkout.cart.items[i].quantity;\n }\n }\n catch (ex) { }\n }\n else if (typeof dataSource !== \"undefined\" && typeof dataSource.Quantity !== \"undefined\") {\n try {\n a = parseInt(dataSource.Quantity);\n }\n catch (ex) { }\n }\n else if (HelperFunctions.GetCookieValue(\"DCSG-CART\")) {\n try {\n a = 0;\n var cartData = JSON.parse(window.atob(HelperFunctions.GetCookieValue(\"DCSG-CART\"))).contents;\n for (var i = 0; i < cartData.length; i++) {\n a += cartData[i].qty ? parseInt(cartData[i].qty) : 1;\n }\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Failed to parse cart quantity from DCSG-CART cookie: \" + ex.message, LogLevels.Error);\n }\n }\n else if (HelperFunctions.GetCookieValue(\"DSG_CartQTY\")) {\n try {\n a = parseInt(HelperFunctions.GetCookieValue(\"DSG_CartQTY\"));\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Failed to parse cart quantity from DSG_CartQTY cookie: \" + ex.message, LogLevels.Error);\n }\n }\n else {\n try {\n a = parseInt(HelperFunctions.ScrapeTextViaSelector(\".cart-count-value, #OrderQty, #layout-content > ng-include:nth-child(1) > header > nav > ul > li:nth-child(5) > a > div > div.minicart-icon.animate-scale-active > i > span, .cart_icon, #layout-content > ng-include:nth-child(1) > header > div > nav > div > div:nth-child(3) > div > div.col-xs-5 > a > i > mini-cart, #cartCount, .cart-item-count\"));\n }\n catch (ex) { }\n }\n return a;\n };\n DataLayerExtractors[\"CartSKUEcodeLookup\"] = function (dataSource) {\n var a = {};\n if (typeof dataSource !== \"undefined\" && typeof dataSource.checkout !== \"undefined\" && typeof dataSource.checkout.cart !== \"undefined\" && typeof dataSource.checkout.cart.items !== \"undefined\" && typeof dataSource.checkout.cart.items.length !== \"undefined\") {\n for (var i = 0; i < dataSource.checkout.cart.items.length; i++) {\n a[dataSource.checkout.cart.items[i].sku] = dataSource.checkout.cart.items[i].ecode;\n }\n }\n else if (HelperFunctions.GetValue(\"TagCartProducts\")) {\n a = JSON.parse(HelperFunctions.GetValue(\"TagCartProducts\"));\n }\n return a;\n };\n DataLayerExtractors[\"CategoryID\"] = function (dataSource) {\n var a = \"\";\n if (typeof dataSource !== 'undefined' && typeof dataSource.CategoryID !== 'undefined') {\n a = dataSource.CategoryID;\n }\n if (a === \"\" && typeof dataSource !== 'undefined' && typeof dataSource.DepartmentID !== 'undefined') {\n a = dataSource.DepartmentID;\n }\n return a;\n };\n DataLayerExtractors[\"CategoryName\"] = function (dataSource) {\n var a = \"\";\n if (typeof dataSource !== 'undefined' && typeof dataSource.CategoryName !== 'undefined') {\n a = dataSource.CategoryName;\n }\n else {\n a = HelperFunctions.ScrapeTextViaSelector(\"#navigation > div.content_wrapper_position > div > div.content_left_shadow > div > div > div.widget_title_container_position > div > h1\");\n }\n if (a === \"\" && typeof dataSource !== 'undefined' && typeof dataSource.DepartmentName !== 'undefined') {\n a = dataSource.DepartmentName;\n }\n if (a === \"\" && typeof dataSource !== 'undefined' && typeof dataSource.Page === 'string' && document.URL.indexOf(\"/products/\") !== -1) {\n a = dataSource.Page.split(\" : \")[dataSource.Page.split(\" : \").length - 1];\n if (a === \"\") {\n a = HelperFunctions.ScrapeTextViaSelector(\"#page > div.content_wrapper_position > div > div.content_left_shadow > div > div > h1\");\n }\n }\n return a;\n };\n DataLayerExtractors[\"CCPADoNotSell\"] = function (dataSource) {\n return (HelperFunctions.GetCookieValue(\"ccpa\") && HelperFunctions.GetCookieValue(\"ccpa\").toLowerCase() == \"true\") ? \"T\" : \"F\";\n };\n DataLayerExtractors[\"CheckoutSummary\"] = function (dataSource) {\n var a = \"\";\n if (typeof dataSource !== 'undefined' && typeof dataSource.checkout !== 'undefined') {\n a = dataSource.checkout;\n }\n return a;\n };\n DataLayerExtractors[\"CheckoutCardStatus\"] = function (dataSource) {\n var a = false;\n if (typeof dataSource !== 'undefined') {\n if (typeof dataSource.checkoutCardStatus !== 'undefined') {\n a = dataSource.checkoutCardStatus;\n }\n }\n return a;\n };\n DataLayerExtractors[\"CheckoutGuestVsRegistered\"] = function (dataSource) {\n var a = \"\";\n if (typeof dataSource !== 'undefined') {\n if (typeof dataSource.RegisteredCheckoutEvent !== 'undefined') {\n if (dataSource.RegisteredCheckoutEvent.toUpperCase() === \"Y\") {\n a = \"Registered\";\n }\n else {\n a = \"Guest\";\n }\n }\n else if (typeof dataSource.LoggedIn !== 'undefined') {\n if (dataSource.LoggedIn.toString().toLowerCase() === \"true\") {\n a = \"Registered\";\n }\n else {\n a = \"Guest\";\n }\n }\n else {\n a = DataLayer.GetValue(\"SignedInBoolean\", dataSource) ? \"Registered\" : \"Guest\";\n }\n }\n return a;\n };\n DataLayerExtractors[\"CompareItemQuantity\"] = function (dataSource) {\n var a = \"0\";\n if (typeof dataSource !== 'undefined' && typeof dataSource.ProductIDList !== 'undefined' && typeof dataSource.ProductIDList.length !== 'undefined') {\n var listLength = dataSource.ProductIDList.length;\n if (listLength == 1 && typeof dataSource.PriceList !== 'undefined' && typeof dataSource.PriceList.length !== 'undefined' && dataSource.PriceList.length === 0) {\n a = \"0\";\n }\n }\n else if (typeof dataSource !== 'undefined' && typeof dataSource.ProductArray !== 'undefined' && typeof dataSource.ProductArray.length !== 'undefined') {\n a = dataSource.ProductArray.length.toString();\n }\n if (a === \"0\") {\n a = \"Zero\";\n }\n return a;\n };\n DataLayerExtractors[\"CreateAccountLinkShown\"] = function (dataSource) {\n var a = \"\";\n if (typeof dataSource !== 'undefined' && typeof dataSource.CreateAccountShown !== 'undefined') {\n a = dataSource.CreateAccountShown;\n }\n return a;\n };\n DataLayerExtractors[\"CrossSellClickDetail\"] = function (dataSource) {\n var a = \"\";\n var keyValues = {};\n if (_dsgTag.previousPageValues[\"StyliticsClick\"] || (dataSource.ReferringPage && dataSource.ReferringPage.toLowerCase() === \"stylitics\")) {\n a = \"stylitics_\";\n var clickObject = JSON.parse(_dsgTag.previousPageValues[\"StyliticsClick\"]);\n if (clickObject) {\n if (clickObject.itemData) {\n keyValues = {\n \"pid\": clickObject.previousPageID || \"unknown\",\n \"ofi\": clickObject.itemData.bundle.id,\n \"cat\": clickObject.itemData.item.category.replace(\" \", \"-\"),\n \"bnd\": clickObject.itemData.item.brand.replace(\" \", \"-\"),\n \"mdl\": clickObject.itemData.bundle.relative_boost == \"on-model-tag\" ? \"t\" : \"f\",\n \"pre\": _dsgTag.previousPageValues[\"v28\"].replace(\" \", \"-\")\n };\n a = s.BuldDelmitedKeyValueString(keyValues, \":\", \"stylitics\");\n }\n }\n else if (DataLayer.GetValue(\"ProductID\")) {\n a += DataLayer.GetValue(\"ProductID\");\n a += \"_\" + _dsgTag.previousPageValues[\"v28\"].replace(\" \", \"-\");\n }\n a = a.toLowerCase();\n }\n else if (_dsgTag.previousPageValues[\"MonetateClick\"] || (dataSource.ReferringPage && dataSource.ReferringPage.toLowerCase() === \"monetate\")) {\n if (_dsgTag.previousPageValues[\"MonetateClick\"]) {\n a = _dsgTag.previousPageValues[\"MonetateClick\"].toLowerCase();\n }\n else {\n a = dataSource.AdditionalData;\n }\n }\n else if (_dsgTag.previousPageValues[\"CertonaClick\"] || (dataSource.ReferringPage && dataSource.ReferringPage.toLowerCase() === \"certona\")) {\n if (_dsgTag.previousPageValues[\"CertonaClick\"]) {\n a = _dsgTag.previousPageValues[\"CertonaClick\"].toLowerCase();\n }\n else {\n a = dataSource.AdditionalData;\n }\n }\n else if (_dsgTag.previousPageValues[\"Scene7Click\"]) {\n a = \"scene7_\" + _dsgTag.previousPageValues[\"Scene7Click\"];\n }\n else if (_dsgTag.previousPageValues[\"bambuser\"]) {\n a = \"bambuser_\" + _dsgTag.previousPageValues[\"bambuser\"];\n }\n else if (_dsgTag.previousPageValues[\"PIQClick\"]) {\n a = (\"piq_\" + _dsgTag.previousPageValues[\"v28\"] + \"_\" + (_dsgTag.previousPageValues[\"pageRowCol\"] ? \"grid\" : \"carousel\")).toLowerCase();\n }\n else if (HelperFunctions.GetQueryStringValue(\"zoovu\") || _dsgTag.previousPageValues[\"ZoovuClick\"] || (dataSource.ReferringPage && dataSource.ReferringPage.toLowerCase() === \"zoovu\")) {\n a = \"zoovu\";\n if (HelperFunctions.GetQueryStringValue(\"sku\")) {\n a += \"-\" + HelperFunctions.GetQueryStringValue(\"sku\").replace(\"-\", \"_\").toLowerCase();\n }\n else {\n a += \"-n/a\";\n }\n if (HelperFunctions.GetQueryStringValue(\"z_type\")) {\n a += \"-\" + HelperFunctions.GetQueryStringValue(\"z_type\").replace(\"-\", \"_\").toLowerCase();\n }\n }\n else if (_dsgTag.previousPageValues[\"DataScienceRecClick\"] || (dataSource.ReferringPage && dataSource.ReferringPage.toLowerCase() === \"datasciencerecs\")) {\n if (_dsgTag.previousPageValues[\"DataScienceRecClick\"]) {\n a = _dsgTag.previousPageValues[\"DataScienceRecClick\"].toLowerCase();\n }\n else {\n a = \"DS_\" + _dsgTag.pageType.Name;\n var DSPlacementId = dataSource.AdditionalData.DSPlacementId;\n var DSPosition = dataSource.AdditionalData.DSPosition.toString();\n a += \"_\" + (DSPlacementId ? DSPlacementId : \"none\") + \"_\" + (DSPosition ? DSPosition : \"none\");\n }\n }\n else if (HelperFunctions.GetQueryStringValue(\"recid\")) {\n a = HelperFunctions.GetQueryStringValue(\"recid\");\n if (a.indexOf(\":\") >= 0) {\n a = _dsgTag.pageType.Name.replaceAll(\" \", \"\") + \":\" + a;\n if (a.indexOf(\"v1e8mm3\") < 0) {\n keyValues = {\n \"sce\": a.split(\":\")[2],\n \"rsi\": a.split(\":\")[3],\n \"pre\": _dsgTag.previousPageValues[\"v28\"].replace(\" \", \"-\")\n };\n a = s.BuldDelmitedKeyValueString(keyValues, \":\", \"monetate\");\n }\n }\n }\n else if (HelperFunctions.GetQueryStringValue(\"sponsorrecid\")) {\n a = HelperFunctions.GetQueryStringValue(\"sponsorrecid\");\n }\n else if (_dsgTag.previousPageValues[\"CuralateClick\"]) {\n a = \"curalate_\" + _dsgTag.previousPageValues[\"CuralateClick\"].link;\n }\n else if (_dsgTag.previousPageValues[\"ReadyForNextRoundAddOns\"] || (dataSource.ReferringPage && dataSource.ReferringPage.toLowerCase() === \"readyfornextroundaddons\")) {\n a = \"ReadyForNextRoundAddOns\";\n }\n else if (_dsgTag.previousPageValues[\"ShoppableImage\"] || (dataSource.ReferringPage && dataSource.ReferringPage.toLowerCase() === \"shoppableimage\")) {\n a = \"ShoppableImage\";\n }\n return a;\n };\n DataLayerExtractors[\"DataLayerExists\"] = function (dataSource) {\n return (typeof (dataSource) !== 'undefined').toString();\n };\n DataLayerExtractors[\"EDDInformation\"] = function (dataSource) {\n var a = [];\n if (typeof dataSource !== 'undefined' && typeof dataSource.EDDMessage !== 'undefined') {\n a = dataSource.EDDMessage;\n }\n return a;\n };\n DataLayerExtractors[\"ErrorMessage\"] = function (dataSource) {\n var a = \"\";\n var uniqueValues = [];\n var CleanUpErrorMessage = function anon(input) {\n return input;\n };\n if (typeof dataSource !== 'undefined' && typeof dataSource.ErrorMessage !== 'undefined') {\n if (typeof dataSource.ErrorMessage == 'string') {\n uniqueValues = [CleanUpErrorMessage(dataSource.ErrorMessage)];\n }\n else {\n for (var i = 0; i < dataSource.ErrorMessage.length; i++) {\n var message = CleanUpErrorMessage(dataSource.ErrorMessage[i]);\n if (typeof uniqueValues.indexOf === \"undefined\" || uniqueValues.indexOf(message) < 0)\n uniqueValues.push(message);\n }\n ;\n }\n }\n if (typeof dataSource !== \"undefined\" && typeof dataSource.ProductsInFamily !== \"undefined\" && dataSource.ProductsInFamily == \"0\") {\n uniqueValues.push(\"No products match your filter criteria try adjusting your filters.\");\n }\n a = uniqueValues.join(\",\");\n return a;\n };\n DataLayerExtractors[\"EventType\"] = function (dataSource) {\n var a = \"\";\n if (typeof dataSource !== 'undefined' && typeof dataSource.EventType !== 'undefined') {\n a = dataSource.EventType;\n }\n return a;\n };\n DataLayerExtractors[\"FamilyID\"] = function (dataSource) {\n var a = \"\";\n if (typeof dataSource !== 'undefined' && typeof dataSource.FamilyID !== 'undefined') {\n a = dataSource.FamilyID;\n }\n else if (typeof dataSource !== 'undefined' && typeof dataSource.CategoryID !== 'undefined') {\n a = dataSource.CategoryID;\n }\n return a;\n };\n DataLayerExtractors[\"FamilyName\"] = function (dataSource) {\n var a = \"\";\n if (typeof dataSource !== 'undefined' && typeof dataSource.FamilyName !== 'undefined') {\n a = dataSource.FamilyName;\n }\n else if (typeof dataSource !== 'undefined' && typeof dataSource.CategoryName !== 'undefined') {\n a = dataSource.CategoryName;\n }\n else {\n a = HelperFunctions.ScrapeTextViaSelector(\"#navigation > div.content_wrapper_position > div > div.content_left_shadow > div > div > div.widget_title_container_position > div > h1\");\n }\n return a;\n };\n DataLayerExtractors[\"FamilyProductCount\"] = function (dataSource) {\n var a = 0;\n if (typeof dataSource !== 'undefined' && typeof dataSource.ProductsInFamily !== 'undefined') {\n a = parseInt(dataSource.ProductsInFamily);\n if (isNaN(a)) {\n a = 0;\n }\n }\n return a;\n };\n DataLayerExtractors[\"GiftingEnabled\"] = function (dataSource) {\n var a = false;\n if (typeof dataSource !== 'undefined' && typeof dataSource.checkout !== 'undefined' && typeof dataSource.checkout.gift !== 'undefined' && typeof dataSource.checkout.gift.gifting_enabled !== 'undefined') {\n a = dataSource.checkout.gift.gifting_enabled;\n }\n return a;\n };\n DataLayerExtractors[\"HashedEmailAddress\"] = function (dataSource) {\n var out = \"\";\n if (typeof dataSource.EAthlete === \"string\") {\n out = dataSource.EAthlete.toUpperCase();\n }\n else if (typeof dataSource.checkout != \"undefined\" && typeof dataSource.checkout.shopper != \"undefined\" && typeof dataSource.checkout.shopper.analytics != \"undefined\" && (typeof dataSource.checkout.shopper.analytics.hashed_identifier != \"undefined\" || typeof dataSource.checkout.shopper.analytics.hashedIdentifier != \"undefined\")) {\n out = (dataSource.checkout.shopper.analytics.hashed_identifier || dataSource.checkout.shopper.analytics.hashedIdentifier).toUpperCase();\n }\n else if (HelperFunctions.GetQueryStringValue(\"customerkey\") && HelperFunctions.GetQueryStringValue(\"customerkey\").length === 64) {\n out = HelperFunctions.GetQueryStringValue(\"customerkey\");\n }\n return out;\n };\n DataLayerExtractors[\"InternalSearchDYM\"] = function (dataSource) {\n var a = \"\";\n var dataSource;\n if (_dsgTag.SearchTestData) {\n dataSource = _dsgTag.SearchTestData;\n }\n else if (typeof dataSource !== 'undefined') {\n dataSource = dataSource;\n }\n var enteredTerm = DataLayer.GetValue(\"InternalSearchTerm\", dataSource);\n if (typeof dataSource !== 'undefined') {\n var DYMUsed = dataSource.DYMUsed || (typeof dataSource.DYMType !== 'undefined' && dataSource.DYMType !== \"N/A\" ? \"Y\" : \"N\");\n var term = \"\";\n if (DYMUsed === 'Y' && typeof dataSource.DYMTerm !== 'undefined' && dataSource.DYMTerm !== \"\" && enteredTerm) {\n try {\n term = dataSource.DYMTerm.toLowerCase();\n term = decodeURIComponent(decodeURIComponent(term));\n }\n catch (x) { }\n a = term + \"|\" + enteredTerm;\n }\n }\n return a;\n };\n DataLayerExtractors[\"InternalSearchResultsCount\"] = function (dataSource) {\n var a = \"\";\n if (_dsgTag.SearchTestData) {\n a = _dsgTag.SearchTestData.SearchResultCount.toString();\n }\n else if (window.location.pathname.indexOf(\"/s/no-search-results-found\") >= 0) {\n a = \"0\";\n }\n else if (typeof dataSource !== 'undefined' && typeof dataSource.ResultsCount !== 'undefined' && dataSource.ResultsCount !== '') {\n a = dataSource.ResultsCount;\n }\n else if (typeof dataSource !== 'undefined' && typeof dataSource.SearchResultCount !== 'undefined' && dataSource.SearchResultCount !== '') {\n a = dataSource.SearchResultCount;\n }\n else if (typeof dataSource !== 'undefined' && typeof dataSource.ProductsInFamily !== 'undefined' && dataSource.ProductsInFamily !== '') {\n a = dataSource.ProductsInFamily;\n }\n else if (window.location.pathname.indexOf(\"/p/\") >= 0) {\n a = \"1\";\n }\n return a;\n };\n DataLayerExtractors[\"InternalSearchTerm\"] = function (dataSource) {\n var a = \"\";\n if (!dataSource.pageTypeOverride) {\n if (_dsgTag.SearchTestData) {\n a = _dsgTag.SearchTestData.EnteredSearchTerm;\n }\n else if (typeof dataSource !== 'undefined' && typeof dataSource.EnteredSearchTerm !== 'undefined' && dataSource.EnteredSearchTerm !== \"\") {\n a = dataSource.EnteredSearchTerm;\n }\n else if (HelperFunctions.GetQueryStringValue(\"searchTerm\")) {\n if (HelperFunctions.GetQueryStringValue(\"SearchType\") === \"Category\" && typeof dataSource.CategoryName !== 'undefined') {\n a = dataSource.CategoryName;\n }\n else if (HelperFunctions.GetQueryStringValue(\"SearchType\") === \"Category\" && typeof dataSource.FamilyName !== 'undefined') {\n a = dataSource.FamilyName;\n }\n else if (HelperFunctions.GetQueryStringValue(\"ddSearchType\") === \"Category\" && typeof dataSource.CategoryName !== 'undefined') {\n a = dataSource.CategoryName;\n }\n else if (HelperFunctions.GetQueryStringValue(\"ddSearchType\") === \"Category\" && typeof dataSource.FamilyName !== 'undefined') {\n a = dataSource.FamilyName;\n }\n else {\n a = HelperFunctions.GetQueryStringValue(\"searchTerm\");\n }\n }\n else if (HelperFunctions.GetQueryStringValue(\"enteredSearchTerm\")) {\n if (HelperFunctions.GetQueryStringValue(\"SearchType\") === \"Category\" && typeof dataSource.CategoryName !== 'undefined') {\n a = dataSource.CategoryName;\n }\n else if (HelperFunctions.GetQueryStringValue(\"SearchType\") === \"Category\" && typeof dataSource.FamilyName !== 'undefined') {\n a = dataSource.FamilyName;\n }\n else if (HelperFunctions.GetQueryStringValue(\"ddSearchType\") === \"Category\" && typeof dataSource.CategoryName !== 'undefined') {\n a = dataSource.CategoryName;\n }\n else if (HelperFunctions.GetQueryStringValue(\"ddSearchType\") === \"Category\" && typeof dataSource.FamilyName !== 'undefined') {\n a = dataSource.FamilyName;\n }\n else {\n a = HelperFunctions.GetQueryStringValue(\"enteredSearchTerm\");\n }\n }\n else if (HelperFunctions.GetQueryStringValue(\"manufacturer\")) {\n a = \"Brand: \" + HelperFunctions.GetQueryStringValue(\"manufacturer\");\n }\n else if ((HelperFunctions.GetQueryStringValue(\"Product\") === \"ProductSuggest\" || HelperFunctions.GetQueryStringValue(\"Product\") === \"SuggestedPinnedProduct\") && typeof dataSource.ProductName !== 'undefined') {\n a = dataSource.ProductName;\n }\n a = decodeURIComponent(a).replace(/\\+/g, \" \").toLowerCase();\n }\n return a;\n };\n DataLayerExtractors[\"InternalSearchType\"] = function (dataSource) {\n var a = \"\";\n var dataSource;\n if (_dsgTag.SearchTestData) {\n dataSource = _dsgTag.SearchTestData;\n }\n else if (typeof dataSource !== 'undefined') {\n dataSource = dataSource;\n }\n var getAllEcodesAndSKUs = function anon() {\n var output = [];\n if (typeof dataSource.ProductDetails !== 'undefined') {\n for (var i = 0; i < dataSource.ProductDetails.length; i++) {\n output.push(dataSource.ProductDetails[i].ProductID);\n for (var j = 0; j < dataSource.ProductDetails[i].ProductSKUDetails.length; j++) {\n output.push(dataSource.ProductDetails[i].ProductSKUDetails[j].ProductSKU);\n }\n }\n }\n return output.join(\";\");\n };\n if (typeof dataSource !== 'undefined') {\n var searchTerm = DataLayer.GetValue(\"InternalSearchTerm\", dataSource);\n var results = DataLayer.GetValue(\"InternalSearchResultsCount\", dataSource);\n var referrer = dataSource.ReferringPageURL || document.referrer;\n var DYMUsed = dataSource.DYMUsed || (typeof dataSource.DYMType !== 'undefined' && dataSource.DYMType !== \"\" && dataSource.DYMType !== \"N/A\" ? \"Y\" : \"N\");\n if (searchTerm && (!_dsgTag.previousPageValues[\"v1\"] || referrer.indexOf(\"SearchDisplay\") === -1 || DYMUsed === 'Y')) {\n a = \"Keyword\";\n if (results && results == \"0\") {\n a = \"Failed\";\n }\n else if (typeof dataSource.SearchType !== \"undefined\" && dataSource.SearchType !== \"\") {\n a = dataSource.SearchType;\n if (dataSource.DYMType === \"DYMAuto\" || dataSource.DYMType === \"DYM Auto\") {\n a = \"DYM Auto\";\n }\n else if (dataSource.DYMType === \"DYMClicked\" || dataSource.DYMType === \"DYM Clicked\") {\n a = \"DYM Clicked\";\n }\n else if (dataSource.FuzzyMatch) {\n a = \"Fuzzy Search\";\n }\n var IDList = getAllEcodesAndSKUs();\n if (IDList && (typeof Array.prototype.indexOf !== \"undefined\" && IDList.indexOf(searchTerm) >= 0 || /^\\d+$/g.test(searchTerm))) {\n a = \"Search By Product ID\";\n }\n }\n else if (HelperFunctions.GetQueryStringValue(\"urlRequestType\")) {\n if (dataSource.PageType === \"Search Page\") {\n a = \"Keyword Searches - Brand\";\n }\n else if (dataSource.PageType === \"Product Page\") {\n a = \"Keyword Searches - Success Suggested\";\n }\n }\n else if (DYMUsed === 'Y') {\n if (dataSource.DYMType.toLowerCase().indexOf('auto') >= 0) {\n a = \"DYM Auto\";\n }\n else {\n a = \"DYM Clicked\";\n }\n }\n else if (typeof dataSource.SuggestionSelected !== 'undefined' && dataSource.SuggestionSelected === \"Y\") {\n a = \"Keyword Searches - Success Suggested\";\n }\n else if (HelperFunctions.GetQueryStringValue(\"Product\") === \"ProductSuggest\") {\n a = \"Suggested Product\";\n }\n else if (HelperFunctions.GetQueryStringValue(\"Product\") === \"SuggestedPinnedProduct\") {\n a = \"Suggested Pinned Product\";\n }\n else if (dataSource && (dataSource.PageType === \"Product Page\" || (typeof dataSource.ProductDetails !== 'undefined' && dataSource.ProductDetails.length > 0))) {\n a = \"Search By Product ID\";\n }\n else if (dataSource && (dataSource.PageType === \"Category Page\" || dataSource.PageType === \"Family Page\")) {\n a = \"Keyword Searches - Success Suggested\";\n }\n else if (HelperFunctions.GetQueryStringValue(\"SearchType\")) {\n a = \"Suggested \" + HelperFunctions.GetQueryStringValue(\"SearchType\");\n }\n else if (HelperFunctions.GetQueryStringValue(\"ddSearchType\")) {\n a = \"Suggested \" + HelperFunctions.GetQueryStringValue(\"ddSearchType\");\n }\n if (a === \"Keyword\" && HelperFunctions.GetQueryStringValue(\"DSGSearchType\")) {\n a = HelperFunctions.GetQueryStringValue(\"DSGSearchType\");\n }\n }\n if (typeof dataSource !== 'undefined' && a && (dataSource.MLRank || dataSource.MLSpelling || dataSource.MLRewrite)) {\n a = \"ML_\" + a;\n }\n }\n return a.replace(/\\+/g, \" \");\n };\n DataLayerExtractors[\"IsQuickView\"] = function (dataSource) {\n return (typeof dataSource !== 'undefined' && DataLayer.GetValue(\"ProductPageTemplateType\", dataSource) && DataLayer.GetValue(\"ProductPageTemplateType\", dataSource).toLowerCase().indexOf(\"quickview\") >= 0);\n };\n DataLayerExtractors[\"LoginID\"] = function (dataSource) {\n if (typeof dataSource !== 'undefined' && typeof dataSource.IdentityId !== 'undefined') {\n return dataSource.IdentityId;\n }\n return \"\";\n };\n DataLayerExtractors[\"LoyaltyID\"] = function (dataSource) {\n var a = \"\";\n if (typeof dataSource !== 'undefined' && typeof dataSource.LoyaltyID !== 'undefined') {\n a = dataSource.LoyaltyID;\n }\n else if (typeof dataSource !== 'undefined' && typeof dataSource.RewardsCardNumber !== 'undefined') {\n a = dataSource.RewardsCardNumber;\n }\n else if (typeof dataSource !== 'undefined' && typeof dataSource.checkout !== 'undefined' && typeof dataSource.checkout.score_card !== 'undefined' && typeof dataSource.checkout.score_card.number !== 'undefined') {\n a = dataSource.checkout.score_card.number;\n }\n a = /^\\w+$/i.test(a) ? a : \"\";\n if (a === \"NA\") {\n a = \"\";\n }\n return a;\n };\n DataLayerExtractors[\"LoyaltyIDNoFilter\"] = function (dataSource) {\n var a = \"\";\n if (typeof dataSource !== 'undefined' && typeof dataSource.LoyaltyID !== 'undefined') {\n a = dataSource.LoyaltyID;\n }\n else if (typeof dataSource !== 'undefined' && typeof dataSource.RewardsCardNumber !== 'undefined') {\n a = dataSource.RewardsCardNumber;\n }\n else if (typeof dataSource !== 'undefined' && typeof dataSource.checkout !== 'undefined' && typeof dataSource.checkout.score_card !== 'undefined' && typeof dataSource.checkout.score_card.number !== 'undefined') {\n a = dataSource.checkout.score_card.number;\n }\n if (a === \"NA\") {\n a = \"\";\n }\n return a;\n };\n DataLayerExtractors[\"LoyaltyPoints\"] = function (dataSource) {\n var a = \"\";\n if (typeof dataSource !== 'undefined' && typeof dataSource.PointsBalance !== 'undefined') {\n a = dataSource.PointsBalance;\n }\n else if (typeof dataSource !== 'undefined' && typeof dataSource.LoyaltyPointsBalance !== 'undefined') {\n a = dataSource.LoyaltyPointsBalance;\n }\n return a;\n };\n DataLayerExtractors[\"MCSalesCatalogDetails\"] = function (dataSource) {\n if (typeof dataSource !== 'undefined' && typeof dataSource.MCSalesCatalogDetails !== 'undefined') {\n return dataSource.MCSalesCatalogDetails;\n }\n return [];\n };\n DataLayerExtractors[\"MachineLearningSearchValues\"] = function (dataSource) {\n var a = [];\n if (typeof dataSource !== 'undefined') {\n if (dataSource.MLGroup || dataSource.MLBypass || dataSource.MLRank || dataSource.MLRewrite || dataSource.MLSpelling) {\n a.push(dataSource.MLGroup);\n a.push(dataSource.MLBypass);\n a.push(dataSource.MLRank);\n a.push(dataSource.MLRewrite);\n a.push(dataSource.MLSpelling);\n }\n }\n return a;\n };\n DataLayerExtractors[\"MobileCustomerID\"] = function (dataSource) {\n var a = \"\";\n if (HelperFunctions.GetQueryStringValue(\"customer_identifier\")) {\n a = HelperFunctions.GetQueryStringValue(\"customer_identifier\");\n }\n return a;\n };\n DataLayerExtractors[\"NikeConnected\"] = function (dataSource) {\n var a = \"\";\n if (HelperFunctions.GetValue(\"NikeConnected\")) {\n return HelperFunctions.GetValue(\"NikeConnected\") == \"true\";\n }\n else if (typeof dataSource !== \"undefined\" && typeof dataSource.nikeConnected !== \"undefined\") {\n a = dataSource.nikeConnected;\n }\n return a;\n };\n DataLayerExtractors[\"NikeConnectedProduct\"] = function (dataSource) {\n var a = false;\n if (typeof dataSource !== \"undefined\" && typeof dataSource.nikeConnectedProduct !== \"undefined\") {\n a = dataSource.nikeConnectedProduct;\n }\n return a;\n };\n DataLayerExtractors[\"OrderDiscountTotal\"] = function (dataSource) {\n var a = \"\";\n if (typeof dataSource !== 'undefined' && typeof dataSource.DiscountTotal !== 'undefined') {\n a = dataSource.DiscountTotal.toString().replace(\",\", \"\");\n }\n else if (typeof dataSource !== 'undefined' && typeof dataSource.TotalOrderDiscount !== 'undefined') {\n a = dataSource.TotalOrderDiscount.toString().replace(\",\", \"\");\n }\n return a;\n };\n DataLayerExtractors[\"OrderFirstNameBilling\"] = function (dataSource) {\n var a = \"\";\n if (dataSource.checkout && dataSource.checkout.addresses) {\n if (dataSource.checkout.addresses[\"BILLING\"]) {\n a = dataSource.checkout.addresses[\"BILLING\"].first_name;\n }\n else if (dataSource.checkout.addresses[\"SHIPPINGBILLING\"]) {\n a = dataSource.checkout.addresses[\"SHIPPINGBILLING\"].first_name;\n }\n else {\n for (var i = 0; i < Object.keys(dataSource.checkout.addresses).length && !a; i++) {\n a = dataSource.checkout.addresses[Object.keys(dataSource.checkout.addresses)[i]].first_name;\n }\n }\n }\n return a;\n };\n DataLayerExtractors[\"OrderLastNameBilling\"] = function (dataSource) {\n var a = \"\";\n if (dataSource.checkout && dataSource.checkout.addresses) {\n if (dataSource.checkout.addresses[\"BILLING\"]) {\n a = dataSource.checkout.addresses[\"BILLING\"].last_name;\n }\n else if (dataSource.checkout.addresses[\"SHIPPINGBILLING\"]) {\n a = dataSource.checkout.addresses[\"SHIPPINGBILLING\"].last_name;\n }\n else {\n for (var i = 0; i < Object.keys(dataSource.checkout.addresses).length && !a; i++) {\n a = dataSource.checkout.addresses[Object.keys(dataSource.checkout.addresses)[i]].last_name;\n }\n }\n }\n return a;\n };\n DataLayerExtractors[\"OrderID\"] = function (dataSource) {\n var a = \"\";\n if (window.location.pathname.toLowerCase().indexOf(\"myaccount/orderdetail/\") >= 0) {\n try {\n a = window.location.pathname.split(\"/\")[3];\n }\n catch (ex) { }\n }\n else if (typeof dataSource !== 'undefined' && typeof dataSource.OrderID !== 'undefined') {\n a = dataSource.OrderID;\n }\n else if (HelperFunctions.GetQueryStringValue(\"orderId\")) {\n a = HelperFunctions.GetQueryStringValue(\"orderId\");\n if (!(/^\\d+$/g.test(a))) {\n a = \"\";\n }\n }\n return a;\n };\n DataLayerExtractors[\"OrderLevelPromoCodes\"] = function (dataSource) {\n var a = [];\n if (typeof dataSource !== 'undefined' && typeof dataSource.OrderLevelPromoCodes !== 'undefined') {\n a = dataSource.OrderLevelPromoCodes;\n }\n return a;\n };\n DataLayerExtractors[\"OrderPaymentMethods\"] = function (dataSource) {\n var a = [];\n if (_dsgTag.previousPageValues[\"AfterPay\"]) {\n return [\"AFTERPAY\"];\n }\n if (typeof dataSource !== 'undefined') {\n if (typeof dataSource.PaymentMethod !== 'undefined' || typeof dataSource.PaymentType !== 'undefined') {\n var b = dataSource.PaymentMethod || dataSource.PaymentType;\n for (var i = 0; i < b.length; i++) {\n var val = b[i];\n if (_dsgTag.previousPageValues[\"Affirm\"] && val.toLowerCase().indexOf(\"visa\") >= 0) {\n val += \" (AFFIRM)\";\n }\n if (typeof a.indexOf === \"undefined\" || a.indexOf(val) < 0)\n a.push(val);\n }\n a.sort();\n }\n else if (dataSource.checkout && dataSource.checkout.payment && dataSource.checkout.payment.payment_processor && dataSource.checkout.payment.payment_processor.processor) {\n if (dataSource.checkout.payment.payment_processor.processor.toLowerCase() === \"paypal\") {\n a = [\"PAYPAL\"];\n }\n else if (dataSource.checkout.payment.payment_processor.processor.toLowerCase() === \"applepay\" && dataSource.checkout.payment.payment_processor.payment_type) {\n a = [dataSource.checkout.payment.payment_processor.payment_type];\n }\n }\n }\n if (typeof dataSource !== 'undefined' && typeof dataSource.PromoCodesList === \"object\" && dataSource.PromoCodesList.length > 0 && dataSource.PromoCodesList[0].match(/^RWD|CC|CS|FSH/i)) {\n a = [\"No Tender Required\"];\n }\n return a;\n };\n DataLayerExtractors[\"OrderSameBillingAndShipping\"] = function (dataSource) {\n var a = false;\n if (typeof dataSource !== 'undefined' && dataSource.checkout && dataSource.checkout.shipping && dataSource.checkout.shipping.sameBillingShipping) {\n a = dataSource.checkout.shipping.sameBillingShipping.toString() == \"true\";\n }\n return a;\n };\n DataLayerExtractors[\"OrderShippingDiscount\"] = function (dataSource) {\n var a = 0;\n if (typeof dataSource !== 'undefined' && typeof dataSource.ShipDiscountAmount !== 'undefined') {\n a = Math.abs(dataSource.ShipDiscountAmount.toString().replace(\",\", \"\"));\n }\n else if (typeof dataSource !== 'undefined' && typeof dataSource.ShippingDiscountAmount !== 'undefined') {\n a = Math.abs(dataSource.ShippingDiscountAmount.toString().replace(\",\", \"\"));\n }\n return a;\n };\n DataLayerExtractors[\"OrderShippingMethod\"] = function (dataSource) {\n var a = \"\";\n if (typeof dataSource !== 'undefined' && typeof dataSource.ShipMethod !== 'undefined') {\n a = dataSource.ShipMethod;\n }\n else if (typeof dataSource !== 'undefined' && typeof dataSource.ShippingMethod !== 'undefined') {\n var b = dataSource.ShippingMethod;\n var c = [];\n for (var i = 0; i < b.length; i++) {\n var val = b[i];\n if (typeof c.indexOf === \"undefined\" || c.indexOf(val) < 0)\n c.push(val);\n }\n c.sort();\n a = c.join(\": \");\n }\n return a;\n };\n DataLayerExtractors[\"OrderShippingRevenue\"] = function (dataSource) {\n var a = \"\";\n if (typeof dataSource !== 'undefined' && typeof dataSource.ShipAmount !== 'undefined') {\n a = dataSource.ShipAmount.toString().replace(\",\", \"\");\n }\n else if (typeof dataSource !== 'undefined' && typeof dataSource.ShippingTotal !== 'undefined') {\n a = dataSource.ShippingTotal.toString().replace(\",\", \"\");\n }\n return a;\n };\n DataLayerExtractors[\"OrderTax\"] = function (dataSource) {\n var a = \"\";\n if (typeof dataSource !== 'undefined' && typeof dataSource.TaxAmount !== 'undefined') {\n a = dataSource.TaxAmount.toString().replace(\",\", \"\");\n }\n else if (typeof dataSource !== 'undefined' && typeof dataSource.TaxTotal !== 'undefined') {\n a = dataSource.TaxTotal.toString().replace(\",\", \"\");\n }\n else if (typeof dataSource !== 'undefined' && typeof dataSource.checkout !== 'undefined') {\n a = dataSource.checkout.pricing.total_tax.toString().replace(\",\", \"\");\n }\n return a;\n };\n DataLayerExtractors[\"OrderTip\"] = function (dataSource) {\n var a = \"\";\n if (typeof dataSource !== 'undefined' && typeof dataSource.TipAmount !== 'undefined') {\n a = dataSource.TipAmount.toString().replace(\",\", \"\");\n }\n return a;\n };\n DataLayerExtractors[\"OrderTotal\"] = function (dataSource) {\n var a = \"\";\n if (typeof dataSource !== 'undefined' && typeof dataSource.OrderTotal !== 'undefined') {\n a = dataSource.OrderTotal.toString().replace(\",\", \"\");\n }\n return a;\n };\n DataLayerExtractors[\"PageName\"] = function (dataSource) {\n var a = \"\";\n if (typeof dataSource !== 'undefined') {\n if (typeof dataSource.Page !== 'undefined') {\n a = dataSource.Page;\n }\n else if (typeof dataSource.PageName !== 'undefined') {\n a = dataSource.PageName;\n }\n }\n return a;\n };\n DataLayerExtractors[\"PageType\"] = function (dataSource) {\n var a = \"\";\n if (typeof dataSource !== 'undefined') {\n if (typeof dataSource.PageType !== 'undefined') {\n a = dataSource.PageType;\n }\n else if (typeof dataSource.EventType !== 'undefined' && dataSource.EventType === \"CheckoutStep\" && typeof dataSource.CheckoutStep !== \"undefined\") {\n a = dataSource.CheckoutStep;\n }\n }\n return a;\n };\n DataLayerExtractors[\"PageTypeOverride\"] = function (dataSource) {\n var a = \"\";\n if (typeof dataSource !== 'undefined') {\n if (typeof dataSource.pageTypeOverride !== 'undefined') {\n a = dataSource.pageTypeOverride;\n }\n }\n return a;\n };\n DataLayerExtractors[\"PageURL\"] = function (dataSource) {\n var a = \"\";\n if (typeof dataSource !== 'undefined' && typeof dataSource.PageURL !== 'undefined' && dataSource.PageURL !== '') {\n a = dataSource.PageURL;\n if (dataSource.PageURL.indexOf(window.location.protocol) < 0)\n a = window.location.protocol + a;\n }\n else if (typeof dataSource !== 'undefined' && typeof dataSource.PageUrl !== 'undefined' && dataSource.PageUrl !== '') {\n a = dataSource.PageUrl;\n if (dataSource.PageUrl.indexOf(window.location.protocol) < 0)\n a = window.location.protocol + a;\n }\n else {\n a = window.location.href;\n }\n return a.toLowerCase();\n };\n DataLayerExtractors[\"PDPPaypalEligible\"] = function (dataSource) {\n var a = false;\n if (typeof dataSource !== 'undefined' && typeof dataSource.ProductDetails !== 'undefined' && dataSource.ProductDetails.length > 0 && typeof dataSource.ProductDetails[0].PayPaylEliglible !== \"undefined\") {\n a = dataSource.ProductDetails[0].PayPaylEliglible;\n }\n return a;\n };\n DataLayerExtractors[\"PDPPeopleViewing\"] = function (dataSource) {\n var a = 0;\n if (typeof dataSource !== 'undefined' && typeof dataSource.PageViews !== 'undefined') {\n a = dataSource.PageViews;\n }\n return a;\n };\n DataLayerExtractors[\"PDPPromoMessage\"] = function (dataSource) {\n if (typeof dataSource !== \"undefined\" && typeof dataSource.PromoMessage !== \"undefined\") {\n return dataSource.PromoMessage;\n }\n return [];\n };\n DataLayerExtractors[\"PLPEventID\"] = function (dataSource) {\n if (typeof dataSource !== \"undefined\" && typeof dataSource.PLP_event_id !== \"undefined\") {\n return dataSource.PLP_event_id;\n }\n return \"\";\n };\n DataLayerExtractors[\"PriceRange\"] = function (dataSource) {\n var a = \"\";\n if (typeof dataSource !== 'undefined' && typeof dataSource.ProductDetails !== 'undefined' && dataSource.ProductDetails.length > 0 && typeof dataSource.ProductDetails[0].ProductSKUDetails !== 'undefined') {\n var min = 9999999;\n var max = 0;\n for (var i = 0; i < dataSource.ProductDetails[0].ProductSKUDetails.length; i++) {\n var currentPrice = parseFloat(dataSource.ProductDetails[0].ProductSKUDetails[i].SKUCurrentPrice);\n if (isNaN(currentPrice)) {\n return \"Price in Cart\";\n }\n max = (currentPrice > max) ? currentPrice : max;\n min = (currentPrice < min) ? currentPrice : min;\n }\n a = (min + (min < max ? \" - \" + max : \"\")).toString();\n }\n return a.toLowerCase();\n };\n DataLayerExtractors[\"PriceType\"] = function (dataSource) {\n var a = \"\";\n var GetTypeOfPrice = function anon(currentPrice, listPrice) {\n var output = \"Price Unavailable\";\n if (currentPrice.toString().toLowerCase().indexOf(\"see\") > -1) {\n return \"Price in Cart\";\n }\n listPrice = listPrice || 0;\n currentPrice = parseFloat(currentPrice);\n listPrice = parseFloat(listPrice);\n if (currentPrice > 0) {\n var cents = currentPrice.toFixed(2).split(\".\")[1];\n switch (cents) {\n case \"02\":\n case \"92\":\n case \"93\":\n case \"97\": {\n output = \"Clearance\";\n break;\n }\n case \"98\": {\n output = \"Sale\";\n break;\n }\n case \"99\":\n default: {\n if (currentPrice < listPrice) {\n output = \"Offer Less Than List\";\n }\n else {\n output = \"Regular\";\n }\n break;\n }\n }\n }\n return output;\n };\n if (typeof dataSource !== 'undefined' && typeof dataSource.CurrentPrice !== 'undefined') {\n a = GetTypeOfPrice(dataSource.CurrentPrice.toString());\n }\n else if (typeof dataSource !== 'undefined' && typeof dataSource.CurrentPricePerUnit !== 'undefined' && typeof dataSource.ListPricePerUnit !== 'undefined') {\n a = GetTypeOfPrice(dataSource.CurrentPricePerUnit.toString(), dataSource.ListPricePerUnit.toString());\n }\n else if (typeof dataSource !== 'undefined' && typeof dataSource.ProductDetails !== 'undefined' && dataSource.ProductDetails.length > 0 && typeof dataSource.ProductDetails[0].ProductSKUDetails !== 'undefined') {\n var range = false;\n var prevPrice = -1;\n var types = [];\n for (var i = 0; i < dataSource.ProductDetails[0].ProductSKUDetails.length; i++) {\n var currentPrice = dataSource.ProductDetails[0].ProductSKUDetails[i].SKUCurrentPrice;\n var listPrice = dataSource.ProductDetails[0].ProductSKUDetails[i].SKUListPrice;\n var newPriceType = GetTypeOfPrice(currentPrice, listPrice);\n if (newPriceType === \"Price in Cart\") {\n types = [newPriceType];\n range = false;\n break;\n }\n range = range || (prevPrice > 0 && prevPrice !== currentPrice);\n prevPrice = currentPrice;\n types.push(newPriceType);\n }\n var uniqueValues = [];\n for (var i = 0; i < types.length; i++) {\n if (typeof uniqueValues.indexOf === \"undefined\" || uniqueValues.indexOf(types[i]) === -1)\n uniqueValues.push(types[i]);\n }\n a = uniqueValues.sort().join(\"-\");\n if (range)\n a = \"Range: \" + a;\n }\n return a;\n };\n DataLayerExtractors[\"ProductAvailability\"] = function (dataSource) {\n var a = \"\";\n if (typeof dataSource !== 'undefined') {\n if (typeof dataSource.ProductAvailability !== 'undefined') {\n a = dataSource.ProductAvailability;\n }\n else if (typeof dataSource.ProductDetails !== 'undefined') {\n var inStock = false;\n try {\n inStock = (dataSource.ProductDetails.length > 0 && dataSource.ProductDetails[0].ProductSKUDetails.length > 0);\n }\n catch (ex) { }\n a = inStock ? \"true\" : \"Out of Stock\";\n }\n else if (typeof dataSource.ProductDetails === 'undefined') {\n a = \"Out of Stock\";\n }\n }\n return a;\n };\n DataLayerExtractors[\"ProductBrand\"] = function (dataSource) {\n if (typeof dataSource.ProductDetails !== 'undefined' && dataSource.ProductDetails.length > 0 && typeof dataSource.ProductDetails[0].ProductBrand !== \"undefined\") {\n return dataSource.ProductDetails[0].ProductBrand;\n }\n return \"\";\n };\n DataLayerExtractors[\"ProductBuyable\"] = function (dataSource) {\n var a = false;\n if (typeof dataSource !== \"undefined\" && typeof dataSource.Buyable !== \"undefined\") {\n a = dataSource.Buyable.toLowerCase() != \"n\";\n }\n else if (typeof dataSource !== \"undefined\" && typeof dataSource.ProductDetails !== \"undefined\") {\n var buyable = false;\n for (var i = 0; i < dataSource.ProductDetails.length && !buyable; i++) {\n for (var j = 0; j < dataSource.ProductDetails[i].ProductSKUDetails.length && !buyable; j++) {\n buyable = (typeof dataSource.ProductDetails[i].ProductSKUDetails[j].AddtoCartAvailable !== \"undefined\" && dataSource.ProductDetails[i].ProductSKUDetails[j].AddtoCartAvailable.toString().toLowerCase() === \"true\") || (typeof dataSource.ProductDetails[i].ProductSKUDetails[j].BOPISAvailable !== \"undefined\" && dataSource.ProductDetails[i].ProductSKUDetails[j].BOPISAvailable.toString().toLowerCase() === \"true\");\n }\n }\n a = buyable;\n }\n return a;\n };\n DataLayerExtractors[\"ProductCurrentPriceList\"] = function (dataSource) {\n var a = [];\n if (typeof dataSource !== 'undefined') {\n if (typeof dataSource.ProductDetails !== 'undefined') {\n var PriceArray = [];\n for (var i = 0; i < dataSource.ProductDetails.length; i++) {\n for (var j = 0; j < dataSource.ProductDetails[i].ProductSKUDetails.length; j++) {\n PriceArray.push(dataSource.ProductDetails[i].ProductSKUDetails[j].SKUCurrentPrice);\n }\n }\n a = PriceArray;\n }\n }\n return a;\n };\n DataLayerExtractors[\"ProductDetails\"] = function (dataSource) {\n var a = {};\n if (typeof dataSource !== \"undefined\" && typeof dataSource.ProductDetails !== \"undefined\") {\n a = dataSource.ProductDetails;\n }\n return a;\n };\n DataLayerExtractors[\"ProductSKUEdd\"] = function (dataSource) {\n var a = [];\n if (typeof dataSource !== \"undefined\" && typeof dataSource.AllSkuEDD !== \"undefined\") {\n a = dataSource.AllSkuEDD;\n }\n return a;\n };\n DataLayerExtractors[\"ProductFindingMethod\"] = function (dataSource) {\n var a = \"Browse\";\n var b;\n if (typeof window.s !== \"undefined\") {\n var prevPageName = _dsgTag.previousPageValues[\"v27\"];\n var referringURL = \"\";\n if (typeof dataSource !== \"undefined\" && typeof dataSource.ReferringPageURL !== \"undefined\") {\n referringURL = dataSource.ReferringPageURL;\n }\n else if (document.referrer) {\n referringURL = document.referrer;\n }\n if (DataLayer.GetValue(\"IsQuickView\", dataSource)) {\n a = \"Quick View - \" + _dsgTag.pageType.Name;\n if (dataSource.ReferringPage) {\n a += \" - \" + dataSource.ReferringPage;\n }\n if (dataSource.ReferringPage.toLowerCase() == \"aempl\" && dataSource.AdditionalData) {\n a += \":\" + dataSource.AdditionalData;\n }\n }\n else if (_dsgTag.previousPageValues[\"Refinement\"]) {\n if (prevPageName && prevPageName.indexOf(\"Search: Results\") > -1)\n a = \"Search Page Refinement\";\n else if (prevPageName && prevPageName.indexOf(\"Family:\") > -1)\n a = \"Family Page Refinement\";\n }\n else if (b = HelperFunctions.GetQueryStringValue(\"recid\") || _dsgTag.previousPageValues[\"CertonaClick\"]) {\n b = b.toLowerCase();\n a = \"Other\";\n if (b.indexOf(\"category_rr\") > -1)\n a = \"Category Page - Recently Viewed\";\n else if (b.indexOf(\"category\") > -1)\n a = \"Category Page\";\n else if (b.indexOf(\"family1\") > -1)\n a = \"Family Page - Recently Viewed\";\n else if (b.indexOf(\"family_rr\") > -1)\n a = \"Family Page - Recommendations\";\n else if (b.indexOf(\"family\") > -1)\n a = \"Family Page\";\n else if (b.indexOf(\"oosproduct_rr\") > -1)\n a = \"OOS Product - Similar Products\";\n else if (b.indexOf(\"oosproduct2_rr\") > -1)\n a = \"OOS Product - Recommendations\";\n else if (b.indexOf(\"oosproduct3_rr\") > -1)\n a = \"OOS Product - Recently Viewed\";\n else if (b.indexOf(\"oosproduct\") > -1)\n a = \"OOS Product\";\n else if ((b.indexOf(\"product1_rr\") > -1) || (b.indexOf(\"product1landing_rr\") > -1))\n a = \"Product Page - Recently Viewed\";\n else if ((b.indexOf(\"product2_rr\") > -1) || (b.indexOf(\"product2landing_rr\") > -1))\n a = \"Product Page - Customers Also Bought\";\n else if ((b.indexOf(\"product_rr\") > -1) || (b.indexOf(\"productlanding_rr\") > -1))\n a = \"Product Page - Recommendations\";\n else if (b.indexOf(\"pdplanding_rr\") > -1)\n a = \"Product Page - External Land Recommendations\";\n else if (b.indexOf(\"product\") > -1)\n a = \"Product Page\";\n else if (b.indexOf(\"rechub\") > -1)\n a = \"Recommendation Hub\";\n else if (b.indexOf(\"nosearch1_rr\") > -1)\n a = \"Failed Search Results - Recently Viewed\";\n else if (b.indexOf(\"nosearch_rr\") > -1)\n a = \"Failed Search Results - Recommendations\";\n else if (b.indexOf(\"nosearch\") > -1)\n a = \"Failed Search Results\";\n else if (b.indexOf(\"search_rr\") > -1)\n a = \"Search Results - Recently Viewed\";\n else if (b.indexOf(\"search2_rr\") > -1)\n a = \"Search Results - Recommendations\";\n else if (b.indexOf(\"search\") > -1)\n a = \"Search Results\";\n else if (b.indexOf(\"store\") > -1)\n a = \"Store Page\";\n else if (b.indexOf(\"email\") > -1)\n a = \"Email\";\n else if (b.indexOf(\"cartmodal\") > -1)\n a = \"Cart Modal\";\n else if (b.indexOf(\"cart\") > -1)\n a = \"Shopping Cart\";\n else if ((b.indexOf(\"home_rr\") > -1) || (b.indexOf(\"homeratings_rr\") > -1))\n a = \"Home Page - Recommendations\";\n else if ((b.indexOf(\"home1_rr\") > -1) || (b.indexOf(\"home3_rr\") > -1))\n a = \"Home Page - Recently Viewed\";\n else if (b.indexOf(\"home\") > -1)\n a = \"Home Page\";\n else if ((b.indexOf(\"orderconfirm\") > -1) || (prevPageName.indexOf(\"Final Purchase\") > -1))\n a = \"Order Confirmation\";\n else if (b.indexOf(\"nativeapphome\") > -1)\n a = \"Native App\";\n else if (b.indexOf(\"collections\") > -1)\n a = \"BOPIS Page\";\n else if (b.indexOf(\"backinstock_rr\") > -1)\n a = \"Notify Me Modal\";\n else if (b.indexOf(\"ds_my account favorites\") >= 0 || b.indexOf(\"ds_list\") >= 0)\n a = \"Data Driven Lists\";\n a = \"Cross Sell: \" + a;\n }\n else if (b = HelperFunctions.GetQueryStringValue(\"sponsorrecid\")) {\n b = b.toLowerCase();\n a = \"Other\";\n if (b.indexOf(\"homepage\") > -1)\n a = \"Home Page\";\n else if (b.indexOf(\"catpage\") > -1)\n a = \"Category Page\";\n else if (b.indexOf(\"browsepage\") > -1)\n a = \"Family Page\";\n else if (b.indexOf(\"nullsearchpage\") > -1)\n a = \"Failed Search\";\n else if (b.indexOf(\"searchpage\") > -1)\n a = \"Search\";\n else if ((b.indexOf(\"prodpage\") > -1) && (_dsgTag.previousPageValues[\"v28\"] === \"Product Detail\") && HelperFunctions.GetValue(\"prevPageOosPDP\"))\n a = \"OOS PDP\";\n else if (b.indexOf(\"prodpage\") > -1)\n a = \"Product Page\";\n else if (b.indexOf(\"rechub\") > -1)\n a = \"Recommendation Hub\";\n a = \"Sponsored: \" + a;\n }\n else if (HelperFunctions.GetQueryStringValue(\"compare\") || _dsgTag.previousPageValues[\"CompareClick\"]) {\n a = \"Compare\";\n }\n else if (HelperFunctions.GetQueryStringValue(\"zoovu\") || _dsgTag.previousPageValues[\"ZoovuClick\"]) {\n a = \"Zoovu\";\n }\n else if (HelperFunctions.GetQueryStringValue(\"ReferringPage\") && HelperFunctions.GetQueryStringValue(\"ReferringPage\").toLowerCase() === \"saveforlater\") {\n a = \"SaveForLater\";\n }\n else if (_dsgTag.previousPageValues[\"DataScienceRecClick\"]) {\n a = \"DataScienceRecs\";\n }\n else if (_dsgTag.previousPageValues[\"StyliticsClick\"]) {\n a = \"Stylitics\";\n }\n else if (_dsgTag.previousPageValues[\"Scene7Click\"]) {\n a = \"Scene7\";\n }\n else if (_dsgTag.previousPageValues[\"PIQClick\"]) {\n a = \"PIQ\";\n }\n else if (_dsgTag.previousPageValues[\"bambuser\"]) {\n a = \"Bambuser\";\n }\n else if (_dsgTag.previousPageValues[\"CuralateClick\"]) {\n a = \"Curalate\";\n }\n else if (_dsgTag.previousPageValues[\"ReadyForNextRoundAddOns\"]) {\n a = \"ReadyForNextRoundAddOns\";\n }\n else if (HelperFunctions.GetQueryStringValue[\"AEMpl\"]) {\n a = \"AEMpl:\" + HelperFunctions.GetQueryStringValue[\"AEMpl\"];\n }\n else if (HelperFunctions.GetQueryStringValue(\"camp\"))\n a = \"External Campaign\";\n else if (s.getReferringInternalSite())\n a = \"Referring Internal Website\";\n else if ((prevPageName && prevPageName.indexOf(\"My Account: View List\") > -1) || (_dsgTag.previousPageValues[\"OtherFullPDPClick\"] && _dsgTag.previousPageValues[\"OtherFullPDPClick\"].toLowerCase() === \"my account favorites\"))\n a = \"List Contents\";\n else if ((prevPageName && prevPageName.indexOf(\"My Account: Shared Favorites\") > -1) || (_dsgTag.previousPageValues[\"OtherFullPDPClick\"] && _dsgTag.previousPageValues[\"OtherFullPDPClick\"].toLowerCase() === \"shared favorites\"))\n a = \"Shared Favorites\";\n else if (prevPageName && prevPageName.indexOf(\"Shopping Bag: Cart\") > -1)\n a = \"Shopping Cart\";\n else if ((prevPageName && prevPageName.indexOf(\"Search: Results\") > -1) || (DataLayer.GetValue(\"InternalSearchType\")))\n a = \"Internal Search\";\n else if (referringURL && referringURL.indexOf(\"weeklyad.\") > -1)\n a = \"Online Circular\";\n else if (_dsgTag.previousPageValues[\"v1\"] || s.eVar1) {\n a = \"Internal Campaign\";\n }\n else if (referringURL && referringURL.indexOf(\"/products/\") > -1)\n a = \"Browse: SearchDex\";\n else if (referringURL && referringURL.split('/')[2].indexOf(s.server) < 0)\n a = \"External Source\";\n }\n return a;\n };\n DataLayerExtractors[\"ProductGender\"] = function (dataSource) {\n if (typeof dataSource !== 'undefined') {\n if (typeof dataSource.ProductDetails !== 'undefined' && dataSource.ProductDetails.length > 0) {\n if (dataSource.ProductDetails[0].ProductGender) {\n return dataSource.ProductDetails[0].ProductGender;\n }\n }\n }\n };\n DataLayerExtractors[\"ProductID\"] = function (dataSource) {\n var a = \"\";\n if (typeof dataSource !== 'undefined' && typeof dataSource.ProductID !== 'undefined') {\n a = dataSource.ProductID;\n }\n if (!a && typeof dataSource !== 'undefined' && typeof dataSource.PageName !== 'undefined') {\n if (dataSource.PageName.split(\" : \").length >= 2) {\n a = dataSource.PageName.split(\" : \")[1];\n }\n }\n var results = results = /(?:(?:\\/p\\/[^\\/]+)|(?:\\/a\\/hpdp))\\/([^?#]+)/g.exec(window.location.href);\n if (!a && results) {\n a = results[1];\n }\n return a.toUpperCase();\n };\n DataLayerExtractors[\"ProductIDList\"] = function (dataSource) {\n var a = [];\n if (typeof dataSource !== 'undefined') {\n if (typeof dataSource.ProductIDList !== 'undefined') {\n a = dataSource.ProductIDList;\n }\n else if (typeof dataSource.ProductArray !== 'undefined') {\n var IDArray = [];\n for (var i = 0; i < dataSource.ProductArray.length; i++) {\n IDArray.push(dataSource.ProductArray[i].ProductID);\n }\n a = IDArray;\n }\n }\n return a;\n };\n DataLayerExtractors[\"ProductLevelDiscountList\"] = function (dataSource) {\n var a = [];\n if (typeof dataSource !== 'undefined') {\n if (typeof dataSource.TotalDiscountByProduct !== 'undefined') {\n a = dataSource.TotalDiscountByProduct;\n }\n else if (typeof dataSource.ProductArray !== 'undefined') {\n var DiscountArray = [];\n for (var i = 0; i < dataSource.ProductArray.length; i++) {\n DiscountArray.push(parseFloat(dataSource.ProductArray[i].ItemDiscountPerUnit) + parseFloat(dataSource.ProductArray[i].DistributedOrderDiscountPerUnit));\n }\n a = DiscountArray;\n }\n }\n return a;\n };\n DataLayerExtractors[\"ProductListArray\"] = function (dataSource) {\n if (typeof dataSource !== 'undefined' && typeof dataSource.ProductArray !== 'undefined') {\n return dataSource.ProductArray;\n }\n return [];\n };\n DataLayerExtractors[\"ProductListExists\"] = function (dataSource) {\n return (typeof dataSource !== 'undefined' && typeof dataSource.ProductArray !== 'undefined');\n };\n DataLayerExtractors[\"ProductListPriceList\"] = function (dataSource) {\n var a = [];\n if (typeof dataSource !== 'undefined') {\n if (typeof dataSource.ProductDetails !== 'undefined') {\n var PriceArray = [];\n for (var i = 0; i < dataSource.ProductDetails.length; i++) {\n for (var j = 0; j < dataSource.ProductDetails[i].ProductSKUDetails.length; j++) {\n PriceArray.push(dataSource.ProductDetails[i].ProductSKUDetails[j].SKUListPrice);\n }\n }\n a = PriceArray;\n }\n }\n return a;\n };\n DataLayerExtractors[\"ProductName\"] = function (dataSource) {\n var a = \"\";\n if (typeof dataSource !== 'undefined' && typeof dataSource.ProductName !== 'undefined') {\n a = dataSource.ProductName;\n }\n if (!a && typeof dataSource !== 'undefined' && typeof dataSource.PageName !== 'undefined') {\n if (dataSource.PageName.split(\" : \").length >= 3) {\n a = dataSource.PageName.split(\" : \")[2];\n }\n }\n return a;\n };\n DataLayerExtractors[\"ProductNameList\"] = function (dataSource) {\n var a = \"\";\n if (typeof dataSource !== 'undefined' && typeof dataSource.ProductNameList !== 'undefined') {\n a = dataSource.ProductNameList;\n }\n return a;\n };\n DataLayerExtractors[\"ProductOmniStatus\"] = function (dataSource) {\n var a = \"\";\n if (typeof dataSource !== 'undefined') {\n a = \"Not Available for Purchase \";\n if (typeof dataSource.ProductDetails !== 'undefined') {\n var ISA = false;\n var BOPIS = false;\n var ATC = false;\n for (var i = 0; i < dataSource.ProductDetails.length && !(ISA && BOPIS && ATC); i++) {\n for (var j = 0; j < dataSource.ProductDetails[i].ProductSKUDetails.length && !(ISA && BOPIS && ATC); j++) {\n ATC = ATC || (typeof dataSource.ProductDetails[i].ProductSKUDetails[j].AddtoCartAvailable !== \"undefined\" && dataSource.ProductDetails[i].ProductSKUDetails[j].AddtoCartAvailable.toString().toLowerCase() === \"true\");\n ISA = ISA || (typeof dataSource.ProductDetails[i].ProductSKUDetails[j].ISAAvailable !== \"undefined\" && dataSource.ProductDetails[i].ProductSKUDetails[j].ISAAvailable.toString().toLowerCase() === \"true\");\n BOPIS = BOPIS || (typeof dataSource.ProductDetails[i].ProductSKUDetails[j].BOPISAvailable !== \"undefined\" && dataSource.ProductDetails[i].ProductSKUDetails[j].BOPISAvailable.toString().toLowerCase() === \"true\");\n }\n }\n a = \"Unknown/Invalid Status\";\n if (ISA && BOPIS && ATC) {\n a = \"All Channels\";\n }\n else if (ISA && BOPIS && !ATC) {\n a = \"Not Shippable Online\";\n }\n else if (ISA && !BOPIS && ATC) {\n a = \"BOPIS Unavailable\";\n }\n else if (ISA && !BOPIS && !ATC) {\n a = \"Displayable Not Buyable\";\n }\n else if (!ISA && !BOPIS && ATC) {\n a = \"Online Only\";\n }\n else if (!ISA && !BOPIS && !ATC) {\n a = \"Not Available for Purchase \";\n }\n }\n }\n return a;\n };\n DataLayerExtractors[\"ProductPagePricingGroups\"] = function (dataSource) {\n var a = [];\n if (typeof dataSource !== 'undefined' && typeof dataSource.ProductDetails !== 'undefined' && dataSource.ProductDetails.length > 0) {\n if (typeof dataSource.ProductDetails[0].SKUPriceingOptions !== 'undefined' && typeof dataSource.ProductDetails[0].SKUPriceingOptions.bucketCount !== 'undefined') {\n var buckets = dataSource.ProductDetails[0].SKUPriceingOptions.bucketCount;\n if (buckets.Clearancearray && buckets.Clearancearray.length > 0) {\n a.push(buckets.Clearancearray);\n }\n if (buckets.MarkDownArray && buckets.MarkDownArray.length > 0) {\n a.push(buckets.MarkDownArray);\n }\n if (buckets.RegularArray && buckets.RegularArray.length > 0) {\n a.push(buckets.RegularArray);\n }\n }\n if (a.length === 0) {\n var defaultSKUList = [];\n for (var i = 0; i < dataSource.ProductDetails[0].ProductSKUDetails.length; i++) {\n defaultSKUList.push(dataSource.ProductDetails[0].ProductSKUDetails[i].ProductSKU);\n }\n a.push(defaultSKUList);\n }\n }\n return a;\n };\n DataLayerExtractors[\"ProductPageTemplateType\"] = function (dataSource) {\n var a = \"\";\n if (DataLayer.GetValue(\"ProductQuickViewTemplate\", dataSource)) {\n a = \"QuickView - \" + DataLayer.GetValue(\"ProductQuickViewTemplate\", dataSource);\n }\n else if (typeof dataSource !== 'undefined' && typeof dataSource.PageTemplate !== 'undefined') {\n a = dataSource.PageTemplate;\n }\n return a;\n };\n DataLayerExtractors[\"ProductPriceList\"] = function (dataSource) {\n var a = [];\n if (typeof dataSource !== 'undefined') {\n if (typeof dataSource.PriceList !== 'undefined') {\n a = dataSource.PriceList;\n }\n else if (typeof dataSource.ListPricePerProductIDList !== 'undefined' && dataSource.ListPricePerProductIDList.length > 0 && dataSource.ListPricePerProductIDList[0]) {\n a = dataSource.ListPricePerProductIDList;\n }\n else if (typeof dataSource.UnitPricePerProductIDList !== 'undefined' && dataSource.UnitPricePerProductIDList.length > 0 && dataSource.UnitPricePerProductIDList[0]) {\n a = dataSource.UnitPricePerProductIDList;\n }\n else if (typeof dataSource.ProductArray !== 'undefined') {\n var PriceArray = [];\n for (var i = 0; i < dataSource.ProductArray.length; i++) {\n var totalPrice = dataSource.ProductArray[i].CurrentPricePerUnit;\n if (typeof dataSource.ProductArray[i].DistributedOrderDiscountPerUnit !== \"undefined\") {\n totalPrice = totalPrice - dataSource.ProductArray[i].DistributedOrderDiscountPerUnit;\n }\n PriceArray.push(totalPrice);\n }\n a = PriceArray;\n }\n else if (typeof dataSource.ProductDetails !== 'undefined') {\n var PriceArray = [];\n for (var i = 0; i < dataSource.ProductDetails.length; i++) {\n for (var j = 0; j < dataSource.ProductDetails[i].ProductSKUDetails.length; j++) {\n PriceArray.push(dataSource.ProductDetails[i].ProductSKUDetails[j].SKUCurrentPrice);\n }\n }\n a = PriceArray;\n }\n }\n return a;\n };\n DataLayerExtractors[\"ProductQuantityList\"] = function (dataSource) {\n var a = [];\n if (typeof dataSource !== 'undefined') {\n if (typeof dataSource.QtyPerProductIDList !== \"undefined\") {\n a = dataSource.QtyPerProductIDList;\n }\n else if (typeof dataSource.ProductArray !== \"undefined\") {\n var QTYArray = [];\n for (var i = 0; i < dataSource.ProductArray.length; i++) {\n if (typeof dataSource.ProductArray[i].ProductQty !== \"undefined\") {\n QTYArray.push(dataSource.ProductArray[i].ProductQty.toString().replace(\",\", \"\"));\n }\n }\n a = QTYArray;\n }\n }\n return a;\n };\n DataLayerExtractors[\"ProductQuickViewTemplate\"] = function (dataSource) {\n if (typeof dataSource !== 'undefined' && typeof dataSource.QuickViewTemplate !== 'undefined') {\n return dataSource.QuickViewTemplate;\n }\n return \"\";\n };\n DataLayerExtractors[\"ProductReturnsArray\"] = function (dataSource) {\n if (typeof dataSource !== 'undefined' && typeof dataSource.Products !== 'undefined') {\n return dataSource.Products;\n }\n return [];\n };\n DataLayerExtractors[\"ProductSKU\"] = function (dataSource) {\n if (HelperFunctions.GetQueryStringValue(\"sku\")) {\n return HelperFunctions.GetQueryStringValue(\"sku\");\n }\n else if (typeof dataSource.ProductDetails !== 'undefined' && dataSource.ProductDetails.length > 0 && typeof dataSource.ProductDetails[0].ProductSKUDetails !== \"undefined\" && dataSource.ProductDetails[0].ProductSKUDetails.length == 1) {\n return dataSource.ProductDetails[0].ProductSKUDetails[0].ProductSKU;\n }\n return \"\";\n };\n DataLayerExtractors[\"ProductSKUList\"] = function (dataSource) {\n var a = [];\n if (typeof dataSource !== 'undefined') {\n if (dataSource.data) {\n dataSource = dataSource.data;\n }\n if (typeof dataSource.ProductSKUList !== 'undefined') {\n a = dataSource.ProductSKUList;\n }\n else if (typeof dataSource.ProductSkuList !== 'undefined') {\n a = dataSource.ProductSkuList;\n }\n else if (typeof dataSource.ProductArray !== 'undefined') {\n var SKUArray = [];\n for (var i = 0; i < dataSource.ProductArray.length; i++) {\n SKUArray.push(dataSource.ProductArray[i].ProductSKU);\n }\n a = SKUArray;\n }\n else if (typeof dataSource.ProductDetails !== 'undefined' && dataSource.ProductDetails.length > 0 && typeof dataSource.ProductDetails[0].ProductSKUDetails !== \"undefined\") {\n var SKUArray = [];\n for (var i = 0; i < dataSource.ProductDetails[0].ProductSKUDetails.length; i++) {\n SKUArray.push(dataSource.ProductDetails[0].ProductSKUDetails[i].ProductSKU);\n }\n a = SKUArray;\n }\n }\n return a;\n };\n DataLayerExtractors[\"ProductsPerPage\"] = function (dataSource) {\n var a = 0;\n if (_dsgTag.productsPerPage) {\n a = _dsgTag.productsPerPage;\n }\n else if (typeof dataSource !== \"undefined\" && typeof dataSource.ProductPerPage !== \"undefined\") {\n a = dataSource.ProductPerPage;\n }\n return a;\n };\n DataLayerExtractors[\"ProductType\"] = function (dataSource) {\n if (typeof dataSource !== 'undefined') {\n if (typeof dataSource.ProductDetails !== 'undefined' && dataSource.ProductDetails.length > 0) {\n if (dataSource.ProductDetails[0].ProductType) {\n return dataSource.ProductDetails[0].ProductType;\n }\n }\n }\n };\n DataLayerExtractors[\"Random100\"] = function (dataSource) {\n var value = \"\";\n if (HelperFunctions.GetCookieValue(\"MedalliaAB2\")) {\n value = HelperFunctions.GetCookieValue(\"MedalliaAB2\");\n HelperFunctions.DeleteCookie(\"MedalliaAB2\");\n HelperFunctions.DeleteValue(\"MedalliaAB2\");\n HelperFunctions.WriteCookieValue(\"r100\", value, 365, true);\n }\n else if (HelperFunctions.GetCookieValue(\"r100\")) {\n value = HelperFunctions.GetCookieValue(\"r100\");\n }\n else {\n value = (Math.floor(Math.random() * 100) / 100).toFixed(2);\n HelperFunctions.WriteCookieValue(\"r100\", value, 365, true);\n }\n return value;\n };\n DataLayerExtractors[\"RegistrationOccured\"] = function (dataSource) {\n var a = false;\n if (typeof dataSource !== \"undefined\" && typeof dataSource.RegistrationOccured !== \"undefined\") {\n a = dataSource.RegistrationOccured.toString().toLowerCase() === \"true\";\n }\n return a;\n };\n DataLayerExtractors[\"ReferringPageURL\"] = function (dataSource) {\n var a = \"\";\n if (typeof dataSource !== 'undefined' && typeof dataSource.ReferringPageURL !== 'undefined' && dataSource.ReferringPageURL !== \"\") {\n a = dataSource.ReferringPageURL;\n if (dataSource.ReferringPageURL.indexOf(window.location.protocol) < 0)\n a = window.location.protocol + a;\n }\n else if (typeof dataSource !== 'undefined' && typeof dataSource.ReferringPageUrl !== 'undefined' && dataSource.ReferringPageUrl !== \"\") {\n a = dataSource.ReferringPageUrl;\n if (dataSource.ReferringPageUrl.indexOf(window.location.protocol) < 0)\n a = window.location.protocol + a;\n }\n else if (document.referrer) {\n a = document.referrer;\n }\n if (_dsgTag.previousLocation.targetRedirectReferrer) {\n a = _dsgTag.previousLocation.targetRedirectReferrer;\n }\n return a.toLowerCase();\n };\n DataLayerExtractors[\"ReviewAverage\"] = function (dataSource) {\n var a = 0;\n var span = document.querySelector(\".bv-rating [itemprop='ratingValue'], div.reviews > p > span\");\n var angularRatings = document.querySelectorAll(\".star-rating\");\n if (span) {\n var textRating = span.innerText;\n if (textRating === \"\") {\n var starOverlayWidth = parseFloat(span.getAttribute(\"style\").match(/ ([\\d]+)%/)[1]) / 100;\n a = Math.round(50 * (starOverlayWidth)) / 10;\n }\n }\n else if (angularRatings.length > 0) {\n var starTotal = 0.0;\n for (var i = 0; i < angularRatings.length; i++) {\n starTotal += (angularRatings[i].className.indexOf(\"fa-star-half-o\") >= 0 ? 0.5 : (angularRatings[i].className.indexOf(\"star-filled\") >= 0 ? 1 : 0));\n }\n a = starTotal;\n }\n return a;\n };\n DataLayerExtractors[\"ReviewCount\"] = function (dataSource) {\n var a = 0;\n var span = document.querySelector(\".bv-rating-ratio-count [itemprop='reviewCount'], div.reviews > span, .bv_count\");\n if (span) {\n a = parseInt(span.innerText.replace(/[()]/g, \"\"));\n }\n if (!a) {\n a = 0;\n }\n return a.toString();\n };\n DataLayerExtractors[\"ReviewStarsProducts\"] = function (dataSource) {\n var a = 0;\n if (typeof dataSource !== 'undefined' && typeof dataSource.ReviewStarsProducts !== 'undefined') {\n a = parseInt(dataSource.ReviewStarsProducts);\n if (isNaN(a)) {\n a = 0;\n }\n }\n return a;\n };\n DataLayerExtractors[\"SavedStoreNumber\"] = function (dataSource) {\n var a = \"\";\n var storeCookieValue = HelperFunctions.GetCookieValue(\"setStoreCookie\");\n if (storeCookieValue) {\n var storeID = /_(\\d+)/g.exec(storeCookieValue);\n a = (storeID && storeID.length > 0) ? storeID[1] : \"\";\n }\n return a;\n };\n DataLayerExtractors[\"SearchData\"] = function (dataSource) {\n var typesByPriority = [{ name: \"boost\", value: \"Maching Learning\" },\n { name: \"searchrule\", value: \"Manual Configurations\" },\n { name: \"pinning\", value: \"Manual Configurations\" },\n { name: \"landing_page\", value: \"Manual Configurations\" },\n { name: \"mlspelling\", value: \"Spelling Correction\" },\n { name: \"dym\", value: \"Automated Configurations\" },\n { name: \"fuzzy\", value: \"Automated Configurations\" },\n { name: \"no_results\", value: \"No Search Results\" }];\n var a = \"No Trigger\";\n var match = Number.MAX_SAFE_INTEGER;\n if (typeof dataSource !== 'undefined' && typeof dataSource.SearchData !== 'undefined' && typeof dataSource.SearchData.length !== \"undefined\") {\n for (var i = 0; i < dataSource.SearchData.length; i++) {\n for (var j = 0; j < typesByPriority.length && j < match; j++) {\n if (dataSource.SearchData[i].toLowerCase() == typesByPriority[j].name.toLowerCase()) {\n match = j;\n }\n }\n }\n if (match < Number.MAX_SAFE_INTEGER) {\n a = typesByPriority[match].value;\n }\n }\n return a;\n };\n DataLayerExtractors[\"ServerTimestamp\"] = function (dataSource) {\n var a = \"\";\n if (typeof dataSource !== 'undefined' && typeof dataSource.ServerDate !== 'undefined' && typeof dataSource.ServerTime !== 'undefined') {\n a = (dataSource.ServerDate.split(\"-\")[2] + \"-\" + dataSource.ServerDate.split(\"-\")[0] + \"-\" + dataSource.ServerDate.split(\"-\")[1]) + \"T\" + dataSource.ServerTime + \"Z\";\n }\n return a;\n };\n DataLayerExtractors[\"ServiceName\"] = function (dataSource) {\n var a = \"\";\n if (dataSource.bookingInProgress && dataSource.bookingInProgress.experience && dataSource.bookingInProgress.experience.name) {\n a = dataSource.bookingInProgress.experience.name;\n }\n else if (dataSource.appointment && dataSource.appointment.experience && dataSource.appointment.experience.name) {\n a = dataSource.appointment.experience.name;\n }\n return a;\n };\n DataLayerExtractors[\"ServiceOrderID\"] = function (dataSource) {\n var a = \"\";\n var parentNode = dataSource.selectedServiceFamily || dataSource.selectedService || dataSource.appointment;\n if (parentNode) {\n a = parentNode.id;\n }\n return a;\n };\n DataLayerExtractors[\"ServiceRevenue\"] = function (dataSource) {\n var a = 0;\n var parentNode = dataSource.selectedServiceFamily || dataSource.selectedService || dataSource.appointment;\n if (parentNode && parentNode.price) {\n a = parseFloat(parentNode.price.replace(/[^0-9.]/g, \"\"));\n }\n return a;\n };\n DataLayerExtractors[\"ServiceStoreNumber\"] = function (dataSource) {\n var a = \"\";\n if (dataSource.bookingInProgress && dataSource.bookingInProgress.store && dataSource.bookingInProgress.store.number) {\n a = dataSource.bookingInProgress.store.number;\n }\n else if (dataSource.store && dataSource.store.number) {\n a = dataSource.store.number;\n }\n return a;\n };\n DataLayerExtractors[\"ShouldBeLoggedIn\"] = function (dataSource) {\n var a = \"Should Be Logged Out\";\n if (HelperFunctions.GetCookieValue(\"SA_ShouldBeLoggedIn\") === \"true\") {\n a = \"Should Be Logged In\";\n }\n return a;\n };\n DataLayerExtractors[\"SignedInBoolean\"] = function (dataSource) {\n var a = null;\n var previousAuthState = HelperFunctions.GetValue(\"AuthState\");\n if (typeof dataSource !== 'undefined' && typeof dataSource.isAuthenticated !== 'undefined') {\n a = (dataSource.isAuthenticated.toString().toLowerCase() === \"true\");\n }\n else if (HelperFunctions.GetQueryStringValue(\"oauthRedirect\") == \"true\") {\n a = true;\n }\n else if (previousAuthState !== null) {\n a = previousAuthState.toLowerCase() === \"true\";\n }\n return a;\n };\n DataLayerExtractors[\"SignedInEventBoolean\"] = function (dataSource) {\n var a = false;\n if (document.referrer && /\\/oauthcallbackpage/i.test(document.referrer)) {\n a = true;\n }\n return a;\n };\n DataLayerExtractors[\"SignedUpBoolean\"] = function (dataSource) {\n var a = false;\n if (typeof dataSource !== 'undefined' && typeof dataSource.MyAccountSignUp !== 'undefined') {\n a = (dataSource.MyAccountSignUp === \"Yes\");\n }\n if (typeof dataSource !== 'undefined' && typeof dataSource.RegistrationOccured !== 'undefined') {\n a = (dataSource.RegistrationOccured === \"true\");\n }\n return a;\n };\n DataLayerExtractors[\"SortMethod\"] = function (dataSource) {\n var a = \"\";\n if (typeof dataSource !== 'undefined') {\n if (typeof dataSource.SortMethod !== 'undefined') {\n a = dataSource.SortMethod;\n }\n }\n return a;\n };\n DataLayerExtractors[\"StaticPageID\"] = function (dataSource) {\n var a = \"\";\n if (typeof dataSource !== 'undefined' && (typeof dataSource.StaticPageID !== 'undefined' || typeof dataSource.StaticID !== 'undefined')) {\n a = dataSource.StaticPageID || dataSource.StaticID;\n }\n return a;\n };\n DataLayerExtractors[\"StoreLocatorStoreAddress\"] = function (dataSource) {\n var a = \"\";\n var div;\n if (typeof dataSource !== 'undefined' && typeof dataSource.StoreAddress !== 'undefined') {\n a = dataSource.StoreAddress;\n }\n else if ((div = document.querySelector(\".nap-address-wrapper\")) && div.innerText.split(\"\\n\").length == 4) {\n a = div.innerText.split(\"\\n\")[2] + \", \" + div.innerText.split(\"\\n\")[3];\n }\n else if ((div = document.querySelector(\".address-inner\")) && div.innerText.split(\"\\n\").length == 4) {\n a = div.innerText.split(\"\\n\")[1] + \", \" + div.innerText.split(\"\\n\")[2];\n }\n return a;\n };\n DataLayerExtractors[\"StoreLocatorStoreNumber\"] = function (dataSource) {\n var a = \"\";\n var urlVal;\n if (typeof dataSource !== 'undefined' && typeof dataSource.StoreNumber !== 'undefined') {\n a = dataSource.StoreNumber;\n }\n else if (urlVal = /stores\\.\\w+\\.com\\/\\w{2}\\/[\\w\\-]+\\/(\\d+)/gi.exec(window.location.href)) {\n a = urlVal[1];\n }\n return a;\n };\n DataLayerExtractors[\"TSATraffic\"] = function (dataSource) {\n var a = \"\";\n if (HelperFunctions.GetQueryStringValue(\"TSA\") !== null) {\n a = \"TSA=\" + HelperFunctions.GetQueryStringValue(\"TSA\");\n }\n else if (HelperFunctions.GetQueryStringValue(\"ACQ\") !== null) {\n a = \"ACQ=\" + HelperFunctions.GetQueryStringValue(\"ACQ\");\n }\n return a;\n };\n DataLayerExtractors[\"WebstoreID\"] = function (dataSource) {\n var a = \"\";\n if (typeof dataSource !== 'undefined') {\n if (DataLayer.GetValue(\"OrderID\", dataSource)) {\n a = DataLayer.GetValue(\"OrderID\", dataSource);\n }\n }\n return a;\n };\n DataLayerExtractors[\"ZipCodeEstimation\"] = function (dataSource) {\n var a = \"\";\n var storeCookieValue = HelperFunctions.GetCookieValue(\"whereabouts\");\n if (storeCookieValue) {\n a = storeCookieValue;\n }\n return a;\n };\n})(DataLayer || (DataLayer = {}));\n;\n//# sourceMappingURL=dataLayer.namespace.js.map","import { DataLayer } from \"../namespaces/dataLayer.namespace\";\nimport { _dsgTag } from \"../namespaces/_dsgTag.namespace\";\nexport const PageTypes = {\n \"Unknown\": { Name: \"Unknown\", MatchRules: { \"FunctionTest\": function () { return false; } } },\n \"InvestorRelations\": { Name: \"Investor Relations\", AutoTriggerPageView: true, RestrictTags: true, MatchRules: { \"HostRegExTest\": new RegExp('(dicks|q4web)\\\\.com$', 'i') } },\n \"SportsMatter\": { Name: \"Sports Matter\", AutoTriggerPageView: true, RestrictTags: true, MatchRules: { \"HostRegExTest\": new RegExp('sportsmatter\\\\.org$', 'i') } },\n \"MyAccountSignInAuth0\": { Name: \"My Account Sign In Auth0\", AutoTriggerPageView: false, RestrictTags: true, MatchRules: { \"HostRegExTest\": new RegExp('^sso\\\\.', 'i'), \"PathRegExTest\": new RegExp('/login', 'i') } },\n \"OauthCallbackPage\": { Name: \"Sign In Callback Redirect\", AutoTriggerPageView: false, RestrictTags: true, BlockMarketingChannels: true, MatchRules: { \"PathRegExTest\": new RegExp('/oauthcallbackpage', 'i') } },\n \"CMMTeamPacket\": { Name: \"CMM Team Packet\", AutoTriggerPageView: true, MatchRules: { \"HostRegExTest\": new RegExp('^cmm\\\\.', 'i'), \"PathRegExTest\": new RegExp('/getoffer\\\\.aspx', 'i') } },\n \"Scorecard\": { Name: \"Scorecard\", AutoTriggerPageView: true, MatchRules: { \"HostRegExTest\": new RegExp('myscorecardaccount', 'i') } },\n \"Protips\": { Name: \"Protips\", AutoTriggerPageView: true, MatchRules: { \"HostRegExTest\": new RegExp('protips', 'i') } },\n \"NarvarRedirect\": { Name: \"Narvar Redirect\", MatchRules: { \"PathRegExTest\": new RegExp('/s/narvar', 'i') } },\n \"PelotonRedirect\": { Name: \"Peloton Redirect\", MaskPage: true, MatchRules: { \"PathRegExTest\": new RegExp('/s/peloton-app-signup', 'i') } },\n \"StoreLocatorIFrame\": { Name: \"Store Locator IFrame\", MatchRules: { \"HostRegExTest\": new RegExp('storelocator|(hosted|mobile)\\\\.where2(get|stage)it', 'i') } },\n \"ChatConversation\": { Name: \"Chat Conversation\", MatchRules: { \"HostRegExTest\": new RegExp('custhelp\\\\.com', 'i'), \"PathRegExTest\": new RegExp('/chat_landing', 'i') } },\n \"ChatForm\": { Name: \"Chat Form\", MatchRules: { \"HostRegExTest\": new RegExp('custhelp\\\\.com', 'i'), \"PathRegExTest\": new RegExp('/chat_launch|/app', 'i') } },\n \"Category\": { Name: \"Category\", MatchRules: { \"PathRegExTest\": new RegExp('^/c/', 'i') } },\n \"Family\": { Name: \"Family\", MatchRules: { \"PathRegExTest\": new RegExp('^/f/', 'i') } },\n \"OptiversalFamily\": { Name: \"Optiversal Family\", AutoTriggerPageView: true, MatchRules: { \"PathRegExTest\": new RegExp('/o/', 'i') } },\n \"ResourceCenter\": { Name: \"Resource Center\", MatchRules: { \"PathRegExTest\": new RegExp('/rc/', 'i') } },\n \"Search\": { Name: \"Search\", MatchRules: { \"PathRegExTest\": new RegExp('/search/', 'i') } },\n \"ProductDetails\": { Name: \"Product Details\", MatchRules: { \"PathRegExTest\": new RegExp('/p/', 'i') } },\n \"ProductReview\": { Name: \"ProductReview\", MatchRules: { \"PathRegExTest\": new RegExp('/dsghostedcontainer', 'i') } },\n \"Cart\": { Name: \"Cart\", MatchRules: { \"PathRegExTest\": new RegExp('/((ajax)?orderitemdisplay(view)?|cart)', 'i') } },\n \"CheckoutSinglePage\": { Name: \"Checkout\", RestrictTags: true, MatchRules: { \"PathRegExTest\": new RegExp('/SinglePageCheckout', 'i') } },\n \"CheckoutSignIn\": { Name: \"Checkout Sign In\", MatchRules: { \"PathRegExTest\": new RegExp('/checkoutsigninview', 'i') } },\n \"CheckoutBillingShippingAddress\": { Name: \"Checkout Billing Shipping Address\", MatchRules: { \"PathRegExTest\": new RegExp('/ordershippingbillingview', 'i') } },\n \"CheckoutBillingAddress\": { Name: \"Checkout Billing Address\", MatchRules: { \"PathRegExTest\": new RegExp('/dsgbillingaddressview', 'i') } },\n \"CheckoutShippingAddress\": { Name: \"Checkout Shipping Address\", MatchRules: { \"PathRegExTest\": new RegExp('/dsgshippingaddressview', 'i') } },\n \"CheckoutDelivery\": { Name: \"Checkout Delivery\", MatchRules: { \"PathRegExTest\": new RegExp('/dsgdeliveryview', 'i') } },\n \"CheckoutPayment\": { Name: \"Checkout Payment\", RestrictTags: true, MatchRules: { \"PathRegExTest\": new RegExp('/dsgpaymentview(cmd)?', 'i') } },\n \"CheckoutReview\": { Name: \"Checkout Review\", MatchRules: { \"PathRegExTest\": new RegExp('/singleshipmentordersummaryview', 'i') } },\n \"OrderConfirmation\": { Name: \"Order Confirmation\", MatchRules: { \"PathRegExTest\": new RegExp('/(ordershippingbillingconfirmationview|dsgordersubmit)', 'i') } },\n \"WeeklyAd\": { Name: \"Weekly Ad\", MatchRules: { \"PathRegExTest\": new RegExp('/s/weekly-ad', 'i') } },\n \"SchedulingService\": { Name: \"SchedulingService\", MatchRules: { \"PathRegExTest\": new RegExp('/s/scheduling', 'i') } },\n \"Static\": { Name: \"Static\", MatchRules: { \"PathRegExTest\": new RegExp('/s/', 'i') } },\n \"Proxy\": { Name: \"Proxy\", MatchRules: { \"PathRegExTest\": new RegExp('/products/', 'i') } },\n \"StoreLocatorIndex\": { Name: \"Store Locator Index\", AutoTriggerPageView: true, MatchRules: { \"HostRegExTest\": new RegExp('stores|locations\\\\.where2stageit', 'i'), \"PathRegExTest\": new RegExp('^(/(dickssportinggoods|golfgalaxy))?/?([a-zA-Z]{2}/([^\\\\/]+/)?)?$', 'i') } },\n \"StoreLocatorLocalStore\": { Name: \"Store Locator Local Store\", AutoTriggerPageView: true, MatchRules: { \"HostRegExTest\": new RegExp('stores|locations\\\\.where2stageit', 'i'), \"PathRegExTest\": new RegExp('^((/(dickssportinggoods|golfgalaxy))?/([a-zA-Z]{2})/([^\\\\/]+)/(\\\\d+)/)$', 'i') } },\n \"OrderTracking\": { Name: \"Order Tracking\", MatchRules: { \"PathRegExTest\": new RegExp('(/trackorderstatus)|(/myaccount/onlineorderhistory)', 'i') } },\n \"OrderDetails\": { Name: \"Order Details\", MatchRules: { \"PathRegExTest\": new RegExp('/orderdetail', 'i') } },\n \"GuestOrderTracking\": { Name: \"Guest Order Tracking\", MatchRules: { \"PathRegExTest\": new RegExp('/trackorder', 'i') } },\n \"MyAccount\": { Name: \"My Account\", MatchRules: { \"PathRegExTest\": new RegExp('(/myaccount/accountsummary)|(/(ajax)?logonform)|(/my-account)', 'i'), \"FunctionTest\": function (eventInstance) { return (DataLayer) ? (DataLayer.GetValue(\"PageURL\", eventInstance.eventData).toLowerCase().indexOf(\"logonform\") < 0) && DataLayer.GetValue(\"SignedInBoolean\", eventInstance.eventData) : false; } } },\n \"MyAccountSignIn\": { Name: \"My Account Sign In\", RestrictTags: true, MatchRules: { \"PathRegExTest\": new RegExp('/((ajax)?logonform)|(/u/login)', 'i') } },\n \"MyAccountLink\": { Name: \"My Account Link\", RestrictTags: true, BlockMarketingChannels: true, MatchRules: { \"PathRegExTest\": new RegExp('/accountlink', 'i') } },\n \"MyAccountRegistration\": { Name: \"My Account Registration\", RestrictTags: true, MatchRules: { \"PathRegExTest\": new RegExp('(/userregistrationform)|(/u/signup)', 'i') } },\n \"MyAccountOTPChallenge\": { Name: \"My Account Email OTP Challenge\", RestrictTags: true, MatchRules: { \"PathRegExTest\": new RegExp('/u/email-identifier/challenge', 'i') } },\n \"MyAccountResetPassword\": { Name: \"My Account Reset Password\", RestrictTags: true, MatchRules: { \"PathRegExTest\": new RegExp('/u/reset-password', 'i') } },\n \"MyAccountFavoritesLists\": { Name: \"My Account Favorites List\", MatchRules: { \"PathRegExTest\": new RegExp('/MyAccount/Lists$', 'i') } },\n \"MyAccountFavorites\": { Name: \"My Account Favorites\", MatchRules: { \"PathRegExTest\": new RegExp('/MyAccount/(Favorites|Lists/.+$)', 'i') } },\n \"MyAccountAppointments\": { Name: \"My Account Appointments\", MatchRules: { \"PathRegExTest\": new RegExp('/MyAccount/Appointments', 'i') } },\n \"SharedFavorites\": { Name: \"Shared Favorites\", MatchRules: { \"PathRegExTest\": new RegExp('/Favorites/shared', 'i') } },\n \"AddressBook\": { Name: \"Address Book\", MatchRules: { \"PathRegExTest\": new RegExp('/addressbookform', 'i') } },\n \"BlogArticle\": { Name: \"Blog Article\", MatchRules: { \"PathRegExTest\": new RegExp('/blog/a/', 'i') } },\n \"BlogTopics\": { Name: \"Blog Topics\", MatchRules: { \"PathRegExTest\": new RegExp('/blog/t/', 'i') } },\n \"BlogHome\": { Name: \"Blog\", MatchRules: { \"PathRegExTest\": new RegExp('/blog', 'i') } },\n \"AdeptmindProductDetails\": { Name: \"Adeptmind Product Details\", MatchRules: { \"PathRegExTest\": new RegExp('/a/hpdp', 'i') } },\n \"AdeptmindFamily\": { Name: \"Adeptmind Family\", AutoTriggerPageView: true, MatchRules: { \"PathRegExTest\": new RegExp('^/a/', 'i') } },\n \"ProtipsBlog\": { Name: \"Protips\", MatchRules: { \"PathRegExTest\": new RegExp('^/protips', 'i') } },\n \"InStoreDisplay\": { Name: \"In Store Display\", MatchRules: { \"PathRegExTest\": new RegExp('/media/.+', 'i') } },\n \"SiteDown\": { Name: \"Site Down\", AutoTriggerPageView: true, MatchRules: { \"PathRegExTest\": new RegExp('^/down', 'i') } },\n \"Error\": { Name: \"Error\", AutoTriggerPageView: true, MatchRules: { \"FunctionTest\": function (eventInstance) {\n const data = eventInstance ? eventInstance.eventData : null;\n return (DataLayer && ((DataLayer.GetValue(\"PageType\", data).toLowerCase() === \"error\") ||\n (DataLayer.GetValue(\"PageName\", data).toLowerCase() === \"site down\") ||\n (_dsgTag.pageType === this.Unknown && DataLayer.GetValue(\"PageName\", data).toLowerCase() === \"site down\") ||\n (_dsgTag.pageType === this.ProductDetails && DataLayer.GetValue(\"PageType\", data) === \"Search\") ||\n (_dsgTag.pageType === this.ProtipsBlog && DataLayer.GetValue(\"PageName\", data).toLowerCase() === \"site down\"))) ||\n (data !== null && typeof data.Page !== 'undefined' && (data.Page == \"Error Page\" || data.Page == \"404 Error\")) ||\n (data !== null && typeof data.ErrorID !== 'undefined' && data.ErrorID.length > 0 && data.ErrorID.indexOf(\"Site Down\") >= 0) ||\n (data !== null && data.PageType === \"error\") ||\n (window.location.pathname.match(/404$|500$/) !== null) ||\n (document.title == \"Generic Error\");\n } } },\n \"Home\": { Name: \"Home\", MatchRules: { \"PathRegExTest\": new RegExp('^/$', 'i') } }\n};\n//# sourceMappingURL=pageTypes.const.js.map","export const eventDataMap = {\n \"TopNavView\": [\n { Name: \"NavigationCategory\", Type: \"string\" }\n ]\n};\n//# sourceMappingURL=eventDataMap.namespace.js.map","import { eventDataMap } from \"../namespaces/eventDataMap.namespace\";\nimport { HelperFunctions } from \"../namespaces/helperFunctions.namespace\";\nimport { LogLevels } from \"../enums/enums.enum\";\nexport class EventInstance {\n constructor(name, eventObject, data) {\n this.ValidateData = function (dataMap, subData) {\n var valid = true;\n if (typeof dataMap !== \"undefined\") {\n var dataMapObject = dataMap;\n var dataObject = subData || this.eventData;\n for (var i = 0; i < dataMapObject.length; i++) {\n var currentMapObject = dataMapObject[i];\n if (typeof dataObject[currentMapObject.Name] !== \"undefined\") {\n if (currentMapObject.Type == \"object\") {\n valid = this.ValidateData(currentMapObject.Map, dataObject[currentMapObject.Name]);\n }\n else if (currentMapObject.Type == \"array\") {\n if (Array.isArray(dataObject[currentMapObject.Name])) {\n if (typeof currentMapObject.Map == \"string\") {\n for (var j = 0; j < dataObject[currentMapObject.Name].length && valid; j++) {\n if (typeof dataObject[currentMapObject.Name][j] !== currentMapObject.Map) {\n HelperFunctions.DebugLog(\"Event object for \" + this.eventName + \" has incorrect type for \" + currentMapObject.Name + \": \" + typeof dataObject[currentMapObject.Name][j] + \" when it should be \" + currentMapObject.Map, LogLevels.Error);\n valid = false;\n }\n }\n }\n else if (Array.isArray(currentMapObject.Map)) {\n for (var j = 0; j < dataObject[currentMapObject.Name].length && valid; j++) {\n valid = this.ValidateData(currentMapObject.Map, dataObject[currentMapObject.Name][j]);\n }\n }\n }\n else {\n HelperFunctions.DebugLog(\"Event object for \" + this.eventName + \" has incorrect type for \" + currentMapObject.Name + \": \" + typeof dataObject[currentMapObject.Name] + \" when it should be \" + currentMapObject.Type, LogLevels.Error);\n valid = false;\n }\n }\n else if (typeof dataObject[currentMapObject.Name] !== currentMapObject.Type) {\n HelperFunctions.DebugLog(\"Event object for \" + this.eventName + \" has incorrect type for \" + currentMapObject.Name + \": \" + typeof dataObject[currentMapObject.Name] + \" when it should be \" + currentMapObject.Type, LogLevels.Error);\n valid = false;\n }\n }\n else {\n HelperFunctions.DebugLog(\"Event object for \" + this.eventName + \" is missing property \" + currentMapObject.Name, LogLevels.Error);\n valid = false;\n }\n }\n }\n else {\n HelperFunctions.DebugLog(\"No datamap set up for event \" + this.eventName, LogLevels.Warning);\n valid = false;\n }\n return valid;\n };\n this.eventName = name;\n this.eventObject = eventObject;\n this.eventData = data;\n const GenerateRandomString = function (length) {\n var result = \"\";\n var characters = \"0123456789\";\n var charactersLength = characters.length;\n for (var i = 0; i < length; i++)\n result += characters.charAt(Math.floor(Math.random() * charactersLength));\n return result;\n };\n this.eventID = GenerateRandomString(20);\n this.dataIsValid = this.ValidateData(eventDataMap[this.eventName]);\n }\n}\n;\n//# sourceMappingURL=eventInstance.class.js.map","import { EventInstance } from \"../classes/eventInstance.class\";\nimport { LogLevels } from \"../enums/enums.enum\";\nimport { HelperFunctions } from \"./helperFunctions.namespace\";\nimport { _dsgTag } from \"./_dsgTag.namespace\";\nimport { FunctionRepository } from \"./functionRepository.namespace\";\nimport { DataLayer } from \"./dataLayer.namespace\";\nexport var EventHandlers;\n(function (EventHandlers) {\n EventHandlers.Events = {};\n EventHandlers.initialPageViewPreFired = false;\n EventHandlers.initialPageViewFired = false;\n EventHandlers.delayedPageViewEvents = [];\n function LaunchHandler(handler, eventInstance, tagName, delayUntilPageView, synchronous) {\n try {\n var handlerFunction = function () {\n try {\n if (EventHandlers.initialPageViewFired || !(delayUntilPageView)) {\n HelperFunctions.DebugTimer(\"Handling event: \" + eventInstance.eventName + \" [\" + tagName + \"]\", function () {\n eventInstance.eventData[\"taggingEventID\"] = eventInstance.eventID;\n handler(eventInstance);\n });\n }\n else {\n EventHandlers.delayedPageViewEvents.push({ delayedEvent: eventInstance, handler: handler });\n HelperFunctions.DebugLog(eventInstance.eventName + \" attempted to fire before Page View; delaying until after.\");\n }\n }\n catch (ex) {\n if (eventInstance) {\n HelperFunctions.DebugLog(\"Error executing \" + eventInstance.eventName + \" handler for \" + tagName + \": \" + ex.message, LogLevels.Error);\n }\n else {\n HelperFunctions.DebugLog(\"Error executing handler for \" + tagName + \": \" + ex.message, LogLevels.Error);\n }\n }\n };\n if (!synchronous) {\n setTimeout(handlerFunction, 10);\n }\n else {\n handlerFunction();\n }\n }\n catch (ex) {\n if (eventInstance) {\n HelperFunctions.DebugLog(\"Error preparing to execute \" + eventInstance.eventName + \" handler: \" + ex.message, LogLevels.Error);\n }\n else {\n HelperFunctions.DebugLog(\"Error preparing to execute handler: \" + ex.message, LogLevels.Error);\n }\n }\n }\n EventHandlers.LaunchHandler = LaunchHandler;\n ;\n function AddEventHandler(eventName, eventHandler, tagname, delayUntilPageView, synchronous) {\n try {\n if (typeof EventHandlers.Events[eventName] == \"undefined\") {\n try {\n EventHandlers.Events[eventName] = {\n firedValues: [],\n handlers: []\n };\n if (_dsgTag.config.prerenderingEvents && _dsgTag.config.prerenderingEvents[eventName]) {\n for (var i = 0; i < _dsgTag.config.prerenderingEvents[eventName].length; i++) {\n var eventObject = { \"object\": _dsgTag.config.prerenderingEvents[eventName][i].object, \"data\": _dsgTag.config.prerenderingEvents[eventName][i].data };\n EventHandlers.Events[eventName].firedValues.push(_dsgTag.config.prerenderingEvents[eventName][i]);\n }\n }\n document.addEventListener(eventName, function (eventObject) {\n try {\n var data = typeof eventObject !== \"undefined\" ? eventObject.detail : null;\n try {\n if (data) {\n data = HelperFunctions.DeepExtend({}, data);\n }\n else if (window.siteData) {\n data = HelperFunctions.DeepExtend({}, window.siteData);\n }\n else {\n data = {};\n }\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Error deep extending event data\", LogLevels.Error);\n }\n var thisEvent = new EventInstance(eventName, this, data);\n try {\n if (eventObject.type.indexOf(\"reporting:\") < 0) {\n HelperFunctions.DebugLog([\"Event: \" + eventObject.type, data, \"Executing \" + EventHandlers.Events[eventName].handlers.length + \" handler(s) for \" + eventObject.type]);\n }\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Error occurred logging/bucketing for \" + eventObject.type + \" handler: \" + ex.message, LogLevels.Error);\n }\n EventHandlers.Events[eventObject.type].firedValues.push(thisEvent);\n for (var i = 0; i < EventHandlers.Events[eventName].handlers.length; i++) {\n LaunchHandler(EventHandlers.Events[eventName].handlers[i].handler, thisEvent, EventHandlers.Events[eventName].handlers[i].tagname, EventHandlers.Events[eventName].handlers[i].delayUntilPageView, EventHandlers.Events[eventName].handlers[i].synchronous);\n }\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Error executing document level listener for event \" + eventObject.type + \": \" + ex.message, LogLevels.Error);\n }\n });\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Error setting up base document level listener for event \" + eventName + \": \" + ex.message, LogLevels.Error);\n }\n }\n if (eventHandler) {\n EventHandlers.Events[eventName].handlers.push({ handler: eventHandler, tagname: tagname, delayUntilPageView: delayUntilPageView, synchronous: synchronous });\n if (typeof EventHandlers.Events[eventName] !== \"undefined\" && typeof EventHandlers.Events[eventName].firedValues !== \"undefined\") {\n for (var i = 0; i < EventHandlers.Events[eventName].firedValues.length; i++) {\n LaunchHandler(eventHandler, EventHandlers.Events[eventName].firedValues[i], tagname, delayUntilPageView, synchronous);\n }\n }\n }\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Error adding new event handler \" + eventName + \": \" + ex.message, LogLevels.Error);\n }\n }\n EventHandlers.AddEventHandler = AddEventHandler;\n ;\n function TriggerEvent(eventName, eventData) {\n try {\n var myEvent = new CustomEvent(eventName, {\n detail: eventData || null\n });\n document.dispatchEvent(myEvent);\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Failed to trigger Event '\" + eventName + \"':\" + ex.message, LogLevels.Error);\n }\n }\n EventHandlers.TriggerEvent = TriggerEvent;\n ;\n function AddDocumentReadyEventHandler(handler) {\n AddEventHandler(\"DocumentReady\", handler, \"Base\");\n }\n EventHandlers.AddDocumentReadyEventHandler = AddDocumentReadyEventHandler;\n ;\n function AddWindowLoadEventHandler(handler) {\n AddEventHandler(\"WindowLoaded\", handler, \"Base\");\n }\n EventHandlers.AddWindowLoadEventHandler = AddWindowLoadEventHandler;\n ;\n function AddPage3rdPartyLoadEventHandler(handler, name) {\n AddEventHandler(\"Load3rdPartyTags\", handler, name);\n }\n EventHandlers.AddPage3rdPartyLoadEventHandler = AddPage3rdPartyLoadEventHandler;\n ;\n function AddFirstInteractionEventHandler(handler) {\n AddEventHandler(\"FirstInteractionOccurred\", handler, \"Base\");\n }\n EventHandlers.AddFirstInteractionEventHandler = AddFirstInteractionEventHandler;\n ;\n function InitEventHandlers() {\n for (var i = 0; i < _dsgTag.config.taggingEvents.length; i++) {\n AddEventHandler(_dsgTag.config.taggingEvents[i], null, \"Logger\");\n }\n document.addEventListener('DOMContentLoaded', function () { HelperFunctions.DividerLog(\"Document Loaded\"); TriggerEvent(\"DocumentReady\"); });\n _dsgTag.windowLoadLooper = setInterval(function () {\n if (document.readyState === \"complete\") {\n clearInterval(_dsgTag.windowLoadLooper);\n HelperFunctions.DividerLog(\"Window Loaded\");\n TriggerEvent(\"WindowLoaded\");\n }\n }, 100);\n _dsgTag.FirstInteractionOccurred = false;\n (function () {\n try {\n var FireInteractionHandlers = function () {\n if (!_dsgTag.FirstInteractionOccurred) {\n _dsgTag.FirstInteractionOccurred = true;\n HelperFunctions.DividerLog(\"First Interaction Occurred\");\n TriggerEvent(\"FirstInteractionOccurred\");\n }\n };\n document.addEventListener('mousemove', FireInteractionHandlers);\n document.addEventListener('scroll', FireInteractionHandlers);\n document.addEventListener('keydown', FireInteractionHandlers);\n document.addEventListener('click', FireInteractionHandlers);\n document.addEventListener('touchstart', FireInteractionHandlers);\n }\n catch (ex) { }\n })();\n EventHandlers.AddEventHandler(\"AddToCart\", function (o) {\n var d = o.eventData;\n if (typeof d.ProductsAddedToCart === \"undefined\") {\n if (typeof d.data !== \"undefined\") {\n d = { \"ProductsAddedToCart\": [d.data], \"NewCart\": \"N\" };\n HelperFunctions.DebugLog(\"Incorrect AddToCart data format (Quickview); retriggering.\");\n EventHandlers.TriggerEvent(\"AddToCart\", d);\n }\n else if (typeof d !== \"undefined\" && d.CartAdditionSource === \"Cart-SaveForLater\") {\n d = { \"ProductsAddedToCart\": [d], \"NewCart\": \"N\" };\n HelperFunctions.DebugLog(\"Incorrect AddToCart data format (Save For Later); retriggering.\");\n EventHandlers.TriggerEvent(\"AddToCart\", d);\n }\n else if (typeof d !== \"undefined\" && d.CartAdditionSource === \"Cart-UndoSaveForLater\") {\n d = { \"ProductsAddedToCart\": [d], \"NewCart\": \"N\" };\n HelperFunctions.DebugLog(\"Incorrect AddToCart data format (Undo Save For Later); retriggering.\");\n EventHandlers.TriggerEvent(\"AddToCart\", d);\n }\n }\n }, \"Base\");\n FunctionRepository.UpdatePageType();\n EventHandlers.AddDocumentReadyEventHandler(FunctionRepository.UpdatePageType);\n EventHandlers.AddEventHandler(\"NewPageView\", FunctionRepository.UpdatePageType, \"Base\");\n EventHandlers.AddWindowLoadEventHandler(FunctionRepository.UpdatePageType);\n }\n EventHandlers.InitEventHandlers = InitEventHandlers;\n document.addEventListener(\"reporting:update\", function (eventObject) {\n try {\n var data = typeof eventObject !== \"undefined\" ? eventObject.detail : null;\n var eventType = DataLayer.GetValue(\"EventType\", data);\n if (eventType) {\n HelperFunctions.DebugLog(\"reporting:update being re-triggered as \" + eventType, LogLevels.Warning);\n EventHandlers.TriggerEvent(eventType, data);\n }\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Error occurred in ReportingUpdate processor: \" + ex.message, LogLevels.Error);\n }\n });\n document.addEventListener(\"reporting:PagePostRender\", function (eventObject) {\n HelperFunctions.DebugLog(\"reporting:PagePostRender being re-triggered as NewPageView\", LogLevels.Warning);\n EventHandlers.TriggerEvent(\"NewPageView\", eventObject.detail);\n });\n})(EventHandlers || (EventHandlers = {}));\n;\n//# sourceMappingURL=eventHandlers.namespace.js.map","export const Websites = {\n \"DicksSportingGoods\": {\n \"Name\": \"DicksSportingGoods\",\n \"Abbreviation\": \"DSG\",\n \"Domain\": \"dickssportinggoods.com\",\n \"RegEx\": /dickssportinggoods|dsg|dks-|dsgcep|myscorecard|elasticbeanstalk|where2stageit|adobeaemcloud/,\n \"ProdRegEx\": /^((((www|t|m(2|4|aos)?|sso|aos|stores|storelocator|launch|reviews|protips|weeklyad|tag|solepanel-dks|cmm)\\.)?((dickssportinggoods)|(m3mobile|dsg|myscorecardaccount))\\.(com))|(mobile\\.where2getit\\.com)|(dsgcep\\.custhelp\\.com)|(associatekioskweb\\.dcsg\\.com))$/,\n },\n \"GolfGalaxy\": {\n \"Name\": \"GolfGalaxy\",\n \"Abbreviation\": \"GGXY\",\n \"Domain\": \"golfgalaxy.com\",\n \"RegEx\": /golfgalaxy|gga?-|ggcep/,\n \"ProdRegEx\": /^((((www|t|m|aos|sso|kiosk|stores|storelocator|launch|reviews|weeklyad|tag|solepanel-gg|cmm)\\.)?(golfgalaxy)\\.(com))|(mobile\\.where2getit\\.com)|(ggcep\\.custhelp\\.com))$/,\n },\n \"PublicLands\": {\n \"Name\": \"PublicLands\",\n \"Abbreviation\": \"PBL\",\n \"Domain\": \"publiclands.com\",\n \"RegEx\": /publiclands/,\n \"ProdRegEx\": /^((((www|t|m|aos|sso|kiosk|stores|storelocator|launch|reviews|weeklyad|tag|solepanel-pl|cmm)\\.)?(publiclands)\\.(com)))$/,\n },\n \"GoingGoingGone\": {\n \"Name\": \"GoingGoingGone\",\n \"Abbreviation\": \"GONE\",\n \"Domain\": \"goinggoinggone.com\",\n \"RegEx\": /goinggoinggone/,\n \"ProdRegEx\": /^((((www|sso|stores|launch|cmm).)?(goinggoinggone).(com)))$/,\n },\n \"InvestorRelations\": {\n \"Name\": \"InvestorRelations\",\n \"Abbreviation\": \"INVR\",\n \"Domain\": \"dicks.com\",\n \"RegEx\": /(investors\\.dicks\\.com)|(q4web)/,\n \"ProdRegEx\": /^investors\\.dicks\\.com$/,\n \"CustomTrackingServerDomain\": \"dickssportinggoods.com\",\n \"DontGetLaneJSON\": true\n },\n \"SportsMatter\": {\n \"Name\": \"SportsMatter\",\n \"Abbreviation\": \"SM\",\n \"Domain\": \"sportsmatter.org\",\n \"RegEx\": /(www\\.sportsmatter\\.org)/,\n \"ProdRegEx\": /^www\\.sportsmatter\\.org$/,\n \"CustomTrackingServerDomain\": \"dickssportinggoods.com\",\n \"DontGetLaneJSON\": true\n }\n};\n//# sourceMappingURL=websites.const.js.map","import { _dsgTag } from \"./_dsgTag.namespace\";\nimport { LogLevels } from \"../enums/enums.enum\";\nimport { PageTypes } from \"../consts/pageTypes.const\";\nimport { EventHandlers } from \"./eventHandlers.namespace\";\nimport { DataLayer } from \"./dataLayer.namespace\";\nimport { Websites } from \"../consts/websites.const\";\nexport var HelperFunctions;\n(function (HelperFunctions) {\n function GetQueryStringValue(n, u) {\n u = (u ? (u.indexOf(\"?\") >= 0 ? \"?\" + u.split(\"?\")[1] : \"\") : location.search);\n var regex = new RegExp(\"[?&]\" + n + \"=([^&#]*)\", \"i\"), results = regex.exec(u);\n return (results === null || results.length < 2) ? null : (decodeURIComponent(results[1].replace(/\\+/g, \" \")).indexOf(\"@\") < 0 ? decodeURIComponent(results[1].replace(/\\+/g, \" \")) : null);\n }\n HelperFunctions.GetQueryStringValue = GetQueryStringValue;\n function StandardizeValueName(n) {\n var valueNamespace = \"TAG\";\n var delimiter = \"_\";\n var nameRegEx = new RegExp(\"^\" + valueNamespace.toLowerCase() + delimiter + \"?\", \"i\");\n var baseName = n.replace(nameRegEx, \"\");\n return valueNamespace + delimiter + baseName;\n }\n HelperFunctions.StandardizeValueName = StandardizeValueName;\n function SaveValue(n, v, s) {\n try {\n this.DeleteCookie(n, true);\n this.DeleteCookie(n, false);\n if (typeof Storage !== \"undefined\" && typeof window.localStorage !== \"undefined\" && typeof window.sessionStorage !== \"undefined\") {\n try {\n if (!s) {\n localStorage.setItem(this.StandardizeValueName(n), v);\n }\n else {\n sessionStorage.setItem(this.StandardizeValueName(n), v);\n }\n return true;\n }\n catch (ex) {\n this.DebugLog(\"Error saving \" + n + \" to local storage; using cookie instead.\", true);\n this.WriteCookieValue(n, v);\n }\n }\n else {\n this.WriteCookieValue(n, v);\n }\n }\n catch (ex) {\n console.error(\"Error saving value (\" + n + \",\" + \"v\" + \"):\" + ex.message);\n }\n return false;\n }\n HelperFunctions.SaveValue = SaveValue;\n function GetValue(n) {\n try {\n if (typeof Storage !== \"undefined\" && typeof window.localStorage !== \"undefined\" && typeof window.sessionStorage !== \"undefined\") {\n var existingCookie = this.GetCookieValue(n);\n if (existingCookie) {\n if (this.SaveValue(n, existingCookie)) {\n this.DeleteCookie(n, true);\n this.DeleteCookie(n, false);\n }\n else {\n return existingCookie;\n }\n }\n return sessionStorage.getItem(this.StandardizeValueName(n)) || localStorage.getItem(this.StandardizeValueName(n));\n }\n else {\n return this.GetCookieValue(n);\n }\n }\n catch (ex) {\n console.error(\"Error getting value (\" + n + \"):\" + ex.message);\n }\n return null;\n }\n HelperFunctions.GetValue = GetValue;\n function DeleteValue(n) {\n try {\n if (typeof window.localStorage !== \"undefined\" && typeof window.sessionStorage !== \"undefined\") {\n localStorage.removeItem(this.StandardizeValueName(n));\n sessionStorage.removeItem(this.StandardizeValueName(n));\n }\n }\n catch (ex) {\n console.error(\"Error deleting value (\" + n + \"):\" + ex.message);\n }\n this.DeleteCookie(n, true);\n }\n HelperFunctions.DeleteValue = DeleteValue;\n function GetCookieValue(n, s) {\n var regex = new RegExp(\"(?:^|;)\\\\s*\" + n + \"=([^;]*)\"), results = regex.exec(s || document.cookie);\n return results === null ? null : results[1];\n }\n HelperFunctions.GetCookieValue = GetCookieValue;\n function DeleteCookie(n, i) {\n var x = \"\";\n x = \"; expires=\" + (new Date()).toUTCString();\n var s = window.location.hostname.toLowerCase().split(\".\");\n document.cookie = n + \"=\" + \"DELETE\" + x + \"; path=/\" + (i && s.length >= 2 ? \";domain=\" + s[s.length - 2] + \".\" + s[s.length - 1] : \"\");\n }\n HelperFunctions.DeleteCookie = DeleteCookie;\n function WriteCookieValue(n, v, d, i) {\n var x = \"\";\n if (typeof d == \"number\" && d > 0) {\n var expirationDate = (new Date((new Date()).setDate((new Date().getDate()) + d)));\n x = \"; expires=\" + expirationDate.toUTCString();\n }\n else if (typeof d == \"boolean\" && typeof i == \"undefined\") {\n i = d;\n }\n if (i) {\n this.DeleteCookie(n);\n }\n var s = window.location.hostname.toLowerCase().split(\".\");\n document.cookie = n + \"=\" + v.toString().replace(/[^\\x00-\\x7F]/g, \"\") + x + \"; path=/\" + (i && s.length >= 2 ? \";domain=\" + s[s.length - 2] + \".\" + s[s.length - 1] : \"\");\n }\n HelperFunctions.WriteCookieValue = WriteCookieValue;\n function GetValOnce(v, n, x) {\n var delimiter = \"|\";\n var exists = false;\n var xMilliseconds = x * 60 * 1000;\n var currentValue = this.GetValue(n);\n if (currentValue) {\n currentValue = currentValue.split(delimiter);\n if (Date.now() < (parseInt(currentValue[1]) + xMilliseconds)) {\n exists = currentValue[0] == v;\n }\n }\n this.SaveValue(n, v + delimiter + (Date.now()));\n return exists ? \"\" : v;\n }\n HelperFunctions.GetValOnce = GetValOnce;\n function ToProperCase(s) {\n if (typeof s !== 'undefined' && s) {\n var sSplit = s.split(\" \");\n for (var i = 0; i < s.length; i++) {\n sSplit[i] = s[i].charAt(0).toUpperCase() + s[i].substring(1).toLowerCase();\n }\n s = sSplit.join(\" \");\n }\n return s;\n }\n HelperFunctions.ToProperCase = ToProperCase;\n function DeepExtend(...args) {\n var out = args[0] || {};\n for (var i = 1; i < args.length; i++) {\n var obj = args[i];\n if (!obj)\n continue;\n for (var key in obj) {\n if (obj.hasOwnProperty(key)) {\n if (obj[key] !== null) {\n if (typeof obj[key] === 'object') {\n if (Array.isArray(obj[key])) {\n out[key] = [];\n for (var j = 0; j < obj[key].length; j++) {\n out[key][j] = (typeof obj[key][j] === 'object') ? this.DeepExtend(out[key][j], obj[key][j]) : obj[key][j];\n }\n }\n else {\n out[key] = this.DeepExtend(out[key], obj[key]);\n }\n }\n else {\n out[key] = obj[key];\n }\n }\n }\n }\n }\n return out;\n }\n HelperFunctions.DeepExtend = DeepExtend;\n function DebugLog(o, l) {\n try {\n if (!Array.isArray(o)) {\n o = [o];\n }\n var messageLevel = l || LogLevels.Info;\n var logSetting = this.GetValue(\"Debug\");\n if (logSetting && logSetting.toLowerCase() == \"true\") {\n logSetting = LogLevels.Info;\n this.SaveValue(\"Debug\", LogLevels.Info);\n }\n if ((logSetting && (parseInt(logSetting) + 1) >= messageLevel) || messageLevel === LogLevels.Error || messageLevel === LogLevels.Warning) {\n var logArguments = [];\n var background = messageLevel === LogLevels.Warning ? \"413C26\" : messageLevel === LogLevels.Error ? \"4E3534\" : \"222\";\n var prefixStyle = \"background: #\" + background + \"; color:rgb(2, 162, 4)\";\n logArguments.push(\"%c[Tagging]\");\n logArguments.push(prefixStyle);\n for (var i = 0; i < o.length; i++) {\n var valueToLog = \"\";\n if (typeof o[i] === \"object\") {\n valueToLog = this.DeepExtend({}, o[i]);\n }\n else {\n valueToLog = o[i];\n }\n logArguments.push(valueToLog);\n }\n messageLevel === LogLevels.Warning ? console.warn.apply(null, logArguments) : (messageLevel === LogLevels.Error ? console.error.apply(null, logArguments) : console.log.apply(null, logArguments));\n }\n }\n catch (ex) {\n console.error(\"Error using tagging debug log: \" + ex.message);\n console.error(\"Original message: \");\n try {\n if (typeof o === \"object\") {\n if (l == LogLevels.Error) {\n console.error(this.DeepExtend({}, o));\n }\n else {\n console.log(this.DeepExtend({}, o));\n }\n }\n else {\n if (l == LogLevels.Error) {\n console.error(o);\n }\n else {\n console.log(o);\n }\n }\n }\n catch (ex) {\n if (l == LogLevels.Error) {\n console.error(\"Unable to log original message: \" + ex.message);\n }\n else {\n console.error(\"Unable to log original message: \" + ex.message);\n }\n }\n }\n }\n HelperFunctions.DebugLog = DebugLog;\n function SendDebugPixel(m) {\n try {\n var baseURL = \"https://smetrics.dickssportinggoods.com/b/ss/dsgsbox/10/JS-2.17.0/s\" + parseInt((Math.random() * 100000).toString());\n baseURL += \"?g=\" + encodeURIComponent(window.location.href);\n baseURL += \"&v44=\" + encodeURIComponent(m);\n var pixel = document.createElement(\"script\");\n pixel.src = baseURL;\n document.body.appendChild(pixel);\n }\n catch (ex) { }\n }\n HelperFunctions.SendDebugPixel = SendDebugPixel;\n function DividerLog(t) {\n try {\n var logLevel = this.GetValue(\"Debug\");\n if (logLevel == \"true\" || logLevel == \"2\" || logLevel == \"3\") {\n if (typeof String.prototype.repeat !== \"undefined\" && typeof t === \"string\") {\n var totalLength = 100;\n var halfDivider = \"*\".repeat(parseInt(((totalLength - t.length) / 2).toString()));\n console.log(\"%c[Tagging] \" + halfDivider + \" \" + t + \" \" + halfDivider, \"color:rgb(2, 162, 4)\");\n }\n }\n }\n catch (ex) { }\n }\n HelperFunctions.DividerLog = DividerLog;\n function removeURLParameters(url, parametersToRemove) {\n var urlMinusParam = url.split(\"?\")[0];\n var queryStrings = (url.indexOf(\"?\") !== -1) ? url.split(\"?\")[1] : \"\";\n var param_array = [];\n var param = \"\";\n var parameterToRemove = \"\";\n var removeTheseParams = [];\n removeTheseParams = parametersToRemove;\n if (queryStrings !== \"\") {\n param_array = queryStrings.split(\"&\");\n for (var p = removeTheseParams.length - 1; p >= 0; p--) {\n parameterToRemove = removeTheseParams[p];\n if (typeof String.prototype.trim === 'function') {\n parameterToRemove = parameterToRemove.trim();\n }\n for (var i = param_array.length - 1; i >= 0; i--) {\n param = param_array[i].split(\"=\")[0];\n if (param === parameterToRemove) {\n param_array.splice(i, 1);\n }\n }\n }\n }\n if (param_array.length > 0)\n urlMinusParam = urlMinusParam + \"?\" + param_array.join(\"&\");\n return urlMinusParam;\n }\n HelperFunctions.removeURLParameters = removeURLParameters;\n function GetPageTypeByURL(customURL, eventInstance) {\n var pageType = PageTypes.Unknown;\n var url = customURL || window.location.href;\n var host = url.split('/').slice(2, 3).join('/');\n var path = '/' + url.split('#')[0].split('?')[0].split('/').slice(3).join('/');\n var TestPageType = function (currentType) {\n var success = true;\n if (PageTypes[currentType].MatchRules.HostRegExTest) {\n success = PageTypes[currentType].MatchRules.HostRegExTest.test(host);\n }\n if (success && PageTypes[currentType].MatchRules.PathRegExTest) {\n success = PageTypes[currentType].MatchRules.PathRegExTest.test(path);\n }\n if (success && PageTypes[currentType].MatchRules.FunctionTest) {\n try {\n success = PageTypes[currentType].MatchRules.FunctionTest(eventInstance);\n }\n catch (ex) {\n this.DebugLog(\"Page Type function test crashed: \" + ex.message, 1);\n success = false;\n }\n }\n return success;\n };\n for (var currentType in PageTypes) {\n if (TestPageType(currentType)) {\n pageType = PageTypes[currentType];\n break;\n }\n }\n pageType = TestPageType(\"Error\") ? PageTypes.Error : pageType;\n if (EventHandlers && pageType.AutoTriggerPageView && !_dsgTag.pageViewAutoFired && !EventHandlers.initialPageViewPreFired && !EventHandlers.initialPageViewFired) {\n EventHandlers.AddWindowLoadEventHandler(function () {\n if (!EventHandlers.initialPageViewPreFired && !EventHandlers.initialPageViewFired) {\n this.DebugLog(\"Auto Triggering Pageview\");\n var data = this.DeepExtend({ \"wasAutoTriggered\": true }, window.siteData);\n EventHandlers.TriggerEvent(\"NewPageView\", data);\n }\n });\n _dsgTag.pageViewAutoFired = true;\n }\n return pageType;\n }\n HelperFunctions.GetPageTypeByURL = GetPageTypeByURL;\n function GetStandardizedDKSTime() {\n var output = null;\n var rawTimeSource = DataLayer.GetValue(\"ServerTimestamp\");\n if (!rawTimeSource) {\n rawTimeSource = Date.now();\n }\n if (rawTimeSource) {\n var isDST = function (input) {\n var DSTInfo = {\n 2020: \"3/8,11/1\",\n 2021: \"3/14,11/7\",\n 2022: \"3/13,11/6\",\n 2023: \"3/12,11/5\",\n 2024: \"3/10,11/3\",\n 2025: \"3/9,11/2\",\n 2026: \"3/8,11/1\",\n 2027: \"3/14,11/7\",\n 2028: \"3/12,11/5\",\n 2029: \"3/11,11/4\",\n 2030: \"3/10,11/3\"\n };\n var dso = DSTInfo[input.getFullYear()].split(/,/);\n var ds = new Date(dso[0] + '/' + input.getFullYear());\n var de = new Date(dso[1] + '/' + input.getFullYear());\n if (input > ds && input < de) {\n return true;\n }\n return false;\n };\n var GMTServerTime = new Date(rawTimeSource);\n var clientTime = new Date(GMTServerTime);\n GMTServerTime = new Date(GMTServerTime.setMinutes(GMTServerTime.getMinutes() + (GMTServerTime.getTimezoneOffset())));\n var DSGEnterpriseTime = new Date(GMTServerTime);\n DSGEnterpriseTime.setHours(DSGEnterpriseTime.getHours() - 4 - (isDST(DSGEnterpriseTime) ? 0 : 1));\n output = [DSGEnterpriseTime, clientTime];\n }\n return output;\n }\n HelperFunctions.GetStandardizedDKSTime = GetStandardizedDKSTime;\n function LoadScriptAsyncAndCallFunction(uri, friendlyName, callback, id) {\n var tag = document.createElement('script');\n tag.src = uri;\n tag.async = true;\n if (id) {\n tag.id = id;\n }\n if (callback) {\n _dsgTag.ScriptCallbackFunctions = _dsgTag.ScriptCallbackFunctions || {};\n var randomID;\n while (!randomID || typeof _dsgTag.ScriptCallbackFunctions[randomID] !== 'undefined') {\n randomID = \"_\" + (Math.random() * 1000);\n }\n _dsgTag.ScriptCallbackFunctions[randomID] = function (event) {\n try {\n callback();\n delete _dsgTag.ScriptCallbackFunctions[randomID];\n var tagErrorList = JSON.parse(HelperFunctions.GetValue(\"TagErrorList\")) || [];\n if (tagErrorList.indexOf(friendlyName) >= 0) {\n tagErrorList.splice(tagErrorList.indexOf(friendlyName), 1);\n }\n HelperFunctions.SaveValue(\"TagErrorList\", JSON.stringify(tagErrorList));\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Error running callback function for \" + friendlyName);\n }\n };\n tag.onload = _dsgTag.ScriptCallbackFunctions[randomID];\n tag.onerror = function () {\n try {\n var tagErrorList = JSON.parse(this.GetValue(\"TagErrorList\")) || [];\n if (tagErrorList.indexOf(friendlyName) < 0) {\n tagErrorList.push(friendlyName);\n }\n tagErrorList.sort();\n this.SaveValue(\"TagErrorList\", JSON.stringify(tagErrorList));\n }\n catch (ex) {\n this.DebugLog(\"Error handling onerror for \" + friendlyName);\n }\n };\n }\n var firstScriptTag = document.querySelectorAll('head > script')[0];\n if (!firstScriptTag) {\n firstScriptTag = document.head.children[0];\n }\n firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);\n }\n HelperFunctions.LoadScriptAsyncAndCallFunction = LoadScriptAsyncAndCallFunction;\n function PullJSONFromURL(URLPath, callback) {\n try {\n var baseURL = \"\";\n if (URLPath.indexOf(\"https\") === 0) {\n baseURL = URLPath;\n }\n else {\n baseURL = \"https://tag.\" + _dsgTag.currentWebsite.Domain + \"/\" + URLPath;\n }\n var request = new XMLHttpRequest();\n request.open('GET', baseURL, true);\n request.setRequestHeader('Content-Type', 'application/json');\n request.onreadystatechange = function () {\n if (this.readyState === 4) {\n if (this.status >= 200 && this.status < 400) {\n var resp = this.responseText;\n try {\n var json = JSON.parse(resp);\n callback(json);\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Error while parsing JSON file:\" + ex.message, LogLevels.Error);\n }\n }\n else {\n HelperFunctions.DebugLog(\"Error while pulling JSON file:\" + baseURL, LogLevels.Error);\n }\n }\n };\n request.send();\n request = null;\n }\n catch (ex) {\n }\n }\n HelperFunctions.PullJSONFromURL = PullJSONFromURL;\n function BindDocumentClickEventWithAdditionalSelector(selector, handler) {\n document.addEventListener(\"click\", function (event) {\n try {\n var parent = event.target;\n var backupBreak = 0;\n while (parent && backupBreak < 200) {\n if (typeof parent.matches === \"function\" && parent.matches(selector)) {\n handler(parent);\n return;\n }\n parent = parent.parentNode;\n backupBreak++;\n }\n if (typeof event.composedPath() !== \"undefined\" && event.composedPath().length > 0) {\n parent = event.target;\n var individualSelectors = selector.split(\",\");\n for (var i = 0; i < individualSelectors.length; i++) {\n var nodeSelectors = individualSelectors[i].trim().split(\" \");\n if (nodeSelectors.length > 1) {\n nodeSelectors.reverse();\n var pathIndex = 0;\n var selectorIndex = 0;\n var firstMatchingNode, pathItem, currentSelector;\n while (pathIndex < event.composedPath().length && selectorIndex < nodeSelectors.length) {\n pathItem = event.composedPath()[pathIndex];\n currentSelector = nodeSelectors[selectorIndex];\n if (typeof Element.prototype.matches === \"function\" && pathItem.matches(currentSelector)) {\n if (!firstMatchingNode) {\n firstMatchingNode = pathItem;\n }\n selectorIndex++;\n }\n pathIndex++;\n }\n if (selectorIndex >= nodeSelectors.length) {\n handler(firstMatchingNode);\n return;\n }\n }\n }\n }\n var matchingElements = document.querySelectorAll(selector);\n for (var i = 0; i < matchingElements.length; i++) {\n parent = event.target;\n backupBreak = 0;\n while (parent && backupBreak < 200) {\n if (matchingElements[i] === parent) {\n handler(matchingElements[i]);\n return;\n }\n parent = parent.parentNode;\n backupBreak++;\n }\n }\n }\n catch (ex) { }\n });\n }\n HelperFunctions.BindDocumentClickEventWithAdditionalSelector = BindDocumentClickEventWithAdditionalSelector;\n function ScrapeTextViaSelector(selector) {\n var element = document.querySelector(selector);\n if (element) {\n return element.innerText.trim();\n }\n return \"\";\n }\n HelperFunctions.ScrapeTextViaSelector = ScrapeTextViaSelector;\n function HideObjectViaCSS(selector, useVisibility) {\n try {\n var node = document.createElement(\"style\");\n node.innerText = selector + \" \" + (useVisibility ? \"{visibility:hidden\" : \"{display:none\") + \" !important}\";\n document.head.appendChild(node);\n }\n catch (ex) { }\n }\n HelperFunctions.HideObjectViaCSS = HideObjectViaCSS;\n function IsInLane(laneInput, laneSet) {\n try {\n laneSet = laneSet || 0;\n var lane = _dsgTag.customerLanes[laneSet];\n if (typeof laneInput === \"number\") {\n return lane === laneInput;\n }\n else if (typeof laneInput === \"boolean\") {\n return laneInput;\n }\n else if (typeof laneInput === \"string\") {\n var inLane = false;\n var list = laneInput.split(\",\");\n var range = laneInput.split(\"-\");\n if (Number(laneInput.trim())) {\n return this.IsInLane(Number(laneInput.trim()), laneSet);\n }\n else if (list.length > 1) {\n for (var i = 0; i < list.length && !inLane; i++) {\n inLane = this.IsInLane(list[i].trim(), laneSet);\n }\n return inLane;\n }\n else if (range.length === 2) {\n for (var i = Number(range[0].trim()); i <= Number(range[1].trim()) && !inLane; i++) {\n inLane = this.IsInLane(i, laneSet);\n }\n return inLane;\n }\n else if (laneInput.toLowerCase() === \"even\") {\n return lane % 2 == 0;\n }\n else if (laneInput.toLowerCase() === \"odd\") {\n return lane % 2 == 1;\n }\n else if (laneInput.toLowerCase() === \"true\") {\n return true;\n }\n else if (laneInput.toLowerCase() === \"false\") {\n return false;\n }\n }\n }\n catch (ex) {\n this.DebugLog(\"Error occured parsing Lane logic '\" + laneInput + \"':\" + ex.message, true);\n return false;\n }\n return false;\n }\n HelperFunctions.IsInLane = IsInLane;\n function CompareValues(baseValue, compareToValues, comparator) {\n try {\n var CompareSingularValues = function (x, y, comparator) {\n switch (comparator.toLowerCase()) {\n case \"=\": return x == y;\n case \"!=\": return x != y;\n case \"^=\": return x.toLowerCase().indexOf(y.toLowerCase()) == 0;\n case \"^!=\": return x.toLowerCase().indexOf(y.toLowerCase()) != 0;\n case \"$=\": return x.toLowerCase().indexOf(y.toLowerCase()) == (x.length - y.length);\n case \"*=\": return x.toLowerCase().indexOf(y.toLowerCase()) >= 0;\n case \"*!=\": return x.toLowerCase().indexOf(y.toLowerCase()) < 0;\n }\n };\n var negative = comparator.indexOf(\"!\") >= 0;\n var match = negative;\n var valueList = compareToValues;\n if (!Array.isArray(valueList)) {\n valueList = [valueList];\n }\n for (var i = 0; i < valueList.length; i++) {\n var currentTest = CompareSingularValues(baseValue.toString().toLowerCase(), valueList[i].toString().toLowerCase(), comparator);\n match = negative ? (match && currentTest) : (match || currentTest);\n }\n return match;\n }\n catch (ex) { }\n return false;\n }\n HelperFunctions.CompareValues = CompareValues;\n function TriggerFunctionWhenVisible(element, callback, limitOnce) {\n try {\n var hasFired = false;\n var observer = new IntersectionObserver(function (entries, observer) {\n try {\n entries.forEach(function (entry) {\n try {\n if (entry.intersectionRatio > 0 && (!hasFired || !limitOnce)) {\n callback();\n hasFired = true;\n }\n }\n catch (ex) {\n this.DebugLog(\"Error executing callback for visibility trigger: \" + ex.message, true);\n }\n });\n }\n catch (ex) {\n this.DebugLog(\"Error executing visibility trigger: \" + ex.message, true);\n }\n });\n for (var i = 0; i < element.length; i++) {\n observer.observe(element[i]);\n }\n }\n catch (ex) {\n this.DebugLog(\"Error setting up visibility trigger: \" + ex.message, true);\n }\n }\n HelperFunctions.TriggerFunctionWhenVisible = TriggerFunctionWhenVisible;\n function PollForElementsAndCallback(selector, callback) {\n if (typeof window !== \"undefined\") {\n try {\n var elements = document.querySelectorAll(selector);\n if (elements.length > 0) {\n callback(elements);\n }\n else {\n setTimeout(this.PollForElementsAndCallback, 100, selector, callback);\n }\n }\n catch (ex) { }\n }\n }\n HelperFunctions.PollForElementsAndCallback = PollForElementsAndCallback;\n function ProcessLanesAndFlags(data) {\n try {\n var flagData = {};\n _dsgTag.TestEvents = _dsgTag.TestEvents || [];\n this.SaveValue(\"LaneJSON\", JSON.stringify(_dsgTag.savedLaneData));\n try {\n for (var i = 0; i < data.length; i++) {\n if (!data[i].nonProd || !_dsgTag.isProduction) {\n var siteMatch = true;\n var pageMatch = true;\n var laneMatch = true;\n var solepanelAllowed = false;\n if (data[i].sites) {\n siteMatch = data[i].sites.indexOf(_dsgTag.currentWebsite.Abbreviation) >= 0;\n }\n if (data[i].pageTypes) {\n pageMatch = data[i].pageTypes.indexOf(this.GetPageTypeByURL().Name) >= 0;\n }\n if (data[i].lanes) {\n laneMatch = this.IsInLane(data[i].lanes, data[i].pool);\n }\n if (data[i].solepanelAllowed) {\n solepanelAllowed = data[i].solepanelAllowed.toLowerCase() === \"true\";\n }\n if (siteMatch && pageMatch && laneMatch && !_dsgTag.isLaunch && (_dsgTag.experience !== \"CVCC\" || solepanelAllowed)) {\n _dsgTag.EnabledTests = _dsgTag.EnabledTests || [];\n if (_dsgTag.EnabledTests.indexOf(data[i].name) < 0) {\n _dsgTag.EnabledTests.push(data[i].name);\n var currentFlags = data[i].flags;\n for (var j = 0; j < currentFlags.split(\",\").length; j++) {\n var currentFlag = currentFlags.split(\",\")[j];\n flagData[currentFlag] = !data[i].toggle;\n }\n if (data[i].additionalValues && Array.isArray(data[i].additionalValues)) {\n for (var j = 0; j < data[i].additionalValues.length; j++) {\n flagData[data[i].additionalValues[j].key] = data[i].additionalValues[j].value;\n }\n }\n if (data[i].events) {\n _dsgTag.TestEvents = _dsgTag.TestEvents.concat(data[i].events);\n }\n if (data[i].hiddenLanes && data[i].hiddenLanesSelector) {\n if (this.IsInLane(data[i].hiddenLanes, data[i].pool)) {\n this.HideObjectViaCSS(data[i].hiddenLanesSelector);\n }\n }\n }\n }\n }\n }\n }\n catch (ex) {\n this.DebugLog(\"Error processing Test Lane Flag data: \" + ex.message, true);\n }\n try {\n if (!(this.GetQueryStringValue(\"camp\"))) {\n var querystring = window.location.search;\n var qsMatch = /(?:\\?|\\&)([^=]+)\\=(?:[^&]+)/ig;\n var result;\n while (result = qsMatch.exec(querystring)) {\n var flagMatch = /^flag_(.+)/ig;\n var variableName = flagMatch.exec(result[1]);\n if (variableName && variableName.length > 1 && this.GetQueryStringValue(result[1]) == 'true') {\n flagData[variableName[1]] = true;\n }\n }\n }\n }\n catch (ex) { }\n flagData = flagData;\n for (var key in flagData) {\n window[key] = flagData[key];\n }\n clearTimeout(_dsgTag.laneJSONPending);\n if (typeof _dsgTag.pendingTags !== \"undefined\" && _dsgTag.pendingTags.length > 0) {\n for (var i = 0; i < _dsgTag.pendingTags.length; i++) {\n _dsgTag.pendingTags[i]();\n }\n }\n var myEvent = new CustomEvent(\"WindowFlagsEvent\", {\n detail: flagData\n });\n document.dispatchEvent(myEvent);\n }\n catch (ex) {\n this.DebugLog(\"Error importing Test Lane Flag data: \" + ex.message, true);\n }\n }\n HelperFunctions.ProcessLanesAndFlags = ProcessLanesAndFlags;\n function GenerateRandomString(length) {\n var result = '';\n var characters = '0123456789';\n var charactersLength = characters.length;\n for (let i = 0; i < length; i++) {\n result += characters.charAt(Math.floor(Math.random() * charactersLength));\n }\n return result;\n }\n HelperFunctions.GenerateRandomString = GenerateRandomString;\n function DebugTimer(timerName, wrappedFunction) {\n if (typeof wrappedFunction === \"function\") {\n var init = Date.now();\n wrappedFunction();\n this.DebugLog(\"Timer: \" + timerName + \" - \" + (Date.now() - init).toString() + \"ms\", LogLevels.Verbose);\n }\n else {\n this.DebugLog(\"Timer: \" + timerName + \" - \" + (Date.now() - _dsgTag.taggingInitTimestamp).toString() + \"ms\", LogLevels.Verbose);\n }\n }\n HelperFunctions.DebugTimer = DebugTimer;\n function SHA256Hash(input) {\n return new Promise(function (resolve) {\n const textAsBuffer = new TextEncoder().encode(input);\n window.crypto.subtle.digest(\"SHA-256\", textAsBuffer).then(function (hashBuffer) {\n const hashArray = Array.from(new Uint8Array(hashBuffer));\n const hash = hashArray.map((item) => item.toString(16).padStart(2, \"0\")).join(\"\");\n resolve(hash);\n });\n });\n }\n HelperFunctions.SHA256Hash = SHA256Hash;\n function IsKnownBot() {\n var isBot = false;\n if (navigator && navigator.userAgent) {\n var botUARegEx = [/googlebot/i, /google-inspectiontool/i];\n for (var i = 0; i < botUARegEx.length && !isBot; i++) {\n isBot = botUARegEx[i].test(navigator.userAgent);\n }\n }\n return isBot;\n }\n HelperFunctions.IsKnownBot = IsKnownBot;\n function ToMoney(input) {\n try {\n return parseFloat((parseFloat(input)).toFixed(2));\n }\n catch (ex) {\n this.DebugLog(\"Error converting \" + input.toString() + \" to money value: \" + ex.message, LogLevels.Error);\n return input;\n }\n }\n HelperFunctions.ToMoney = ToMoney;\n function GetMarketingChannelInfo() {\n var const_MCNotApplicable = \"n/a\";\n var output = { \"Channel\": \"\", \"ReferringDomain\": \"\", \"Campaign\": \"\", \"URL\": \"\" };\n var campaignQueryString = \"camp\";\n var baseSiteFilters = [];\n for (var key in Websites) {\n baseSiteFilters.push(Websites[key].Domain);\n }\n var otherInternalFilters = \"javascript:,tel:,\" + _dsgTag.linkInternalFilters;\n otherInternalFilters += \",\" + window.location.hostname.toLowerCase();\n var additionalInternalFilters = '[\"mycustomizer.com\",\"associatekiosk.dcsg.com\",\"dsgcep.custhelp.com\",\"ggcep.custhelp.com\",\"dickssportinggoodsonline.com\",\"dsgn.dcsg.com\",\"investors.dicks.com\",\"maxfli.com\",\"mobile.where2getit.com\",\"myw2.dcsg.com\",\"paypal.com\",\"app.dcsg.com\",\"bbhosted.com\",\"brandingbrand.com\",\"dcsg.com\",\"gsipartners.com\",\"where2getit.com\",\"where2stageit.com\",\"453andahalf.com\",\"cardinalcommerce.com\",\"cashstar.com\",\"conxport.com\",\"dicks.com\",\"dicksmvp.com\",\"dickssportinggoods.jobs\",\"dicksteamgear.com\",\"dsg.com\",\"dsgcorpevents.com\",\"easy2.com\",\"golfgalaxyjobs.com\",\"golfgalaxylessons.com\",\"m3mobile.com\",\"mydickssportinggoods.com\",\"mygolfgalaxy.com\",\"myscorecardaccount.com\",\"reviewmyaccount.com\",\"savvis.net\",\"sombreropay.com\",\"sombrerosport.com\",\"bluesombrero.com\",\"sportsmansadvantageclub.com\",\"sportsmatter.com\",\"sportsmatter.org\",\"truerunner.com\"]';\n var searchEngines = JSON.parse('{\"360.cn\":{\"d\":[\"360.cn\"],\"q\":[\"q\"]},\"Startsiden\":{\"d\":[\"abcsok.no\"],\"q\":[\"q\"]},\"Alhea\":{\"d\":[\"alhea.com\"],\"q\":[\"q\"]},\"Alot\":{\"d\":[\"search.alot.com\",\"alot.com\"],\"q\":[\"q\"]},\"AltaVista\":{\"d\":[\"altavista.co\",\"altavista.de\"],\"q\":[\"q\",\"r\"]},\"AOL\":{\"d\":[\"search.aol.\",\"suche.aolsvc.de\"],\"q\":[\"q\",\"query\"]},\"Ask\":{\"d\":[\"ask.jp\",\"ask.co\"],\"q\":[\"q\",\"ask\"]},\"AVG\":{\"d\":[\"isearch.avg.com\"],\"q\":[\"q\"]},\"Baidu\":{\"d\":[\"baidu.com\"],\"q\":[\"word\",\"wd\"]},\"Blekko\":{\"d\":[\"blekko.com\"],\"q\":[\"q\"]},\"Bing\":{\"d\":[\"bing.com\"],\"q\":[\"q\"]},\"CNN Web Search\":{\"d\":[\"search.cnn.com\"],\"q\":[\"query\"]},\"Comcast\":{\"d\":[\"search.xfinity.com\"],\"q\":[\"q\"]},\"Contenko\":{\"d\":[\"contenko.com\"],\"q\":[\"q\"]},\"Daum\":{\"d\":[\"daum.net\",\"search.daum.net\"],\"q\":[\"q\"]},\"Dictionary\":{\"d\":[\"ask.reference.com\"],\"q\":[\"q\"]},\"DogPile\":{\"d\":[\"dogpile.com\"],\"q\":[\"q\"]},\"DuckDuckGo\":{\"d\":[\"duckduckgo.com\"],\"q\":[\"q\"]},\"Earthlink\":{\"d\":[\"search.earthlink.net\"],\"q\":[\"q\"]},\"Excite\":{\"d\":[\"excite.co\",\"msxml.excite.com\"],\"q\":[\"search\",\"q\"]},\"Good Search\":{\"d\":[\"goodsearch.com\"],\"q\":[\"keywords\"]},\"Google\":{\"d\":[\"google.\",\"googlesyndication.com\",\".googleadservices.com\"],\"q\":[\"q\",\"as_q\"]},\"icq\":{\"d\":[\"icqit.com\"],\"q\":[\"q\"]},\"Info.com\":{\"d\":[\"info.com\"],\"q\":[\"qkw\"]},\"InfoSpace\":{\"d\":[\"search.infospace.com\",\"infospace.com\"],\"q\":[\"q\"]},\"ixquick.com\":{\"d\":[\"ixquick.com\"],\"q\":[\"query\"]},\"libero.it\":{\"d\":[\"libero.it\"],\"q\":[\"query\"]},\"Lycos\":{\"d\":[\"search.lycos.com\"],\"q\":[\"q\"]},\"Mail.ru\":{\"d\":[\"mail.ru\"],\"q\":[\"q\"]},\"MSN\":{\"d\":[\"msn.com\"],\"q\":[\"q\"]},\"MyWebSearch\":{\"d\":[\".mywebsearch.com\",\"mywebsearch.com\"],\"q\":[\"searchfor\"]},\"MyWay.com\":{\"d\":[\"myway.com\"],\"q\":[\"searchfor\"]},\"Naver\":{\"d\":[\"naver.com\",\"search.naver.com\"],\"q\":[\"query\"]},\"Netscape Search\":{\"d\":[\"netscape.com\"],\"q\":[\"query\",\"search\"]},\"Optimum Search\":{\"d\":[\"optimum.net\"],\"q\":[\"q\"]},\"Reference.com\":{\"d\":[\"reference.com\"],\"q\":[\"q\"]},\"RoadRunner Search\":{\"d\":[\"search.rr.com\"],\"q\":[\"qs\"]},\"Search Results.com\":{\"d\":[\"search-results.com\"],\"q\":[\"q\"]},\"seznam.cz\":{\"d\":[\"seznam.cz\"],\"q\":[\"q\"]},\"so.com\":{\"d\":[\"so.com\"],\"q\":[\"q\"]},\"sogou.com\":{\"d\":[\"sogou.com\"],\"q\":[\"query\"]},\"Tiscali\":{\"d\":[\"tiscali.it\",\"www.tiscali.co.uk\"],\"q\":[\"key\",\"query\"]},\"Virgilio\":{\"d\":[\"virgilio.it\"],\"q\":[\"qs\"]},\"Yandex.ru\":{\"d\":[\"yandex\"],\"q\":[\"text\"]},\"WebCrawler\":{\"d\":[\"webcrawler.com\"],\"q\":[\"q\"]},\"Wow\":{\"d\":[\"wow.com\"],\"q\":[\"q\"]},\"Yahoo!\":{\"d\":[\"yahoo.com\",\"search.yahoo.com\",\"yahoo.co.jp\"],\"q\":[\"p\",\"va\"]},\"Yahoo! - Link Referral\":{\"d\":[\"r.search.yahoo.com\"],\"q\":[\"p\"]},\"Zen Search\":{\"d\":[\"zensearch.com\"],\"q\":[\"q\"]}}');\n var channelTypes = JSON.parse('{\"SNS\":[{\"d\":\"t.co\",\"x\":true},{\"d\":\"facebook.com\",\"x\":false},{\"d\":\"wanelo.com\",\"x\":false},{\"d\":\"linkedin.com\",\"x\":false},{\"d\":\"twitter.com\",\"x\":false},{\"d\":\"orkut.com\",\"x\":false},{\"d\":\"friendster.com\",\"x\":false},{\"d\":\"livejournal.com\",\"x\":false},{\"d\":\"blogspot.com\",\"x\":false},{\"d\":\"wordpress.com\",\"x\":false},{\"d\":\"friendfeed.com\",\"x\":false},{\"d\":\"digg.com\",\"x\":false},{\"d\":\"reddit.com\",\"x\":false},{\"d\":\"stumbleupon.com\",\"x\":false},{\"d\":\"twine.com\",\"x\":false},{\"d\":\"yelp.com\",\"x\":false},{\"d\":\"mixx.com\",\"x\":false},{\"d\":\"delicious.com\",\"x\":false},{\"d\":\"tumblr.com\",\"x\":false},{\"d\":\"disqus.com\",\"x\":false},{\"d\":\"intensedebate.com\",\"x\":false},{\"d\":\"plurk.com\",\"x\":false},{\"d\":\"slideshare.net\",\"x\":false},{\"d\":\"backtype.com\",\"x\":false},{\"d\":\"netvibes.com\",\"x\":false},{\"d\":\"mister-wong.com\",\"x\":false},{\"d\":\"diigo.com\",\"x\":false},{\"d\":\"flixster.com\",\"x\":false},{\"d\":\"youtube.com\",\"x\":false},{\"d\":\"vimeo.com\",\"x\":false},{\"d\":\"12seconds.tv\",\"x\":false},{\"d\":\"zooomr.com\",\"x\":false},{\"d\":\"identi.ca\",\"x\":false},{\"d\":\"jaiku.com\",\"x\":false},{\"d\":\"flickr.com\",\"x\":false},{\"d\":\"imeem.com\",\"x\":false},{\"d\":\"dailymotion.com\",\"x\":false},{\"d\":\"photobucket.com\",\"x\":false},{\"d\":\"fotolog.com\",\"x\":false},{\"d\":\"smugmug.com\",\"x\":false},{\"d\":\"classmates.com\",\"x\":false},{\"d\":\"myyearbook.com\",\"x\":false},{\"d\":\"mylife.com\",\"x\":false},{\"d\":\"tagged.com\",\"x\":false},{\"d\":\"brightkite.com\",\"x\":false},{\"d\":\"ning.com\",\"x\":false},{\"d\":\"bebo.com\",\"x\":false},{\"d\":\"hi5.com\",\"x\":false},{\"d\":\"yuku.com\",\"x\":false},{\"d\":\"cafemom.com\",\"x\":false},{\"d\":\"xanga.com\",\"x\":false},{\"d\":\"pinterest.com\",\"x\":false},{\"d\":\"foursquare.com\",\"x\":false},{\"d\":\"instagram.com\",\"x\":false},{\"d\":\"like2b.uy\",\"x\":false},{\"d\":\"myspace.com\",\"x\":false}],\"PAR\":[{\"d\":\"maxfli.com\",\"x\":false},{\"d\":\"nickentgolf.com\",\"x\":false},{\"d\":\"topflite.com\",\"x\":false},{\"d\":\"epicfit.com\",\"x\":false},{\"d\":\"koppen.prod.tracylocke.com\",\"x\":false}]}');\n var channelRollup = '{\"DSP\":[\"DIS\", \"ESP\"], \"EML\": [\"EMA\", \"PRO\", \"TRI\", \"201\"], \"SEM\": [\"PPC\"], \"SNS\": [\"SNT\", \"SN\", \"SN:\"], \"TXT\": [\"TEX\"], \"SEO\": [\"OPA\"]}';\n try {\n var referrer = DataLayer.GetValue('ReferringPageURL');\n var camp = HelperFunctions.GetQueryStringValue(campaignQueryString);\n if (!referrer && !camp && HelperFunctions.GetQueryStringValue(\"srsltid\")) {\n camp = \"OPA:\" + HelperFunctions.GetQueryStringValue(\"srsltid\");\n referrer = \"https://www.google.com\";\n }\n if (camp) {\n camp = decodeURIComponent(camp);\n output.Campaign = camp;\n }\n else {\n output.Campaign = const_MCNotApplicable;\n }\n var directTimeout = 1000 * 60 * 30;\n var dteNow = new Date();\n dteNow.setTime(dteNow.getTime() + 18E5);\n var directTime = HelperFunctions.GetCookieValue(\"TAG_Direct\");\n var direct = false;\n if (!directTime || (Date.now() - parseInt(directTime) > directTimeout)) {\n direct = true;\n }\n HelperFunctions.WriteCookieValue(\"TAG_Direct\", Date.now().toString(), dteNow.getTime(), true);\n if (referrer) {\n var domain = referrer.split(\"/\")[2].toLowerCase();\n output.ReferringDomain = domain;\n var isInternalDomainReferrer = false;\n var internalDomains = (otherInternalFilters.split(\",\")).concat(JSON.parse(additionalInternalFilters)).concat(baseSiteFilters);\n for (var i = 0; i < internalDomains.length && !isInternalDomainReferrer; i++) {\n var internalDomain = internalDomains[i].toLowerCase();\n isInternalDomainReferrer = domain.indexOf(internalDomain) >= 0;\n }\n if (isInternalDomainReferrer && !camp) {\n return { \"Channel\": \"\", \"ReferringDomain\": \"\", \"Campaign\": \"\", \"URL\": \"\" };\n }\n var isSearchEngineReferrer = false;\n for (var engine in searchEngines) {\n var searchDomains = searchEngines[engine].d;\n for (var j = 0; j < searchDomains.length && !isSearchEngineReferrer; j++) {\n var searchDomain = searchDomains[j].toLowerCase();\n isSearchEngineReferrer = domain.indexOf(searchDomain) >= 0;\n }\n if (isSearchEngineReferrer) {\n if (camp) {\n output.Channel = \"SEM\";\n }\n else {\n output.Channel = \"SEO\";\n }\n break;\n }\n }\n var isOtherChannelReferrer = false;\n for (var type in channelTypes) {\n var channelDomains = channelTypes[type];\n for (var i = 0; i < channelDomains.length && !isOtherChannelReferrer; i++) {\n var channelDomain = channelDomains[i].d.toLowerCase();\n isOtherChannelReferrer = (channelDomains[i].x) ? (domain == channelDomain) : (domain.indexOf(channelDomain) >= 0);\n }\n if (isOtherChannelReferrer) {\n output.Channel = type;\n break;\n }\n }\n }\n else {\n output.ReferringDomain = const_MCNotApplicable;\n }\n if (camp) {\n var affiliateCamp = output.Campaign.match(/^aff(?::.*?){5}/i);\n if (affiliateCamp) {\n output.Channel = \"AFF\";\n output.Campaign = affiliateCamp[0];\n }\n else {\n var prefixMatch = /^([a-zA-Z]{1,3}).*/gi.exec(camp);\n if (prefixMatch.length > 1) {\n var campPrefix = prefixMatch[1].toUpperCase();\n var channelTypes = JSON.parse(channelRollup);\n var foundMatch = false;\n for (var parentType in channelTypes) {\n var currentCampList = channelTypes[parentType];\n for (var i = 0; i < currentCampList.length; i++) {\n if (camp.toLowerCase().indexOf(currentCampList[i].toLowerCase()) == 0) {\n campPrefix = parentType;\n foundMatch = true;\n break;\n }\n }\n if (foundMatch) {\n break;\n }\n }\n output.Channel = campPrefix;\n output.Campaign = camp;\n }\n }\n }\n if (!output.Channel) {\n if (referrer) {\n output.Channel = \"RFD\";\n }\n else if (true) {\n output.Channel = \"DRT\";\n output.ReferringDomain = \"drt\";\n }\n }\n if (output.Channel) {\n var currentURL = DataLayer.GetValue('PageURL');\n var queryParamsToKeep = [\"acq\", \"tsa\", \"channel\", \"sl\", \"param\", \"gmb\", \"pdp\", \"seo\"];\n for (var i = 0; i < queryParamsToKeep.length; i++) {\n var value = HelperFunctions.GetQueryStringValue(queryParamsToKeep[i]);\n if (value) {\n queryParamsToKeep[i] = queryParamsToKeep[i] + \"=\" + HelperFunctions.GetQueryStringValue(queryParamsToKeep[i]);\n }\n else {\n queryParamsToKeep.splice(i, 1);\n i--;\n }\n }\n currentURL = currentURL.split(\"?\")[0] + (queryParamsToKeep.length > 0 ? \"?\" + queryParamsToKeep.join(\"&\") : \"\");\n if (currentURL.indexOf(\"http\") === 0) {\n var protocolAndSubdomain = currentURL.split(\".\")[0];\n var excludedSubdomains = ['stores', 'storelocator', 'protips', 'myscorecard'];\n var validSubdomain = true;\n for (var i = 0; i < excludedSubdomains.length && validSubdomain; i++) {\n validSubdomain = (protocolAndSubdomain.indexOf(excludedSubdomains[i]) < 0);\n }\n if (validSubdomain) {\n currentURL = currentURL.split(\".\").splice(1).join(\".\");\n }\n }\n output.URL = currentURL;\n }\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Error occurred in GetMarketingChannelInfo: \" + ex.message, LogLevels.Error);\n }\n return output;\n }\n HelperFunctions.GetMarketingChannelInfo = GetMarketingChannelInfo;\n})(HelperFunctions || (HelperFunctions = {}));\n;\n//# sourceMappingURL=helperFunctions.namespace.js.map","export const excludedDNSCategories = [];\n//# sourceMappingURL=excludedDNSCategories.const.js.map","import { HelperFunctions } from \"../namespaces/helperFunctions.namespace\";\nimport { EventHandlers } from \"../namespaces/eventHandlers.namespace\";\nimport { _dsgTag } from \"../namespaces/_dsgTag.namespace\";\nimport { PageTypes } from \"../consts/pageTypes.const\";\nimport { InitTimings } from \"../enums/enums.enum\";\nimport { LogLevels } from \"../enums/enums.enum\";\nimport { excludedDNSCategories } from \"../consts/excludedDNSCategories.const\";\nexport class Tag {\n constructor(tagRule) {\n this.enabed = false;\n this.reregisterOnce = false;\n this.name = tagRule.name;\n this.timing = tagRule.timing;\n this.conditions = tagRule.conditions;\n this.init = tagRule.initFunction;\n try {\n if (this.timing === InitTimings.Immediate) {\n this.CheckAndRun();\n }\n else if (this.timing === InitTimings.DOMLoaded) {\n EventHandlers.AddDocumentReadyEventHandler(() => this.CheckAndRun());\n }\n else if (this.timing === InitTimings.WindowComplete) {\n EventHandlers.AddWindowLoadEventHandler(() => this.CheckAndRun());\n }\n else if (this.timing === InitTimings.Page3rdPartySignal) {\n if (_dsgTag.pageType.WaitFor3rdPartyEvent) {\n EventHandlers.AddPage3rdPartyLoadEventHandler(() => this.CheckAndRun(), this.name);\n }\n else {\n HelperFunctions.DebugLog(\"Page \" + _dsgTag.pageType.Name + \" is not set to wait for 3rd Party Event; falling back to Window Loaded\", LogLevels.Verbose);\n EventHandlers.AddWindowLoadEventHandler(() => this.CheckAndRun());\n }\n }\n else if (this.timing === InitTimings.FirstInteractionPostWindowComplete) {\n EventHandlers.AddWindowLoadEventHandler(function () { EventHandlers.AddFirstInteractionEventHandler(() => this.CheckAndRun()); });\n }\n else if (this.timing === InitTimings.PageCustomTrigger) {\n if (typeof _dsgTag.pageType.CustomTagTrigger === \"function\") {\n _dsgTag.pageType.CustomTagTrigger(() => this.CheckAndRun());\n }\n else {\n HelperFunctions.DebugLog(\"Page \" + _dsgTag.pageType.Name + \" has no custom tag trigger; falling back to Window Loaded\");\n EventHandlers.AddWindowLoadEventHandler(() => this.CheckAndRun());\n }\n }\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Error while registering tag \" + name + \": \" + ex.message, LogLevels.Error);\n }\n }\n CheckConditions() {\n console.log(\"CHECKING\");\n var excluded = false;\n for (var i = 0; i < _dsgTag.blockedTags.length; i++) {\n excluded = excluded || (this.name == _dsgTag.blockedTags[i]);\n }\n var restrictedPage = _dsgTag.pageType.RestrictTags || false;\n if (!excluded && this.conditions) {\n for (var i = 0; i < this.conditions.length; i++) {\n var currentCondition = this.conditions[i];\n var type = currentCondition.t;\n var values = currentCondition.v;\n if (type == \"bypass-restricted\") {\n restrictedPage = !(values.toString().toLowerCase() == \"true\");\n }\n else {\n excluded = excluded || !this.conditions[i].IsMatch();\n }\n if (type == \"dns\") {\n excluded = excluded || _dsgTag.DoNotSell;\n if (!excluded && HelperFunctions.GetPageTypeByURL() === PageTypes.ProductDetails) {\n excluded = true;\n this.reregisterOnce = false;\n EventHandlers.AddEventHandler(\"NewPageView\", (event) => { this.DoPDPDNSCheck(event); }, \"RegisterPDPTagDNSCheck\");\n }\n }\n }\n }\n if (restrictedPage) {\n excluded = true;\n }\n if (window[\"blocktag_\" + this.name] == true) {\n excluded = true;\n }\n if (HelperFunctions.GetQueryStringValue(\"addcreditcardnumber\")) {\n excluded = true;\n }\n this.enabed = !excluded;\n }\n ;\n CheckAndRun() {\n if (typeof _dsgTag.laneJSONPending !== \"undefined\") {\n _dsgTag.pendingTags.push(() => this.CheckAndRun());\n }\n else {\n this.CheckConditions();\n if (this.enabed) {\n HelperFunctions.DebugTimer(\"Time to init \" + this.name, () => {\n var tagObjects = {\n name: this.name,\n AddEventHandler: (eventName, eventHandler, delayUntilPageView, synchronous) => {\n EventHandlers.AddEventHandler(eventName, eventHandler, this.name, delayUntilPageView, synchronous);\n }\n };\n this.init(tagObjects);\n });\n }\n }\n }\n ;\n DoPDPDNSCheck(event) {\n if (!this.reregisterOnce) {\n this.reregisterOnce = true;\n var registerAgain = false;\n try {\n var productSXSrc = \"\";\n var attributes = event.eventData.ProductDetails[0].ProductDescriptiveAttributes;\n if (attributes) {\n for (var j = 0; j < attributes.length; j++) {\n if (attributes[j].name.toLowerCase() === \"SX SrcHierarchy\".toLowerCase()) {\n productSXSrc = attributes[j].value;\n break;\n }\n }\n var match = false;\n for (var j = 0; j < excludedDNSCategories.length && !match; j++) {\n match = productSXSrc.indexOf(excludedDNSCategories[j]) >= 0;\n }\n registerAgain = !match;\n }\n else {\n registerAgain = true;\n }\n }\n catch (ex) {\n registerAgain = true;\n HelperFunctions.DebugLog(\"Error re-evaluating DNS tag: \" + ex.message, LogLevels.Error);\n }\n if (registerAgain) {\n for (var j = 0; j < this.conditions.length; j++) {\n if (this.conditions[j].t.toLowerCase() === \"dns\") {\n this.conditions.splice(j, 1);\n }\n }\n this.CheckAndRun();\n }\n }\n }\n}\n;\n//# sourceMappingURL=tag.class.js.map","import { _dsgTag } from \"./_dsgTag.namespace\";\nimport { HelperFunctions } from \"./helperFunctions.namespace\";\nimport { PageTypes } from \"../consts/pageTypes.const\";\nimport { DataLayer } from \"./dataLayer.namespace\";\nimport { Tag } from \"../classes/tag.class\";\nimport { LogLevels } from \"../enums/enums.enum\";\nimport { EventHandlers } from \"./eventHandlers.namespace\";\nexport var FunctionRepository;\n(function (FunctionRepository) {\n function UpdatePageType(eventInstance) {\n if (!_dsgTag.pageType || _dsgTag.pageType !== PageTypes.Error) {\n var newType = HelperFunctions.GetPageTypeByURL(DataLayer ? DataLayer.GetValue(\"PageURL\") : \"\", eventInstance);\n if (newType === PageTypes.Unknown) {\n _dsgTag.pageType = _dsgTag.pageType || newType;\n }\n else {\n _dsgTag.pageType = newType;\n }\n }\n HelperFunctions.DividerLog(\"Page Type: \" + _dsgTag.pageType.Name);\n if (_dsgTag.pageType.MaskPage) {\n HelperFunctions.HideObjectViaCSS(\"body\");\n }\n }\n FunctionRepository.UpdatePageType = UpdatePageType;\n function RegisterTag(tagRule) {\n try {\n var currentTag = new Tag(tagRule);\n _dsgTag.registeredTags[tagRule.name] = currentTag;\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Error while registering tag \" + tagRule.name + \": \" + ex.message, LogLevels.Error);\n }\n }\n FunctionRepository.RegisterTag = RegisterTag;\n ;\n function HandleCertonaResponse(certonaData) {\n certonaData.source = \"Certona\";\n _dsgTag.certonaData.push(certonaData);\n for (var i = 0; i < _dsgTag.certonaResponseHandlers.length; i++) {\n _dsgTag.certonaResponseHandlers[i](certonaData);\n }\n }\n FunctionRepository.HandleCertonaResponse = HandleCertonaResponse;\n ;\n function AddCertonaResponseHandler(callbackFunction) {\n _dsgTag.certonaResponseHandlers.push(callbackFunction);\n for (var i = 0; i < _dsgTag.certonaData.length; i++) {\n callbackFunction(_dsgTag.certonaData[i]);\n }\n }\n FunctionRepository.AddCertonaResponseHandler = AddCertonaResponseHandler;\n ;\n function HandleMonetateResponse(monetateData) {\n monetateData.source = \"Monetate\";\n _dsgTag.monetateData.push(monetateData);\n for (var i = 0; i < _dsgTag.monetateResponseHandlers.length; i++) {\n _dsgTag.monetateResponseHandlers[i](monetateData);\n }\n }\n FunctionRepository.HandleMonetateResponse = HandleMonetateResponse;\n ;\n function AddMonetateResponseHandler(callbackFunction) {\n _dsgTag.monetateResponseHandlers.push(callbackFunction);\n for (var i = 0; i < _dsgTag.monetateData.length; i++) {\n callbackFunction(_dsgTag.monetateData[i]);\n }\n }\n FunctionRepository.AddMonetateResponseHandler = AddMonetateResponseHandler;\n ;\n function Track3rdPartyOrder(orderID, tagName) {\n try {\n if (window[\"trackorders_\" + tagName]) {\n if (window.thirdPartyOrderTimeout) {\n clearTimeout(window.thirdPartyOrderTimeout);\n }\n window.thirdPartyOrderTimeout = setTimeout(function () { EventHandlers.TriggerEvent(\"3rdPartyOrder\"); }, 750);\n if (_dsgTag.thirdPartyOrderList.length === 0) {\n _dsgTag.thirdPartyOrderList.push(orderID);\n }\n _dsgTag.thirdPartyOrderList.push(tagName);\n }\n }\n catch (ex) { }\n }\n FunctionRepository.Track3rdPartyOrder = Track3rdPartyOrder;\n function targetPageParams(eventType) {\n var targetData = {};\n try {\n var set = function (name, value) {\n if (value) {\n targetData[name] = value;\n }\n };\n set(\"AkamaiSwimlane\", _dsgTag.customerLanes[0]);\n for (var o = 0; o < _dsgTag.customerLanes.length; o++) {\n set(\"SwimlanePool\" + String.fromCharCode(65 + o), window._dsgTag.customerLanes[o].toString());\n }\n if (_dsgTag.CustomerIDs.AthleteID) {\n set(\"mbox3rdPartyId\", _dsgTag.CustomerIDs.AthleteID);\n set(\"profile.id\", _dsgTag.CustomerIDs.AthleteID);\n }\n if (!eventType && _dsgTag.pageType === PageTypes.ProductDetails) {\n set(\"entity.id\", DataLayer.GetValue(\"ProductID\"));\n set(\"entity.name\", DataLayer.GetValue(\"ProductName\"));\n set(\"entity.brandName\", DataLayer.GetValue(\"ProductBrand\"));\n set(\"entity.productShippingRestriction\", window.siteData ? (\"true\" === window.siteData.ProductShippingRestriction ? \"true\" : \"false\") : null);\n }\n if (!eventType && (_dsgTag.pageType === PageTypes.Category || _dsgTag.pageType === PageTypes.Family)) {\n set(\"entity.pageType\", _dsgTag.pageType.Name);\n set(\"entity.id\", DataLayer.GetValue(\"CategoryID\") || DataLayer.GetValue(\"FamilyID\"));\n set(\"entity.name\", DataLayer.GetValue(\"CategoryName\") || DataLayer.GetValue(\"FamilyName\"));\n }\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Error creating Target data object: \" + ex.message);\n }\n return targetData;\n }\n FunctionRepository.targetPageParams = targetPageParams;\n ;\n function TriggerBasicAnalyticsEvent(eventName, eventID) {\n try {\n var e = \"event\" + eventID.toString();\n s.events = s.apl(s.events, e, \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, e, \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n s.triggerEvent(eventName);\n s.linkTrackEvents = \"None\";\n s.linkTrackVars = s.baseLinkTrackVars;\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Error triggering basic analytics event: \" + ex.message, LogLevels.Error);\n }\n }\n FunctionRepository.TriggerBasicAnalyticsEvent = TriggerBasicAnalyticsEvent;\n ;\n function TriggerAnalyticsEventAsPromise(eventName, eventData, timeout) {\n return new Promise(function (resolve, reject) {\n if (typeof EventHandlers.Events[eventName] === \"undefined\") {\n reject(\"Event does not exist\");\n }\n var analyticsPixelTimout = setTimeout(function () {\n reject(\"Pixel timed out\");\n }, timeout);\n s.postTrackCallbackList.push(function () {\n clearTimeout(analyticsPixelTimout);\n resolve();\n });\n EventHandlers.TriggerEvent(eventName, eventData);\n });\n }\n FunctionRepository.TriggerAnalyticsEventAsPromise = TriggerAnalyticsEventAsPromise;\n function SendXDMEventAnalytics(dataObject, cjaData) { }\n FunctionRepository.SendXDMEventAnalytics = SendXDMEventAnalytics;\n})(FunctionRepository || (FunctionRepository = {}));\n//# sourceMappingURL=functionRepository.namespace.js.map","import { _dsgTag } from \"../namespaces/_dsgTag.namespace\";\nimport { HelperFunctions } from \"../namespaces/helperFunctions.namespace\";\nexport class TagCondition {\n constructor(type, comparator, values) {\n this.t = type;\n if (comparator) {\n this.c = comparator;\n }\n if (typeof values == \"string\") {\n this.v = [values];\n }\n else if (typeof values == \"boolean\") {\n this.v = [values.toString()];\n }\n else if (typeof values !== \"undefined\") {\n this.v = values;\n }\n }\n IsMatch() {\n var matchValue;\n var matches = false;\n if (this.t == \"dns\") {\n matches = matches || !_dsgTag.DoNotSell;\n }\n if (this.t == \"lanes\") {\n matches = matches || !HelperFunctions.IsInLane(this.v, 0);\n }\n else if (this.t == \"env\") {\n switch (this.v[0]) {\n case \"prod-only\": {\n matches = matches || !_dsgTag.isProduction;\n break;\n }\n case \"nonprod-only\": {\n matches = matches || _dsgTag.isProduction;\n break;\n }\n case \"all\": {\n break;\n }\n }\n }\n else if (this.t == \"flag\") {\n matches = matches || (typeof window[this.v[0]] === \"undefined\" || !window[this.v[0]] == true);\n }\n else {\n if (this.t == \"domain\") {\n matchValue = window.location.host;\n }\n else if (this.t == \"site\") {\n matchValue = _dsgTag.currentWebsite.Abbreviation.toLowerCase();\n }\n else if (this.t == \"page\") {\n matchValue = _dsgTag.pageType.Name.toLowerCase();\n }\n else if (this.t == \"aos\") {\n matchValue = _dsgTag.isAOS.toString();\n }\n else if (this.t == \"iframe\") {\n matchValue = _dsgTag.isIFrame.toString();\n }\n if (matchValue) {\n matches = matches || HelperFunctions.CompareValues(matchValue, this.v, this.c);\n }\n }\n return matches;\n }\n}\n;\n//# sourceMappingURL=tagCondition.class.js.map","import { _dsgTag } from \"./_dsgTag.namespace\";\nimport { HelperFunctions } from \"./helperFunctions.namespace\";\nimport { EventHandlers } from \"./eventHandlers.namespace\";\nimport { DataLayer } from \"./dataLayer.namespace\";\nimport { PageTypes } from \"../consts/pageTypes.const\";\nimport { Websites } from \"../consts/websites.const\";\nimport { LogLevels } from \"../enums/enums.enum\";\nexport var CustomerIDService;\n(function (CustomerIDService) {\n var internalData = {};\n var CONST_IDs = [\"CustomerKey\", \"HashedEmail\", \"Loyalty\", \"Webstore\", \"DeviceID\", \"AdobeMCVID\", \"AthleteID\"];\n var CONST_IDsToTriggerAPI = [\"CustomerKey\", \"Loyalty\", \"Webstore\", \"HashedEmail\"];\n var CONST_GoldStatus = \"isGold\";\n var CONST_CookieName = \"TagIDs\";\n var CONST_LoyaltyIDTypes = { \"DSG\": \"1\", \"GGXY\": \"1\", \"PBL\": \"1\", \"GONE\": \"1\", \"MJ\": \"1\" };\n var CONST_WebstoreIDTypes = { \"DSG\": \"18\", \"GGXY\": \"11\", \"PBL\": \"24\", \"GONE\": \"26\" };\n var CONST_IDTypeHashedEmailPlaceholder = \"\";\n var CONST_InputKeyCustomerKeyDelimiter = \"-\";\n var CONST_DeleteID = \"\";\n var CONST_EmptyRecheckTimeDifference = 1 * 24 * 60 * 60 * 1000;\n var CONST_KnownRecheckTimeDifference = 7 * 24 * 60 * 60 * 1000;\n var CONST_APITypeReplacement = \"\";\n var CONST_APIIDReplacement = \"\";\n var CONST_APISiteReplacement = \"\";\n var API_AthleteID;\n CustomerIDService.initializeCustomerIDValues = function () {\n _dsgTag.CustomerIDs = {};\n if (!window.useGCPAthleteIDLookup) {\n API_AthleteID = {\n \"Type\": \"AthleteID\",\n \"URL\": \"https://\" + (_dsgTag.isProduction ? \"www.\" : (window.location.host.split(\".\")[0] + \".\")) + _dsgTag.currentWebsite.Domain + \"/myaccount/services/redirectingservice/athleteprofileservice/v1/profile/\" + CONST_APITypeReplacement + \"/\" + CONST_APIIDReplacement,\n \"Key\": \"\",\n \"Secret\": \"joysk5zjhPmn5b4UYaH1\",\n \"Partner\": \"ecom_analytics\"\n };\n }\n else {\n API_AthleteID = {\n \"Type\": \"AthleteID\",\n \"URL\": \"https://tag.\" + _dsgTag.currentWebsite.Domain + \"/api/athlete-id?pd=2&t=\" + CONST_APITypeReplacement + \"&v=\" + CONST_APIIDReplacement + \"&s=\" + CONST_APISiteReplacement,\n };\n }\n var API_TaggingAthleteData = {\n \"Type\": \"AthleteData\",\n \"URL\": \"https://tag.\" + _dsgTag.currentWebsite.Domain + \"/api/athlete-info?pd=2&v=\" + CONST_APIIDReplacement,\n };\n for (var i = 0; i < CONST_IDs.length; i++) {\n var n = CONST_IDs[i];\n internalData[n] = {};\n internalData[n].ID = \"\";\n internalData[n].lastUpdated = \"\";\n }\n internalData[\"Loyalty\"][CONST_GoldStatus] = false;\n internalData[\"Loyalty\"].get = function () {\n return new Promise(function (resolve, reject) {\n var loyaltyID = DataLayer.GetValue(\"LoyaltyID\");\n if (loyaltyID) {\n resolve({ name: \"Loyalty\", id: loyaltyID });\n }\n else {\n try {\n if (typeof window.authFunctions !== \"undefined\" && typeof window.authFunctions.getScorecard === \"function\") {\n window.authFunctions.getScorecard().then(function (loyaltyID) {\n if (loyaltyID) {\n resolve({ name: \"Loyalty\", id: loyaltyID, source: \"Page Promise\" });\n }\n else {\n reject();\n }\n });\n }\n else {\n reject();\n }\n }\n catch (ex) {\n reject(ex);\n }\n }\n });\n };\n internalData[\"Loyalty\"].set = function (IDInfo) {\n if (IDInfo.id.indexOf(\"*\") >= 0) {\n IDInfo.id = \"\";\n }\n basicSet(IDInfo);\n var goldCookie = HelperFunctions.GetCookieValue(\"lg\");\n if (goldCookie && goldCookie.toLowerCase() === \"gold\") {\n this.SetGoldStatus(true);\n }\n else if (typeof internalData[\"Loyalty\"] !== \"undefined\" && internalData[\"Loyalty\"].goldExpires && (new Date() > new Date(internalData[\"Loyalty\"].goldExpires))) {\n this.SetGoldStatus(false);\n }\n else {\n this[CONST_GoldStatus] = internalData[\"Loyalty\"].isGold || false;\n }\n };\n internalData[\"Webstore\"].get = function () {\n return new Promise(function (resolve, reject) {\n var webStoreID = DataLayer.GetValue(\"WebstoreID\");\n if (webStoreID) {\n resolve({ name: \"Webstore\", id: webStoreID });\n }\n else {\n reject();\n }\n });\n };\n internalData[\"Webstore\"].set = basicSet;\n internalData[\"CustomerKey\"].get = function () {\n return new Promise(function (resolve, reject) {\n var customerKey = HelperFunctions.GetQueryStringValue(\"customerkey\");\n if (customerKey && customerKey.length !== 64 && customerKey.indexOf(\"-\") < 0) {\n var siteID = CONST_WebstoreIDTypes[_dsgTag.currentWebsite.Abbreviation] || \"\";\n ;\n if (siteID) {\n customerKey = customerKey + \"-\" + siteID;\n }\n }\n if (customerKey) {\n resolve({ name: \"CustomerKey\", id: customerKey });\n }\n else {\n reject();\n }\n });\n };\n internalData[\"CustomerKey\"].set = basicSet;\n internalData[\"HashedEmail\"].get = function () {\n return new Promise(function (resolve, reject) {\n var hashedEmail = \"\";\n var dataLayer = DataLayer.GetValue(\"HashedEmailAddress\");\n var queryString = HelperFunctions.GetQueryStringValue(\"customerkey\");\n if (queryString && queryString.length === 64) {\n hashedEmail = queryString;\n }\n else if (dataLayer) {\n hashedEmail = dataLayer;\n }\n if (hashedEmail) {\n resolve({ name: \"HashedEmail\", id: hashedEmail });\n }\n else if (_dsgTag.pageType === PageTypes.MyAccount) {\n try {\n if (window.authFunctions && typeof window.authFunctions.getEmailAddress === \"function\") {\n window.authFunctions.getEmailAddress().then(function (result) {\n HelperFunctions.SHA256Hash(result).then(function (hashedEmail) {\n resolve({ name: \"HashedEmail\", id: hashedEmail.toUpperCase() });\n });\n });\n }\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Errorusing getEmailAddress in My Account: \" + ex.message, LogLevels.Error);\n }\n }\n else {\n reject();\n }\n });\n };\n internalData[\"HashedEmail\"].set = basicSet;\n internalData[\"DeviceID\"].get = function () {\n return new Promise(function (resolve, reject) {\n var deviceID = HelperFunctions.GetQueryStringValue(\"res_trackingid\") || \"\";\n if (deviceID) {\n resolve({ name: \"DeviceID\", id: deviceID });\n }\n else {\n reject();\n }\n });\n };\n internalData[\"DeviceID\"].set = basicSet;\n internalData[\"AdobeMCVID\"].get = function () {\n return new Promise(function (resolve, reject) {\n if (window.alloy && typeof window.alloy === \"function\") {\n window.alloy(\"getIdentity\").then(function (result) {\n if (result && result.identity && result.identity.ECID) {\n resolve({ name: \"AdobeMCVID\", id: result.identity.ECID });\n }\n else {\n reject();\n }\n }).catch(function (result) {\n HelperFunctions.DebugLog(\"Issue getting ECID via Alloy: \" + result);\n });\n }\n else {\n reject();\n }\n });\n };\n internalData[\"AdobeMCVID\"].set = basicSet;\n internalData[\"AthleteID\"].get = function () {\n return new Promise(function (resolve, reject) {\n var athleteID = HelperFunctions.GetQueryStringValue(\"AthleteID\");\n if (athleteID) {\n resolve({ name: \"AthleteID\", id: athleteID });\n }\n else {\n reject();\n }\n });\n };\n internalData[\"AthleteID\"].set = function (IDInfo) {\n basicSet(IDInfo);\n };\n CustomerIDService.UpdateAllCustomerIDs();\n };\n var basicSet = function (IDInfo) {\n var deleteValue = (IDInfo.id === CONST_DeleteID);\n var idChanged = IDInfo.id != internalData[IDInfo.name].ID;\n var idNew = !internalData[IDInfo.name].lastUpdated;\n if (idChanged || idNew) {\n _dsgTag.CustomerIDs[IDInfo.name] = deleteValue ? \"\" : IDInfo.id;\n internalData[IDInfo.name].lastUpdated = Date.now();\n internalData[IDInfo.name].source = IDInfo.source ? IDInfo.source : \"Local\";\n internalData[IDInfo.name].ID = deleteValue ? \"\" : IDInfo.id;\n SaveDataToLocalStorage();\n if (typeof CONST_IDsToTriggerAPI.indexOf === \"function\" && CONST_IDsToTriggerAPI.indexOf(IDInfo.name) >= 0) {\n if (idNew && IDInfo.name == \"Webstore\") {\n internalData[\"AthleteID\"].lastAPICheck = Date.now();\n SaveDataToLocalStorage();\n }\n else {\n if (!window.useGCPAthleteIDLookup) {\n GetIDviaAPI(API_AthleteID, false);\n }\n else {\n GetIDviaAPI(API_AthleteID, false, { type: IDInfo.name, ID: IDInfo.id });\n }\n }\n }\n }\n };\n var UpdateCustomerIDFromStandardSource = function (IDName) {\n internalData[IDName].get().then(internalData[IDName].set).catch(function () { });\n };\n var SaveDataToLocalStorage = function () {\n HelperFunctions.SaveValue(CONST_CookieName, JSON.stringify(internalData));\n };\n CustomerIDService.UpdateAllCustomerIDs = function () {\n try {\n PopulateIDsFromStorage();\n for (var i = 0; i < CONST_IDs.length; i++) {\n var IDName = CONST_IDs[i];\n UpdateCustomerIDFromStandardSource(IDName);\n }\n SetGoldStatus(false);\n GetIDviaAPI(API_AthleteID, true);\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Error occured in UpdateAllCustomerIDs: \" + ex.message, LogLevels.Error);\n }\n };\n CustomerIDService.UpdateCustomerIDFromParameter = function (IDName, ID, source) {\n try {\n if (ID && (ID !== internalData[IDName].ID || typeof internalData[IDName].lastUpdated === \"undefined\")) {\n internalData[IDName].set({ \"name\": IDName, \"id\": ID, \"source\": source });\n }\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Error occured in UpdateCustomerID: \" + ex.message, LogLevels.Error);\n }\n };\n var SetGoldStatus = function (isGold) {\n if (internalData[\"Loyalty\"]) {\n internalData[\"Loyalty\"].isGold = isGold;\n _dsgTag.CustomerIDs[\"isGold\"] = isGold;\n if (isGold) {\n var newExpiration = new Date((new Date()).getFullYear() + 1, 0, 1);\n internalData[\"Loyalty\"].goldExpires = newExpiration.getTime();\n }\n else {\n delete internalData[\"Loyalty\"].goldExpires;\n }\n SaveDataToLocalStorage();\n }\n };\n var PopulateIDsFromStorage = function () {\n var rawData = HelperFunctions.GetValue(CONST_CookieName);\n var data;\n if (rawData !== null) {\n try {\n data = JSON.parse(rawData);\n }\n catch (ex) {\n data = {};\n }\n for (var i = 0; i < CONST_IDs.length; i++) {\n if (typeof data[CONST_IDs[i]] !== \"undefined\") {\n internalData[CONST_IDs[i]].ID = data[CONST_IDs[i]].ID;\n _dsgTag.CustomerIDs[CONST_IDs[i]] = data[CONST_IDs[i]].ID;\n Object.assign(internalData[CONST_IDs[i]], data[CONST_IDs[i]]);\n if (typeof internalData[CONST_IDs[i]].isGold !== \"undefined\") {\n internalData[\"isGold\"] = internalData[CONST_IDs[i]].isGold;\n }\n }\n }\n }\n else {\n SaveDataToLocalStorage();\n }\n };\n var GetIDAndTypeForAPIFromIDData = function (useNewTypes) {\n var site = _dsgTag.currentWebsite;\n var ID, type;\n if (internalData[\"Loyalty\"].ID) {\n ID = (parseInt(internalData[\"Loyalty\"].ID) ? internalData[\"Loyalty\"].ID.substring(0, 8) : internalData[\"Loyalty\"].ID.substring(internalData[\"Loyalty\"].ID.length - 8));\n type = useNewTypes ? \"loyalty\" : CONST_LoyaltyIDTypes[site.Abbreviation] || \"0\";\n if (ID.toString().indexOf(\"*\") >= 0) {\n ID = \"\";\n }\n }\n else if (internalData[\"CustomerKey\"].ID) {\n ID = internalData[\"CustomerKey\"].ID.split(CONST_InputKeyCustomerKeyDelimiter)[0];\n type = (typeof internalData[\"CustomerKey\"].ID !== \"undefined\" && internalData[\"CustomerKey\"].ID.indexOf(CONST_InputKeyCustomerKeyDelimiter) >= 0 ? internalData[\"CustomerKey\"].ID.split(CONST_InputKeyCustomerKeyDelimiter)[1] : \"0\");\n }\n else if (internalData[\"HashedEmail\"].ID) {\n ID = internalData[\"HashedEmail\"].ID;\n type = useNewTypes ? \"hashed_email\" : CONST_IDTypeHashedEmailPlaceholder;\n }\n else if (internalData[\"Webstore\"].ID && internalData[\"Webstore\"].ID.indexOf(\"-\") < 0) {\n ID = internalData[\"Webstore\"].ID;\n type = useNewTypes ? \"webstore\" : CONST_WebstoreIDTypes[site.Abbreviation] || \"0\";\n }\n return {\n \"ID\": ID,\n \"type\": type\n };\n };\n var GetIDviaAPI = function (baseCreds, checkDate, forceInfo) {\n if (!checkDate || typeof internalData[baseCreds.Type].lastAPICheck === \"undefined\" || ((Date.now() - internalData[baseCreds.Type].lastAPICheck) > (internalData[baseCreds.Type].ID !== \"undefined\" ? CONST_KnownRecheckTimeDifference : CONST_EmptyRecheckTimeDifference))) {\n if (typeof navigator !== \"undefined\" && typeof navigator.userAgent !== \"undefined\" && navigator.userAgent.toLowerCase().indexOf(\"prerender\") < 0) {\n if (_dsgTag.experience !== \"Kiosk\" && _dsgTag.experience !== \"In Store Mobile\") {\n var lookupInfo = forceInfo ? forceInfo : GetIDAndTypeForAPIFromIDData(window.useGCPAthleteIDLookup);\n if (lookupInfo.ID && lookupInfo.type !== \"0\") {\n var apiCreds = {\n \"Type\": baseCreds.Type,\n \"URL\": baseCreds.URL,\n \"Key\": baseCreds.Key,\n \"Secret\": baseCreds.Secret,\n \"Partner\": baseCreds.Partner\n };\n if (_dsgTag.currentWebsite === Websites.GoingGoingGone) {\n apiCreds.URL = apiCreds.URL.replace(\"goinggoinggone\", \"dickssportinggoods\");\n }\n apiCreds.URL = apiCreds.URL.replace(CONST_APIIDReplacement, lookupInfo.ID).replace(CONST_APITypeReplacement, lookupInfo.type).replace(CONST_APISiteReplacement, _dsgTag.currentWebsite.Abbreviation);\n if (!window.useGCPAthleteIDLookup) {\n if (lookupInfo.type === CONST_IDTypeHashedEmailPlaceholder) {\n if (apiCreds.Type === \"AthleteID\") {\n apiCreds.URL = apiCreds.URL.replace(CONST_IDTypeHashedEmailPlaceholder + \"/\", \"\");\n }\n }\n PerformAPICall(apiCreds);\n }\n else {\n internalData[apiCreds.Type].lastAPICheck = Date.now();\n HelperFunctions.PullJSONFromURL(apiCreds.URL, ProcessAthleteID);\n }\n }\n }\n }\n }\n };\n var PerformAPICall = function (apiCreds) {\n try {\n internalData[apiCreds.Type].lastAPICheck = Date.now();\n SaveDataToLocalStorage();\n var request = new XMLHttpRequest();\n request.open('GET', apiCreds.URL, true);\n request.setRequestHeader('partner_key', apiCreds.Partner);\n if (apiCreds.Secret) {\n request.setRequestHeader('secret_key', apiCreds.Secret);\n }\n if (apiCreds.Key) {\n request.setRequestHeader('x-CentraSite-APIKey', apiCreds.Key);\n }\n request.onreadystatechange = function () {\n if (this.readyState === 4) {\n if (this.status >= 200 && this.status < 400) {\n var resp = this.responseText;\n ProcessAthleteID(JSON.parse(resp));\n }\n else {\n HelperFunctions.DebugLog(\"Error hitting AthleteID API\", LogLevels.Error);\n }\n }\n };\n request.send();\n }\n catch (ex) {\n }\n };\n var ProcessAthleteID = function (responseJSON) {\n try {\n var type = \"\";\n var newID = \"\";\n if (responseJSON.athleteID || responseJSON.athleteId) {\n type = \"AthleteID\";\n newID = responseJSON.athleteID || responseJSON.athleteId;\n }\n else if (responseJSON.athleteIdList && responseJSON.athleteIdList.length > 0) {\n type = \"AthleteID\";\n newID = responseJSON.athleteIdList[0].athleteId;\n }\n if (type && newID) {\n CustomerIDService.UpdateCustomerIDFromParameter(type, newID, \"API\");\n EventHandlers.TriggerEvent(\"CustomerIDApiUsed\", { \"type\": type, \"newID\": newID });\n }\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Error handling AthleteID API Response: \" + ex.message);\n }\n };\n})(CustomerIDService || (CustomerIDService = {}));\n//# sourceMappingURL=customerIDService.namespace.js.map","import { PageTypes } from \"../../consts/pageTypes.const\";\nimport { HelperFunctions } from \"../../namespaces/helperFunctions.namespace\";\nimport { _dsgTag } from \"../../namespaces/_dsgTag.namespace\";\nimport { EventHandlers } from \"../../namespaces/eventHandlers.namespace\";\nimport { DataLayer } from \"../../namespaces/dataLayer.namespace\";\nimport { LogLevels } from \"../../enums/enums.enum\";\nimport { Websites } from \"../../consts/websites.const\";\nimport { CustomerIDService } from \"../../namespaces/customerIDService.namespace\";\nimport { EventInstance } from \"../../classes/eventInstance.class\";\nexport function SetupAdobePageCode(inputDataObject) {\n (function () {\n var GetDataValue = DataLayer.GetValue;\n function HandleVariable(name, handler) {\n try {\n if (typeof name === \"string\") {\n var value = (typeof handler === \"function\") ? handler() : handler;\n value = (typeof value === \"undefined\") ? \"\" : value;\n window.s[name] = value;\n }\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Error occurred in \" + name + \" handler: \" + ex.message, LogLevels.Error);\n }\n }\n var V = HandleVariable;\n function ProcessPageView(eventInstance) {\n const dataSource = eventInstance.eventData;\n try {\n var currentURL = GetDataValue(\"PageURL\", dataSource);\n s.pageURL = currentURL;\n s.manageVars(\"clearVars\");\n s.tnt = \"\";\n s.pe = \"\";\n s.pev2 = \"\";\n s.linkName = \"\";\n s.linkType = \"\";\n s.pageType = \"\";\n var pageHandlers = [];\n pageHandlers.push(HandleAllPageDeployments);\n var currentPageType = _dsgTag.pageType;\n if (GetDataValue(\"PageTypeOverride\", dataSource)) {\n currentPageType = PageTypes[GetDataValue(\"PageTypeOverride\", dataSource)];\n }\n switch (currentPageType) {\n case PageTypes.Error:\n pageHandlers.push(HandleErrorPageDeployments);\n break;\n case PageTypes.Home:\n pageHandlers.push(HandleHomePageDeployments);\n break;\n case PageTypes.Category:\n case PageTypes.Family:\n pageHandlers.push(HandleDepartmentCategoryFamilyPageDeployments);\n break;\n case PageTypes.ResourceCenter:\n pageHandlers.push(HandleResourceCenterPageDeployments);\n break;\n case PageTypes.Search:\n pageHandlers.push(HandleSearchPageDeployments);\n break;\n case PageTypes.ProductDetails:\n pageHandlers.push(HandleProductPageDeployments);\n break;\n case PageTypes.Cart:\n pageHandlers.push(HandleCartPageDeployments);\n break;\n case PageTypes.CheckoutSinglePage:\n pageHandlers.push(HandleSinglePageCheckoutDeployments);\n break;\n case PageTypes.CheckoutBillingShippingAddress:\n case PageTypes.CheckoutBillingAddress:\n case PageTypes.CheckoutShippingAddress:\n case PageTypes.CheckoutDelivery:\n case PageTypes.CheckoutPayment:\n case PageTypes.CheckoutReview:\n pageHandlers.push(HandleCheckoutPageDeployments);\n break;\n case PageTypes.OrderConfirmation:\n pageHandlers.push(HandleOrderConfirmationPageDeployments);\n break;\n case PageTypes.Proxy:\n pageHandlers.push(HandleProxyPageDeployments);\n break;\n case PageTypes.Static:\n case PageTypes.BrandShop:\n pageHandlers.push(HandleStaticPageDeployments);\n break;\n case PageTypes.WeeklyAd:\n pageHandlers.push(HandleWeeklyAdPageDeployments);\n break;\n case PageTypes.OrderTracking:\n pageHandlers.push(HandleOrderTrackingPageDeployments);\n break;\n case PageTypes.OrderDetails:\n pageHandlers.push(HandleOrderDetailsPageDeployments);\n break;\n case PageTypes.GuestOrderTracking:\n pageHandlers.push(HandleGuestOrderTrackingPageDeployments);\n break;\n case PageTypes.MyAccountOTPChallenge:\n pageHandlers.push(HandleMyAccountOTPChallengePageDeployments);\n case PageTypes.MyAccountSignIn:\n case PageTypes.MyAccountSignInAuth0:\n pageHandlers.push(HandleMyAccountSignInPageDeployments);\n break;\n case PageTypes.MyAccount:\n pageHandlers.push(HandleMyAccountPageDeployments);\n break;\n case PageTypes.MyAccountRegistration:\n pageHandlers.push(HandleMyAccountRegistrationPageDeployments);\n break;\n case PageTypes.MyAccountListLanding:\n pageHandlers.push(HandleMyAccountListLandingPageDeployments);\n break;\n case PageTypes.MyAccountListContents:\n pageHandlers.push(HandleMyAccountListContentsPageDeployments);\n break;\n case PageTypes.MyAccountAppointments:\n pageHandlers.push(HandleMyAccountAppointmentsPageDeployments);\n break;\n case PageTypes.SharedList:\n pageHandlers.push(HandleSharedListPageDeployments);\n break;\n case PageTypes.AddressBook:\n pageHandlers.push(HandleAddressBookPageDeployments);\n break;\n case PageTypes.StoreLocatorIndex:\n pageHandlers.push(HandleStoreLocatorIndex);\n break;\n case PageTypes.StoreLocatorLocalStore:\n pageHandlers.push(HandleStoreLocatorLocalStore);\n break;\n case PageTypes.StoreLocatorIFrame:\n pageHandlers.push(HandleStoreLocatorIFrameDeployments);\n break;\n case PageTypes.ChatForm:\n case PageTypes.ChatConversation:\n pageHandlers.push(HandleChatPageDeployments);\n break;\n case PageTypes.Protips:\n case PageTypes.ProtipsBlog:\n pageHandlers.push(HandleProtipsPageDeployments);\n break;\n case PageTypes.Scorecard:\n pageHandlers.push(HandleScorecardPageDeployments);\n break;\n case PageTypes.ProductReview:\n pageHandlers.push(HandleProductReviewDeployments);\n break;\n case PageTypes.OptiversalFamily:\n case PageTypes.AdeptmindFamily:\n pageHandlers.push(Handle3rdPartyPLPLandingPageDeployments);\n break;\n case PageTypes.AdeptmindProductDetails:\n pageHandlers.push(Handle3rdPartyPDPLandingPageDeployments);\n break;\n case PageTypes.NarvarRedirect:\n pageHandlers.push(HandleNarvarRedirect);\n break;\n case PageTypes.PelotonRedirect:\n pageHandlers.push(HandlePelotonRedirect);\n break;\n case PageTypes.BlogHome:\n case PageTypes.BlogTopics:\n case PageTypes.BlogArticle:\n pageHandlers.push(HandleBlogPage);\n break;\n case PageTypes.SchedulingService:\n pageHandlers.push(HandleSchedulingServicePage);\n break;\n case PageTypes.CMMTeamPacket:\n pageHandlers.push(HandleCMMTeamPacketPageDeployments);\n break;\n case PageTypes.InvestorRelations:\n pageHandlers.push(HandleInvestorRelations);\n break;\n case PageTypes.SportsMatter:\n pageHandlers.push(HandleSportsMatter);\n break;\n case PageTypes.InStoreDisplay:\n pageHandlers.push(HandleInStoreDisplay);\n break;\n default:\n break;\n }\n var cancelPageView = false;\n for (var i = 0; i < pageHandlers.length; i++) {\n try {\n cancelPageView = pageHandlers[i](dataSource) || cancelPageView;\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Error occurred in ProcessPageView \" + pageHandlers[i].name + \": \" + ex.message, LogLevels.Error);\n }\n }\n s.server = window.location.hostname.toLowerCase();\n s.preTrackCallbackList.push(function () {\n EventHandlers.initialPageViewPreFired = true;\n clearTimeout(s.noPageViewTimeout);\n });\n s.postTrackCallbackList.push(function () {\n if (!EventHandlers.initialPageViewFired) {\n EventHandlers.initialPageViewFired = true;\n if (EventHandlers.delayedPageViewEvents.length > 0) {\n var delayedEventNames = [];\n for (var i = 0; i < EventHandlers.delayedPageViewEvents.length; i++) {\n delayedEventNames.push(EventHandlers.delayedPageViewEvents[i].delayedEvent.eventName);\n }\n HelperFunctions.DebugLog(\"Now handling \" + EventHandlers.delayedPageViewEvents.length + \" delayed event(s): \" + delayedEventNames.join(\", \"));\n for (var i = 0; i < EventHandlers.delayedPageViewEvents.length; i++) {\n var delayedEvent = EventHandlers.delayedPageViewEvents[i];\n EventHandlers.LaunchHandler(delayedEvent.handler, delayedEvent.delayedEvent, inputDataObject.Name);\n }\n }\n }\n });\n if (!cancelPageView) {\n s.triggerPageView();\n }\n else {\n clearTimeout(s.noPageViewTimeout);\n HelperFunctions.SaveValue(\"PreviousPageValues\", JSON.stringify(_dsgTag.previousPageValues));\n }\n s.linkTrackEvents = \"None\";\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Error occurred in PagePostRender processor: \" + ex.message, LogLevels.Error);\n }\n }\n var ignoreFirstNewPageViewEvent = false;\n var pageViewPixelCount = 0;\n var ProcessPagePostRender = function (eventInstance) {\n if (!ignoreFirstNewPageViewEvent) {\n _dsgTag.previousPageValues = {};\n try {\n var previousValuesRaw = HelperFunctions.GetValue(\"PreviousPageValues\") || \"\";\n if (previousValuesRaw) {\n var previousValues = JSON.parse(previousValuesRaw);\n _dsgTag.previousPageValues = previousValues;\n }\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Error parsing PreviousPageValues from local storage: \" + ex.message, LogLevels.Error);\n }\n HelperFunctions.DeleteValue(\"PreviousPageValues\");\n var cjaData = CreateCJAXDMForAnalytics(eventInstance);\n if (cjaData) {\n s.cjaData = cjaData;\n }\n ProcessPageView(eventInstance);\n pageViewPixelCount++;\n }\n else {\n HelperFunctions.DebugLog(\"ProcessPageRender ignoring page view event!\");\n ignoreFirstNewPageViewEvent = false;\n }\n };\n var money = HelperFunctions.ToMoney;\n var CreateCJAXDMForAnalytics = function (eventInstance) {\n var output = null;\n var environmentDetails = GetCJAEnvironmentDetails();\n var pageViewDetails = GetCJAPageDetails();\n var implementationDetails = GetCJAImplementationDetails();\n var baseXDMObject = HelperFunctions.DeepExtend({}, environmentDetails, implementationDetails, pageViewDetails);\n if (eventInstance.eventName === \"NewPageView\") {\n output = BuildEvent(\"web.webPageDetails.pageViews\");\n let pageType = _dsgTag.pageType;\n if (eventInstance.eventData.pageTypeOverride) {\n pageType = PageTypes[eventInstance.eventData.pageTypeOverride];\n }\n switch (pageType) {\n case PageTypes.ProductDetails: {\n HelperFunctions.DeepExtend(output, BuildEvent(\"commerce.productViews\", HandleCJAProductView, eventInstance));\n break;\n }\n case PageTypes.OrderConfirmation: {\n HelperFunctions.DeepExtend(output, BuildEvent(\"commerce.purchases\", HandleCJAPurchase, eventInstance));\n break;\n }\n }\n }\n return HelperFunctions.DeepExtend({}, baseXDMObject, output);\n };\n var BuildEvent = function (eventName, handler, eventInstance) {\n var xdmObject = {\n \"eventType\": eventName,\n \"_dsg\": {}\n };\n var dsgData = {\n \"source\": { \"chain\": _dsgTag.currentWebsite.Abbreviation },\n \"optimization\": { \"swimlanePools\": _dsgTag.customerLanes.join(\",\") }\n };\n try {\n if (typeof handler === \"function\") {\n HelperFunctions.DeepExtend(dsgData, handler(eventInstance));\n }\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Error building event data for \" + eventName + \": \" + ex.message, LogLevels.Error);\n }\n xdmObject._dsg = dsgData;\n return xdmObject;\n };\n var GetCJAEnvironmentDetails = function () {\n var output = { \"environment\": {} };\n var browserDetails = { \"userAgent\": navigator.userAgent };\n output.environment.browserDetails = browserDetails;\n return output;\n };\n var GetCJAImplementationDetails = function () {\n var output = { \"_dsg\": { \"metaData\": {} } };\n output._dsg.metaData.tagVersion = \"Web:\" + _dsgTag.tagVersion;\n return output;\n };\n var GetCJAPageDetails = function () {\n var pageView = {};\n pageView.web = {};\n pageView.web.webPageDetails =\n {\n \"name\": document.title,\n \"siteSection\": _dsgTag.pageType.Name\n };\n return pageView;\n };\n var HandleCJAProductView = function (eventInstance) {\n var productDetails = DataLayer.GetValue(\"ProductDetails\", eventInstance.eventData)[0];\n var productObject = {\n \"products\": [{\n \"name\": productDetails.ProductName,\n \"ecode\": productDetails.ProductID\n }]\n };\n return productObject;\n };\n var HandleCJAPurchase = function (eventInstance) {\n var orderObject = {};\n DataLayer.PassValuesToFunction([\"OrderID\", \"OrderTotal\", \"OrderTax\", \"OrderShippingRevenue\", \"ProductListArray\"], function (orderID, orderTotal, taxTotal, shippingTotal, products) {\n var productsArray = [];\n if (typeof products !== \"undefined\") {\n if (products.length > 0) {\n for (var key = 0; key < products.length; key++) {\n var currentProduct = products[key];\n var name = currentProduct.ProductName;\n var sku = currentProduct.ProductSku || currentProduct.ProductSKU;\n var quantity = parseInt(currentProduct.ProductQty);\n var productData = {\n \"skuId\": sku,\n \"name\": name,\n \"ecode\": currentProduct.ProductID,\n \"quantity\": quantity,\n \"unitPrice\": money(currentProduct.CurrentPricePerUnit),\n \"distributedOrderDiscountPerUnit\": money(currentProduct.DistributedOrderDiscountPerUnit)\n };\n productsArray.push(productData);\n }\n }\n }\n try {\n orderObject = {\n \"order\": {\n \"id\": orderID,\n \"taxPaid\": money(taxTotal),\n \"shippingPaid\": money(shippingTotal)\n },\n \"products\": productsArray\n };\n }\n catch (ex) { }\n }, eventInstance.eventData);\n return orderObject;\n };\n if (_dsgTag.isAOS && !HelperFunctions.GetValue(\"AOSStoreID\")) {\n ignoreFirstNewPageViewEvent = true;\n clearTimeout(s.noPageViewTimeout);\n }\n if (window.EnableQuickPageHit == true) {\n var name = _dsgTag.pageType.Name + \" QuickPageHit\";\n s.events = s.apl(s.events, \"event97\", \",\", 2);\n s.prop1 = name;\n s.linkTrackVars = s.apl(s.linkTrackVars, \"prop1\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event97\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n s.triggerEvent(name);\n }\n if (_dsgTag.pageType === PageTypes.Home && !_dsgTag.isAOS) {\n ProcessPagePostRender(new EventInstance(\"NewPageView\", null, window.siteData));\n ignoreFirstNewPageViewEvent = true;\n }\n inputDataObject.AddEventHandler(\"NewPageView\", ProcessPagePostRender);\n function HandleAllPageDeployments(dataSource) {\n s.LoadAudienceManagerCustomizations ? s.LoadAudienceManagerCustomizations() : true;\n V(\"prop7\", function () {\n var out = GetDataValue(\"MachineLearningSearchValues\", dataSource).join(\"|\");\n return out;\n });\n V(\"prop17\", function () {\n return GetDataValue(\"AppID\", dataSource);\n });\n V(\"prop20\", GetDataValue(\"Random100\", dataSource));\n V(\"prop35\", HelperFunctions.GetCookieValue(\"segment\"));\n V(\"prop38\", HelperFunctions.GetCookieValue(\"ChkReboot\"));\n V(\"prop40\", (typeof _dsgTag.pageType !== \"undefined\" && typeof _dsgTag.pageType.Name !== \"undefined\") ? _dsgTag.pageType.Name : \"Unknown\");\n V(\"prop46\", function () {\n var out = \"\";\n if (HelperFunctions.GetValue(\"DerivativeKeyword\")) {\n out = HelperFunctions.GetValue(\"DerivativeKeyword\") || \"\";\n HelperFunctions.DeleteValue(\"DerivativeKeyword\");\n }\n return out;\n });\n V(\"prop48\", function () {\n var jsessionCookieValue = HelperFunctions.GetCookieValue(\"JSESSIONID\") || \"\";\n return jsessionCookieValue.substring(jsessionCookieValue.indexOf(\":\") + 1);\n });\n V(\"prop66\", function () {\n var a = \"\";\n if (_dsgTag.previousPageValues[\"c66\"]) {\n a = _dsgTag.previousPageValues[\"c66\"];\n }\n return a;\n });\n V(\"prop71\", function () {\n return GetDataValue(\"LoyaltyPoints\", dataSource);\n });\n V(\"eVar1\", function () {\n var a = \"\";\n if (_dsgTag.previousPageValues[\"v1\"]) {\n var cookieValue = _dsgTag.previousPageValues[\"v1\"];\n a = cookieValue;\n a = a.replace(\"\\\\'\", \"'\");\n }\n else if (HelperFunctions.GetQueryStringValue(\"utm_source\") == \"byondxr-store\") {\n a = \"byondxr-store\";\n }\n return a;\n });\n V(\"eVar2\", function () {\n return GetDataValue(\"InternalSearchTerm\", dataSource);\n });\n V(\"eVar3\", function () {\n return GetDataValue(\"InternalSearchType\", dataSource);\n });\n V(\"eVar7\", function () {\n var a = \"\";\n a = s.getReferringInternalSite();\n return a;\n });\n V(\"eVar18\", function () {\n return GetDataValue(\"CartItemQuantity\", dataSource);\n });\n V(\"eVar21\", function () {\n return GetDataValue(\"LoyaltyID\", dataSource);\n });\n V(\"eVar22\", function () {\n return GetDataValue(\"HashedEmailAddress\", dataSource);\n });\n V(\"eVar38\", function () {\n return GetDataValue(\"SavedStoreNumber\", dataSource);\n });\n V(\"eVar44\", function () {\n return GetDataValue(\"ErrorMessage\", dataSource);\n });\n V(\"eVar56\", function () {\n return GetDataValue(\"MobileCustomerID\", dataSource);\n });\n V(\"eVar57\", function () {\n return GetDataValue(\"AOSStoreID\", dataSource);\n });\n V(\"eVar59\", function () {\n var signedIn = GetDataValue(\"SignedInBoolean\", dataSource);\n if (signedIn !== null) {\n return \"Logged \" + (signedIn ? \"In\" : \"Out\");\n }\n else {\n return \"Undefined\";\n }\n });\n V(\"eVar60\", function () {\n if (GetDataValue(\"InternalSearchTerm\", dataSource)) {\n return GetDataValue(\"SearchData\", dataSource);\n }\n return \"\";\n });\n V(\"eVar63\", function () {\n return GetDataValue(\"InternalSearchDYM\", dataSource);\n });\n V(\"eVar67\", function () {\n var associateId = \"\";\n if (_dsgTag.currentWebsite === Websites.DicksSportingGoods && _dsgTag.experience === \"Kiosk\") {\n associateId = HelperFunctions.GetQueryStringValue(\"associateId\") || \"\";\n }\n return associateId;\n });\n V(\"eVar85\", function () {\n return HelperFunctions.GetCookieValue(\"promoId\");\n });\n V(\"eVar88\", function () {\n var dsgUID = \"\";\n dsgUID = HelperFunctions.GetCookieValue(\"DSG_UID\") || \"\";\n return dsgUID;\n });\n V(\"eVar111\", function () {\n return GetDataValue(\"CCPADoNotSell\", dataSource);\n });\n V(\"eVar118\", function () {\n return GetDataValue(\"LoginID\", dataSource);\n });\n V(\"eVar135\", function () {\n if (_dsgTag.timestamps) {\n var out = [];\n var key;\n for (key in _dsgTag.timestamps) {\n out.push(key + \": \" + _dsgTag.timestamps[key]);\n }\n return out.join(\",\");\n }\n });\n V(\"eVar136\", function () {\n return GetDataValue(\"NikeConnected\", dataSource).toString();\n });\n V(\"eVar137\", function () {\n return _dsgTag.CustomerIDs.isGold.toString();\n });\n V(\"eVar144\", function () {\n return _dsgTag.visitor.timeOnPreviousPage;\n });\n V(\"eVar145\", function () {\n return _dsgTag.visitor.pageCount;\n });\n V(\"eVar147\", function () {\n return HelperFunctions.GetQueryStringValue(\"Audience_Name\");\n });\n V(\"events\", function () {\n var a = s.events;\n var term = GetDataValue(\"InternalSearchTerm\", dataSource);\n var count = GetDataValue(\"InternalSearchResultsCount\", dataSource);\n if (term) {\n if (_dsgTag.previousPageValues[\"v1\"] === \"\" || document.referrer.indexOf(\"SearchDisplay\") === -1 || HelperFunctions.GetQueryStringValue(\"searchType\") === \"\" || HelperFunctions.GetQueryStringValue(\"urlRequestType\") !== \"\") {\n a = s.apl(a, \"event2\", \",\", 2);\n if (parseInt(count) > 0) {\n a = s.apl(a, \"event67=\" + count, \",\", 2);\n }\n if (count == \"0\") {\n a = s.apl(a, \"event3\", \",\", 2);\n }\n }\n }\n if (s.eVar1) {\n a = s.apl(a, \"event68\");\n if (s.eVar1.indexOf(\"_ScoreCard_Login\") >= 0) {\n a = s.apl(a, \"event157\");\n }\n }\n var testExists = HelperFunctions.GetValue(\"LSTest\");\n if (!testExists) {\n HelperFunctions.SaveValue(\"LSTest\", \"x\");\n if (!(HelperFunctions.GetValue(\"LSTest\") === \"x\")) {\n a = s.apl(a, \"event225\");\n }\n }\n if (HelperFunctions.GetValue(\"LaneChanged\") && HelperFunctions.GetValue(\"LaneChanged\") == 'true') {\n a = s.apl(a, \"event7\");\n HelperFunctions.DeleteValue(\"LaneChanged\");\n }\n if (_dsgTag.currentWebsite === Websites.PublicLands && HelperFunctions.GetQueryStringValue(\"segment\") === \"mjtopl\") {\n a = s.apl(a, \"event254\", \",\", 2);\n }\n return a;\n });\n V(\"list2\", function () {\n var list = [];\n var catalog = (GetDataValue(\"MCSalesCatalogDetails\", dataSource));\n if (catalog.length > 0) {\n for (var i = 0; i < catalog.length; i++) {\n if (catalog[i].ParentCodes && catalog[i].ParentCodes.length > 0) {\n for (var j = 0; j < catalog[i].ParentCodes.length; j++) {\n list.push(catalog[i].ParentCodes[j].ParentCode);\n }\n }\n }\n }\n var listString = list.join(\",\");\n if (listString.length > 0) {\n var matches = listString.match(/[^,]+-\\d{6,}/g);\n if (!matches) {\n listString = \"\";\n }\n else {\n list = matches.slice(0, 5);\n listString = list.join(\",\");\n }\n }\n return listString;\n });\n }\n function HandleErrorPageDeployments(dataSource) {\n var error = DataLayer.GetValue(\"PageName\", dataSource) || \"404\";\n var name = _dsgTag.currentWebsite.Abbreviation + \": Error: \" + error;\n s.friendlyPageName = name + \": \" + window.location.href;\n V(\"pageName\", \"D='\" + name + \": '+g\");\n V(\"prop2\", 'Error');\n V(\"pageType\", 'errorPage');\n V(\"eVar44\", error);\n }\n function HandleHomePageDeployments(dataSource) {\n V(\"pageName\", function () {\n return _dsgTag.currentWebsite.Abbreviation + \": Home Page: Home\";\n });\n V(\"prop2\", 'Home Page');\n }\n function HandleDepartmentCategoryFamilyPageDeployments(dataSource) {\n V(\"pageName\", function () {\n var a = \"\";\n var prefix = _dsgTag.currentWebsite.Abbreviation + \": Shopping: \";\n var url = GetDataValue(\"PageURL\", dataSource);\n var pathCharacter = url.split(\"/\")[3];\n var categoryID = GetDataValue(\"CategoryID\", dataSource);\n var categoryName = GetDataValue(\"CategoryName\", dataSource);\n var familyID = GetDataValue(\"FamilyID\", dataSource);\n var familyName = GetDataValue(\"FamilyName\", dataSource);\n var type = \"\";\n var idAndName = \"\";\n switch (pathCharacter) {\n case \"c\": {\n type = \"Category\";\n break;\n }\n case \"f\": {\n type = \"Family\";\n break;\n }\n }\n if (categoryID && categoryName) {\n idAndName = categoryID + \" - \" + categoryName;\n }\n else if (familyID && familyName) {\n idAndName = familyID + \" - \" + familyName;\n }\n var suffix = type + \": \" + idAndName;\n if (suffix)\n a = prefix + suffix;\n return a;\n });\n V(\"prop2\", function () {\n var a = \"\";\n var b = (GetDataValue(\"PageURL\", dataSource)).split(\"/\")[3];\n if (b === \"c\" || b === \"d\") {\n a = \"Category\";\n }\n else if (b === \"f\") {\n a = \"Family\";\n }\n var pageType = GetDataValue(\"PageType\", dataSource);\n if (pageType.toLowerCase() == \"superfamily\") {\n a = \"SuperFamily\";\n }\n else if (pageType.toLowerCase() == \"hyper-category\") {\n a = \"Hyper-Category\";\n }\n return a;\n });\n V(\"events\", function () {\n var a = s.events;\n if (_dsgTag.pageType === PageTypes.Family) {\n a = s.apl(a, \"event105\", \",\", 2);\n var b = GetDataValue(\"FamilyProductCount\", dataSource);\n if (b > 0) {\n a = s.apl(a, \"event151=\" + b, \",\", 2);\n }\n else {\n a = s.apl(a, \"event155\", \",\", 2);\n }\n }\n return a;\n });\n V(\"eVar54\", DataLayer.GetValue(\"SortMethod\"));\n V(\"eVar148\", DataLayer.GetValue(\"PLPEventID\"));\n V(\"eVar159\", DataLayer.GetValue(\"ReviewStarsProducts\"));\n }\n function HandleSearchPageDeployments(dataSource) {\n V(\"pageName\", function () {\n return _dsgTag.currentWebsite.Abbreviation + \": Shopping: Search: Results\";\n });\n V(\"prop2\", 'Search Results');\n V(\"eVar54\", DataLayer.GetValue(\"SortMethod\"));\n V(\"eVar148\", DataLayer.GetValue(\"PLPEventID\"));\n V(\"eVar159\", DataLayer.GetValue(\"ReviewStarsProducts\"));\n }\n function HandleProductPageDeployments(dataSource) {\n var isQuickView = GetDataValue(\"IsQuickView\", dataSource);\n var skuCount, maxSkuCountByAttributes;\n V(\"products\", function () {\n var a = \"\";\n var productDetails = GetDataValue(\"ProductDetails\", dataSource);\n if (productDetails.length > 0) {\n var evars = [];\n var events = [];\n var productID = GetDataValue(\"ProductID\", dataSource);\n if (_dsgTag.previousPageValues[\"pageRowCol\"]) {\n evars.push(\"evar4=\" + _dsgTag.previousPageValues[\"pageRowCol\"]);\n }\n else if (_dsgTag.previousPageValues[\"plaPosition\"]) {\n evars.push(\"evar4=\" + _dsgTag.previousPageValues[\"plaPosition\"]);\n }\n var reviewAvg = GetDataValue(\"ReviewAverage\", dataSource) || \"0\";\n var reviewCount = GetDataValue(\"ReviewCount\", dataSource) || \"0\";\n var reviewString = reviewAvg + \":\" + reviewCount;\n evars.push(\"evar55=\" + reviewString);\n var crossSellClickID = GetDataValue(\"CrossSellClickDetail\", dataSource);\n if (crossSellClickID) {\n evars.push(\"evar52=\" + crossSellClickID);\n var regEx = /\\/p\\/[^\\/]+\\/([^?]+)/;\n var referringPDP = isQuickView ? regEx.exec(window.location.href) : regEx.exec(document.referrer);\n if (referringPDP) {\n evars.push(\"evar31=\" + referringPDP[1].trim().toUpperCase());\n }\n }\n var pdpTemplate = GetDataValue(\"ProductPageTemplateType\", dataSource) || \"Standard\";\n if (GetDataValue(\"ProductBuyable\", dataSource) == \"false\") {\n pdpTemplate = \"Displayable Not Buyable\";\n }\n var findingMethod = GetDataValue(\"ProductFindingMethod\", dataSource);\n if (GetDataValue(\"InternalSearchType\", dataSource) && GetDataValue(\"InternalSearchType\", dataSource).toLowerCase() === \"search by product id\" && !isQuickView) {\n findingMethod = \"Internal Search\";\n }\n evars.push(\"evar33=\" + findingMethod);\n if (findingMethod !== \"Shopping Cart\") {\n evars.push(\"evar58=\" + findingMethod);\n }\n var promoMessages = GetDataValue(\"PDPPromoMessage\", dataSource);\n if (promoMessages.length > 0) {\n var promoValues = [];\n for (var i = 0; i < promoMessages.length; i++) {\n var valueType = \"\";\n switch (promoMessages[i].type.toLowerCase()) {\n case \"productlevelpromotion\": {\n valueType = \"P\";\n break;\n }\n case \"shippingpromotion\": {\n valueType = \"S\";\n break;\n }\n }\n promoValues.push({ id: promoMessages[i].promotionId, type: valueType });\n }\n promoValues.sort(function (a, b) { return parseInt(a.id) - parseInt(b.id); });\n var promoOutput = [];\n for (var i = 0; i < promoValues.length; i++) {\n promoOutput[i] = promoValues[i].type + \":\" + promoValues[i].id;\n }\n evars.push(\"evar70=\" + promoOutput.join(\"-\"));\n }\n var peopleViewing = GetDataValue(\"PDPPeopleViewing\", dataSource);\n if (peopleViewing) {\n evars.push(\"evar102=\" + peopleViewing);\n }\n if (productDetails.length == 1) {\n var product = productDetails[0];\n skuCount = product.ProductSKUDetails.length || 1;\n var colorOptionCount = 0;\n maxSkuCountByAttributes = 1;\n for (var i = 0; i < product.ProductAttributeList.length; i++) {\n if (product.ProductAttributeList[i].Name.toLowerCase() === \"color\") {\n colorOptionCount = product.ProductAttributeList[i].CountOfOptions;\n }\n maxSkuCountByAttributes = maxSkuCountByAttributes * product.ProductAttributeList[i].CountOfOptions;\n }\n var OMNIStatus = GetDataValue(\"ProductOmniStatus\", dataSource);\n evars.push(\"evar35=\" + OMNIStatus);\n if (colorOptionCount > 0) {\n evars.push(\"evar37=\" + colorOptionCount);\n }\n var priceType = GetDataValue(\"PriceType\", dataSource);\n if (!priceType) {\n priceType = \"Out of Stock\";\n }\n evars.push(\"evar49=\" + priceType);\n var currentPriceList = GetDataValue(\"ProductCurrentPriceList\", dataSource);\n var minPrice = 0;\n var minPriceOut = \"\";\n if (currentPriceList.length > 0) {\n minPrice = Number.MAX_VALUE;\n var seePriceInCart = true;\n for (var i = 0; i < currentPriceList.length; i++) {\n var value = parseFloat(currentPriceList[i]);\n if (!(isNaN(value))) {\n minPrice = (value < minPrice ? value : minPrice);\n seePriceInCart = false;\n }\n }\n minPriceOut = (seePriceInCart ? \"Price in Cart\" : minPrice.toFixed(2));\n }\n evars.push(\"evar62=\" + minPriceOut);\n var priceGroups = GetDataValue(\"ProductPagePricingGroups\", dataSource);\n evars.push(\"evar66=\" + priceGroups.length);\n evars.push(\"evar68=\" + s.GetAvailabilityStringFromSKUArray(product.ProductSKUDetails, maxSkuCountByAttributes));\n try {\n var mostRecentDate = new Date(0);\n for (var i = 0; i < product.ProductSKUDetails.length; i++) {\n var currentSKUDate = new Date(product.ProductSKUDetails[i].WebActiveDate);\n mostRecentDate = currentSKUDate > mostRecentDate ? currentSKUDate : mostRecentDate;\n }\n var dayDifference = (Date.now() - mostRecentDate.getDate()) / 1000 / 60 / 60 / 24;\n var dayBucket;\n if (dayDifference < 1) {\n dayBucket = \"Launch Day\";\n }\n else if (dayDifference < 7) {\n dayBucket = \"Day 1-7\";\n }\n else if (dayDifference < 30) {\n dayBucket = \"Day 8-30\";\n }\n else if (dayDifference < 90) {\n dayBucket = \"Day 31-90\";\n }\n else if (dayDifference < 180) {\n dayBucket = \"Day 91-180\";\n }\n else {\n dayBucket = \"Day 180+\";\n }\n evars.push(\"evar89=\" + mostRecentDate.getFullYear() + ((mostRecentDate.getMonth() + 1) < 10 ? \"0\" : \"\") + (mostRecentDate.getMonth() + 1) + (mostRecentDate.getDate() < 10 ? \"0\" : \"\") + mostRecentDate.getDate() + \":\" + dayBucket);\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Error calculating v89:\" + ex.message, LogLevels.Error);\n }\n evars.push(\"evar131=\" + (GetDataValue(\"NikeConnectedProduct\", dataSource)).toString());\n }\n else {\n evars.push(\"evar35=Bundle\");\n evars.push(\"evar37=Bundle\");\n evars.push(\"evar49=Bundle\");\n evars.push(\"evar62=Bundle\");\n evars.push(\"evar66=Bundle\");\n }\n evars.push(\"evar32=\" + pdpTemplate);\n a = s.buildProductString(productID, 0, 0, events, evars);\n }\n return a;\n });\n V(\"prop2\", 'Product Detail');\n V(\"events\", function () {\n var a = s.events;\n var productID = GetDataValue(\"ProductID\", dataSource);\n var productAvailability = GetDataValue(\"ProductAvailability\", dataSource);\n var searchTerm = GetDataValue(\"InternalSearchTerm\", dataSource);\n var crossSellClickID = GetDataValue(\"CrossSellClickDetail\", dataSource);\n if (productID) {\n a = s.apl(a, \"event1\", \",\", 2);\n if (productAvailability && (productAvailability === \"Out of Stock\")) {\n a = s.apl(a, \"event10\", \",\", 2);\n if (_dsgTag.currentWebsite === Websites.DicksSportingGoods) {\n HelperFunctions.SaveValue(\"prevPageOosPDP\", \"1\", true);\n }\n }\n else if (_dsgTag.currentWebsite === Websites.DicksSportingGoods) {\n HelperFunctions.DeleteValue(\"prevPageOosPDP\");\n }\n if (searchTerm) {\n a = s.apl(a, \"event67=1\", \",\", 2);\n }\n if (crossSellClickID) {\n a = s.apl(a, \"event6\", \",\", 2);\n }\n if (isQuickView) {\n a = s.apl(a, \"event150\", \",\", 2);\n }\n if (_dsgTag.previousPageValues[\"pageRowCol\"]) {\n try {\n if (parseInt(_dsgTag.previousPageValues[\"pageRowCol\"].split(\":\")[3]) <= 4) {\n a = s.apl(a, \"event12\", \",\", 2);\n }\n }\n catch (ex) { }\n }\n }\n else if (_dsgTag.currentWebsite === Websites.DicksSportingGoods) {\n HelperFunctions.DeleteValue(\"prevPageOosPDP\");\n }\n return a;\n });\n V(\"pageName\", function () {\n var a = _dsgTag.currentWebsite.Abbreviation + \": Product: PDP: \";\n var id = GetDataValue(\"ProductID\", dataSource);\n var name = GetDataValue(\"ProductName\", dataSource);\n if (id && name) {\n a += id + \" - \" + name;\n }\n else {\n a += \"Unknown\";\n }\n return a;\n });\n V(\"prop14\", function () {\n var shipClasses = [];\n try {\n var productDetails = GetDataValue(\"ProductDetails\", dataSource);\n if (productDetails.length > 0) {\n for (var i = 0; i < productDetails[0].ProductSKUDetails.length; i++) {\n if (typeof Array.prototype.indexOf !== \"undefined\" && shipClasses.indexOf(productDetails[0].ProductSKUDetails[i].ShipClass.toLowerCase()) < 0) {\n shipClasses.push(productDetails[0].ProductSKUDetails[i].ShipClass.toLowerCase());\n }\n }\n }\n }\n catch (ex) { }\n return shipClasses.sort().join(\":\");\n });\n V(\"prop50\", function () {\n return GetDataValue(\"PDPPaypalEligible\", dataSource);\n });\n var pageName = DataLayer.GetValue(\"PageName\");\n if (pageName === \"Product Hide\" || pageName === \"Sold Out\" || s.products === \"\") {\n V(\"pageName\", _dsgTag.currentWebsite.Abbreviation + \": Product: PDP: \" + pageName + \" - \" + GetDataValue(\"ProductID\", dataSource));\n V(\"events\", \"event1,event10\");\n V(\"products\", s.buildProductString(GetDataValue(\"ProductID\", dataSource), 0, 0, [], [\"evar68=0_1_0:0_1_0:0_1_0:0_1_0:0_1_0:0_1_0\", \"evar89=Not Available\"]));\n }\n }\n function HandleCartPageDeployments(dataSource) {\n var FirePayPalExpressClick = function () {\n EventHandlers.TriggerEvent(\"ExternalCheckout\", {\n \"Paypal\": \"Yes\"\n });\n };\n inputDataObject.AddEventHandler(\"NewPageView\", function () {\n HelperFunctions.BindDocumentClickEventWithAdditionalSelector(\"#paypal-btn-bottom, a.paypal-btn-bottom, .paypal-btn-action, .paypal-btn-wrapper-react\", FirePayPalExpressClick);\n var payPalNodes = document.querySelectorAll(\".paypal-image, [alt='Paypal Button']\");\n for (var i = 0; i < payPalNodes.length; i++) {\n payPalNodes[i].addEventListener(\"click\", FirePayPalExpressClick);\n }\n });\n V(\"pageName\", function () {\n return _dsgTag.currentWebsite.Abbreviation + \": Shopping Bag: Cart\";\n });\n V(\"prop2\", 'Shopping Bag');\n V(\"eVar13\", function () {\n var cartID = GetDataValue(\"CartID\", dataSource);\n if (cartID && (!HelperFunctions.GetValue(\"TagCartID\") || decodeURI(HelperFunctions.GetValue(\"TagCartID\") || \"\").split(\"|\")[0] != cartID)) {\n var cookieString = cartID + \"|0000\";\n HelperFunctions.SaveValue(\"TagCartID\", cookieString);\n }\n return cartID;\n });\n V(\"eVar18\", function () {\n return DataLayer.GetValue(\"CartItemQuantity\");\n });\n V(\"products\", function () {\n if (_dsgTag.CartSanitizationProducts) {\n var products = _dsgTag.CartSanitizationProducts.join(\",\");\n delete _dsgTag.CartSanitizationProducts;\n return products;\n }\n else {\n return \"\";\n }\n });\n }\n function HandleSinglePageCheckoutDeployments(dataSource) {\n var cardStatus = GetDataValue(\"CheckoutCardStatus\", dataSource);\n if (cardStatus) {\n var cardsAndEvents = {\n \"contactinfo\": { \"serialEvent\": 236, \"nonSerialEvent\": 237, \"stepIndex\": 0, \"pageName\": \"Contact Info\" },\n \"billingaddress\": { \"serialEvent\": 79, \"nonSerialEvent\": 89, \"stepIndex\": 1, \"pageName\": \"Billing & Shipping\" },\n \"shippingaddress\": { \"serialEvent\": 80, \"nonSerialEvent\": 90, \"stepIndex\": 2, \"pageName\": \"Shipping\" },\n \"sameday\": { \"serialEvent\": 234, \"nonSerialEvent\": 235, \"stepIndex\": 3, \"pageName\": \"SDD Tip/Payment\" },\n \"payment\": { \"serialEvent\": 81, \"nonSerialEvent\": 91, \"stepIndex\": 4, \"pageName\": \"Payment\" }\n };\n HandleCheckoutPageDeployments(dataSource);\n V(\"pageName\", \"\");\n V(\"events\", \"\");\n var cartID = DataLayer.GetValue(\"CartID\");\n var eventsToFire = [];\n var savedCheckoutDataString = HelperFunctions.GetValue(\"TagCheckoutProgress\") || \"\";\n if (savedCheckoutData) {\n var savedCheckoutData = JSON.parse(savedCheckoutDataString);\n try {\n for (var key in savedCheckoutData) {\n if (typeof cardStatus[key] === \"undefined\") {\n delete savedCheckoutData[key];\n }\n }\n }\n catch (ex) {\n savedCheckoutData = {};\n }\n }\n else {\n savedCheckoutData = {};\n eventsToFire.push(\"scCheckout:\" + cartID);\n eventsToFire.push(\"event87\");\n }\n ;\n var keyFound, theirKey, myKey;\n for (theirKey in cardStatus) {\n if (theirKey.toLowerCase() == \"dsg_uid\") {\n continue;\n }\n keyFound = false;\n for (myKey in cardsAndEvents) {\n if (theirKey.toLowerCase() == myKey.toLowerCase()) {\n keyFound = true;\n var currentCardStatus = cardStatus[theirKey].status;\n savedCheckoutData[myKey] = currentCardStatus;\n if (currentCardStatus == \"open\" || currentCardStatus == \"complete\") {\n for (var i = cardsAndEvents[myKey].stepIndex; i >= 0; i--) {\n for (var cardName in cardsAndEvents) {\n if (cardsAndEvents[cardName].stepIndex === i) {\n eventsToFire.push(\"event\" + cardsAndEvents[cardName].serialEvent + \":\" + cartID);\n }\n }\n }\n }\n if (currentCardStatus == \"open\" || currentCardStatus == \"revise\") {\n eventsToFire.push(\"event\" + cardsAndEvents[myKey].nonSerialEvent);\n s.pageName = _dsgTag.currentWebsite.Abbreviation + \": Checkout: \" + cardsAndEvents[myKey].pageName;\n }\n }\n }\n if (!keyFound) {\n console.error(\"Unrecognized checkout card name: \" + theirKey);\n }\n }\n V(\"eVar79\", function () {\n var out = \"Unknown\";\n var checkout = GetDataValue(\"CheckoutSummary\", dataSource);\n var key = checkout.checkout_key || checkout.checkoutKey;\n if (key) {\n if (key.indexOf(\"-\") >= 0) {\n out = \"Legacy Checkout\";\n }\n else {\n out = \"Modern Checkout\";\n }\n }\n return out;\n });\n V(\"eVar117\", function () {\n var out = [];\n for (var key in savedCheckoutData) {\n out.push(key + \":\" + savedCheckoutData[key]);\n }\n out = out.sort(function (a, b) { return cardsAndEvents[a.split(\":\")[0]].stepIndex - cardsAndEvents[b.split(\":\")[0]].stepIndex; });\n return out.join(\",\");\n });\n V(\"eVar123\", function () {\n return GetDataValue(\"OrderTip\", dataSource);\n });\n HelperFunctions.SaveValue(\"TagCheckoutProgress\", JSON.stringify(savedCheckoutData));\n for (var i = 0; i < eventsToFire.length; i++) {\n V(\"events\", s.apl(s.events, eventsToFire[i], \",\", 2));\n }\n }\n else {\n return true;\n }\n }\n function HandleCheckoutPageDeployments(dataSource) {\n if (typeof window.varResponsive !== 'undefined' && (_dsgTag.pageType === PageTypes.CheckoutBillingShippingAddress || _dsgTag.pageType === PageTypes.CheckoutBillingAddress)) {\n var fireFakeShippingUpdate = function () {\n if (DataLayer.GetValue(\"CheckoutSummary\") && typeof DataLayer.GetValue(\"CheckoutSummary\").shipping.information !== \"undefined\") {\n var eventData = {\n ActionType: \"radiobutton:delivery methods:default\",\n checkout: DataLayer.GetValue(\"CheckoutSummary\")\n };\n EventHandlers.TriggerEvent(\"CheckoutAction\", eventData);\n }\n else {\n setTimeout(fireFakeShippingUpdate, 500);\n }\n };\n setTimeout(fireFakeShippingUpdate, 500);\n }\n V(\"eVar11\", function () {\n var total = GetDataValue(\"OrderTotal\", dataSource);\n var ship = GetDataValue(\"OrderShippingRevenue\", dataSource);\n var tax = GetDataValue(\"OrderTax\", dataSource);\n var subtotal = (total - tax - ship);\n if (isNaN(subtotal)) {\n subtotal = 0;\n }\n return subtotal.toFixed(2);\n });\n V(\"eVar53\", function () {\n var tax = GetDataValue(\"OrderTax\", dataSource);\n return parseFloat(tax).toFixed(2);\n });\n V(\"eVar96\", function () {\n return GetDataValue(\"OrderShippingRevenue\", dataSource);\n });\n V(\"eVar97\", function () {\n return GetDataValue(\"OrderShippingDiscount\", dataSource);\n });\n V(\"eVar13\", function () {\n var cartID = GetDataValue(\"CartID\", dataSource);\n var TagCartID = HelperFunctions.GetValue(\"TagCartID\");\n if (cartID && (!TagCartID || decodeURI(TagCartID).split(\"|\")[0] != cartID)) {\n var cookieString = cartID + \"|0000\";\n HelperFunctions.SaveValue(\"TagCartID\", cookieString);\n }\n return cartID;\n });\n V(\"eVar17\", function () {\n var guestVsRegistered = GetDataValue(\"CheckoutGuestVsRegistered\", dataSource);\n var ddkey = HelperFunctions.GetQueryStringValue(\"ddkey\");\n var token = HelperFunctions.GetQueryStringValue(\"token\");\n var paymentType = HelperFunctions.GetQueryStringValue(\"paymentType\");\n if (document.referrer.indexOf(\"paypal.com\") >= 0 ||\n (ddkey && ddkey.indexOf(\"DSGReturnFromPayPalExpressCheckoutCmd\") >= 0) ||\n (token && token.indexOf(\"EC\") === 0) ||\n (paymentType && paymentType.toLowerCase().indexOf(\"paypal\") >= 0)) {\n guestVsRegistered += \" - \" + ((_dsgTag.previousPageValues[\"ExternalCheckout\"]) ? _dsgTag.previousPageValues[\"ExternalCheckout\"] : \"Paypal Express\");\n s.saveValueForNextPageView(\"ExternalCheckout\", _dsgTag.previousPageValues[\"ExternalCheckout\"]);\n }\n return guestVsRegistered;\n });\n V(\"pageName\", function () {\n var pageName = \"\";\n switch (_dsgTag.pageType) {\n case PageTypes.CheckoutBillingShippingAddress:\n case PageTypes.CheckoutBillingAddress:\n pageName = \"Step1 - Billing & Shipping\";\n break;\n case PageTypes.CheckoutShippingAddress:\n pageName = \"Step1 - Billing & Shipping - Ship to Other\";\n break;\n case PageTypes.CheckoutDelivery:\n pageName = \"Step2 - Shipping Methods\";\n break;\n case PageTypes.CheckoutPayment:\n pageName = \"Step3 - Payment\";\n break;\n case PageTypes.CheckoutReview:\n pageName = \"Step4 - Review & Submit Order\";\n break;\n case PageTypes.CheckoutSinglePage:\n pageName = \"Single Page Checkout\";\n }\n pageName = _dsgTag.currentWebsite.Abbreviation + \": Checkout: \" + pageName;\n return pageName;\n });\n V(\"products\", function () {\n var a = \"\";\n var products = DataLayer.GetValue('ProductListArray');\n var productStringArray = [];\n if (products.length > 0) {\n for (var i = 0; i < products.length; i++) {\n var id = products[i].ProductID;\n var quantity = products[i].ProductQty;\n var revenue = (products[i].CurrentPricePerUnit - products[i].DistributedOrderDiscountPerUnit) * products[i].ProductQty;\n var itemDiscount = products[i].ItemDiscountPerUnit * products[i].ProductQty;\n var distributedOrderDiscount = (typeof products[i].DistributedOrderDiscountPerUnit !== \"undefined\" ? (products[i].DistributedOrderDiscountPerUnit * products[i].ProductQty) : 0);\n var sku = products[i].ProductSKU;\n var shippingRevenue = products[i].ShippingPaidPerUnit * products[i].ProductQty;\n var shippingDiscount = products[i].ShippingDiscountPerUnit * products[i].ProductQty;\n var metrics = [];\n var evars = [];\n evars.push(\"evar61=\" + sku);\n if (typeof products[i].PromotionsApplied !== \"undefined\" && products[i].PromotionsApplied.length > 0) {\n var promoValues = [];\n for (var j = 0; j < products[i].PromotionsApplied.length; j++) {\n var valueType = \"\";\n switch (products[i].PromotionsApplied[j].OrderVsItemLevel.toLowerCase()) {\n case \"item\": {\n valueType = \"I\";\n break;\n }\n case \"order\": {\n valueType = \"O\";\n break;\n }\n }\n promoValues.push({ id: products[i].PromotionsApplied[j].PromoID, type: valueType });\n }\n promoValues.sort(function (a, b) { return parseInt(a.id) - parseInt(b.id); });\n var promoStrings = [];\n for (var j = 0; j < promoValues.length; j++) {\n promoStrings[j] = promoValues[j].type + \":\" + promoValues[j].id;\n }\n evars.push(\"evar70=\" + promoStrings.join(\"-\"));\n }\n if (typeof products[i].FulfillmentMethod !== \"undefined\") {\n var fulfillment = s.DetermineFulfillmentMethod(products[i].FulfillmentMethod);\n if (fulfillment) {\n evars.push(\"evar51=\" + fulfillment.name);\n if (fulfillment === s.fulfillmentMethodConstants.BOPIS || fulfillment === s.fulfillmentMethodConstants.BOPL) {\n if (products[i].FulfillmentStore) {\n evars.push(\"evar40=\" + products[i].FulfillmentStore);\n }\n }\n }\n }\n if (shippingRevenue > 0)\n evars.push(\"evar98=\" + shippingRevenue.toFixed(2));\n if (quantity > 0)\n evars.push(\"evar10=\" + quantity);\n if (revenue > 0)\n evars.push(\"evar99=\" + revenue.toFixed(2));\n if (shippingDiscount > 0)\n evars.push(\"evar100=\" + shippingDiscount.toFixed(2));\n productStringArray.push(s.buildProductString(products[i].ProductID, 0, 0, metrics, evars));\n }\n }\n else if (GetDataValue(\"CheckoutSummary\", dataSource)) {\n var checkout = GetDataValue(\"CheckoutSummary\", dataSource);\n for (var i = 0; i < checkout.cart.items.length; i++) {\n productStringArray.push(s.buildProductString(checkout.cart.items[i].ecode, 0, 0, [], [\"evar61=\" + checkout.cart.items[i].sku, \"evar99=\" + parseFloat(checkout.cart.items[i].unit_price).toFixed(2)]));\n }\n }\n else if (HelperFunctions.GetValue(\"TagCartProducts\")) {\n var cartProductInfo = JSON.parse(HelperFunctions.GetValue(\"TagCartProducts\") || \"\");\n for (sku in cartProductInfo) {\n productStringArray.push(s.buildProductString(cartProductInfo[sku], 0, 0, [], []));\n }\n }\n if (productStringArray) {\n a = productStringArray.join(\",\");\n }\n return a;\n });\n V(\"events\", function () {\n var checkoutEvents = s.events;\n var savedCheckoutData = HelperFunctions.GetValue(\"TagCartID\");\n if (savedCheckoutData) {\n savedCheckoutData = decodeURI(savedCheckoutData);\n var cartID = savedCheckoutData.split(\"|\")[0];\n var eventsFired = savedCheckoutData.split(\"|\")[1].split(\"\");\n var nonSerializedEvent = \"\";\n switch (_dsgTag.pageType) {\n case PageTypes.CheckoutReview:\n nonSerializedEvent = nonSerializedEvent || \"event92\";\n if (eventsFired[3] == \"0\") {\n checkoutEvents = s.apl(checkoutEvents, \"event82\" + \":\" + cartID, \",\", 2);\n eventsFired[3] = \"1\";\n }\n case PageTypes.CheckoutPayment:\n nonSerializedEvent = nonSerializedEvent || \"event91\";\n if (eventsFired[2] == \"0\") {\n checkoutEvents = s.apl(checkoutEvents, \"event81\" + \":\" + cartID, \",\", 2);\n eventsFired[2] = \"1\";\n }\n case PageTypes.CheckoutDelivery:\n nonSerializedEvent = nonSerializedEvent || \"event90\";\n if (eventsFired[1] == \"0\") {\n checkoutEvents = s.apl(checkoutEvents, \"event80\" + \":\" + cartID, \",\", 2);\n eventsFired[1] = \"1\";\n }\n case PageTypes.CheckoutBillingShippingAddress:\n case PageTypes.CheckoutBillingAddress:\n nonSerializedEvent = nonSerializedEvent || \"event89\";\n if (eventsFired[0] == \"0\") {\n if (document.referrer && document.referrer.toLowerCase().indexOf(\"checkoutsigninview\") < 0) {\n checkoutEvents = s.apl(checkoutEvents, \"scCheckout:\" + cartID, \",\", 2);\n checkoutEvents = s.apl(checkoutEvents, \"event87\", \",\", 2);\n }\n checkoutEvents = s.apl(checkoutEvents, \"event79\" + \":\" + cartID, \",\", 2);\n eventsFired[0] = \"1\";\n }\n case PageTypes.CheckoutShippingAddress:\n nonSerializedEvent = nonSerializedEvent || \"event88\";\n }\n checkoutEvents = s.apl(checkoutEvents, nonSerializedEvent, \",\", 2);\n HelperFunctions.SaveValue(\"TagCartID\", cartID + \"|\" + eventsFired.join(\"\"));\n }\n if (document.querySelectorAll(\"div.sign-in-text, p.sign-in-message-text\").length > 0) {\n checkoutEvents = s.apl(checkoutEvents, \"event170\", \",\", 2);\n }\n return checkoutEvents;\n });\n V(\"prop2\", 'Checkout');\n V(\"eVar14\", function () {\n return GetDataValue(\"OrderPaymentMethods\", dataSource).join(\": \");\n });\n V(\"eVar53\", function () {\n var tax = GetDataValue(\"OrderTax\", dataSource);\n if (tax) {\n return parseFloat(tax).toFixed(2);\n }\n });\n }\n function HandleOrderConfirmationPageDeployments(dataSource) {\n try {\n var orderID = GetDataValue(\"OrderID\", dataSource);\n if (orderID) {\n var exists = false;\n for (var i = 0; i < _dsgTag.visitor.orderHistory.length && !exists; i++) {\n exists = (orderID === _dsgTag.visitor.orderHistory[i].ID);\n }\n if (!exists) {\n _dsgTag.visitor.orderHistory.push({\n \"ID\": orderID,\n \"date\": Date.now()\n });\n }\n if (_dsgTag.visitor.orderHistory.length > 10) {\n _dsgTag.visitor.orderHistory.splice(10);\n }\n _dsgTag.OrderHistory = _dsgTag.visitor.orderHistory;\n HelperFunctions.SaveValue(\"Visitor\", JSON.stringify(_dsgTag.visitor), false);\n }\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Error adding order to visitor data: \" + ex.message, LogLevels.Error);\n }\n V(\"eVar48\", function () {\n return GetDataValue(\"BillingZip\", dataSource);\n });\n V(\"eVar14\", function () {\n return GetDataValue(\"OrderPaymentMethods\", dataSource).join(\": \");\n });\n V(\"prop16\", function () {\n return GetDataValue(\"OrderID\", dataSource);\n });\n V(\"eVar16\", function () {\n return GetDataValue(\"OrderID\", dataSource);\n });\n V(\"eVar15\", function () {\n return GetDataValue(\"OrderShippingMethod\", dataSource);\n });\n V(\"eVar20\", function () {\n var id = GetDataValue(\"WebstoreID\", dataSource);\n return (id ? _dsgTag.currentWebsite.Abbreviation + \":\" + id : \"\");\n });\n V(\"eVar117\", \"Complete\");\n V(\"pageName\", function () {\n return _dsgTag.currentWebsite.Abbreviation + \": Checkout: Step5 - Final Purchase\";\n });\n V(\"products\", function () {\n var a = \"\";\n var orderID = GetDataValue(\"OrderID\", dataSource);\n if (orderID) {\n var tax = parseFloat(GetDataValue(\"OrderTax\", dataSource));\n var ship = parseFloat(GetDataValue(\"OrderShippingRevenue\", dataSource));\n var shipdisc = parseFloat(GetDataValue(\"OrderShippingDiscount\", dataSource));\n var products = GetDataValue(\"ProductListArray\", dataSource);\n var productStringArray = [];\n var item = \"\";\n var events;\n var evars;\n for (var i = 0; i < products.length; i++) {\n events = [];\n evars = [];\n events.push(\"event19=\" + (products[i].ItemDiscountPerUnit * products[i].ProductQty).toFixed(2));\n if (typeof products[i].DistributedOrderDiscountPerUnit !== \"undefined\") {\n events.push(\"event13=\" + (products[i].DistributedOrderDiscountPerUnit * products[i].ProductQty).toFixed(2));\n }\n evars.push(\"evar61=\" + products[i].ProductSKU);\n if (typeof products[i].FulfillmentMethod !== \"undefined\") {\n var fulfillment = s.DetermineFulfillmentMethod(products[i].FulfillmentMethod);\n if (fulfillment) {\n evars.push(\"evar51=\" + fulfillment.name);\n if (fulfillment === s.fulfillmentMethodConstants.BOPIS || fulfillment === s.fulfillmentMethodConstants.BOPL) {\n if (products[i].FulfillmentStore) {\n evars.push(\"evar40=\" + products[i].FulfillmentStore);\n }\n }\n }\n }\n productStringArray.push(s.buildProductString(products[i].ProductID, products[i].ProductQty, ((products[i].CurrentPricePerUnit - products[i].DistributedOrderDiscountPerUnit) * products[i].ProductQty), events, evars));\n if (typeof products[i].Warranty !== \"undefined\" && products[i].Warranty.toLowerCase() === \"true\" && typeof products[i].WarrantyAmount !== \"undefined\") {\n productStringArray.push(s.buildProductString(products[i].ProductID + \"-Warranty\", 0, 0, [\"event30=\" + (products[i].WarrantyAmount * products[i].ProductQty).toFixed(2)]));\n }\n }\n if (tax) {\n productStringArray.push(s.buildProductString(\"Tax\", 0, 0, [\"event32=\" + tax.toFixed(2)]));\n }\n if (ship || shipdisc) {\n productStringArray.push(s.buildProductString(\"Shipping\", 0, 0, [\"event8=\" + ship.toFixed(2), \"event9=\" + shipdisc.toFixed(2)]));\n }\n if (productStringArray) {\n a = productStringArray.join(\",\");\n }\n }\n return a;\n });\n V(\"events\", function () {\n var a = s.events;\n var orderID = GetDataValue(\"OrderID\", dataSource);\n if (orderID) {\n var tax = parseFloat(GetDataValue(\"OrderTax\", dataSource));\n var ship = parseFloat(GetDataValue(\"OrderShippingRevenue\", dataSource));\n var shipdisc = parseFloat(GetDataValue(\"OrderShippingDiscount\", dataSource));\n var loyaltyID = GetDataValue(\"LoyaltyIDNoFilter\", dataSource);\n var isAGift = GetDataValue(\"GiftingEnabled\", dataSource);\n var sameBillingShipping = GetDataValue(\"OrderSameBillingAndShipping\", dataSource);\n var products = GetDataValue(\"ProductListArray\", dataSource);\n a = s.apl(a, \"purchase\", \",\", 2);\n if (tax) {\n a = s.apl(a, \"event32\", \",\", 2);\n }\n if (ship) {\n a = s.apl(a, \"event8\", \",\", 2);\n }\n if (shipdisc) {\n a = s.apl(a, \"event9\", \",\", 2);\n }\n if (loyaltyID) {\n a = s.apl(a, \"event86\", \",\", 2);\n }\n if (!sameBillingShipping) {\n a = s.apl(a, \"event113\", \",\", 2);\n }\n if (isAGift) {\n a = s.apl(a, \"event230\", \",\", 2);\n }\n for (var i = 0; i < products.length; i++) {\n if (typeof products[i].ItemDiscountPerUnit !== \"undefined\" && products[i].ItemDiscountPerUnit > 0) {\n a = s.apl(a, \"event19\", \",\", 2);\n }\n if (typeof products[i].DistributedOrderDiscountPerUnit !== \"undefined\" && products[i].DistributedOrderDiscountPerUnit > 0) {\n a = s.apl(a, \"event13\", \",\", 2);\n }\n if (typeof products[i].Warranty !== \"undefined\" && products[i].Warranty.toLowerCase() === \"true\") {\n a = s.apl(a, \"event30\", \",\", 2);\n }\n }\n }\n return a;\n });\n V(\"prop2\", 'Checkout');\n V(\"eVar17\", function () {\n var a = \"\";\n var guestVsRegistered = GetDataValue(\"CheckoutGuestVsRegistered\", dataSource);\n var checkoutData = GetDataValue(\"CheckoutSummary\", dataSource);\n a = guestVsRegistered;\n try {\n if (_dsgTag.previousPageValues[\"ExternalCheckout\"]) {\n a += \" - \" + _dsgTag.previousPageValues[\"ExternalCheckout\"];\n }\n else if (checkoutData && typeof checkoutData.payment !== \"undefined\" && checkoutData.payment.payment_processor.processor.toLowerCase() === \"applepay\") {\n a += \" - ApplePay\";\n }\n }\n catch (ex) { }\n return a;\n });\n V(\"eVar13\", function () {\n return GetDataValue(\"CartID\", dataSource);\n });\n HelperFunctions.DeleteValue(\"TagCheckoutProgress\");\n }\n function HandleStaticPageDeployments(dataSource) {\n V(\"pageName\", function () {\n var a = \"\";\n var id = GetDataValue(\"StaticPageID\", dataSource);\n var name = GetDataValue(\"PageName\", dataSource) || document.title;\n if (name) {\n a = _dsgTag.currentWebsite.Abbreviation + \": Static: \" + (id ? id + \" - \" : \"\") + name;\n }\n return a;\n });\n V(\"prop2\", 'Static');\n var now = new Date(Date.now());\n now.setSeconds(now.getSeconds() + 15);\n HelperFunctions.WriteCookieValue(\"TAG_Static\", s.pageName + \"|\" + s.prop2, now.getTime(), true);\n }\n function HandleProxyPageDeployments(dataSource) {\n V(\"pageName\", function () {\n var a = \"\";\n var categoryID = GetDataValue(\"CategoryID\", dataSource);\n var categoryName = GetDataValue(\"CategoryName\", dataSource);\n var familyID = GetDataValue(\"FamilyID\", dataSource);\n var familyName = GetDataValue(\"FamilyName\", dataSource);\n var pageType = GetDataValue(\"PageType\", dataSource).toLowerCase();\n if (pageType) {\n switch (pageType) {\n case \"category\":\n case \"category page\":\n case \"department page\":\n case \"department\": {\n pageType = \"Category\";\n break;\n }\n case \"family\":\n case \"family page\": {\n pageType = \"Family\";\n break;\n }\n case \"custom landing - family\": {\n pageType = \"Custom Landing\";\n break;\n }\n case \"hyper category - family\": {\n pageType = \"Hyper-Category\";\n break;\n }\n case \"index\":\n case \"index page\":\n default: {\n pageType = \"Index\";\n break;\n }\n }\n }\n else {\n pageType = \"Index\";\n }\n if ((categoryID && categoryID.indexOf(\"hc\") == 0) || (familyID && familyID.indexOf(\"hc\") == 0)) {\n pageType = \"Hyper-Category\";\n }\n else if ((categoryID && categoryID.indexOf(\"clp\") == 0) || (familyID && familyID.indexOf(\"clp\") == 0)) {\n pageType = \"Custom Landing\";\n }\n if (categoryID && categoryName && pageType) {\n a = _dsgTag.currentWebsite.Abbreviation + \": Shopping: \";\n a += pageType + \": \" + categoryID + \" - \" + categoryName;\n }\n else if (familyID && familyName && pageType) {\n a = _dsgTag.currentWebsite.Abbreviation + \": Shopping: \";\n a += pageType + \": \" + familyID + \" - \" + familyName;\n }\n else if (categoryName && pageType) {\n a = _dsgTag.currentWebsite.Abbreviation + \": Shopping: \";\n a += pageType + \": \" + categoryName;\n }\n else if (familyName && pageType) {\n a = _dsgTag.currentWebsite.Abbreviation + \": Shopping: \";\n a += pageType + \": \" + familyName;\n }\n else if (pageType) {\n a = _dsgTag.currentWebsite.Abbreviation + \": Shopping: \";\n a += pageType;\n }\n return a;\n });\n V(\"prop2\", function () {\n var a = \"\";\n var pageType = GetDataValue(\"PageType\", dataSource).toLowerCase();\n var categoryID = GetDataValue(\"CategoryID\", dataSource);\n var familyID = GetDataValue(\"FamilyID\", dataSource);\n if (pageType) {\n switch (pageType) {\n case \"category\":\n case \"category page\":\n case \"department page\":\n case \"department\": {\n a = \"Proxy Category\";\n break;\n }\n case \"family\":\n case \"family page\": {\n a = \"Proxy Family\";\n break;\n }\n case \"custom landing - family\":\n case \"custom landing - family page\": {\n a = \"Proxy Custom Landing\";\n break;\n }\n case \"hyper category - family\":\n case \"hyper category - family page\": {\n a = \"Proxy Hyper-Category\";\n break;\n }\n case \"index\":\n case \"index page\":\n default: {\n a = \"Proxy Index\";\n break;\n }\n }\n }\n else {\n a = \"Proxy Index\";\n }\n if ((categoryID && categoryID.indexOf(\"hc\") == 0) || (familyID && familyID.indexOf(\"hc\") == 0)) {\n a = \"Hyper-Category\";\n }\n else if ((categoryID && categoryID.indexOf(\"clp\") == 0) || (familyID && familyID.indexOf(\"clp\") == 0)) {\n a = \"Custom Landing\";\n }\n return a;\n });\n }\n function HandleStoreLocatorIndex(dataSource) {\n V(\"pageName\", function () {\n var a = _dsgTag.currentWebsite.Abbreviation + \": Store Locator: Index: \";\n var b = window.location.pathname;\n b = b.replace(\"/golfgalaxy\", \"\");\n b = b.replace(/(^(\\/)|(\\/)$)/g, \"\");\n if (!b) {\n a += \"Entire USA\";\n }\n else {\n var bArray = b.split(\"/\");\n if (bArray.length > 0) {\n a += bArray[0].toUpperCase();\n }\n if (bArray.length > 1) {\n a += \" - \" + bArray[1].replace(/\\b[a-z]/g, function (letter) {\n return letter.toUpperCase();\n });\n }\n }\n return a;\n });\n V(\"prop2\", 'Store Locator');\n }\n function HandleStoreLocatorLocalStore(dataSource) {\n V(\"eVar38\", function () {\n return DataLayer.GetValue(\"StoreLocatorStoreNumber\");\n });\n V(\"events\", function () {\n var a = s.events;\n a = s.apl(a, \"event34\", \",\", 2);\n return a;\n });\n V(\"pageName\", function () {\n if (DataLayer.GetValue(\"StoreLocatorStoreAddress\") === 'true') {\n return \"\";\n }\n var a = _dsgTag.currentWebsite.Abbreviation + \": Store Locator: Local: \";\n var state = \"\";\n var city = \"\";\n var addressString = DataLayer.GetValue(\"StoreLocatorStoreAddress\");\n var addressValues = addressString.split(\",\");\n if (addressValues.length == 2) {\n var splitResults = / (.+) (\\w{2} \\d{5})/.exec(addressValues[1]);\n if (splitResults && splitResults.length > 2) {\n addressValues[1] = splitResults[1];\n addressValues[2] = splitResults[2];\n }\n }\n else if (addressValues.length > 3) {\n var combinedAddress = addressValues.slice(0, addressValues.length - 2).join(\",\");\n addressValues = [combinedAddress, addressValues[addressValues.length - 2], addressValues[addressValues.length - 1]];\n }\n if (addressValues.length == 3) {\n var baseCity = addressValues[1].trim();\n var stateAndZip = addressValues[2].trim().split(\" \");\n if (stateAndZip.length == 2)\n state = stateAndZip[0].trim();\n var cityWords = baseCity.split(\" \");\n for (var i = 0; i < cityWords.length; i++)\n cityWords[i] = cityWords[i].charAt(0).toUpperCase() + cityWords[i].substring(1).toLowerCase();\n city = cityWords.join(\" \");\n }\n a += state + \": \" + city + \": Store \" + DataLayer.GetValue(\"StoreLocatorStoreNumber\");\n return a;\n });\n V(\"prop2\", 'Store Locator');\n }\n function HandleStoreLocatorIFrameDeployments(dataSource) {\n if (document.querySelectorAll(\"#search_address\").length > 0) {\n if (typeof jQuery !== 'undefined') {\n jQuery(window).on(\"AJAXStoreSearch\", function (eventObject, eventData) {\n if (typeof eventData === \"undefined\" && typeof eventObject.originalEvent !== \"undefined\" && typeof eventObject.originalEvent.detail !== \"undefined\") {\n eventData = eventObject.originalEvent.detail;\n }\n EventHandlers.TriggerEvent(eventObject.type, eventData);\n });\n }\n var cookie = HelperFunctions.GetCookieValue(\"TAG_Static\");\n HelperFunctions.DeleteCookie(\"TAG_Static\");\n if (cookie) {\n s.saveValueForNextPageView(\"v27\", cookie.split(\"|\")[0]);\n s.saveValueForNextPageView(\"v28\", cookie.split(\"|\")[1]);\n }\n return true;\n }\n else {\n _dsgTag.isIFrame = false;\n CustomerIDService.UpdateAllCustomerIDs();\n V(\"pageName\", _dsgTag.currentWebsite.Abbreviation + \": Store Locator: \" + document.title);\n }\n }\n function HandleWeeklyAdPageDeployments(dataSource) {\n V(\"pageName\", function () {\n return _dsgTag.currentWebsite.Abbreviation + \": Online Circular\";\n });\n V(\"prop2\", 'Weekly Ad');\n }\n function HandleOrderTrackingPageDeployments(dataSource) {\n V(\"prop16\", function () {\n return GetDataValue(\"OrderID\", dataSource);\n });\n V(\"pageName\", function () {\n return _dsgTag.currentWebsite.Abbreviation + \": My Account: Order Info: Order Tracking\";\n });\n V(\"prop2\", 'My Account');\n }\n function HandleOrderDetailsPageDeployments(dataSource) {\n V(\"prop16\", function () {\n return GetDataValue(\"OrderID\", dataSource);\n });\n V(\"prop2\", 'My Account');\n }\n function HandleGuestOrderTrackingPageDeployments(dataSource) {\n V(\"pageName\", function () {\n return _dsgTag.currentWebsite.Abbreviation + \": Help Desk: Track Order\";\n });\n V(\"prop2\", 'Help Desk');\n }\n function HandleAddressBookPageDeployments(dataSource) {\n V(\"prop74\", function () {\n return GetDataValue(\"AddressCount\", dataSource);\n });\n }\n function HandleMyAccountOTPChallengePageDeployments(dataSource) {\n V(\"pageName\", _dsgTag.currentWebsite.Abbreviation + \": My Account: Email OTP Challenge\");\n V(\"prop2\", 'My Account');\n }\n function HandleMyAccountSignInPageDeployments(dataSource) {\n var pathParts = window.location.pathname.split(\"/\");\n var pageName = _dsgTag.currentWebsite.Abbreviation + \": My Account: Account Log On\";\n if (pathParts[3]) {\n if (pathParts[3].toLowerCase() == \"identifier\") {\n pageName += \" - Identifier\";\n }\n else if (pathParts[3].toLowerCase() == \"password\") {\n pageName += \" - Password\";\n }\n }\n V(\"pageName\", pageName);\n V(\"prop2\", 'My Account');\n }\n function HandleMyAccountRegistrationPageDeployments(dataSource) {\n var pathParts = window.location.pathname.split(\"/\");\n var pageName = _dsgTag.currentWebsite.Abbreviation + \": My Account: Account Creation\";\n if (pathParts[3]) {\n if (pathParts[3].toLowerCase() == \"identifier\") {\n pageName += \" - Identifier\";\n }\n else if (pathParts[3].toLowerCase() == \"password\") {\n pageName += \" - Password\";\n }\n }\n V(\"pageName\", pageName);\n V(\"prop2\", 'My Account');\n V(\"eVar30\", \"Web Store\");\n V(\"events\", s.apl(s.events, \"event18\", \",\", 2));\n }\n function HandleMyAccountPageDeployments(dataSource) {\n V(\"pageName\", function () {\n var lookup = s.dsgPageNameLookup();\n return lookup ? lookup.name : _dsgTag.currentWebsite.Abbreviation + \": My Account: Summary\";\n ;\n });\n V(\"prop2\", 'My Account');\n }\n function HandleMyAccountListLandingPageDeployments(dataSource) {\n V(\"pageName\", _dsgTag.currentWebsite.Abbreviation + \": My Account: Lists\");\n V(\"prop2\", 'My Account');\n }\n function HandleMyAccountListContentsPageDeployments(dataSource) {\n V(\"pageName\", _dsgTag.currentWebsite.Abbreviation + \": My Account: View List\");\n V(\"prop2\", 'My Account');\n }\n function HandleMyAccountAppointmentsPageDeployments(dataSource) {\n if (GetDataValue(\"AppointmentTab\", dataSource) === \"upcoming\") {\n V(\"pageName\", _dsgTag.currentWebsite.Abbreviation + \": My Account: Upcoming Appointments\");\n }\n else if (GetDataValue(\"AppointmentTab\", dataSource) === \"past\") {\n V(\"pageName\", _dsgTag.currentWebsite.Abbreviation + \": My Account: Past Appointments\");\n }\n V(\"prop72\", 'appointmentsPresent|' + GetDataValue(\"AppointmentCount\", dataSource));\n V(\"prop2\", 'My Account');\n }\n function HandleSharedListPageDeployments(dataSource) {\n V(\"pageName\", _dsgTag.currentWebsite.Abbreviation + \": My Account: Shared List\");\n V(\"prop2\", 'My Account');\n if (HelperFunctions.GetQueryStringValue(\"listid\")) {\n V(\"eVar158\", HelperFunctions.GetQueryStringValue(\"listid\"));\n }\n }\n function HandleChatPageDeployments(dataSource) {\n V(\"pageName\", function () {\n return _dsgTag.currentWebsite.Abbreviation + ': Help Desk: ' + _dsgTag.pageType.Name;\n });\n V(\"prop2\", 'Chat');\n V(\"prop16\", function () {\n var scrapedOrderID = \"\";\n var scripts = document.querySelectorAll(\"script:not([src])\");\n for (var i = 0; i < scripts.length && !scrapedOrderID; i++) {\n var scrapedScript = /\"Incident_CustomFields_c_ordernum_dsg\":\"(\\d{11})\"/.exec(scripts[i].innerHTML);\n if (scrapedScript && scrapedScript.length > 1) {\n scrapedOrderID = scrapedScript[1];\n }\n }\n return scrapedOrderID;\n });\n V(\"eVar46\", function () {\n var a = \"\";\n if (window.location.href.indexOf(\"chat_landing\") >= 0) {\n a = \"Oracle Chat\";\n }\n return \"\";\n });\n V(\"eVar57\", function () {\n var a = \"\";\n if (window.location.href.indexOf(\"aos_\") >= 0 || window.location.href.indexOf(\"AssociateKioskDSG\") >= 0) {\n a = \"unknown: 000000\";\n }\n return a;\n });\n V(\"eVar64\", function () {\n var a = \"\";\n if (window.location.href.indexOf(\"aos_\") >= 0 || window.location.href.indexOf(\"AssociateKioskDSG\") >= 0) {\n _dsgTag.experience = a = \"Kiosk\";\n }\n return a;\n });\n V(\"events\", function () {\n var events = \"\";\n if (window.location.href.indexOf(\"chat_landing\") >= 0) {\n events = \"event47\";\n }\n return \"\";\n });\n }\n function HandleProtipsPageDeployments(dataSource) {\n V(\"pageName\", function () {\n try {\n var pageIdentifier = \"Unknown\";\n var pipeIndex = document.title.indexOf(' | ');\n if (pipeIndex < 0) {\n pageIdentifier = document.title;\n }\n else {\n pageIdentifier = document.title.substring(0, pipeIndex);\n }\n return 'DSG: ProTips: ' + pageIdentifier;\n }\n catch (e) {\n return 'err';\n }\n });\n V(\"prop2\", 'ProTips');\n }\n function HandleScorecardPageDeployments(dataSource) {\n V(\"pageName\", function () {\n var path = window.location.pathname;\n if (path.split(/[/.]/).length >= 2)\n return 'DKS: ScoreCard: ' + (path.split(/[/.]/)[1] !== \"\" ? path.split(/[/.]/)[1] : \"Home\");\n else\n return \"\";\n });\n V(\"prop2\", 'ScoreCard');\n }\n function HandleProductReviewDeployments(dataSource) {\n return true;\n }\n function Handle3rdPartyPLPLandingPageDeployments(dataSource) {\n var name = document.title.split(\"|\")[0].trim();\n var pathCharacter = GetDataValue(\"PageURL\", dataSource).split(\"/\")[3];\n var type;\n switch (pathCharacter) {\n case \"a\": {\n type = \"SEO Family Page\";\n break;\n }\n case \"o\": {\n type = \"SEO Landing Page\";\n break;\n }\n }\n V(\"pageName\", _dsgTag.currentWebsite.Abbreviation + ': ' + type + ': ' + name);\n V(\"prop2\", type);\n }\n function Handle3rdPartyPDPLandingPageDeployments(dataSource) {\n var pathCharacter = GetDataValue(\"PageURL\", dataSource).split(\"/\")[3];\n var type;\n HandleProductPageDeployments(dataSource);\n switch (pathCharacter) {\n case \"a\": {\n type = \"Adeptmind Product Details\";\n break;\n }\n }\n V(\"pageName\", _dsgTag.currentWebsite.Abbreviation + ': ' + type + ': ' + GetDataValue(\"ProductID\", dataSource) + \" - \" + GetDataValue(\"ProductName\", dataSource));\n V(\"prop2\", type);\n }\n function HandleNarvarRedirect(dataSource) {\n var CONST_carrierMonikerQueryString = \"carrier_moniker\";\n var carrierMoniker = HelperFunctions.GetQueryStringValue(CONST_carrierMonikerQueryString);\n var orderNumber = HelperFunctions.GetQueryStringValue(\"order_number\");\n V(\"pageName\", _dsgTag.currentWebsite.Abbreviation + \": Order Tracking Redirect\");\n V(\"prop2\", \"Order Tracking Redirect\");\n if (orderNumber) {\n V(\"prop16\", orderNumber);\n }\n var querystrings = window.location.search.substring(1).split(\"&\");\n var querystringList = [];\n for (var i = 0; i < querystrings.length; i++) {\n var key = querystrings[i].split(\"=\")[0];\n var value = querystrings[i].split(\"=\")[1];\n if (key != CONST_carrierMonikerQueryString) {\n if (key == \"tracking_number\") {\n key = \"tracking_numbers\";\n }\n if (typeof value !== \"undefined\") {\n querystringList.push(key + \"=\" + value);\n }\n }\n }\n var querystring = querystringList.join(\"&\");\n var website = \"\";\n switch (_dsgTag.currentWebsite) {\n case Websites.DicksSportingGoods:\n website = \"dickssportinggoods\";\n break;\n case Websites.GolfGalaxy:\n website = \"golfgalaxy\";\n break;\n }\n var out = \"https://tracking.narvar.com/\" + website + \"/tracking/\" + carrierMoniker + (querystring ? \"?\" + querystring : \"\");\n var redirect = function () { window.location.href = out; };\n s.postTrackCallbackList.push(redirect);\n setTimeout(redirect, 5000);\n }\n function HandlePelotonRedirect(dataSource) {\n var CONST_sourceQueryString = \"utm_source\";\n var source = HelperFunctions.GetQueryStringValue(CONST_sourceQueryString) || \"unknown\";\n V(\"pageName\", _dsgTag.currentWebsite.Abbreviation + \": Peloton Redirect\");\n V(\"prop2\", \"Peloton Redirect\");\n var out = \"https://onepeloton.com/benefits/dicks-sporting-goods/get-started?token=dsg&utm_source=\" + source;\n var redirect = function () { window.location.href = out; };\n s.postTrackCallbackList.push(redirect);\n setTimeout(redirect, 5000);\n }\n function HandleBlogPage(dataSource) {\n V(\"pageName\", _dsgTag.currentWebsite.Abbreviation + \": \" + _dsgTag.pageType.Name + \": \" + document.title);\n V(\"prop2\", \"Blog\");\n }\n function HandleResourceCenterPageDeployments(dataSource) {\n V(\"pageName\", _dsgTag.currentWebsite.Abbreviation + \": \" + _dsgTag.pageType.Name + \": \" + document.title);\n V(\"prop2\", _dsgTag.pageType.Name);\n }\n function HandleSchedulingServicePage(dataSource) {\n V(\"prop2\", \"Services\");\n V(\"pageName\", function () {\n var name = _dsgTag.currentWebsite.Abbreviation + \": Services: \";\n var pathArray = window.location.pathname.split(\"s/scheduling/\");\n var path = pathArray.length === 2 ? pathArray[1] : null;\n var m = function (regex) {\n return regex.test(path);\n };\n if (path) {\n if (m(/s\\/\\d+/i)) {\n name += \"Family Selection\";\n }\n else if (m(/f\\/[\\-\\w\\d]+/i)) {\n name += \"Details Selection\";\n }\n else if (m(/book\\/contact/i)) {\n name += \"Participant Information\";\n }\n else if (m(/book\\/questions/i)) {\n name += \"Questions\";\n }\n else if (m(/book\\/waiver/i)) {\n name += \"Waiver\";\n }\n else if (m(/book\\/review/i)) {\n name += \"Review\";\n }\n else if (m(/book/i)) {\n name += \"Details Selection\";\n }\n else if (m(/a\\/[\\-\\w\\d]+\\/reschedule/i)) {\n name += \"Reschedule Appointment\";\n }\n else if (m(/a\\/[\\-\\w\\d]+\\/cancel/i)) {\n name += \"Cancel Appointment\";\n }\n else if (m(/a\\/[\\-\\w\\d]+/i)) {\n name += \"Manage Appointment\";\n }\n }\n else {\n name += \"Store Search\";\n }\n return name;\n });\n V(\"eVar110\", function () { return GetDataValue(\"ServiceName\", dataSource); });\n V(\"eVar155\", function () { return GetDataValue(\"ServiceStoreNumber\", dataSource); });\n }\n function HandleCMMTeamPacketPageDeployments(dataSource) {\n V(\"pageName\", function () { var code = HelperFunctions.GetQueryStringValue(\"offer_entity_code\"); _dsgTag.currentWebsite.Abbreviation + \": Team Packet\" + (code ? \": \" + code : \"\"); });\n V(\"prop2\", \"Promotion\");\n }\n function HandleInvestorRelations(dataSource) {\n V(\"pageName\", function () {\n var titleParts = document.title.split(\"-\");\n var output = _dsgTag.currentWebsite.Abbreviation + \": Investor Relations\";\n for (var i = 1; i < titleParts.length; i++) {\n output += \": \" + titleParts[i].trim();\n }\n return output;\n });\n V(\"prop2\", \"Investor Relations\");\n }\n function HandleSportsMatter(dataSource) {\n V(\"pageName\", function () {\n var titleParts = document.title.split(\"|\");\n var output = _dsgTag.currentWebsite.Abbreviation + \": Sports Matter\";\n if (titleParts.length > 1) {\n output += \": \" + titleParts[0].trim();\n }\n return output;\n });\n V(\"prop2\", \"Sports Matter\");\n }\n function HandleInStoreDisplay(dataSource) {\n return true;\n }\n }());\n}\n//# sourceMappingURL=AnalyticsPageCode.js.map","import { PageTypes } from \"../../consts/pageTypes.const\";\nimport { HelperFunctions } from \"../../namespaces/helperFunctions.namespace\";\nimport { _dsgTag } from \"../../namespaces/_dsgTag.namespace\";\nimport { EventHandlers } from \"../../namespaces/eventHandlers.namespace\";\nimport { DataLayer } from \"../../namespaces/dataLayer.namespace\";\nimport { LogLevels } from \"../../enums/enums.enum\";\nimport { FunctionRepository } from \"../../namespaces/functionRepository.namespace\";\nimport { CustomerIDService } from \"../../namespaces/customerIDService.namespace\";\nexport function SetupAdobeEventCode(inputDataObject) {\n (function () {\n var analyticsEvents = [];\n var basicEvents = {\n \"ReviewSummaryClick\": { \"eventID\": 103, \"dedupe\": false },\n \"CartAddToReachSignInButtonClick\": { \"eventID\": 104, \"dedupe\": false },\n \"BOPISTestAvailable\": { \"eventID\": 160, \"dedupe\": false },\n \"OrderCancel\": { \"eventID\": 23, \"dedupe\": false },\n \"HasCombinedAccounts\": { \"eventID\": 48, \"dedupe\": false },\n \"StartSearch\": { \"eventID\": 64, \"dedupe\": true },\n \"SuccessfulSignIn\": { \"eventID\": 93, \"dedupe\": true },\n \"AEMSurveyComplete\": { \"eventID\": 98, \"dedupe\": false },\n \"CopyCode\": { \"eventID\": 114, \"dedupe\": false },\n \"GetNextOrderHistoryPage\": { \"eventID\": 115, \"dedupe\": false },\n \"ViewReward\": { \"eventID\": 116, \"dedupe\": false },\n \"GetNextPointsHistoryPage\": { \"eventID\": 121, \"dedupe\": false },\n \"SubscriptionsSave\": { \"eventID\": 123, \"dedupe\": false },\n \"ManageLoginEmailSave\": { \"eventID\": 124, \"dedupe\": false },\n \"ApplePay-ButtonClicked\": { \"eventID\": 135, \"dedupe\": false },\n \"ShowProductOptions\": { \"eventID\": 139, \"dedupe\": true },\n \"ApplePay-ButtonRender\": { \"eventID\": 146, \"dedupe\": false },\n \"ApplePay-SessionCancelled\": { \"eventID\": 147, \"dedupe\": false },\n \"ApplePay-SessionAborted\": { \"eventID\": 148, \"dedupe\": false },\n \"TapAheadClick\": { \"eventID\": 152, \"dedupe\": false },\n \"SignInClick\": { \"eventID\": 158, \"dedupe\": false, \"delay\": false },\n \"LearnMoreClick\": { \"eventID\": 163, \"dedupe\": false },\n \"ManageAccountClick\": { \"eventID\": 164, \"dedupe\": false },\n \"ApplyTodayClick\": { \"eventID\": 165, \"dedupe\": false },\n \"SameDayDeliverySelected\": { \"eventID\": 172, \"dedupe\": false },\n \"SameDayDeliveryEnabled\": { \"eventID\": 173, \"dedupe\": false },\n \"SameDayDeliveryATC\": { \"eventID\": 174, \"dedupe\": false },\n \"SponsoredProductsShown\": { \"eventID\": 175, \"dedupe\": false },\n \"EmptyCartSignInLinkClick\": { \"eventID\": 195, \"dedupe\": false },\n \"EmptyCartSignUpLinkClick\": { \"eventID\": 196, \"dedupe\": false },\n \"CloseTicker\": { \"eventID\": 202, \"dedupe\": false },\n \"CartAltSignInPlacementButtonClick\": { \"eventID\": 220, \"dedupe\": false },\n \"CartGiftingToggled\": { \"eventID\": 221, \"dedupe\": false },\n \"ChatEnded\": { \"eventID\": 227, \"dedupe\": false },\n \"AppClientId\": { \"eventID\": 228, \"dedupe\": false },\n \"WebClientId\": { \"eventID\": 229, \"dedupe\": false },\n \"CartOpenZipConfirmPanel\": { \"eventID\": 231, \"dedupe\": false },\n \"CartZipConfirmationCancel\": { \"eventID\": 232, \"dedupe\": false },\n \"CartConfirmAndCheckout\": { \"eventID\": 233, \"dedupe\": false },\n \"Cart Active PYPD: true\": { \"eventID\": 240, \"dedupe\": false },\n \"Cart Active PYPD: false\": { \"eventID\": 241, \"dedupe\": false },\n \"Checkout Active PYPD: true\": { \"eventID\": 242, \"dedupe\": false },\n \"Checkout Active PYPD: false\": { \"eventID\": 243, \"dedupe\": false },\n \"socialSignInGoogleLoginClick\": { \"eventID\": 244, \"dedupe\": false },\n \"socialSignInAppleLoginClick\": { \"eventID\": 245, \"dedupe\": false },\n \"socialSignInGoogleCreateAccountClick\": { \"eventID\": 246, \"dedupe\": false },\n \"socialSignInAppleCreateAccountClick\": { \"eventID\": 247, \"dedupe\": false },\n \"cancelLinkEvent\": { \"eventID\": 248, \"dedupe\": false },\n \"continueLinkEvent\": { \"eventID\": 249, \"dedupe\": false }\n };\n if (_dsgTag.TestEvents) {\n for (var i = 0; i < _dsgTag.TestEvents.length; i++) {\n basicEvents[_dsgTag.TestEvents[i].eventName] = { \"eventID\": _dsgTag.TestEvents[i].eventID, \"dedupe\": (typeof _dsgTag.TestEvents[i].dedupeEvent !== \"undefined\") ? _dsgTag.TestEvents[i].dedupeEvent : false };\n }\n }\n var basicEventsFired = [];\n for (var key in basicEvents) {\n (function (key) {\n var eventID = basicEvents[key].eventID;\n var dedupe = basicEvents[key].dedupe;\n var delay = typeof basicEvents[key].delay !== \"undefined\" ? basicEvents[key].delay : true;\n analyticsEvents.push({ \"name\": key, \"delay\": delay, \"handler\": function (eventInstance) {\n if (!dedupe || (typeof basicEventsFired.indexOf == \"function\" && basicEventsFired.indexOf(eventID) < 0)) {\n FunctionRepository.TriggerBasicAnalyticsEvent(eventInstance.eventName, eventID);\n basicEventsFired.push(eventID);\n }\n } });\n })(key);\n }\n analyticsEvents.push({ \"name\": \"3rdPartyOrder\", \"delay\": true, \"handler\": function (eventInstance) {\n if (_dsgTag.thirdPartyOrderList && _dsgTag.thirdPartyOrderList.length > 0) {\n s.eVar140 = _dsgTag.thirdPartyOrderList[0] + \":\" + _dsgTag.thirdPartyOrderList.slice(1).join(\",\");\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar140\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n }\n } });\n analyticsEvents.push({ \"name\": \"AddOnsShown\", \"delay\": true, \"handler\": function (eventInstance) {\n var ecodes = eventInstance.eventData.eCodes;\n if (typeof ecodes === \"string\") {\n ecodes = ecodes.split(\",\");\n s.prop31 = ecodes.slice(0, 3).join(\",\");\n s.linkTrackVars = s.apl(s.linkTrackVars, \"prop31\", \",\", 2);\n s.linkTrackEvents = \"None\";\n s.linkTrackVars = s.baseLinkTrackVars;\n }\n } });\n analyticsEvents.push({ \"name\": \"AddToCart\", \"delay\": true, \"handler\": function (eventInstance) {\n if (typeof (eventInstance.eventData) != \"undefined\") {\n var success = ProcessAddToCart(eventInstance);\n if (success) {\n s.triggerEvent(eventInstance.eventName);\n }\n }\n s.linkTrackEvents = \"None\";\n s.linkTrackVars = s.baseLinkTrackVars;\n } });\n analyticsEvents.push({ \"name\": \"AddToFavorites\", \"delay\": true, \"handler\": function (eventInstance) {\n EventHandlers.TriggerEvent(\"AddToList\", eventInstance.eventData);\n } });\n analyticsEvents.push({ \"name\": \"AddToList\", \"delay\": true, \"handler\": function (eventInstance) {\n var productID, productSKU, numberOfLists;\n if (typeof (eventInstance.eventData.AddedFavoriteID) != \"undefined\") {\n if (/^\\d+$/.test(eventInstance.eventData.AddedFavoriteID)) {\n productSKU = eventInstance.eventData.AddedFavoriteID;\n }\n else {\n productID = eventInstance.eventData.AddedFavoriteID;\n }\n }\n else if (typeof (eventInstance.eventData.ProductID) != \"undefined\") {\n productID = eventInstance.eventData.ProductID;\n productSKU = eventInstance.eventData.ProductSku;\n }\n numberOfLists = eventInstance.eventData.NumberOfLists || 0;\n if (!productID) {\n productID = DataLayer.GetValue(\"ProductID\");\n }\n if (productID) {\n var merchEvars = [];\n if (productSKU) {\n merchEvars.push(\"evar61=\" + productSKU);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar61\", \",\", 2);\n }\n if (numberOfLists) {\n merchEvars.push(\"evar149=\" + numberOfLists.toString());\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar149\", \",\", 2);\n }\n s.products = s.buildProductString(productID, 0, 0, [], merchEvars);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"products\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n }\n } });\n analyticsEvents.push({ \"name\": \"AJAXStoreSearch\", \"delay\": false, \"handler\": function (eventInstance) {\n if (typeof (eventInstance.eventData) != \"undefined\") {\n _dsgTag.queuedStoreSearches.push(eventInstance.eventData);\n }\n } });\n analyticsEvents.push({ \"name\": \"AlternativeInStockProduct\", \"delay\": true, \"handler\": function (eventInstance) {\n s.prop44 = \"Alternative\";\n s.linkTrackVars = s.apl(s.linkTrackVars, \"prop44\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n } });\n analyticsEvents.push({ \"name\": \"aosStoreInformationPopupCompleted\", \"delay\": false, \"handler\": function (eventInstance) {\n var storeID = eventInstance.eventData.StoreNumber;\n if (!HelperFunctions.GetValue(\"AOSStoreID\")) {\n s.eVar57 = storeID;\n HelperFunctions.SaveValue(\"AOSStoreID\", storeID);\n EventHandlers.TriggerEvent(\"NewPageView\");\n }\n } });\n analyticsEvents.push({ \"name\": \"AnyRoadIframeMessage\", \"delay\": false, \"handler\": function (eventInstance) {\n if (typeof (eventInstance.eventData) != \"undefined\") {\n var itemID = eventInstance.eventData.ecommerce[eventInstance.eventData.event].products[0].id;\n s.eVar105 = itemID;\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar105\", \",\", 2);\n if (eventInstance.eventData.event === \"purchase\") {\n var orderID = eventInstance.eventData.ecommerce[eventInstance.eventData.event].actionField.id;\n s.eVar106 = orderID;\n s.events = s.apl(s.events, \"event201\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event201\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar106\", \",\", 2);\n }\n s.triggerEvent(eventInstance.eventName);\n }\n } });\n var bindAnyRoadOnce = true;\n analyticsEvents.push({ \"name\": \"AnyRoadLoaded\", \"delay\": false, \"handler\": function (eventInstance) {\n if (bindAnyRoadOnce) {\n window.addEventListener(\"message\", function (event) {\n if (event.origin !== \"https://app.anyroad.com\")\n return;\n if (typeof event.data === \"object\") {\n EventHandlers.TriggerEvent(\"AnyRoadIframeMessage\", event.data);\n }\n }, false);\n bindAnyRoadOnce = false;\n }\n } });\n analyticsEvents.push({ \"name\": \"ApplePay-ButtonClicked\", \"delay\": true, \"handler\": function (eventInstance) {\n EventHandlers.TriggerEvent(\"ExternalCheckout\", {\n 'type': 'ApplePay'\n });\n } });\n analyticsEvents.push({ \"name\": \"AthleteConnectionType\", \"delay\": true, \"handler\": function (eventInstance) {\n if (eventInstance.eventData.connection) {\n var existingConnectionType = HelperFunctions.GetValue(\"AccountConnectionType\");\n if (!existingConnectionType || existingConnectionType !== eventInstance.eventData.connection) {\n s.eVar126 = eventInstance.eventData.connection;\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar126\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n HelperFunctions.SaveValue(\"AccountConnectionType\", eventInstance.eventData.connection);\n }\n }\n } });\n analyticsEvents.push({ \"name\": \"attentiveEvent\", \"delay\": true, \"handler\": function (eventInstance) {\n var eventName = eventInstance.eventData.event;\n var creativeID = eventInstance.eventData.creative_id;\n if (eventName) {\n var propString = \"attentiveEvent:\" + eventName + \":\" + creativeID;\n s.prop1 = propString;\n s.linkTrackVars = s.apl(s.linkTrackVars, \"prop1\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n }\n } });\n var selectedAttributes = [];\n analyticsEvents.push({ \"name\": \"AttributeSelected\", \"delay\": true, \"handler\": function (eventInstance) {\n if (typeof (eventInstance.eventData) != \"undefined\") {\n var type = eventInstance.eventData.Type;\n var value = eventInstance.eventData.Value;\n if (typeof selectedAttributes.indexOf == \"function\" && selectedAttributes.indexOf(type) < 0) {\n selectedAttributes.push(type);\n s.prop73 = type;\n s.linkTrackVars = s.apl(s.linkTrackVars, \"prop73\", \",\", 2);\n s.events = s.apl(s.events, \"event156\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event156\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n }\n }\n s.linkTrackEvents = \"None\";\n s.linkTrackVars = s.baseLinkTrackVars;\n } });\n analyticsEvents.push({ \"name\": \"BatFinderResults\", \"delay\": true, \"handler\": function (eventInstance) {\n if (typeof (eventInstance.eventData) != \"undefined\") {\n var eventName = (eventInstance.eventData.Success === \"true\") ? \"event56\" : \"event57\";\n s.events = s.apl(s.events, eventName, \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, eventName, \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n }\n s.linkTrackEvents = \"None\";\n s.linkTrackVars = s.baseLinkTrackVars;\n } });\n analyticsEvents.push({ \"name\": \"BazaarVoiceInteraction\", \"delay\": true, \"handler\": function (eventInstance) {\n s.linkTrackVars = s.baseLinkTrackVars + \",\" + s.linkTrackVars;\n s.triggerEvent(eventInstance.eventName);\n } });\n analyticsEvents.push({ \"name\": \"CancelRequestSubmit\", \"delay\": true, \"handler\": function (eventInstance) {\n s.events = \"\";\n if (typeof (eventInstance.eventData) != \"undefined\" && typeof eventInstance.eventData.OrderCancelRequestSuccess !== \"undefined\") {\n if (eventInstance.eventData.OrderCancelRequestSuccess) {\n s.prop16 = eventInstance.eventData.OrderID;\n s.linkTrackVars = s.apl(s.linkTrackVars, \"prop16\", \",\", 2);\n }\n s.prop53 = eventInstance.eventData.OrderCancelRequestSuccess.toString();\n s.linkTrackVars = s.apl(s.linkTrackVars, \"prop53\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n }\n s.linkTrackEvents = \"None\";\n s.linkTrackVars = s.baseLinkTrackVars;\n } });\n analyticsEvents.push({ \"name\": \"CartAction\", \"delay\": true, \"handler\": ProcessCartAndCheckoutAction });\n analyticsEvents.push({ \"name\": \"CartAddToSaveForLater\", \"delay\": true, \"handler\": function (eventInstance) {\n s.events = \"\";\n if (typeof (eventInstance.eventData) != \"undefined\") {\n s.products = s.buildProductString(eventInstance.eventData.ProductID, 0, 0, [], [\"evar151=\" + eventInstance.eventData.Source]);\n s.events = s.apl(s.events, \"event183\", \",\", 2);\n s.events = s.apl(s.events, \"scRemove\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"scRemove\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event183\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar151\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"products\", \",\", 2);\n s._ignoreCartRemove = true;\n s.triggerEvent(eventInstance.eventName);\n }\n s.linkTrackEvents = \"None\";\n s.linkTrackVars = s.baseLinkTrackVars;\n } });\n analyticsEvents.push({ \"name\": \"CartDataUpdated\", \"delay\": true, \"handler\": function (eventInstance) {\n s.events = \"\";\n DataLayer.PassValuesToFunction([\"ProductListArray\"], function (products) {\n try {\n var ecodeSkuPairs = {};\n for (var i = 0; i < products.length; i++) {\n ecodeSkuPairs[products[i].ProductSKU] = products[i].ProductID;\n }\n HelperFunctions.SaveValue(\"TagCartProducts\", JSON.stringify(ecodeSkuPairs));\n }\n catch (ex) { }\n }, eventInstance.eventData);\n DataLayer.PassValuesToFunction(['OrderTotal', 'OrderTax', 'OrderShippingRevenue', 'OrderShippingDiscount', 'ProductListExists', 'CartItemQuantity', 'LoyaltyID', 'CartID'], function (OrderTotal, OrderTax, OrderShippingRevenue, OrderShippingDiscount, ProductListExists, CartItemQuantity, LoyaltyID, cartID) {\n var cartValues = [];\n var AddCartVariable = function (name, handler) {\n cartValues.push({ \"name\": name, \"handler\": handler });\n };\n AddCartVariable(\"products\", function () {\n var a = \"\";\n var products = DataLayer.GetValue('ProductListArray');\n var productStringArray = [];\n for (var i = 0; i < products.length; i++) {\n var id = products[i].ProductID;\n var quantity = products[i].ProductQty;\n var revenue = (products[i].CurrentPricePerUnit - products[i].DistributedOrderDiscountPerUnit) * products[i].ProductQty;\n var itemDiscount = products[i].ItemDiscountPerUnit * products[i].ProductQty;\n var distributedOrderDiscount = (typeof products[i].DistributedOrderDiscountPerUnit !== \"undefined\" ? (products[i].DistributedOrderDiscountPerUnit * products[i].ProductQty) : 0);\n var sku = products[i].ProductSKU;\n var shippingRevenue = products[i].ShippingPaidPerUnit * products[i].ProductQty;\n var shippingDiscount = products[i].ShippingDiscountPerUnit * products[i].ProductQty;\n var editable = products[i].Editable || false;\n var metrics = [];\n var evars = [];\n evars.push(\"evar61=\" + sku);\n if (typeof products[i].FulfillmentMethod !== \"undefined\") {\n var fulfillment = s.DetermineFulfillmentMethod(products[i].FulfillmentMethod);\n if (fulfillment) {\n evars.push(\"evar51=\" + fulfillment.name);\n if (fulfillment === s.fulfillmentMethodConstants.BOPIS || fulfillment === s.fulfillmentMethodConstants.BOPL) {\n if (products[i].FulfillmentStore) {\n evars.push(\"evar40=\" + products[i].FulfillmentStore);\n }\n }\n }\n }\n if (shippingRevenue > 0)\n evars.push(\"evar98=\" + shippingRevenue.toFixed(2));\n if (quantity > 0)\n evars.push(\"evar10=\" + quantity);\n if (revenue > 0)\n evars.push(\"evar99=\" + revenue.toFixed(2));\n if (shippingDiscount > 0)\n evars.push(\"evar100=\" + shippingDiscount.toFixed(2));\n evars.push(\"evar143=\" + editable.toString());\n productStringArray.push(s.buildProductString(products[i].ProductID, 0, 0, metrics, evars));\n }\n if (productStringArray) {\n a = productStringArray.join(\",\");\n }\n return a;\n });\n AddCartVariable(\"eVar11\", function () {\n if (ProductListExists) {\n var total = OrderTotal;\n var ship = OrderShippingRevenue;\n var tax = OrderTax;\n var subtotal = (total - tax - ship);\n if (isNaN(subtotal)) {\n subtotal = 0;\n }\n return subtotal.toFixed(2);\n }\n else {\n return \"\";\n }\n });\n AddCartVariable(\"eVar13\", function () {\n if (cartID && (!HelperFunctions.GetValue(\"TagCartID\") || decodeURI(HelperFunctions.GetValue(\"TagCartID\") || \"\").split(\"|\")[0] != cartID)) {\n var cookieString = cartID + \"|0000\";\n HelperFunctions.SaveValue(\"TagCartID\", cookieString);\n }\n return cartID;\n });\n AddCartVariable(\"eVar18\", function () {\n if (ProductListExists) {\n return CartItemQuantity;\n }\n else {\n return \"\";\n }\n });\n AddCartVariable(\"eVar21\", function () {\n if (LoyaltyID) {\n CustomerIDService.UpdateCustomerIDFromParameter(\"Loyalty\", LoyaltyID, \"Local\");\n return LoyaltyID;\n }\n return \"\";\n });\n AddCartVariable(\"eVar53\", function () {\n return isNaN(parseFloat(OrderTax)) ? \"\" : parseFloat(OrderTax).toFixed(2);\n });\n AddCartVariable(\"eVar96\", function () {\n return isNaN(parseFloat(OrderShippingRevenue)) ? \"\" : parseFloat(OrderShippingRevenue).toFixed(2);\n });\n AddCartVariable(\"eVar97\", function () {\n return isNaN(parseFloat(OrderShippingDiscount)) ? \"\" : parseFloat(OrderShippingDiscount).toFixed(2);\n });\n AddCartVariable(\"eVar118\", function () {\n return DataLayer.GetValue(\"LoginID\");\n });\n if (document.querySelectorAll(\"div.sign-in-text, p.sign-in-message-text\").length > 0) {\n AddCartVariable(\"events\", function () { return s.apl(s.events, \"event170\", \",\", 2); });\n }\n for (var i = 0; i < cartValues.length; i++) {\n try {\n s[cartValues[i].name] = cartValues[i].handler(eventInstance);\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Error processing CartDataUpdated analytics value: \" + ex.message, LogLevels.Error);\n }\n }\n }, eventInstance.eventData);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"products\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar10\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar11\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar13\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar18\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar40\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar51\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar53\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar61\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar70\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar96\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar97\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar98\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar99\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar100\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar118\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event44\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event170\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n s.linkTrackEvents = \"None\";\n s.linkTrackVars = s.baseLinkTrackVars;\n } });\n analyticsEvents.push({ \"name\": \"CartEditProduct\", \"delay\": true, \"handler\": function (eventInstance) {\n if (typeof (eventInstance.eventData) != \"undefined\") {\n s.products = \";\" + eventInstance.eventData.EditedProductID;\n +\";;;;evar61=\" + eventInstance.eventData.EditedProductSKU;\n s.events = s.apl(s.events, \"event71\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event71\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"products\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n }\n } });\n analyticsEvents.push({ \"name\": \"CartFulfillmentChanged\", \"delay\": true, \"handler\": function (eventInstance) {\n s.events = \"\";\n if (typeof (eventInstance.eventData) != \"undefined\") {\n var updateValue = eventInstance.eventData.NewFulfillmentMethod;\n var productID = eventInstance.eventData.UpdateProductId;\n var sku = eventInstance.eventData.UpdateProductSku;\n if (Array.isArray(productID)) {\n productID = productID[0];\n sku = sku[0];\n }\n var merchEvars = [];\n merchEvars.push(\"evar61=\" + sku);\n if (typeof updateValue !== \"undefined\") {\n var fulfillment = s.DetermineFulfillmentMethod(updateValue);\n if (fulfillment) {\n merchEvars.push(\"evar51=\" + fulfillment.name);\n if (fulfillment === s.fulfillmentMethodConstants.Standard) {\n merchEvars.push(\"evar40=Ship To Customer\");\n }\n else if (fulfillment === s.fulfillmentMethodConstants.BOPIS || fulfillment === s.fulfillmentMethodConstants.BOPL) {\n merchEvars.push(\"evar40=Unknown\");\n }\n }\n }\n s.products = s.buildProductString(productID, 0, 0, [], merchEvars);\n s.events = s.apl(s.events, \"event52\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event52\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"products\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n }\n s.linkTrackEvents = \"None\";\n s.linkTrackVars = s.baseLinkTrackVars;\n } });\n analyticsEvents.push({ \"name\": \"CartQuantityChanged\", \"delay\": true, \"handler\": function (eventInstance) {\n s.events = \"\";\n if (typeof (eventInstance.eventData) != \"undefined\") {\n }\n s.linkTrackEvents = \"None\";\n s.linkTrackVars = s.baseLinkTrackVars;\n } });\n analyticsEvents.push({ \"name\": \"CartRemoveProduct\", \"delay\": true, \"handler\": function (eventInstance) {\n s.events = \"\";\n if (typeof (eventInstance.eventData) != \"undefined\" && !s._ignoreCartRemove) {\n s.products = \";\" + eventInstance.eventData.RemovedProductID;\n s.eVar18 = DataLayer.GetValue(\"CartItemQuantity\", eventInstance.eventData);\n s.events = s.apl(s.events, \"scRemove\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"scRemove\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"products\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar18\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n s.linkTrackEvents = \"None\";\n s.linkTrackVars = s.baseLinkTrackVars;\n }\n s._ignoreCartRemove = false;\n s.linkTrackEvents = \"None\";\n s.linkTrackVars = s.baseLinkTrackVars;\n } });\n analyticsEvents.push({ \"name\": \"CartSanitizationAction\", \"delay\": false, \"handler\": function (eventInstance) {\n s.events = \"\";\n if (typeof (eventInstance.eventData) != \"undefined\") {\n var productID = eventInstance.eventData.ProductID || \"UNKNOWN\";\n var sku = eventInstance.eventData.ProductSKU || \"UNKNOWN\";\n var actionType = eventInstance.eventData.Action || \"UNKNOWN\";\n var actionReason = eventInstance.eventData.ActionReason || \"UNKNOWN\";\n var message = eventInstance.eventData.Message || \"UNKNOWN\";\n var oos = typeof eventInstance.eventData.ProductOOS !== \"undefined\" ? eventInstance.eventData.ProductOOS : \"UNKNOWN\";\n message = message.replace(/\\d{8}/g, \"\");\n var merchEvars = [];\n merchEvars.push(\"evar61=\" + sku);\n if (typeof actionType != \"undefined\" && typeof actionReason != \"undefined\") {\n var actionValue = \"CartSanitization:\" + actionType + \":\" + actionReason + \":\" + message + \":ProductOOS=\" + oos.toString();\n merchEvars.push(\"evar134=\" + actionValue);\n }\n var productString = s.buildProductString(productID, 0, 0, [], merchEvars);\n ;\n if (EventHandlers.initialPageViewPreFired) {\n s.products = productString;\n s.linkTrackVars = s.apl(s.linkTrackVars, \"products\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n }\n else {\n _dsgTag.CartSanitizationProducts = _dsgTag.CartSanitizationProducts || [];\n _dsgTag.CartSanitizationProducts.push(productString);\n }\n }\n } });\n analyticsEvents.push({ \"name\": \"ChangeDeliveryLocationEvent\", \"delay\": true, \"handler\": function (eventInstance) {\n s.events = \"\";\n if (typeof (eventInstance.eventData) != \"undefined\") {\n s.eVar121 = eventInstance.eventData.zipcode;\n s.events = s.apl(s.events, \"event224\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event224\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar121\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n }\n } });\n analyticsEvents.push({ \"name\": \"ChangeMyStoreEvent\", \"delay\": true, \"handler\": function (eventInstance) {\n s.events = \"\";\n if (typeof (eventInstance.eventData) != \"undefined\") {\n var results = eventInstance.eventData.CollectionCount;\n s.eVar9 = \"My Store Search\";\n s.events = s.apl(s.events, \"event33\", \",\", 2);\n s.events = s.apl(s.events, \"event67=\" + results, \",\", 2);\n if (results > 0) {\n s.eVar5 = eventInstance.eventData.ZipCode;\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar5\", \",\", 2);\n }\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event33\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event67\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar9\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"prop9\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n }\n s.linkTrackEvents = \"None\";\n s.linkTrackVars = s.baseLinkTrackVars;\n } });\n analyticsEvents.push({ \"name\": \"ChangePreferredStore\", \"delay\": true, \"handler\": function (eventInstance) {\n var storeID = \"\";\n if (eventInstance.eventData && typeof eventInstance.eventData.NewStoreID !== \"undefined\") {\n storeID = eventInstance.eventData.NewStoreID;\n }\n else if (HelperFunctions.GetCookieValue(\"setStoreCookie\")) {\n storeID = HelperFunctions.GetCookieValue(\"setStoreCookie\");\n if (storeID) {\n var matches = /_(\\d+)$/g.exec(storeID);\n storeID = (matches && matches.length > 0) ? matches[1] : \"\";\n }\n }\n if (storeID) {\n s.eVar38 = storeID;\n s.events = s.apl(s.events, \"event17\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event17\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar38\", \",\", 2);\n if (typeof eventInstance.eventData.ProductID !== \"undefined\" && typeof eventInstance.eventData.ProductSKUDetails !== \"undefined\") {\n var baseItemSKUDetails = DataLayer.GetValue(\"ProductDetails\")[0].ProductSKUDetails;\n for (var i = 0; i < eventInstance.eventData.ProductSKUDetails.length; i++) {\n for (var j = 0; j < baseItemSKUDetails.length; j++) {\n if (eventInstance.eventData.ProductSKUDetails[i].ProductSKU == baseItemSKUDetails[j].ProductSKU) {\n eventInstance.eventData.ProductSKUDetails[i].AvailabletoShip = baseItemSKUDetails[j].AvailabletoShip;\n }\n }\n }\n s.products = s.buildProductString(eventInstance.eventData.ProductID, 0, 0, [], [\"evar68=\" + s.GetAvailabilityStringFromSKUArray(eventInstance.eventData.ProductSKUDetails)]);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar68\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"products\", \",\", 2);\n }\n }\n s.linkTrackEvents = \"None\";\n s.linkTrackVars = s.baseLinkTrackVars;\n } });\n analyticsEvents.push({ \"name\": \"ChatDataUpdated\", \"delay\": true, \"handler\": function (eventInstance) {\n if (eventInstance.eventData.conversationId) {\n s.eVar87 = eventInstance.eventData.conversationId;\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar87\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n }\n } });\n analyticsEvents.push({ \"name\": \"ChatStarted\", \"delay\": true, \"handler\": function (eventInstance) {\n s.events = s.apl(s.events, \"event47\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event47\", \",\", 2);\n if (eventInstance.eventData.engagmentID) {\n s.eVar87 = eventInstance.eventData.engagmentID;\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar87\", \",\", 2);\n }\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n } });\n analyticsEvents.push({ \"name\": \"CheckoutAction\", \"delay\": true, \"handler\": ProcessCartAndCheckoutAction });\n analyticsEvents.push({ \"name\": \"Checkout Card State\", \"delay\": false, \"handler\": function (eventInstance) {\n if (eventInstance.eventData) {\n delete (eventInstance.eventData.taggingEventID);\n var combinedData = { \"checkoutCardStatus\": eventInstance.eventData };\n HelperFunctions.DeepExtend(combinedData, window.siteData, combinedData);\n EventHandlers.TriggerEvent(\"NewPageView\", combinedData);\n }\n } });\n analyticsEvents.push({ \"name\": \"CheckoutStockReady\", \"delay\": true, \"handler\": function (eventInstance) {\n if (typeof eventInstance.eventData != \"undefined\" && typeof eventInstance.eventData.stockQty != \"undefined\") {\n var items = [];\n var cartProductInfo = DataLayer.GetValue(\"CartSKUEcodeLookup\", eventInstance.eventData);\n for (var i = 0; i < eventInstance.eventData.stockQty.length; i++) {\n var sku = eventInstance.eventData.stockQty[i].sku;\n if (typeof cartProductInfo[sku] !== \"undefined\") {\n var ecode = cartProductInfo[sku];\n var shippingInfo = [];\n if (eventInstance.eventData.stockQty[i].STHLowStockMessageShown) {\n shippingInfo.push(\"STH:\" + eventInstance.eventData.stockQty[i].STHLowStockQty);\n }\n if (eventInstance.eventData.stockQty[i].BOPISLowStockMessageShown) {\n shippingInfo.push(\"BOPIS:\" + eventInstance.eventData.stockQty[i].BOPISLowStockQty);\n }\n if (shippingInfo.length > 0) {\n var shippingInfoString = shippingInfo.join(\"-\");\n items.push(s.buildProductString(ecode, 0, 0, [], [\"evar86=\" + shippingInfoString]));\n }\n }\n }\n if (items.length > 0) {\n s.products = items.join(\",\");\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar86\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"products\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n }\n }\n s.linkTrackEvents = \"None\";\n s.linkTrackVars = s.baseLinkTrackVars;\n } });\n analyticsEvents.push({ \"name\": \"CheckStoreAvailabilitySearch\", \"delay\": true, \"handler\": function (eventInstance) {\n s.events = \"\";\n if (typeof (eventInstance.eventData) != \"undefined\") {\n var results = eventInstance.eventData.SearchStoreList.length;\n var productID = eventInstance.eventData.SearchProductID || \"\";\n s.products = \";\" + productID + \";;;\";\n s.eVar9 = \"Store Inventory Search\";\n s.events = s.apl(s.events, \"event33\", \",\", 2);\n s.events = s.apl(s.events, \"event67=\" + results, \",\", 2);\n if (results > 0) {\n s.eVar5 = eventInstance.eventData.SearchZip;\n var nearestDistance = 0;\n for (var i = 0; i < eventInstance.eventData.SearchStoreList.length; i++) {\n var distance = parseFloat(eventInstance.eventData.SearchStoreList[i].StoreDistance || eventInstance.eventData.SearchStoreList[i].distance);\n if (!nearestDistance || distance < nearestDistance) {\n nearestDistance = distance;\n }\n }\n s.prop6 = nearestDistance;\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar5\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"prop6\", \",\", 2);\n }\n else {\n s.events = s.apl(s.events, \"event35\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event35\", \",\", 2);\n }\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event33\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event67\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"products\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar9\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"prop9\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n }\n s.linkTrackEvents = \"None\";\n s.linkTrackVars = s.baseLinkTrackVars;\n } });\n analyticsEvents.push({ \"name\": \"CompareOpened\", \"delay\": true, \"handler\": function (eventInstance) {\n if (typeof (eventInstance.eventData) != \"undefined\") {\n var productString = [];\n if (eventInstance.eventData.ProductArray) {\n for (var i = 0; i < eventInstance.eventData.ProductArray.length; i++) {\n var productID = eventInstance.eventData.ProductArray[i].ProductID;\n var source = eventInstance.eventData.ProductArray[i].CompareSource;\n productString.push(s.buildProductString(productID, 0, 0, [], [\"evar150=\" + source]));\n }\n }\n if (productString) {\n s.prop21 = eventInstance.eventData.ProductArray.length;\n s.products = productString.join(\",\");\n s.linkTrackVars = s.apl(s.linkTrackVars, \"prop21\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar150\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"products\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n }\n }\n } });\n analyticsEvents.push({ \"name\": \"ContentTabView\", \"delay\": true, \"handler\": function (eventInstance) {\n if (typeof (eventInstance.eventData) != \"undefined\") {\n s.eVar1 = eventInstance.eventData.TabCode;\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar1\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"prop66\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n }\n s.linkTrackEvents = \"None\";\n s.linkTrackVars = s.baseLinkTrackVars;\n } });\n analyticsEvents.push({ \"name\": \"CreateAccountClick\", \"delay\": false, \"handler\": function (eventInstance) {\n s.eVar30 = \"Web Store\";\n s.events = s.apl(s.events, \"event171\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar30\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event171\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n } });\n analyticsEvents.push({ \"name\": \"CreateAccountSuccess\", \"delay\": false, \"handler\": function (eventInstance) {\n s.events = s.apl(s.events, \"event94\", \",\", 2);\n s.eVar30 = \"Web Store\";\n s.linkTrackEvents = \"event94\";\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar30\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n } });\n analyticsEvents.push({ \"name\": \"CurbsideCheckIn\", \"delay\": true, \"handler\": function (eventInstance) {\n if (typeof (eventInstance.eventData) != \"undefined\") {\n s.prop16 = DataLayer.GetValue(\"OrderID\");\n s.events = s.apl(s.events, \"event14\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event14\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"prop16\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n }\n s.linkTrackEvents = \"None\";\n s.linkTrackVars = s.baseLinkTrackVars;\n } });\n analyticsEvents.push({ \"name\": \"CustomerInfoReady\", \"delay\": true, \"handler\": function (eventInstance) {\n if (eventInstance.eventData.updated) {\n var valueList = [];\n valueList.push(eventInstance.eventData.data[\"ath_has_3X_available\"].toString());\n var valueListString = valueList.join(\":\");\n s.eVar128 = valueListString;\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar128\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n }\n if (window.target && window.target.$getAndApplyOffers) {\n const requestObject = { parameters: eventInstance.eventData.data };\n window.target.$getAndApplyOffers(requestObject)\n .then((result) => {\n HelperFunctions.DebugLog(result);\n })\n .catch((reason) => {\n HelperFunctions.DebugLog(reason, 2);\n });\n }\n } });\n analyticsEvents.push({ \"name\": \"CustomerIDApiUsed\", \"delay\": true, \"handler\": function (eventInstance) {\n s.events = s.apl(s.events, \"event129\", \",\", 2);\n if (eventInstance.eventData.type && eventInstance.eventData.type === \"AthleteID\") {\n s.eVar29 = eventInstance.eventData.newID;\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar29\", \",\", 2);\n }\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event129\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar92\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar93\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n s.eVar92 = s.eVar93 = \"\";\n } });\n analyticsEvents.push({ \"name\": \"DoNotSellBox\", \"delay\": true, \"handler\": function (eventInstance) {\n if (typeof (eventInstance.eventData) != \"undefined\") {\n var eventName = (eventInstance.eventData.BoxChecked.toString().toLowerCase() === \"true\") ? \"event181\" : \"event182\";\n s.events = s.apl(s.events, eventName, \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, eventName, \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n }\n s.linkTrackEvents = \"None\";\n s.linkTrackVars = s.baseLinkTrackVars;\n } });\n analyticsEvents.push({ \"name\": \"EmailSignup\", \"delay\": true, \"handler\": function (eventInstance) {\n s.events = s.apl(s.events, \"event18\", \",\", 2);\n s.events = s.apl(s.events, \"event94\", \",\", 2);\n s.eVar30 = \"Email Newsletter\";\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event18\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event94\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar30\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n var hashedEmail = DataLayer.GetValue(\"HashedEmailAddress\", eventInstance.eventData);\n if (hashedEmail) {\n s.eVar22 = hashedEmail;\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar22\", \",\", 2);\n CustomerIDService.UpdateCustomerIDFromParameter(\"HashedEmail\", hashedEmail, \"Event\");\n }\n if (typeof eventInstance.eventData.SignUpMessage !== \"undefined\") {\n if (eventInstance.eventData.SignUpMessage.toLowerCase().indexOf(\"username@domain.com\") >= 0) {\n s.events = s.apl(s.events, \"event45\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event45\", \",\", 2);\n }\n else if (eventInstance.eventData.SignUpMessage.toLowerCase().indexOf(\"first-time\") >= 0) {\n s.events = s.apl(s.events, \"event46\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event46\", \",\", 2);\n }\n }\n s.triggerEvent(eventInstance.eventName);\n s.linkTrackEvents = \"None\";\n s.linkTrackVars = s.baseLinkTrackVars;\n } });\n analyticsEvents.push({ \"name\": \"ExternalCheckout\", \"delay\": true, \"handler\": function (eventInstance) {\n var type = \"\";\n if (typeof eventInstance.eventData.type == \"undefined\") {\n if (eventInstance.eventData.Paypal === \"Yes\") {\n type = \"PayPal Express\";\n }\n }\n else {\n type = eventInstance.eventData.type;\n }\n if (type) {\n s.eVar17 = (DataLayer.GetValue(\"SignedInBoolean\") ? \"Registered\" : \"Guest\") + \" - \" + type;\n s.saveValueForNextPageView(\"ExternalCheckout\", type);\n s.events = s.apl(s.events, \"scCheckout\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"scCheckout\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar17\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n }\n } });\n analyticsEvents.push({ \"name\": \"FilterClicked\", \"delay\": true, \"handler\": function (eventInstance) {\n s.eVar1 = eventInstance.eventData.Name;\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar1\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"prop66\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n s.linkTrackVars = s.baseLinkTrackVars;\n HelperFunctions.DeleteValue(\"v1\");\n } });\n analyticsEvents.push({ \"name\": \"FinderResults\", \"delay\": true, \"handler\": function (eventInstance) {\n if (typeof (eventInstance.eventData) != \"undefined\") {\n var eventName = (eventInstance.eventData.Success === \"true\") ? \"event56\" : \"event57\";\n s.events = s.apl(s.events, eventName, \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, eventName, \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n }\n s.linkTrackEvents = \"None\";\n s.linkTrackVars = s.baseLinkTrackVars;\n } });\n analyticsEvents.push({ \"name\": \"FreeShipThreshold\", \"delay\": true, \"handler\": function (eventInstance) {\n if (typeof (eventInstance.eventData) != \"undefined\") {\n s.events = '';\n var thresholdMet = eventInstance.eventData.ThresholdMet;\n var value = eventInstance.eventData.CartValue;\n var messageShown = eventInstance.eventData.MessagingShown;\n var oversized = eventInstance.eventData.OversizedItem;\n if (typeof value !== \"undefined\" && !thresholdMet && !oversized) {\n s.events = s.apl(s.events, \"event136\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event136\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar11\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n }\n }\n s.linkTrackEvents = \"None\";\n s.linkTrackVars = s.baseLinkTrackVars;\n } });\n analyticsEvents.push({ \"name\": \"GameTimeDataCollection\", \"delay\": true, \"handler\": function (eventInstance) {\n if (typeof eventInstance.eventData != \"undefined\" && typeof eventInstance.eventData.eventType !== \"undefined\") {\n var allowedEvents = [];\n if (true || typeof allowedEvents.indexOf == \"function\" && allowedEvents.indexOf(eventInstance.eventData.eventType) >= 0) {\n s.prop39 = eventInstance.eventData.eventType;\n s.linkTrackVars = s.apl(s.linkTrackVars, \"prop39\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n }\n }\n } });\n analyticsEvents.push({ \"name\": \"GametimeCancelSuccess\", \"delay\": true, \"handler\": function (eventInstance) {\n s.eVar110 = eventInstance.eventData.appointment.experience.name;\n s.eVar155 = eventInstance.eventData.appointment.storeNumber;\n s.events = s.apl(s.events, \"event112\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar110\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar155\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event112\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n } });\n analyticsEvents.push({ \"name\": \"GametimeRescheduleSuccess\", \"delay\": true, \"handler\": function (eventInstance) {\n s.eVar110 = eventInstance.eventData.appointment.experience.name;\n s.eVar155 = eventInstance.eventData.appointment.storeNumber;\n s.events = s.apl(s.events, \"event111\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar110\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar155\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event111\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n } });\n analyticsEvents.push({ \"name\": \"GametimeSchedulingSuccess\", \"delay\": true, \"handler\": function (eventInstance) {\n s.eVar110 = eventInstance.eventData.appointment.experience.name;\n s.eVar155 = eventInstance.eventData.appointment.storeNumber;\n s.events = s.apl(s.events, \"event203\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar110\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar155\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event203\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n } });\n analyticsEvents.push({ \"name\": \"GrandopenenrollEvent\", \"delay\": false, \"handler\": function (eventInstance) {\n if (typeof eventInstance.eventData != \"undefined\" && typeof eventInstance.eventData.Type !== \"undefined\" && typeof eventInstance.eventData.StoreNumber !== \"undefined\") {\n s.prop1 = eventInstance.eventName + eventInstance.eventData.Type + \":\" + eventInstance.eventData.StoreNumber;\n s.linkTrackVars = s.apl(s.linkTrackVars, \"prop1\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n }\n } });\n var cartLowStockData = [];\n analyticsEvents.push({ \"name\": \"low_stock_event\", \"delay\": true, \"handler\": function (eventInstance) {\n cartLowStockData.push(eventInstance.eventData);\n var productData = DataLayer.GetValue(\"ProductListArray\");\n if (typeof productData !== \"undefined\" && cartLowStockData.length === productData.length) {\n var items = [];\n for (var i = 0; i < cartLowStockData.length; i++) {\n var item = cartLowStockData[i];\n var sku = item.ecode;\n var ecode = item.ecode;\n if (ecode) {\n var shippingInfo = [];\n if (item.STHLowStockMessageShown && item.STHStockQuantity > 0) {\n shippingInfo.push(\"STH:\" + item.STHStockQuantity);\n }\n if (item.BOPISLowStockMessageShown && item.BOPISStockQuantity > 0) {\n shippingInfo.push(\"BOPIS:\" + item.BOPISStockQuantity);\n }\n if (shippingInfo.length > 0) {\n var shippingInfoString = shippingInfo.join(\"-\");\n items.push(s.buildProductString(ecode, 0, 0, [], [\"evar86=\" + shippingInfoString]));\n }\n }\n }\n if (items.length > 0) {\n cartLowStockData = [];\n s.products = items.join(\",\");\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar86\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"products\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n }\n s.linkTrackEvents = \"None\";\n s.linkTrackVars = s.baseLinkTrackVars;\n }\n } });\n analyticsEvents.push({ \"name\": \"LowStock\", \"delay\": true, \"handler\": function (eventInstance) {\n EventHandlers.TriggerEvent(\"SKUResolve\", eventInstance.eventData);\n } });\n analyticsEvents.push({ \"name\": \"MetricalReplacementTriggered\", \"delay\": true, \"handler\": function (eventInstance) {\n s.eVar153 = eventInstance.eventData.campaignID;\n s.eVar154 = eventInstance.eventData.experience;\n s.prop36 = eventInstance.eventData.pred;\n s.prop37 = eventInstance.eventData.decile;\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar153\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar154\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"prop36\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"prop37\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n } });\n analyticsEvents.push({ \"name\": \"ModalOpen\", \"delay\": true, \"handler\": function (eventInstance) {\n if (eventInstance.eventData.ModalName && eventInstance.eventData.ModalName !== \"generic\") {\n var backupPageName = s.pageName;\n var backupPageType = s.prop2;\n var backupPrevPageName = _dsgTag.previousPageValues[\"v27\"];\n var backupPrevPageType = _dsgTag.previousPageValues[\"v28\"];\n var variableNames = s.linkTrackVars.split(\",\");\n var variableBackup = {};\n for (var i = 0; i < variableNames.length; i++) {\n variableBackup[variableNames[i]] = window.s[variableNames[i]];\n }\n s.manageVars(\"clearVars\");\n for (var property in variableBackup) {\n if (variableBackup.hasOwnProperty(property)) {\n window.s[property] = variableBackup[property];\n }\n }\n s.pageName = _dsgTag.currentWebsite.Abbreviation + \": Modal: \" + eventInstance.eventData.ModalName;\n s.prop2 = \"Modal\";\n var previousValues = JSON.parse(HelperFunctions.GetValue(\"PreviousPageValues\") || \"\");\n if (previousValues[\"c66\"]) {\n s.prop66 = previousValues[\"c66\"];\n delete previousValues.c66;\n HelperFunctions.SaveValue(\"PreviousPageValues\", JSON.stringify(previousValues));\n }\n _dsgTag.previousPageValues[\"v27\"] = backupPageName;\n _dsgTag.previousPageValues[\"v28\"] = backupPageType;\n if (eventInstance.eventData.ModalName.toLowerCase() === \"write a review\") {\n var bvcampaignid = HelperFunctions.GetQueryStringValue(\"bvcampaignid\");\n var bvProductID = HelperFunctions.GetQueryStringValue(\"bvproductId\");\n if (bvcampaignid && bvcampaignid.toLowerCase() === \"bv_pie\") {\n s.prop29 = \"Email Review\";\n if (bvProductID) {\n s.products = \";\" + bvProductID.toUpperCase() + \";;;;\";\n }\n }\n else {\n s.prop29 = \"PDP Review\";\n if (DataLayer.GetValue(\"ProductID\")) {\n s.products = \";\" + DataLayer.GetValue(\"ProductID\") + \";;;;\";\n }\n else if (bvProductID) {\n s.products = \";\" + bvProductID.toUpperCase() + \";;;;\";\n }\n }\n }\n s.triggerPageView();\n s.pageName = backupPageName;\n s.prop2 = backupPageType;\n _dsgTag.previousPageValues[\"v27\"] = backupPrevPageName;\n _dsgTag.previousPageValues[\"v28\"] = backupPrevPageType;\n s.saveValueForNextPageView(\"v27\", s.pageName);\n s.saveValueForNextPageView(\"v28\", s.prop2);\n }\n } });\n analyticsEvents.push({ \"name\": \"multiUseAnalyticsEvent\", \"delay\": true, \"handler\": function (eventInstance) {\n var eventName = eventInstance.eventData.event;\n var eventValue = eventInstance.eventData.value;\n var eventDetails = eventInstance.eventData.details;\n if (eventName) {\n var propString = eventName + (eventValue ? \":\" + eventValue.toString() + (eventDetails ? \":\" + eventDetails.toString() : \"\") : \"\");\n s.prop1 = propString;\n s.linkTrackVars = s.apl(s.linkTrackVars, \"prop1\", \",\", 2);\n s.triggerEvent(eventName);\n if (propString.toLowerCase() === \"affirmcardentered:true\") {\n s.saveValueForNextPageView(\"Affirm\", true);\n }\n }\n } });\n analyticsEvents.push({ \"name\": \"NebulaCX_Activity\", \"delay\": true, \"handler\": function (eventInstance) {\n if (eventInstance.eventData.feedbackUUID) {\n s.eVar19 = eventInstance.eventData.feedbackUUID;\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar19\", \",\", 2);\n }\n if (eventInstance.eventData.formId) {\n s.eVar34 = eventInstance.eventData.formId;\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar34\", \",\", 2);\n }\n if (eventInstance.eventData.q_dsg_csat_satisfaction_faces) {\n s.eVar77 = eventInstance.eventData.q_dsg_csat_satisfaction_faces;\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar77\", \",\", 2);\n }\n if (eventInstance.eventData.eventName == \"form_displayed\") {\n s.events = s.apl(s.events, \"event96\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event96\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n }\n if (eventInstance.eventData.eventName == \"feedback_submitted\") {\n s.events = s.apl(s.events, \"event95\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event95\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n }\n if (eventInstance.eventData.eventName == \"Thankyou_displayed\") {\n s.events = s.apl(s.events, \"event84\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event84\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n }\n if (eventInstance.eventData.eventName == \"Thankyou_close\") {\n s.events = s.apl(s.events, \"event85\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event85\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n }\n s.triggerEvent(eventInstance.eventName);\n } });\n analyticsEvents.push({ \"name\": \"NikeConnectComplete\", \"delay\": true, \"handler\": function (eventInstance) {\n var eventNum = eventInstance.eventData.connected.toString().toLowerCase() == \"true\" ? 222 : 223;\n s.events = s.apl(s.events, \"event\" + eventNum, \",\", 2);\n s.linkTrackEvents = \"event\" + eventNum;\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n } });\n analyticsEvents.push({ \"name\": \"NoDefaultShipping\", \"delay\": true, \"handler\": function (eventInstance) {\n EventHandlers.TriggerEvent(\"SiteError\", { \"ErrorMessage\": \"No Default Shipping\" });\n } });\n analyticsEvents.push({ \"name\": \"nonMerchLinkTracking\", \"delay\": true, \"synchronous\": true, \"handler\": function (eventInstance) {\n s.saveValueForNextPageView(\"c66\", eventInstance.eventData.dataEm || eventInstance.eventData.name);\n } });\n analyticsEvents.push({ \"name\": \"NotifyMeStock\", \"delay\": true, \"handler\": function (eventInstance) {\n if (typeof eventInstance.eventData !== \"undefined\") {\n var values = [];\n var fulfillmentMethod = s.DetermineFulfillmentMethod(eventInstance.eventData.shipMode);\n if (fulfillmentMethod) {\n values.push(fulfillmentMethod.name);\n }\n if (values.length > 0 && typeof eventInstance.eventData.ecode != \"undefined\") {\n s.prop51 = values.join(\":\");\n s.products = s.buildProductString(eventInstance.eventData.ecode, 0, 0, [], [\"evar61=\" + (eventInstance.eventData.sku.id || eventInstance.eventData.sku.partNumber)]);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"prop51\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar61\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"products\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n }\n }\n s.linkTrackEvents = \"None\";\n s.linkTrackVars = s.baseLinkTrackVars;\n } });\n analyticsEvents.push({ \"name\": \"OOSRecProduct\", \"delay\": true, \"handler\": function (eventInstance) {\n s.prop44 = \"Original\";\n s.linkTrackVars = s.apl(s.linkTrackVars, \"prop44\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n } });\n analyticsEvents.push({ \"name\": \"OrderSubmitted\", \"delay\": true, \"handler\": function (eventInstance) {\n var paymentType = DataLayer.GetValue(\"OrderPaymentMethods\", eventInstance.eventData);\n if (paymentType) {\n HelperFunctions.DeleteValue(\"TagCheckoutProgress\");\n s.eVar14 = paymentType.join(\": \");\n s.eVar117 = \"Complete\";\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar14\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar117\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n }\n } });\n analyticsEvents.push({ \"name\": \"PDPPayPalClicked\", \"delay\": true, \"handler\": function (eventInstance) {\n if (typeof eventInstance.eventData !== \"undefined\" && typeof eventInstance.eventData.clickOriginated !== \"undefined\") {\n if (eventInstance.eventData.clickOriginated === \"PayPal\") {\n s.events = s.apl(s.events, \"event50\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event50\", \",\", 2);\n if (typeof eventInstance.eventData.PayPalProductsBuyNow !== \"undefined\") {\n var currentPrice = eventInstance.eventData.PayPalProductsBuyNow.CurrentPricePerUnit;\n var quantity = eventInstance.eventData.PayPalProductsBuyNow.ProductQty;\n var sku = eventInstance.eventData.PayPalProductsBuyNow.ProductSKU;\n var revenue = currentPrice * quantity;\n var productEvents = [];\n var merchEvars = [];\n if (revenue > 0) {\n merchEvars.push(\"evar99=\" + revenue.toFixed(2));\n productEvents.push(\"event43=\" + revenue.toFixed(2));\n }\n if (sku) {\n merchEvars.push(\"evar61=\" + sku);\n }\n var productString = s.buildProductString(eventInstance.eventData.ProductID, 0, 0, productEvents, merchEvars);\n s.products = productString;\n s.linkTrackVars = s.apl(s.linkTrackVars, \"products\", \",\", 2);\n }\n }\n else if (eventInstance.eventData.clickOriginated === \"ATC\") {\n s.events = s.apl(s.events, \"event51\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event51\", \",\", 2);\n }\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n }\n s.linkTrackEvents = \"None\";\n s.linkTrackVars = s.baseLinkTrackVars;\n } });\n analyticsEvents.push({ \"name\": \"PDPPeopleView\", \"delay\": true, \"handler\": function (eventInstance) {\n if (typeof (eventInstance.eventData) !== \"undefined\") {\n s.eVar102 = \"1\";\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar102\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n }\n } });\n analyticsEvents.push({ \"name\": \"PDPSignInRequest\", \"delay\": true, \"handler\": function (eventInstance) {\n HelperFunctions.WriteCookieValue(\"v1\", \"PDP_ScoreCard_Login\", 0, true);\n } });\n analyticsEvents.push({ \"name\": \"ProductQuickView\", \"delay\": true, \"handler\": function (eventInstance) {\n if (typeof (eventInstance.eventData) != \"undefined\") {\n _dsgTag.fullPDPClick = {};\n if (eventInstance.eventData.data.PageTemplate.toLowerCase() !== \"quickview\") {\n return;\n }\n var quickViewSource;\n if (eventInstance.eventData.data.ReferringPage) {\n quickViewSource = eventInstance.eventData.data.ReferringPage.toLowerCase();\n }\n else {\n quickViewSource = _dsgTag.pageType.Name.toLowerCase();\n }\n if (quickViewSource) {\n var setUpFullProductLinkClick = function () {\n try {\n var nextPageViewName = \"\";\n var nextPageViewValue = \"\";\n switch (quickViewSource) {\n case \"compare\": {\n nextPageViewName = \"CompareClick\";\n nextPageViewValue = eventInstance.eventData.data.AdditionalData;\n break;\n }\n case \"monetate\": {\n nextPageViewName = \"MonetateClick\";\n nextPageViewValue = eventInstance.eventData.data.AdditionalData;\n break;\n }\n case \"certona\": {\n nextPageViewName = \"CertonaClick\";\n nextPageViewValue = eventInstance.eventData.data.AdditionalData;\n break;\n }\n case \"stylitics\": {\n nextPageViewName = \"StyliticsClick\";\n nextPageViewValue = JSON.parse(HelperFunctions.GetValue(\"PreviousPageValues\") || \"\")[\"StyliticsClick\"];\n break;\n }\n case \"zoovu\": {\n nextPageViewName = \"ZoovuClick\";\n nextPageViewValue = \"true\";\n break;\n }\n case \"datasciencerecs\": {\n nextPageViewName = \"DataScienceRecClick\";\n nextPageViewValue = \"DS_\" + _dsgTag.pageType.Name + \"_\" + eventInstance.eventData.data.AdditionalData.DSPlacementId + \"_\" + eventInstance.eventData.data.AdditionalData.DSPosition.toString();\n break;\n }\n case \"aempl\": {\n nextPageViewName = \"AEMpl\";\n nextPageViewValue = eventInstance.eventData.data.AdditionalData;\n break;\n }\n case \"readyfornextroundaddons\": {\n nextPageViewName = \"ReadyForNextRoundAddOns\";\n nextPageViewValue = eventInstance.eventData.data.AdditionalData;\n break;\n }\n case \"shoppableimage\": {\n nextPageViewName = \"ShoppableImage\";\n nextPageViewValue = eventInstance.eventData.data.AdditionalData;\n break;\n }\n default: {\n nextPageViewName = \"OtherFullPDPClick\";\n nextPageViewValue = quickViewSource;\n }\n }\n if (nextPageViewName && nextPageViewValue) {\n _dsgTag.fullPDPClick.nextPageViewName = nextPageViewName;\n _dsgTag.fullPDPClick.nextPageViewValue = nextPageViewValue;\n }\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Error saving \" + quickViewSource + \" quickview full product click: \" + ex.message, LogLevels.Error);\n }\n };\n setUpFullProductLinkClick();\n }\n s.manageVars(\"clearVars\");\n var dataSource = eventInstance.eventData.data;\n dataSource.pageTypeOverride = \"ProductDetails\";\n EventHandlers.TriggerEvent(\"NewPageView\", dataSource);\n }\n s.linkTrackEvents = \"None\";\n s.linkTrackVars = s.baseLinkTrackVars;\n } });\n analyticsEvents.push({ \"name\": \"PromotionEntered\", \"delay\": true, \"handler\": function (eventInstance) {\n if (typeof (eventInstance.eventData) != \"undefined\") {\n s.eVar36 = eventInstance.eventData.PromotionCodeEntered || eventInstance.eventData.PromotionCode;\n if (eventInstance.eventData.PromotionCodeValid === \"Y\" || eventInstance.eventData.PromotionSuccess === \"Y\") {\n s.events = s.apl(s.events, \"event21\", \",\", 2);\n s.linkTrackEvents = \"event21\";\n }\n else if (eventInstance.eventData.PromotionCodeValid === \"N\" || eventInstance.eventData.PromotionSuccess === \"N\") {\n s.events = s.apl(s.events, \"event22\", \",\", 2);\n s.linkTrackEvents = \"event22\";\n }\n else {\n return \"\";\n }\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar36\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n }\n s.linkTrackEvents = \"None\";\n s.linkTrackVars = s.baseLinkTrackVars;\n } });\n analyticsEvents.push({ \"name\": \"QuickViewFullPDPClick\", \"delay\": true, \"handler\": function (eventInstance) {\n if (_dsgTag.fullPDPClick && _dsgTag.fullPDPClick.nextPageViewName && _dsgTag.fullPDPClick.nextPageViewValue) {\n s.saveValueForNextPageView(_dsgTag.fullPDPClick.nextPageViewName, _dsgTag.fullPDPClick.nextPageViewValue);\n }\n } });\n analyticsEvents.push({ \"name\": \"RegistrationOccured\", \"delay\": true, \"handler\": function (eventInstance) {\n s.events = s.apl(s.events, \"event94\", \",\", 2);\n s.eVar30 = \"Web Store\";\n s.linkTrackEvents = \"event94\";\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar30\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n s.linkTrackEvents = \"None\";\n s.linkTrackVars = s.baseLinkTrackVars;\n } });\n analyticsEvents.push({ \"name\": \"RemoveFromFavorites\", \"delay\": true, \"handler\": function (eventInstance) {\n } });\n analyticsEvents.push({ \"name\": \"RemoveFromList\", \"delay\": true, \"handler\": function (eventInstance) {\n var productID, productSKU, numberOfLists;\n if (typeof (eventInstance.eventData.RemovedFavoriteID) != \"undefined\") {\n if (/^\\d+$/.test(eventInstance.eventData.RemovedFavoriteID)) {\n productSKU = eventInstance.eventData.RemovedFavoriteID;\n }\n else {\n productID = eventInstance.eventData.RemovedFavoriteID;\n }\n }\n else if (typeof (eventInstance.eventData.ProductID) != \"undefined\") {\n productID = eventInstance.eventData.ProductID;\n productSKU = eventInstance.eventData.ProductSku;\n }\n numberOfLists = eventInstance.eventData.NumberOfLists || 0;\n if (!productID) {\n productID = DataLayer.GetValue(\"ProductID\");\n }\n if (productID) {\n var merchEvars = [];\n if (productSKU) {\n merchEvars.push(\"evar61=\" + productSKU);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar61\", \",\", 2);\n }\n if (numberOfLists) {\n merchEvars.push(\"evar149=\" + numberOfLists.toString());\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar149\", \",\", 2);\n }\n s.products = s.buildProductString(productID, 0, 0, [], merchEvars);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"products\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n }\n } });\n analyticsEvents.push({ \"name\": \"ResultsViewUpdate\", \"delay\": true, \"handler\": function (eventInstance) {\n s.events = \"\";\n if (typeof (eventInstance.eventData) != \"undefined\") {\n s.eVar148 = DataLayer.GetValue(\"PLPEventID\", eventInstance.eventData);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar148\", \",\", 2);\n var a = eventInstance.eventData.Action || eventInstance.eventData.UpdateType;\n var b = eventInstance.eventData.Detail || eventInstance.eventData.UpdateValue;\n switch (a) {\n case \"Sort\":\n case \"SortChange\":\n case \"SortMethod\":\n s.eVar54 = \"Sort: \" + b;\n s.prop58 = \"D=v54\";\n s.linkTrackVars = s.apl(s.linkTrackVars, \"prop58\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar54\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n break;\n case \"Pagination\":\n if (typeof (b) == \"object\") {\n if (b.pageNumber == 1 && b.pageSize > 48) {\n s.eVar54 = \"ProductsPerPage: View All\";\n }\n else {\n s.eVar54 = a + \": Page \" + b.pageNumber;\n }\n _dsgTag.pagination = b.pageNumber;\n }\n else {\n s.eVar54 = a + \": Page \" + b;\n _dsgTag.pagination = b;\n }\n s.prop58 = \"D=v54\";\n s.linkTrackVars = s.apl(s.linkTrackVars, \"prop58\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar54\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n break;\n case \"ProductPerPage\":\n _dsgTag.productsPerPage = b;\n s.eVar54 = \"ProductsPerPage: \" + b;\n s.prop58 = \"D=v54\";\n s.linkTrackVars = s.apl(s.linkTrackVars, \"prop58\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar54\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n break;\n case \"FiltersApplied\":\n case \"Refinement\":\n case \"GuidedDiscovery\":\n case \"ProductCardAttribute\":\n if (typeof b.length === \"undefined\") {\n b = [b];\n }\n if (b.length > 0) {\n var indexOfNewItem = -1;\n var newName, newValue;\n for (var i = 0; i < b.length && indexOfNewItem < 0; i++) {\n var itemIsNew = true;\n newName = b[i].FilterName || b[i].RefinementAttribute;\n newValue = b[i].FilterValue || b[i].RefinementValue;\n if (!newValue) {\n b[i].RefinementValue = newValue = b[i].RefinementAttribute;\n b[i].RefinementAttribute = newName = a;\n }\n if (newName && newValue) {\n for (var j = 0; j < _dsgTag.prevRefinements.length && itemIsNew; j++) {\n var oldName = _dsgTag.prevRefinements[j].FilterName || _dsgTag.prevRefinements[j].RefinementAttribute;\n var oldValue = _dsgTag.prevRefinements[j].FilterValue || _dsgTag.prevRefinements[j].RefinementValue;\n if (newName === oldName && newValue === oldValue)\n itemIsNew = false;\n }\n if (itemIsNew) {\n indexOfNewItem = i;\n }\n }\n }\n if (indexOfNewItem >= 0) {\n var filterResultCount = 0;\n if (typeof b[indexOfNewItem].ProductCountTotal !== \"undefined\") {\n filterResultCount = b[indexOfNewItem].ProductCountTotal;\n }\n var conversational = false;\n if (typeof b[indexOfNewItem].Conversational !== \"undefined\") {\n conversational = b[indexOfNewItem].Conversational.toString().toLowerCase() == \"yes\";\n }\n _dsgTag.prevRefinements = b;\n s.prop10 = newName;\n s.prop11 = newName + \": \" + newValue;\n s.prop12 = s.pageName ? 'D=c10+\": \"+pageName' : 'D=c10+\": \"+' + \"Page Name Not Set\";\n s.prop13 = s.pageName ? 'D=c11+\": \"+pageName' : 'D=c11+\": \"+' + \"Page Name Not Set\";\n s.linkTrackVars = s.apl(s.linkTrackVars, \"prop10\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"prop11\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"prop12\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"prop13\", \",\", 2);\n s.events = s.apl(s.events, \"event5\", \",\", 2);\n if (filterResultCount > 0) {\n s.events = s.apl(s.events, \"event153=\" + filterResultCount, \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event153\", \",\", 2);\n }\n else {\n if (_dsgTag.pageType === PageTypes.Search) {\n s.events = s.apl(s.events, \"event3\" + filterResultCount, \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event3\", \",\", 2);\n }\n else if (_dsgTag.pageType === PageTypes.Family) {\n s.events = s.apl(s.events, \"event155\" + filterResultCount, \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event155\", \",\", 2);\n }\n }\n if (s.pageName.indexOf(\"Search: Results\") >= 0) {\n s.events = s.apl(s.events, \"event24\", \",\", 2);\n s.products = \";\";\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event24\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"products\", \",\", 2);\n }\n if (conversational) {\n s.events = s.apl(s.events, \"event154\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event154\", \",\", 2);\n }\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event5\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n s.saveValueForNextPageView(\"Refinement\", \"Y\");\n s.triggerEvent(eventInstance.eventName);\n }\n }\n break;\n case \"FiltersRemoved\":\n return;\n }\n s.events = s.prop10 = s.prop11 = s.prop12 = s.prop13 = s.eVar54 = s.prop58 = \"\";\n }\n } });\n analyticsEvents.push({ \"name\": \"SaveForLaterAddToCart\", \"delay\": true, \"handler\": function (eventInstance) {\n s.events = \"\";\n if (typeof (eventInstance.eventData) != \"undefined\") {\n eventInstance.eventData.wasSaveForLater = true;\n EventHandlers.TriggerEvent(\"AddToCart\", eventInstance.eventData);\n }\n } });\n analyticsEvents.push({ \"name\": \"SaveForLaterRemoveProduct\", \"delay\": true, \"handler\": function (eventInstance) {\n s.events = \"\";\n if (typeof (eventInstance.eventData) != \"undefined\") {\n s.products = \";\" + eventInstance.eventData.RemovedProductID;\n s.events = s.apl(s.events, \"event189\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event189\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"products\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n }\n s.linkTrackEvents = \"None\";\n s.linkTrackVars = s.baseLinkTrackVars;\n } });\n analyticsEvents.push({ \"name\": \"ScoreCardEntered\", \"delay\": true, \"handler\": function (eventInstance) {\n if (typeof eventInstance.eventData !== \"undefined\" && typeof eventInstance.eventData.ApplySuccess !== \"undefined\" && eventInstance.eventData.ApplySuccess.toLowerCase() === \"y\") {\n s.events = s.apl(s.events, \"event26\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event26\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n s.linkTrackEvents = \"None\";\n s.linkTrackVars = s.baseLinkTrackVars;\n }\n } });\n analyticsEvents.push({ \"name\": \"ShareProduct\", \"delay\": true, \"handler\": function (eventInstance) {\n var ecode = DataLayer.GetValue(\"ProductID\");\n if (ecode) {\n s.events = s.apl(s.events, \"event162\", \",\", 2);\n s.products = s.buildProductString(ecode, 0, 0, [\"event162=1\"], []);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event162\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"products\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n }\n } });\n analyticsEvents.push({ \"name\": \"ShippingMethodUpdated\", \"delay\": true, \"handler\": function (eventInstance) {\n if (typeof eventInstance.eventData !== \"undefined\" && typeof eventInstance.eventData.ProductShippingMethods !== \"undefined\" && eventInstance.eventData.ProductShippingMethods.length > 0) {\n var today = HelperFunctions.GetStandardizedDKSTime()[0];\n var todayString = today.getFullYear() + \"-\" + (today.getMonth() + 1) + \"-\" + today.getDate();\n var todayDOW = today.getDay();\n var cartProductInfo = DataLayer.GetValue(\"CartSKUEcodeLookup\");\n var products = [];\n for (var i = 0; i < eventInstance.eventData.ProductShippingMethods.length; i++) {\n if (typeof cartProductInfo[eventInstance.eventData.ProductShippingMethods[i].ProductID] !== \"undefined\") {\n var EDDString = eventInstance.eventData.ProductShippingMethods[i].EstimatedDeliveryDate;\n var EDDDOW = -1;\n var daysToArrive = -1;\n var EDD = new Date(EDDString);\n if (EDD instanceof Date) {\n EDD.setTime(EDD.getTime() + EDD.getTimezoneOffset() * 60 * 1000);\n EDDString = EDD.getFullYear() + \"-\" + (EDD.getMonth() + 1) + \"-\" + EDD.getDate();\n EDDDOW = EDD.getDay();\n daysToArrive = Math.ceil((EDD.getTime() - today.getTime()) / (1000 * 60 * 60 * 24));\n }\n var reduction = eventInstance.eventData.ProductShippingMethods[i].EDDReduction || \"NotUsed\";\n var method = eventInstance.eventData.ProductShippingMethods[i].ShippingMethod;\n var shippingInfo = todayString + \":\" + todayDOW + \":\" + EDDString + \":\" + EDDDOW + \":\" + daysToArrive + \":\" + method + \":\" + reduction;\n if (eventInstance.eventData.ProductShippingMethods[i].AdditionalAnalyticsInfo) {\n var additionalValues = eventInstance.eventData.ProductShippingMethods[i].AdditionalAnalyticsInfo.version === \"v2\" ? ['isAfterCutoff', 'calendarDayOffset?', 'nonSourceAwareDeliveryDays?', 'saturdayUsed?', 'sourceAwareTransitDays', 'sourceAwareEligible?', 'sourceAwareSuccessful?', 'isSourceAware'] : ['afterCutoff', 'calendarDayOffset', 'nonSourceAwareDeliveryDays', 'saturdayUsed', 'sourceAwareDeliveryDays', 'sourceAwareEligible', 'sourceAwareSuccessful', 'sourceAwareUsed'];\n for (var j = 0; j < additionalValues.length; j++) {\n var currentItem = eventInstance.eventData.ProductShippingMethods[i].AdditionalAnalyticsInfo[additionalValues[j]];\n shippingInfo += \":\" + ((typeof currentItem !== \"undefined\") ? currentItem.toString() : \"N/A\");\n }\n }\n products.push(\";\" + cartProductInfo[eventInstance.eventData.ProductShippingMethods[i].ProductID] + \";;;;\" + \"evar78=\" + shippingInfo);\n }\n }\n s.products = products.join(\",\");\n s.events = s.apl(s.events, \"event99\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event99\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"products\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n s.linkTrackEvents = \"None\";\n s.linkTrackVars = s.baseLinkTrackVars;\n }\n } });\n analyticsEvents.push({ \"name\": \"ShippingMethodUpdatedV2\", \"delay\": true, \"handler\": function (eventInstance) {\n if (typeof eventInstance.eventData !== \"undefined\" && typeof eventInstance.eventData.ShipData !== \"undefined\" && eventInstance.eventData.ShipData.length > 0) {\n var today = HelperFunctions.GetStandardizedDKSTime()[0];\n var todayString = today.getFullYear() + \"-\" + (today.getMonth() + 1) + \"-\" + today.getDate();\n var todayDOW = today.getDay();\n var products = [];\n for (var i = 0; i < eventInstance.eventData.ShipData.length; i++) {\n var shipData = eventInstance.eventData.ShipData[i];\n var EDDString = shipData.promise_end_edd_date;\n var EDDDOW = -1;\n var daysToArrive = -1;\n var EDD = new Date(EDDString);\n if (EDD instanceof Date) {\n EDD.setTime(EDD.getTime() + EDD.getTimezoneOffset() * 60 * 1000);\n EDDString = EDD.getFullYear() + \"-\" + (EDD.getMonth() + 1) + \"-\" + EDD.getDate();\n EDDDOW = EDD.getDay();\n daysToArrive = Math.ceil((EDD.getTime() - today.getTime()) / (1000 * 60 * 60 * 24));\n }\n var reduction = \"NotUsed\";\n var method = shipData.shipping_mode_service_level.toLowerCase();\n var shippingInfo = todayString + \":\" + todayDOW + \":\" + EDDString + \":\" + EDDDOW + \":\" + daysToArrive + \":\" + method + \":\" + reduction;\n var additionalValues = ['isAfterCutoff', 'N/A', 'staticTransitDays', 'N/A', 'sourceAwareTransitDays', 'isSourceAware', 'isSourceAware', 'isSourceAware'];\n for (var j = 0; j < additionalValues.length; j++) {\n var currentItem = shipData[additionalValues[j]];\n shippingInfo += \":\" + ((typeof currentItem !== \"undefined\") ? currentItem.toString() : \"N/A\");\n }\n products.push(\";\" + shipData.ecode + \";;;;\" + \"evar78=\" + shippingInfo);\n }\n s.products = products.join(\",\");\n s.events = s.apl(s.events, \"event99\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event99\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"products\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n }\n } });\n analyticsEvents.push({ \"name\": \"ShowMoreColors\", \"delay\": true, \"handler\": function (eventInstance) {\n if (typeof eventInstance.eventData !== \"undefined\" && typeof eventInstance.eventData.ecode !== \"undefined\") {\n s.products = s.buildProductString(eventInstance.eventData.ecode, 0, 0, [\"event145=1\"], []);\n s.events = s.apl(s.events, \"event145\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event145\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"products\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n s.linkTrackEvents = \"None\";\n s.linkTrackVars = s.baseLinkTrackVars;\n }\n } });\n analyticsEvents.push({ \"name\": \"SignInCreateAccountClick\", \"delay\": true, \"handler\": function (eventInstance) {\n s.eVar30 = \"Web Store\";\n s.events = s.apl(s.events, \"event18\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar30\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event18\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n } });\n analyticsEvents.push({ \"name\": \"SignInSuccess\", \"delay\": false, \"handler\": function (eventInstance) {\n s.eVar59 = \"Logged In\";\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar59\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n HelperFunctions.SaveValue(\"AuthState\", true);\n } });\n analyticsEvents.push({ \"name\": \"SiteError\", \"delay\": false, \"handler\": function (eventInstance) {\n var CleanUpErrorMessage = function (input) {\n var output = input;\n output = output.replace(/\\u00A0/g, \" \");\n return output;\n };\n if (/^CMN|BNPL/i.test(eventInstance.eventData.ErrorMessage)) {\n return \"\";\n }\n var backupEvents = s.events;\n s.events = s.apl(s.events, \"event20\", \",\", 2);\n var errorObject = eventInstance.eventData.ErrorMessage;\n if (typeof (errorObject) === \"string\")\n errorObject = [errorObject];\n var uniqueValues = [];\n for (var key = 0; key < errorObject.length; key++) {\n var val = errorObject[key];\n if (uniqueValues.indexOf(val) === -1)\n uniqueValues.push(CleanUpErrorMessage(val));\n }\n if (typeof s.pageName !== \"undefined\" && s.pageName.indexOf(\"Product: PDP:\") >= 0) {\n var productID = DataLayer.GetValue(\"ProductID\");\n s.products = \";\" + productID + \";;;;\";\n s.linkTrackVars = s.apl(s.linkTrackVars, \"products\", \",\", 2);\n }\n s.eVar44 = uniqueValues.join(\",\") + ((typeof eventInstance.eventData.ClickOriginated !== \"undefined\" && eventInstance.eventData.ClickOriginated === \"PayPal\") ? \":PayPal\" : \"\");\n s.prop23 = s.pageName;\n s.prop24 = s.prop2;\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event20\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar44\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"prop55\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"prop23\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"prop24\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n s.linkTrackEvents = \"None\";\n s.linkTrackVars = s.baseLinkTrackVars;\n s.events = backupEvents;\n s.eVar44 = \"\";\n } });\n var recentSKUEDD = \"\";\n analyticsEvents.push({ \"name\": \"skuEDD\", \"delay\": true, \"handler\": function (eventInstance) {\n var ecode = DataLayer.GetValue(\"ProductID\");\n if (typeof eventInstance.eventData.skuEDD !== \"undefined\") {\n var edd = eventInstance.eventData.skuEDD;\n if (edd !== recentSKUEDD) {\n recentSKUEDD = edd;\n var sku = eventInstance.eventData.id;\n var merchEvars = [\"evar61=\" + sku, \"evar90=\" + edd];\n s.products = s.buildProductString(ecode, 0, 0, [], merchEvars);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"products\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar61\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar90\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n }\n }\n } });\n var lowStockFired = false;\n var nearMeFired = false;\n var notifyMeFired = false;\n var recentSKU = \"\";\n analyticsEvents.push({ \"name\": \"SKUResolve\", \"delay\": true, \"handler\": function (eventInstance) {\n s.origEvents = s.events;\n var eventsFired = [];\n var ecode = eventInstance.eventData.ecode;\n if (typeof eventInstance.eventData.sku !== \"undefined\") {\n var sku = eventInstance.eventData.sku.id || eventInstance.eventData.sku.partNumber;\n if (!lowStockFired && (eventInstance.eventData.lowStockShipMessageShown || eventInstance.eventData.lowStockBopisMessageShown)) {\n lowStockFired = true;\n }\n if (typeof eventInstance.eventData.lowStockNearbyStoresCount !== \"undefined\" && eventInstance.eventData.lowStockNearbyStoresCount > 0 && !eventInstance.eventData.lowStockBopisMessageShown) {\n if (!nearMeFired) {\n }\n _dsgTag.LowStockBOPISStore = eventInstance.eventData.lowStockNearbyStoresCurrentStoreNumber;\n _dsgTag.LowStockBOPISStoreSuggestionCount = eventInstance.eventData.lowStockNearbyStoresCount;\n nearMeFired = true;\n }\n else if (sku !== recentSKU) {\n _dsgTag.LowStockBOPISStore = \"\";\n _dsgTag.LowStockBOPISStoreSuggestionCount = \"\";\n }\n if (!eventInstance.eventData.AvailableToShip && !eventInstance.eventData.AvailableForPickup) {\n eventsFired.push(161);\n }\n recentSKU = sku;\n if (eventsFired.length > 0) {\n var eventsVar = [];\n for (var i = 0; i < eventsFired.length; i++) {\n s.events = s.apl(s.events, \"event\" + eventsFired[i], \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event\" + eventsFired[i], \",\", 2);\n eventsVar.push(\"event\" + eventsFired[i] + \"=1\");\n }\n s.products = s.buildProductString(ecode, 0, 0, eventsVar, [\"evar61=\" + sku]);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"products\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n }\n s.linkTrackEvents = \"None\";\n s.linkTrackVars = s.baseLinkTrackVars;\n s.events = s.origEvents;\n }\n } });\n analyticsEvents.push({ \"name\": \"LaunchCalendarReleaseSetReminder\", \"delay\": true, \"handler\": function (eventInstance) {\n if (typeof (eventInstance.eventData) != \"undefined\") {\n s.events = s.apl(s.events, \"event185\", \",\", 2);\n s.eVar1 = (DataLayer.GetValue(\"PageName\") == \"Sneaker Release Calendar\" ? \"Shoe\" : \"Release\") + \"Calendar:\" + eventInstance.eventData.ProductName;\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event185\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar1\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"prop66\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n }\n s.linkTrackEvents = \"None\";\n s.linkTrackVars = s.baseLinkTrackVars;\n } });\n analyticsEvents.push({ \"name\": \"LaunchCalendarAddToCalendar\", \"delay\": true, \"handler\": function (eventInstance) {\n if (typeof (eventInstance.eventData) != \"undefined\") {\n var eventName = \"\";\n switch (eventInstance.eventData.CalendarType.toString().toLowerCase()) {\n case \"google\":\n eventName = \"event186\";\n break;\n case \"apple\":\n eventName = \"event187\";\n break;\n case \"yahoo\":\n eventName = \"event188\";\n break;\n default:\n eventName = \"\";\n }\n if (eventName) {\n s.events = s.apl(s.events, eventName, \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, eventName, \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n }\n }\n s.linkTrackEvents = \"None\";\n s.linkTrackVars = s.baseLinkTrackVars;\n } });\n analyticsEvents.push({ \"name\": \"styliticsShopClicked\", \"delay\": true, \"handler\": function (eventInstance) {\n try {\n var styliticsObject = {};\n if (DataLayer.GetValue(\"ProductID\", eventInstance.eventData)) {\n styliticsObject.previousPageID = DataLayer.GetValue(\"ProductID\", eventInstance.eventData);\n }\n else {\n styliticsObject.previousPageID = window.location.pathname.split(\"/\")[window.location.pathname.split(\"/\").length - 1].toLowerCase();\n }\n styliticsObject.itemData = { \"bundle\": eventInstance.eventData.bundle, \"item\": eventInstance.eventData.item };\n s.saveValueForNextPageView(\"StyliticsClick\", JSON.stringify(styliticsObject));\n }\n catch (ex) { }\n } });\n analyticsEvents.push({ \"name\": \"tabbedComponentClicked\", \"delay\": true, \"handler\": function (eventInstance) {\n if (typeof eventInstance.eventData.isDefault === \"undefined\" || eventInstance.eventData.isDefault == false) {\n s.prop1 = eventInstance.eventName + \":\" + eventInstance.eventData.value;\n s.linkTrackVars = s.apl(s.linkTrackVars, \"prop1\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n }\n } });\n analyticsEvents.push({ \"name\": \"TimeSinceInit\", \"delay\": false, \"handler\": function (eventInstance) {\n if (_dsgTag.taggingInitTimestamp && eventInstance.eventData && eventInstance.eventData.timestamp) {\n _dsgTag.timestamps = _dsgTag.timestamps || {};\n if (!_dsgTag.timestamps[eventInstance.eventData.source]) {\n var source = eventInstance.eventData.source;\n var time = eventInstance.eventData.timestamp - _dsgTag.taggingInitTimestamp;\n _dsgTag.timestamps[source] = time;\n if (EventHandlers.initialPageViewPreFired) {\n s.eVar135 = source + \": \" + time;\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar135\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n }\n }\n }\n } });\n analyticsEvents.push({ \"name\": \"TopNavView\", \"delay\": true, \"handler\": function (eventInstance) {\n s.events = s.apl(s.events, \"event31\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event31\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n if (eventInstance.eventData.TopNavViewSource) {\n s.prop1 = eventInstance.eventData.TopNavViewSource;\n s.linkTrackVars = s.apl(s.linkTrackVars, \"prop1\", \",\", 2);\n }\n s.triggerEvent(eventInstance.eventName);\n } });\n analyticsEvents.push({ \"name\": \"TrackOrder\", \"delay\": true, \"handler\": function (eventInstance) {\n s.prop16 = eventInstance.eventData.OrderID;\n s.events = s.apl(s.events, \"event11\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event11\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"prop16\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n s.linkTrackEvents = \"None\";\n s.linkTrackVars = s.baseLinkTrackVars;\n } });\n analyticsEvents.push({ \"name\": \"UpdateCustomerInfo\", \"delay\": true, \"handler\": function (eventInstance) {\n s.eVar136 = DataLayer.GetValue(\"NikeConnected\").toString();\n s.eVar137 = _dsgTag.CustomerIDs.isGold.toString();\n ;\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar136\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar137\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n } });\n analyticsEvents.push({ \"name\": \"UserAuthenticated\", \"delay\": true, \"handler\": function (eventInstance) {\n var previousAuthState = HelperFunctions.GetValue(\"AuthState\");\n var signedInBoolean = DataLayer.GetValue(\"SignedInBoolean\", eventInstance.eventData);\n if (signedInBoolean !== null) {\n if (previousAuthState == null || (previousAuthState === \"true\") !== signedInBoolean) {\n s.eVar104 = DataLayer.GetValue(\"ShouldBeLoggedIn\", eventInstance.eventData);\n s.eVar59 = \"Logged \" + (signedInBoolean ? \"In\" : \"Out\");\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar59\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar104\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n }\n HelperFunctions.SaveValue(\"AuthState\", signedInBoolean);\n }\n else {\n HelperFunctions.DeleteValue(\"AuthState\");\n }\n if (window.target && window.target.$getAndApplyOffers) {\n const requestObject = {\n parameters: {\n loggedIn: signedInBoolean != null ? signedInBoolean.toString() : \"Unknown\"\n }\n };\n window.target.$getAndApplyOffers(requestObject)\n .then((result) => {\n HelperFunctions.DebugLog(result);\n })\n .catch((reason) => {\n HelperFunctions.DebugLog(reason, 2);\n });\n }\n } });\n analyticsEvents.push({ \"name\": \"VideoMilestoneReached\", \"delay\": true, \"handler\": function (eventInstance) {\n s.prop15 = eventInstance.eventData.videoVendor;\n s.prop18 = eventInstance.eventData.percentage;\n s.eVar120 = eventInstance.eventData.videoID;\n s.linkTrackVars = s.apl(s.linkTrackVars, \"prop15\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"prop18\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar120\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n } });\n analyticsEvents.push({ \"name\": \"VideoPlay\", \"delay\": true, \"handler\": function (eventInstance) {\n s.prop15 = eventInstance.eventData.videoVendor;\n s.prop18 = eventInstance.eventData.percentage;\n s.eVar120 = eventInstance.eventData.videoID;\n s.events = s.apl(s.events, \"event29\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"prop15\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar120\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event29\", \",\", 2);\n s.triggerEvent(eventInstance.eventName);\n } });\n for (var i = 0; i < analyticsEvents.length; i++) {\n var event = analyticsEvents[i];\n inputDataObject.AddEventHandler(event.name, event.handler, event.delay, event.synchronous);\n }\n _dsgTag.prevRefinements = [];\n _dsgTag.queuedStoreSearches = [];\n _dsgTag.searchEventPagePixelFired = false;\n _dsgTag.searchEventMboxFired = false;\n var SetupMyAccountEvents = function () {\n var eventList = \"AccountSummaryCopyRewardCode AccountSummaryViewRewardClick AddAddressClick CancelDeleteAdditionalAddressClick CancelEditAccountDetailsClick CancelEditAdditionalAddressClick CancelEditContactDetailsClick CancelEditPrimaryAddressClick CancelResetEmailClick ChangeEmailPromotionsFrequencyClick ConfirmDeleteAdditionalAddressClick ConfirmResetEmailClick CopyHolidayOfferTriplePointsCode CopyTriplePointsCode CreditMyAccInStorePurchaseClick CreditMyAccOnlinePurchaseClick CreditMyAccountCancelClick CreditMyAccountClick CreditMyAccountSubmitClick CurbsideCheckIn DeleteAdditionalAddressClick EditAccountDetailsClick EditAdditionalAddressClick EditContactDetailsClick EditPrimaryAddressClick GoldOfferDetailsCollapse GoldOfferDetailsExpand GoldTooltipClick HelpDeskClick MailedPromotionsOptInClick MailedPromotionsOptOutClick NikeConnectClickAccountSettings NikeDisconnectClickAccountSettings NikeLearnMoreClickAccountSummary OrderNumberClick OrderTrackingNumberClick PanelHeaderClicked PrintRewardQrCodeClick ResetEmailClick ResetPasswordClicked ReturnsAndExchangesClick RewardDeliverySave RewardEmailDeliveryClick RewardMailDeliveryClick SaveAccountDetailsClick SaveContactDetailsClick SaveUpdatedAdditionalAddressClick SaveUpdatedPrimaryAddressClick ScoreCardCopyRewardCode ScoreCardFaqClick ScoreCardViewRewardClick ScoreRewardsCardApplyTodayClick ScoreRewardsLearnMoreClickAccountSummary ScoreRewardsManageAccountClickAccountSummary SignOut_AddToFavorites SignOut_AddToList SignOutClickEvent StartReturnClick SubscriptionsSave TextAlertOptInClick TextAlertOptOutClick TrackOrderClick TrackPackageClick TrackPackageLinkClicked ViewInStoreOrderDetailsClick ViewMorePointsHistory ViewOnlineOrderDetailsClick\".split(\" \");\n for (var i = 0; i < eventList.length; i++) {\n var handler = function (object, data) {\n s.prop72 = object.type;\n s.linkTrackVars = s.apl(s.linkTrackVars, \"prop72\", \",\", 2);\n s.triggerEvent(object.type);\n };\n inputDataObject.AddEventHandler(eventList[i], handler);\n }\n };\n SetupMyAccountEvents();\n function ProcessCartAndCheckoutAction(eventInstance) {\n if (typeof (eventInstance.eventData) != \"undefined\" && typeof eventInstance.eventData.ActionType != \"undefined\") {\n var actionString = eventInstance.eventData.ActionType;\n var triggerPixel = false;\n if (actionString.split(\":\").length === 3 && /^group \\d+/i.test(actionString.split(\":\")[2])) {\n actionString = actionString.replace(/group \\d+ /ig, \"\");\n }\n else if (actionString.split(\":\").length === 2 && /promo/i.test(actionString.split(\":\")[0])) {\n var newActionString = actionString.split(\":\")[0];\n var promoCode = actionString.split(\":\")[1];\n newActionString = newActionString.replace(new RegExp(promoCode, \"gi\"), '');\n actionString = newActionString;\n }\n else if (actionString.split(\":\").length === 2 && (actionString.split(\":\")[0].toLowerCase() === \"card type applied\")) {\n var paymentMethod = actionString.split(\":\")[1].toUpperCase();\n s.eVar14 = paymentMethod;\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar14\", \",\", 2);\n actionString = actionString.split(\":\")[0];\n triggerPixel = true;\n if (paymentMethod.toLowerCase() === \"afterpay\") {\n s.saveValueForNextPageView(\"AfterPay\", true);\n }\n }\n else if (actionString.split(\":\").length === 2 && (actionString.split(\":\")[0].toLowerCase() === \"updated tip amount\") && eventInstance.eventData.TipAmount) {\n s.eVar123 = eventInstance.eventData.TipAmount;\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar123\", \",\", 2);\n actionString = actionString = actionString.split(\":\")[0];\n triggerPixel = true;\n }\n var allowedActionTypes = [\n { n: \"AddAdditionalPickupPersonSuccess\" },\n { n: \"AddAdditionalPickupPersonSuccess\" },\n { n: \"AddAdditionalPickupPersonClick\" },\n { n: \"Adding gift card failed\" },\n { n: \"ApplyPickYourPointsDay\" },\n { n: \"ApplyPromoCodeClick\" },\n { n: \"ApplyReward\", f: function () {\n s.events = s.apl(s.events, \"event159\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event159\", \",\", 2);\n s.events = s.apl(s.events, \"event21\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event21\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n return true;\n } },\n { n: \"Attempt to add gift card initiated\" },\n { n: \"Attempt to add promo\" },\n { n: \"Attempt to remove gift card initiated\" },\n { n: \"AvsV2:SuggestedAddress:ModalDisplayed\" },\n { n: \"BillingAddressChangeClick\" },\n { n: \"Button:Clicked:Login\", p3: 0, f: function () {\n HelperFunctions.WriteCookieValue(\"v1\", \"Checkout_ScoreCard_Login\", 0, true);\n } },\n { n: \"Card type applied\" },\n { n: \"Checkbox:BillingShipping Same:CHECKED\" },\n { n: \"Checkbox:BillingShipping Same:UNCHECKED\" },\n { n: \"CheckoutHeaderCartClick\" },\n { n: \"CheckoutHeaderLogoClick\" },\n { n: \"CheckoutSignIn:Button:Login:Clicked\" },\n { n: \"Delete shipping address : clicked\" },\n { n: \"EasyRewardApply:Button:Login:Clicked\" },\n { n: \"edd data ready\", p3: 0, f: function () {\n TriggerShippingMethodUpdateEvent(eventInstance.eventData);\n } },\n { n: \"edd_v2 data ready\", p3: 0, f: function () {\n TriggerV2ShippingMethodUpdateEvent(eventInstance.eventData);\n } },\n { n: \"easyrewardsshown\", p3: 0, f: function () {\n s.events = s.apl(s.events, \"event138\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event138\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n return true;\n } },\n { n: \"Edit shipping address : clicked\" },\n { n: \"Failed to Apply promo\", f: function () {\n var code = eventInstance.eventData.ActionType.split(\":\")[1];\n EventHandlers.TriggerEvent(\"PromotionEntered\", {\n \"PromotionCode\": code,\n \"PromotionSuccess\": \"N\"\n });\n } },\n { n: \"FormGroup:Valid:Contact\", p3: 0, f: function () {\n CustomerIDService.UpdateAllCustomerIDs();\n } },\n { n: \"Gift Card code is empty\" },\n { n: \"Gift Card form is empty\" },\n { n: \"Gift Card pin is empty\" },\n { n: \"Giftcard added successfully\" },\n { n: \"Giftcard removed successfully\" },\n { n: \"GiftingEnabled\", f: function () {\n s.events = s.apl(s.events, \"event221\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event221\", \",\", 2);\n if (eventInstance.eventData.GiftMessage && eventInstance.eventData.GiftMessage.toString().toLowerCase() == \"false\") {\n s.events = s.apl(s.events, \"event117\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event117\", \",\", 2);\n }\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n return true;\n } },\n { n: \"MarketingOptIn: true\" },\n { n: \"Opted in to Marketing updates on confirmation\" },\n { n: \"Opted in to SMS updates on confirmation\" },\n { n: \"payment page - paypal payment cancelled\", p3: 0, f: function () {\n s.eVar17 = (DataLayer.GetValue(\"SignedInBoolean\") ? \"Registered\" : \"Guest\");\n s.saveValueForNextPageView(\"ExternalCheckout\", \"\");\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar17\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n return true;\n } },\n { n: \"PLACE ORDER Button : clicked\" },\n { n: \"PickupContactChangeClick\" },\n { n: \"po box edd message displayed\" },\n { n: \"PromoRewards:Button:Login:Clicked\" },\n { n: \"RadioButton:Delivery Methods: Expedited\" },\n { n: \"RadioButton:Delivery Methods: Express\" },\n { n: \"RadioButton:Delivery Methods: Standard\" },\n { n: \"Remove giftcard failed\" },\n { n: \"RemovePickYourPointsDay\" },\n { n: \"Save same day : clicked\" },\n { n: \"Save shipping address : clicked\" },\n { n: \"Save shipping address clicked: After entering valid address information\" },\n { n: \"Save shipping address clicked: Without completing address information\" },\n { n: \"Save this address checked: After entering valid address information\" },\n { n: \"Save this address checked: With invalid address information\" },\n { n: \"Save this address unchecked: After entering valid address information\" },\n { n: \"Save this address unchecked: With invalid address information\" },\n { n: \"SaveCreditCardCheckOff-AthleteUnchecked\" },\n { n: \"SaveCreditCardCheckOff-InitialLoad\" },\n { n: \"SaveCreditCardCheckOn-AthleteChecked\" },\n { n: \"SavePaymentForm-InitialLoad\" },\n { n: \"SaveThisAddress:Checked:FromAddSavedAddressWithInvalidAddressInformation\" },\n { n: \"SaveThisAddress:Checked:FromAddSavedAddressWithValidAddressInformation\" },\n { n: \"SaveThisAddress:Unchecked:FromAddSavedAddressWithInvalidAddressInformation\" },\n { n: \"SaveThisAddress:Unchecked:FromAddSavedAddressWithValidAddressInformation\" },\n { n: \"SavedPaymentForm-PendingShipment\" },\n { n: \"SavedPaymentForm-SavedPaymentRemoved\" },\n { n: \"ScoreCard:applyScoreCardByCard:fail\" },\n { n: \"ScoreCard:applyScoreCardByCard:success\" },\n { n: \"ScoreCard:applyScoreCardByPhone:fail\" },\n { n: \"ScoreCard:applyScoreCardByPhone:success\" },\n { n: \"ScoreCard:deleteScoreCard:success\" },\n { n: \"shipmodechangeclick\", p3: 0, f: function () {\n eventInstance.eventData.EDD.analytics ? TriggerV2ShippingMethodUpdateEvent(eventInstance.eventData) : TriggerShippingMethodUpdateEvent(eventInstance.eventData);\n } },\n { n: \"Shipping address from saved address list : selected\" },\n { n: \"ShippingAddressChangeClick\" },\n { n: \"ShippingResiliency\", f: function () {\n actionString = actionString += \":\" + (typeof eventInstance.eventData.ShippingResiliencyFallback !== \"undefined\" ? eventInstance.eventData.ShippingResiliencyFallback.toString() : \"unknown\");\n } },\n { n: \"SmsOptIn: true\" },\n { n: \"stockqty ready\", p3: 0, f: function () {\n EventHandlers.TriggerEvent(\"CheckoutStockReady\", eventInstance.eventData);\n } },\n { n: \"Successfully Applied Promo\", f: function () {\n var code = eventInstance.eventData.ActionType.split(\":\")[1];\n EventHandlers.TriggerEvent(\"PromotionEntered\", {\n \"PromotionCode\": code,\n \"PromotionSuccess\": \"Y\"\n });\n } },\n { n: \"Successfully Removed Promo\" },\n { n: \"Updated tip amount\" },\n { n: \"User Qualified for Create Account Form\" },\n { n: \"User Successfully Submitted Create Account Form on Order Confirmation Page\" }\n ];\n for (var i = 0; i < allowedActionTypes.length; i++) {\n if (actionString.toLowerCase().indexOf(allowedActionTypes[i].n.toLowerCase()) >= 0) {\n if (typeof allowedActionTypes[i].p3 === \"undefined\" || typeof allowedActionTypes[i].f === \"function\") {\n if (allowedActionTypes[i].f && typeof allowedActionTypes[i].f === \"function\") {\n var functionResult = allowedActionTypes[i].f?.();\n var additionalCodeResult = functionResult || false;\n triggerPixel = triggerPixel || additionalCodeResult;\n }\n if (typeof allowedActionTypes[i].p3 === \"undefined\") {\n s.prop3 = actionString.toLowerCase();\n s.linkTrackVars = s.apl(s.linkTrackVars, \"prop3\", \",\", 2);\n triggerPixel = true;\n }\n if (triggerPixel) {\n s.triggerEvent(eventInstance.eventName);\n }\n }\n break;\n }\n }\n }\n }\n var ProcessAddToCart = function (eventInstance) {\n try {\n var products = eventInstance.eventData.ItemsAddedToCart || eventInstance.eventData.ProductsAddedToCart;\n if (typeof products !== \"undefined\") {\n if (typeof products.length === \"undefined\") {\n var tempArray = [products];\n products = tempArray;\n }\n var items = [];\n if (products.length > 0) {\n for (var key = 0; key < products.length; key++) {\n var currentProduct = products[key];\n var id = currentProduct.ProductID;\n var sku = currentProduct.ProductSku || currentProduct.ProductSKU;\n var quantity = parseInt(currentProduct.ProductQty);\n var revenue = (currentProduct.CurrentPricePerUnit.toString().replace(/[^0-9.]/g, '')) * quantity;\n var source = currentProduct.CartAddSource || currentProduct.CartAdditionSource;\n var isMainItem = (typeof currentProduct.IsMainItem === \"undefined\" || currentProduct.IsMainItem);\n var productEvents = [];\n var merchEvars = [];\n if (!isMainItem) {\n var crossSellType = \"\";\n if (_dsgTag.pageType === PageTypes.ProductDetails) {\n crossSellType = \"PDP\";\n source = \"Product Page Add On\";\n var parentEcode = DataLayer.GetValue(\"ProductID\");\n merchEvars.push(\"evar31=\" + parentEcode);\n merchEvars.push(DataLayer.GetValue(\"ProductPageTemplateType\") == \"Bundle\" ? \"evar52=Product_PageElement_product4_rr\" : \"evar52=Product_PageElement_product3_rr\");\n }\n else if (_dsgTag.pageType === PageTypes.Cart) {\n crossSellType = \"Cart\";\n source = \"Cart Page Add On\";\n merchEvars.push(\"evar52=Cart_PageElement_cart2_rr\");\n }\n merchEvars.push(\"evar82=Add On\");\n merchEvars.push(\"evar49=\" + DataLayer.GetValue(\"PriceType\", currentProduct));\n var crossSellText = \"Cross Sell: \" + crossSellType + \" Add On\";\n merchEvars.push(\"evar32=\" + crossSellText);\n merchEvars.push(\"evar33=\" + crossSellText);\n merchEvars.push(\"evar58=\" + crossSellText);\n }\n else {\n merchEvars.push(\"evar82=Main\");\n if (source === \"PDP\") {\n source = \"Product Detail Page\";\n }\n }\n merchEvars.push(\"evar12=\" + source);\n merchEvars.push(\"evar61=\" + sku);\n if (typeof currentProduct.FulfillmentMethod !== \"undefined\") {\n var fulfillment = s.DetermineFulfillmentMethod(currentProduct.FulfillmentMethod);\n if (fulfillment) {\n merchEvars.push(\"evar51=\" + fulfillment.name);\n if (fulfillment === s.fulfillmentMethodConstants.BOPIS) {\n if (typeof currentProduct.FulfillmentStore !== \"undefined\") {\n merchEvars.push(\"evar40=\" + currentProduct.FulfillmentStore);\n if (typeof _dsgTag.LowStockBOPISStore !== \"undefined\" && _dsgTag.LowStockBOPISStore !== \"\") {\n merchEvars.push(\"evar41=ChangeStore:\" + _dsgTag.LowStockBOPISStore.toString() + \":\" + currentProduct.FulfillmentStore.toString() + \":\" + _dsgTag.LowStockBOPISStoreSuggestionCount.toString());\n }\n }\n }\n else if (fulfillment === s.fulfillmentMethodConstants.BOPL) {\n if (typeof currentProduct.FulfillmentStore !== \"undefined\") {\n merchEvars.push(\"evar40=\" + currentProduct.FulfillmentStore);\n }\n }\n }\n }\n if (quantity > 0)\n merchEvars.push(\"evar10=\" + quantity);\n if (revenue > 0) {\n merchEvars.push(\"evar99=\" + revenue.toFixed(2));\n productEvents.push(\"event43=\" + revenue.toFixed(2));\n }\n if (s.eVar18) {\n var currentCartQuantity = 0;\n if (parseInt(s.eVar18)) {\n currentCartQuantity = parseInt(s.eVar18);\n }\n s.eVar18 = currentCartQuantity + quantity;\n }\n if (currentProduct.wasSaveForLater) {\n s.events = s.apl(s.events, \"event184\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event184\", \",\", 2);\n }\n if (typeof currentProduct.AvailableQTY !== \"undefined\" && currentProduct.AvailableQTY >= 1 && currentProduct.AvailableQTY <= 10) {\n merchEvars.push(\"evar26=\" + currentProduct.FulfillmentMethod + \":\" + currentProduct.AvailableQTY);\n }\n var peopleViewing = DataLayer.GetValue(\"PDPPeopleViewing\", eventInstance.eventData);\n if (peopleViewing) {\n merchEvars.push(\"evar102=\" + peopleViewing);\n }\n items.push(s.buildProductString(id, 0, 0, productEvents, merchEvars));\n }\n if (eventInstance.eventData.CartID) {\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar13\", \",\", 2);\n s.eVar13 = eventInstance.eventData.CartID;\n if (eventInstance.eventData.CartID && (!HelperFunctions.GetValue(\"TagCartID\") || decodeURI(HelperFunctions.GetValue(\"TagCartID\") || \"\").split(\"|\")[0] != eventInstance.eventData.CartID)) {\n var cookieString = eventInstance.eventData.CartID + \"|0000\";\n HelperFunctions.SaveValue(\"TagCartID\", cookieString);\n }\n }\n s.products = items.join(\",\");\n s.events = s.apl(s.events, \"scAdd\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"scAdd\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"products\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n if (eventInstance.eventData.NewCart.toLowerCase() === \"y\" || eventInstance.eventData.NewCart.toLowerCase() === \"true\") {\n s.events = s.apl(s.events, \"scOpen\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"scOpen\", \",\", 2);\n }\n return true;\n }\n }\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Failed to process Add To Cart event: \" + ex.message, LogLevels.Error);\n return false;\n }\n };\n var TriggerV2ShippingMethodUpdateEvent = function (checkoutData) {\n var inputData = JSON.parse(JSON.stringify(checkoutData));\n var analyticsObject = (typeof inputData.EDD.analytics == \"string\") ? JSON.parse(inputData.EDD.analytics) : false;\n var shippingInfo = DataLayer.GetValue(\"CartSKUEcodeLookup\");\n for (var sku in shippingInfo) {\n shippingInfo[sku] = { \"ecode\": shippingInfo[sku] };\n }\n for (var i = 0; i < inputData.EDD.sku_estimated_delivery_list.length; i++) {\n var serviceLevel = {};\n for (var j = 0; j < inputData.EDD.sku_estimated_delivery_list[i].estimated_delivery_list.length; j++) {\n if (inputData.EDD.sku_estimated_delivery_list[i].estimated_delivery_list[j].shipping_mode_service_level) {\n serviceLevel[inputData.EDD.sku_estimated_delivery_list[i].estimated_delivery_list[j].shipping_mode_service_level.toLowerCase()] = inputData.EDD.sku_estimated_delivery_list[i].estimated_delivery_list[j];\n }\n }\n shippingInfo[inputData.EDD.sku_estimated_delivery_list[i].sku].deliveryData = serviceLevel;\n }\n for (var i = 0; analyticsObject && i < analyticsObject.lines.length; i++) {\n var currentLine = analyticsObject.lines[i];\n shippingInfo[currentLine.sku].additionalData = shippingInfo[currentLine.sku].additionalData || {};\n shippingInfo[currentLine.sku].additionalData[currentLine.serviceLevel] = currentLine;\n }\n var output = [];\n for (sku in shippingInfo) {\n var skuMode = null;\n for (var i = 0; i < checkoutData.checkout.shipping.available.groups.length; i++) {\n for (var j = 0; j < checkoutData.checkout.shipping.available.groups[i].items.length; j++) {\n if (checkoutData.checkout.shipping.available.groups[i].items[j].sku == sku) {\n for (var k = 0; k < checkoutData.checkout.shipping.selected.groups.length; k++) {\n if (checkoutData.checkout.shipping.selected.groups[k].group_number == checkoutData.checkout.shipping.available.groups[i].group_number) {\n skuMode = checkoutData.checkout.shipping.selected.groups[k].mode;\n }\n }\n }\n }\n }\n if (skuMode && shippingInfo[sku].deliveryData && shippingInfo[sku].additionalData) {\n var selectedData = { \"ecode\": shippingInfo[sku].ecode };\n HelperFunctions.DeepExtend(selectedData, shippingInfo[sku].deliveryData[skuMode.description.toLowerCase()], shippingInfo[sku].additionalData[shippingInfo[sku].deliveryData[skuMode.description.toLowerCase()].edd_service_level]);\n output.push(selectedData);\n }\n }\n HelperFunctions.DebugLog(\"Manually Triggering ShippingMethodUpdatedV2\");\n EventHandlers.TriggerEvent(\"ShippingMethodUpdatedV2\", {\n \"ShipData\": output\n });\n };\n var TriggerShippingMethodUpdateEvent = function (checkoutData) {\n try {\n HelperFunctions.DebugLog(\"Manually Triggering ShippingMethodUpdated\");\n var shipData = [];\n checkoutData = JSON.parse(JSON.stringify(checkoutData));\n if (checkoutData.checkout) {\n if (checkoutData.checkout.shipping && typeof checkoutData.EDD !== \"undefined\") {\n checkoutData.checkout.shipping.information = checkoutData.EDD;\n }\n checkoutData = checkoutData.checkout.shipping;\n var ParseDateText = function (input) {\n deliveryDate = input;\n if (deliveryDate) {\n if (deliveryDate.indexOf(\"Est. Delivery:\") >= 0) {\n deliveryDate = deliveryDate.split(\":\")[1];\n deliveryDate = deliveryDate.trim().split(\"-\")[1] || deliveryDate;\n deliveryDate = deliveryDate.trim().split(\" \")[1];\n }\n else if (deliveryDate.indexOf(\",\") >= 0) {\n deliveryDate = deliveryDate.split(\",\")[1];\n }\n var month = parseInt(deliveryDate.split(\"/\")[0]) - 1;\n var day = parseInt(deliveryDate.split(\"/\")[1]);\n var today = (new Date(Date.now()));\n var deliveryDate = new Date(today.getFullYear() + (month < today.getMonth() ? 1 : 0), month, day);\n deliveryDate = (deliveryDate.getMonth() + 1) + \"/\" + deliveryDate.getDate() + \"/\" + deliveryDate.getFullYear();\n }\n else {\n deliveryDate = \"Not Available\";\n }\n return deliveryDate;\n };\n for (var i = 0; i < checkoutData.available.groups.length; i++) {\n var currentAvailable = checkoutData.available.groups[i];\n var currentSelected, currentInformation;\n for (var j = 0; j < checkoutData.selected.groups.length; j++) {\n if (checkoutData.selected.groups[j].group_number == currentAvailable.group_number) {\n currentSelected = checkoutData.selected.groups[j];\n }\n }\n if (checkoutData.information.estimated_delivery && typeof checkoutData.information.estimated_delivery.analytics === \"string\") {\n checkoutData.information.estimated_delivery.analytics = JSON.parse(checkoutData.information.estimated_delivery.analytics);\n }\n else if (typeof checkoutData.information.analytics === \"string\") {\n checkoutData.information.estimated_delivery = {};\n checkoutData.information.estimated_delivery.analytics = JSON.parse(checkoutData.information.analytics);\n }\n for (var j = 0; j < checkoutData.information.estimated_delivery.groups.length; j++) {\n if (checkoutData.information.estimated_delivery.groups[j].group_number == currentAvailable.group_number) {\n currentInformation = checkoutData.information.estimated_delivery.groups[j];\n }\n }\n for (var j = 0; j < currentAvailable.items.length; j++) {\n var productID = currentAvailable.items[j].sku;\n var shipMethod = currentSelected.mode.description;\n var shipMethodIndex = -1;\n var deliveryDate = \"\";\n var additionalInfo = {};\n for (var k = 0; k < currentAvailable.modes.length; k++) {\n if (currentAvailable.modes[k].description === shipMethod) {\n shipMethodIndex = k;\n break;\n }\n }\n if (typeof currentInformation.dates !== \"undefined\") {\n deliveryDate = currentInformation.dates[shipMethodIndex];\n }\n else if (typeof currentInformation.edd_skus !== \"undefined\") {\n for (var l = 0; l < currentInformation.edd_skus.length; l++) {\n if (currentInformation.edd_skus[l].sku === productID) {\n deliveryDate = currentInformation.edd_skus[l].dates[shipMethodIndex];\n if (typeof checkoutData.information.estimated_delivery.analytics !== \"undefined\") {\n var dataSource = checkoutData.information.estimated_delivery.analytics.analyticsList || checkoutData.information.estimated_delivery.analytics.lines;\n additionalInfo.version = checkoutData.information.estimated_delivery.analytics.lines ? \"v2\" : \"v1\";\n for (var m = 0; m < dataSource.length; m++) {\n if (currentInformation.edd_skus[l].sku.toString() === dataSource[m].sku.toString()) {\n additionalInfo = dataSource[m];\n }\n }\n }\n }\n }\n }\n if (deliveryDate) {\n var deliveryDateText = ParseDateText(deliveryDate);\n shipData.push({\n \"ProductID\": productID.trim(),\n \"ShippingMethod\": shipMethod.trim(),\n \"EstimatedDeliveryDate\": deliveryDateText.toString().trim(),\n \"EDDReduction\": \"\",\n \"AdditionalAnalyticsInfo\": additionalInfo\n });\n }\n }\n }\n }\n try {\n if (checkoutData && checkoutData.EDD && checkoutData.EDD.sku_estimated_delivery_list) {\n var productString = [];\n for (var i = 0; i < checkoutData.EDD.sku_estimated_delivery_list.length; i++) {\n var sku = checkoutData.EDD.sku_estimated_delivery_list[i].sku;\n var eddList = checkoutData.EDD.sku_estimated_delivery_list[i].estimated_delivery_list;\n var eCode = \"\";\n for (var j = 0; j < checkoutData.ProductArray.length; j++) {\n if (checkoutData.ProductArray[j].ProductSKU === sku) {\n eCode = checkoutData.ProductArray[j].ProductID;\n break;\n }\n }\n if (eCode && sku && eddList) {\n for (var j = 0; j < eddList.length; j++) {\n if (eddList[j].shipping_mode_service_level.toLowerCase() == \"standard\") {\n var dateStart = new Date(eddList[j].promise_start_edd_date).getTime();\n var dateEnd = new Date(eddList[j].promise_end_edd_date).getTime();\n var const_oneDay = 1000 * 60 * 60 * 24;\n if ((!dateStart && dateEnd > Date.now()) || (dateStart && dateEnd > dateStart && dateStart > Date.now())) {\n var minDays = Math.ceil((dateStart - Date.now()) / const_oneDay);\n var maxDays = Math.ceil((dateEnd - Date.now()) / const_oneDay);\n productString.push(s.buildProductString(eCode, 0, 0, [], [\"evar61=\" + sku, \"evar90=\" + (minDays ? minDays + \"-\" : \"\") + maxDays + \" days\"]));\n }\n break;\n }\n }\n }\n }\n if (productString.length > 0) {\n s.products = productString.join(\",\");\n s.linkTrackVars = s.apl(s.linkTrackVars, \"products\", \",\", 2);\n s.triggerEvent(\"CheckoutAction\");\n }\n }\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Error calculating v90 shipping estimate: \" + ex.message, LogLevels.Error);\n }\n EventHandlers.TriggerEvent(\"ShippingMethodUpdated\", {\n \"ProductShippingMethods\": shipData\n });\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Error triggering fake ShippingMethodUpdated event: \" + ex.message, LogLevels.Error);\n }\n };\n var FireStoreSearchPixel = function (eventInstance) {\n if (typeof (eventInstance.eventData) != \"undefined\") {\n s.events = '';\n s.events = s.apl(s.events, \"event2\", \",\", 2);\n s.events = s.apl(s.events, \"event33\", \",\", 2);\n var closestDistance = eventInstance.eventData.ServedStoreDistances.length >= 1 ? eventInstance.eventData.ServedStoreDistances[0] : \"\";\n var closestStore = eventInstance.eventData.ServedStoreList.length >= 1 ? eventInstance.eventData.ServedStoreList[0] : \"\";\n var city = eventInstance.eventData.LocationSearchCity.toLowerCase();\n var state = eventInstance.eventData.LocationSearchState.toLowerCase();\n var zipCode = eventInstance.eventData.LocationSearchZip.toLowerCase();\n var results = eventInstance.eventData.ServedStoreCount;\n if (results == 0) {\n s.events = s.apl(s.events, \"event35\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event35\", \",\", 2);\n }\n s.products = \";\";\n s.prop6 = closestDistance;\n s.eVar9 = \"Store Locator Search\";\n s.eVar5 = zipCode;\n if (eventInstance.eventData.LocationSearchType === \"Auto\") {\n s.eVar5 += \" (Auto)\";\n }\n s.eVar38 = closestStore;\n s.events = s.apl(s.events, \"event67=\" + results, \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event2\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event33\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event67\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"prop6\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar9\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar5\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar38\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"products\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n s.triggerEvent(\"AJAXStoreSearch\");\n }\n s.linkTrackEvents = \"None\";\n s.linkTrackVars = s.baseLinkTrackVars;\n };\n _dsgTag.chatData = {};\n inputDataObject.AddEventHandler(\"NewPageView\", function () {\n var pollCount = 0;\n var setupChat = function () {\n if (window.lpTag) {\n window.lpTag.events.bind(\"*\", \"state\", function (data, eventInfo) {\n if (data.state && data.state == \"init\") {\n EventHandlers.TriggerEvent(\"ChatStarted\", _dsgTag.chatData);\n }\n });\n window.lpTag.events.bind(\"*\", \"conversationInfo\", function (data, eventInfo) {\n EventHandlers.TriggerEvent(\"ChatDataUpdated\", data);\n });\n window.lpTag.events.bind(\"*\", \"engagementData\", function (data, eventInfo) {\n });\n window.lpTag.events.bind(\"*\", \"START\", function (data, eventInfo) {\n _dsgTag.chatData = data;\n });\n window.lpTag.events.bind(\"*\", \"windowClosed\", function (data, eventInfo) {\n EventHandlers.TriggerEvent(\"ChatEnded\", {});\n });\n }\n else if (pollCount < 100) {\n pollCount++;\n setTimeout(setupChat, 100);\n }\n };\n setupChat();\n });\n var storeLocatorIndex = 0;\n setInterval(function () {\n if (_dsgTag.queuedStoreSearches.length > storeLocatorIndex) {\n FireStoreSearchPixel(_dsgTag.queuedStoreSearches[storeLocatorIndex]);\n storeLocatorIndex++;\n }\n }, 500);\n HelperFunctions.BindDocumentClickEventWithAdditionalSelector(\"input.store-pickup-store-select-radio, .set-store-btn, .set-store, .store-pickup, div.store-details button.ng-star-inserted\", function () {\n EventHandlers.TriggerEvent(\"ChangePreferredStore\");\n });\n inputDataObject.AddEventHandler(\"NewPageView\", function () {\n if (typeof window.S7dmUtils !== \"undefined\") {\n var scanForMedia = function () {\n var mediaFound = false;\n for (var key in window.S7dmUtils) {\n if (key.indexOf(\"dynamicmedia\") == 0 || key.indexOf(\"interactivemedia\") == 0) {\n mediaFound = true;\n window.S7dmUtils[key].handlers[\"trackEvent\"] = function (object, data, eventInfo, ID, eventType) {\n HelperFunctions.DebugLog(eventType);\n var videoObject = window.S7dmUtils[object];\n var videoID = videoObject.mediaSet.component.asset;\n var type = eventType.split(\",\")[0].toLowerCase();\n var eventData = eventType.split(\",\")[1].toLowerCase();\n var vidData = {\n videoID: videoID,\n videoVendor: \"Scene7\"\n };\n switch (type) {\n case \"play\": {\n EventHandlers.TriggerEvent(\"VideoPlay\", vidData);\n break;\n }\n case \"milestone\": {\n vidData.percentage = eventData;\n EventHandlers.TriggerEvent(\"VideoMilestoneReached\", vidData);\n break;\n }\n case \"interactive_swatch\": {\n s.saveValueForNextPageView(\"Scene7Click\", videoID);\n break;\n }\n }\n };\n }\n }\n if (!mediaFound) {\n setTimeout(scanForMedia, 100);\n }\n };\n scanForMedia();\n }\n });\n if (HelperFunctions.IsInLane(\"53-66,93-94,97-100\")) {\n inputDataObject.AddEventHandler(\"NewPageView\", function () {\n var productInfoHeader = document.querySelectorAll(\"div.full-long-description.pdp-section-spacing\");\n if (productInfoHeader) {\n var productInfoHeaderElement = productInfoHeader.length > 0 ? productInfoHeader[0] : null;\n if (productInfoHeaderElement) {\n HelperFunctions.TriggerFunctionWhenVisible([productInfoHeaderElement], function () {\n EventHandlers.TriggerEvent(\"ProductInfoViewed\");\n }, true);\n }\n }\n });\n }\n }());\n inputDataObject.AddEventHandler(\"CuralateInitialized\", function () {\n try {\n var container = document.querySelector(\"[data-crl8-container-id]\");\n var containerID = container ? container.getAttribute(\"data-crl8-container-id\") : \"\";\n var itemIDs = [];\n var currentIndex = -1;\n var SavePostDetails = function (postID) {\n window.crl8.getExperience(containerID).then(function (params) {\n s.saveValueForNextPageView(\"CuralateClick\", params.store.getState().dataSource.data.media[postID]);\n s.saveValueForNextPageView(\"v1\", \"Curalate\");\n });\n };\n var SetupPostClick = function (widgetElement) {\n if (widgetElement.getAttribute(\"dsgAnalytics\") !== \"true\") {\n var currentID = widgetElement.getAttribute(\"data-crl8-item-id\");\n widgetElement.setAttribute(\"dsgAnalytics\", \"true\");\n itemIDs.push(currentID);\n widgetElement.childNodes[0].childNodes[0].addEventListener(\"click\", function () { PostClick(currentID); }, true);\n }\n };\n var intervalsSetup = false;\n var SetupIntervals = function () {\n if (!intervalsSetup) {\n intervalsSetup = true;\n var FindPDPLinks = function () {\n var pdpLinks = document.querySelectorAll(\"#crl8-homepage-carousel-modal a[href*='/p/']\");\n for (var i = 0; i < pdpLinks.length; i++) {\n if (pdpLinks[i].getAttribute(\"dsgAnalytics\") !== \"true\") {\n pdpLinks[i].setAttribute(\"dsgAnalytics\", \"true\");\n pdpLinks[i].addEventListener(\"click\", function () {\n SavePostDetails(itemIDs[currentIndex]);\n });\n }\n }\n };\n setInterval(FindPDPLinks, 100);\n var SetupNextPreviousClick = function () {\n var previousButton = document.querySelector(\"button[aria-label='Previous post']\");\n var nextButton = document.querySelector(\"button[aria-label='Next post']\");\n if (previousButton && previousButton.getAttribute(\"dsgAnalytics\") !== \"true\") {\n previousButton.setAttribute(\"dsgAnalytics\", \"true\");\n previousButton.addEventListener(\"click\", function () {\n PostClick(itemIDs[--currentIndex]);\n });\n }\n if (nextButton && nextButton.getAttribute(\"dsgAnalytics\") !== \"true\") {\n nextButton.setAttribute(\"dsgAnalytics\", \"true\");\n nextButton.addEventListener(\"click\", function () {\n PostClick(itemIDs[++currentIndex]);\n });\n }\n };\n setInterval(SetupNextPreviousClick, 100);\n }\n };\n var PostClick = function (currentID) {\n if (currentID) {\n currentIndex = itemIDs.indexOf(currentID);\n SetupIntervals();\n }\n else {\n setTimeout(function () { PostClick(itemIDs[currentIndex]); }, 250);\n }\n };\n var FindWidgetItems = function () {\n var items = document.querySelectorAll(\"div[data-crl8-item-id]\");\n if (items.length > 0) {\n for (var i = 0; i < items.length; i++) {\n SetupPostClick(items[i]);\n }\n }\n setTimeout(FindWidgetItems, 250);\n };\n FindWidgetItems();\n }\n catch (ex) { }\n });\n}\n//# sourceMappingURL=AnalyticsEventHandlers.js.map","var adobeCookieName = \"s_pers\";\nexport function c_r(n) {\n return HelperFunctions.GetCookieValue(n, decodeURIComponent(HelperFunctions.GetCookieValue(adobeCookieName))) || \"\";\n}\nexport function c_w(n, v) {\n var currentVals = s.c_p(decodeURIComponent(HelperFunctions.GetCookieValue(adobeCookieName)));\n currentVals[n] = v;\n var out = [];\n for (var key in currentVals) {\n out.push(key + \"=\" + currentVals[key]);\n }\n HelperFunctions.WriteCookieValue(adobeCookieName, encodeURIComponent(out.join(\";\")), 400, true);\n}\nexport function c_p(input) {\n var out = {};\n var vals = input.split(\";\");\n for (var i = 0; i < vals.length; i++) {\n var currentVal = vals[i].split(\"=\");\n out[currentVal[0]] = currentVal[1];\n }\n return out;\n}\nexport function apl(l, v, d, u) { var s = this; d = d ? d : \",\"; if (!s.inList(l, v, d, u))\n l = l ? l + d + v : v; return l; }\n;\nexport function inList(l, v, d, u) { if (typeof v != \"string\")\n return false; var s = this, ar = Array(); if (typeof l == \"string\") {\n d = d ? d : \",\";\n ar = l.split(d);\n}\nelse if (typeof l == \"object\")\n ar = l;\nelse\n return false; for (var i = 0, arlength = ar.length; i < arlength; i++)\n if (typeof u != \"undefined\" && u == 1 && v == ar[i])\n return true;\n else if (v.toLowerCase() == ar[i].toLowerCase())\n return true; return false; }\n;\nexport function getPreviousValue(v, c, el) { var s = this, t = new Date, i, j, r = \"\", f = 1; c = c ? c : \"s_gpv\"; t.setTime(t.getTime() + 18E5); if (el) {\n f = 0;\n i = el.split(\",\");\n j = s.events ? s.events.split(\",\") : \"\";\n for (var x = 0, il = i.length; x < il; x++) {\n for (var y = 0, jl = j.length; y < jl; y++)\n if (i[x] == j[y]) {\n f = 1;\n break;\n }\n if (f == 1)\n break;\n }\n} if (f == 1) {\n if (s.c_r(c))\n r = s.c_r(c);\n v ? s.c_w(c, v, t) : s.c_w(c, \"no value\", t);\n} return r; }\n;\nexport function manageVars(c, l, f) {\n var s = this, vl, la, vla;\n l = l ? l : \"\";\n f = f ? f : 1;\n if (!s[c])\n return false;\n vl = \"pageName,purchaseID,channel,server,pageType,campaign,state,zip,events,products,transactionID\";\n for (var n = 1; n < 76; n++)\n vl += \",prop\" + n;\n for (var n = 1; n < 251; n++)\n vl += \",eVar\" + n;\n for (n = 1; n < 6; n++)\n vl += \",hier\" + n;\n for (n = 1; n < 4; n++)\n vl += \",list\" + n;\n for (n in s.contextData)\n vl += \",contextData.\" + n;\n if (l && (f == 1 || f == 2)) {\n if (f == 1)\n vl = l.replace(\"['\", \".\").replace(\"']\", \"\");\n if (f == 2) {\n la = l.split(\",\");\n vla = vl.split(\",\");\n vl = \"\";\n for (x in la) {\n if (la[x].indexOf(\"contextData\") >\n -1) {\n lax = la[x].split(\"'\");\n la[x] = \"contextData.\" + lax[1];\n }\n for (y in vla)\n if (la[x] == vla[y])\n vla[y] = \"\";\n }\n for (y in vla)\n vl += vla[y] ? \",\" + vla[y] : \"\";\n }\n s.pt(vl, \",\", c, 0);\n return true;\n }\n else if (l == \"\" && f == 1) {\n s.pt(vl, \",\", c, 0);\n return true;\n }\n else\n return false;\n}\n;\nexport function clearVars(t) { var s = this; if (t.indexOf(\"contextData\") == -1)\n s[t] = \"\";\nelse if (t.indexOf(\"contextData\") > -1) {\n var c = t.substring(t.indexOf(\".\") + 1);\n s.contextData[c] = \"\";\n} }\n;\nexport function lowercaseVars(t) { var s = this; if (t != \"events\" && t.indexOf(\"contextData\") == -1 && s[t]) {\n s[t] = s[t].toString();\n if (s[t].indexOf(\"D=\") != 0)\n s[t] = s[t].toLowerCase();\n}\nelse if (t.indexOf(\"contextData\") > -1) {\n var c = t.substring(t.indexOf(\".\") + 1);\n if (s.contextData[c]) {\n s.contextData[c] = s.contextData[c].toString();\n s.contextData[c] = s.contextData[c].toLowerCase();\n }\n} }\n;\nexport function pt(x, d, f, a) { var s = this, t = x, z = 0, y, r; while (t) {\n y = t.indexOf(d);\n y = y < 0 ? t.length : y;\n t = t.substring(0, y);\n r = s[f](t, a);\n if (r)\n return r;\n z += y + d.length;\n t = x.substring(z, x.length);\n t = z < x.length ? t : \"\";\n} return \"\"; }\n;\nexport function getValOnce(v, c, e, t) { var s = this, a = new Date, v = v ? v : \"\", c = c ? c : \"s_gvo\", e = e ? e : 0, i = t == \"m\" ? 6E4 : 864E5, k = s.c_r(c); if (v) {\n a.setTime(a.getTime() + e * i);\n s.c_w(c, v, e == 0 ? 0 : a);\n} return v == k ? \"\" : v; }\n;\nexport function getDaysSinceLastVisit(prevCookie) {\n var s = this;\n valCookie = prevCookie + '_s';\n visitCookie = prevCookie + '_c';\n var prevVisit;\n var currentValue;\n now = (new Date()).getTime();\n thirtyMinutes = 30 * 60 * 1000;\n twelveHours = 12 * 60 * 60 * 1000;\n oneDay = 24 * 60 * 60 * 1000;\n threeYears = 3 * 365 * oneDay;\n thirtyMinFromNow = new Date();\n twelveHoursFromNow = new Date();\n threeYearsFromNow = new Date();\n thirtyMinFromNow.setTime(now + thirtyMinutes);\n twelveHoursFromNow.setTime(now + twelveHours);\n threeYearsFromNow.setTime(now + threeYears);\n prevVisit = s.c_r(prevCookie);\n prevValue = s.c_r(valCookie);\n visitStart = s.c_r(visitCookie);\n if (prevVisit.length == 0) {\n s.c_w(prevCookie, now, threeYearsFromNow);\n s.c_w(visitCookie, now, twelveHoursFromNow);\n s.c_w(valCookie, 'First visit', thirtyMinFromNow);\n }\n else {\n var ticksPassed = now - prevVisit;\n var daysPassed = parseInt(ticksPassed / oneDay);\n if (ticksPassed > 30 * 60 * 1000 || visitStart.length == 0) {\n s.c_w(prevCookie, now, threeYearsFromNow);\n s.c_w(visitCookie, now, twelveHoursFromNow);\n s.c_w(valCookie, daysPassed, thirtyMinFromNow);\n }\n else {\n s.c_w(prevCookie, now, threeYearsFromNow);\n s.c_w(valCookie, prevValue, thirtyMinFromNow);\n }\n }\n currentValue = s.c_r(valCookie);\n if (currentValue.length == 0)\n return 'Cookies Not Supported';\n else\n return currentValue;\n}\n;\n//# sourceMappingURL=adobeappmeasurementplugins.js.map","import { Websites } from \"../../consts/websites.const\";\nimport { InitTimings } from \"../../enums/enums.enum\";\nimport { LogLevels } from \"../../enums/enums.enum\";\nimport { _dsgTag } from \"../../namespaces/_dsgTag.namespace\";\nimport { HelperFunctions } from \"../../namespaces/helperFunctions.namespace\";\nimport { DataLayer } from \"../../namespaces/dataLayer.namespace\";\nimport { TagCondition } from \"../../classes/tagCondition.class\";\nimport { FunctionRepository } from \"../../namespaces/functionRepository.namespace\";\nimport { EventHandlers } from \"../../namespaces/eventHandlers.namespace\";\nimport { SetupAdobePageCode } from \"./AnalyticsPageCode\";\nimport { SetupAdobeEventCode } from \"./AnalyticsEventHandlers\";\nimport * as plugins from \"../../vendorScripts/adobeappmeasurementplugins\";\nvar baseConditions = [{ t: \"bypass-restricted\", c: \"=\", v: \"true\" }];\nvar conditions = [];\nfor (var i = 0; i < baseConditions.length; i++) {\n conditions.push(new TagCondition(baseConditions[i].t, baseConditions[i].c, baseConditions[i].v));\n}\nexport var AdobeAnalytics = { name: \"AdobeAnalytics\", timing: InitTimings.Immediate, conditions: conditions, initFunction: init };\nfunction init(inputDataObject) {\n window.s = {};\n try {\n var SetupPlugins = function () {\n s.c_r = plugins.c_r;\n s.c_w = plugins.c_w;\n s.c_p = plugins.c_p;\n s.apl = plugins.apl;\n s.inList = plugins.inList;\n s.getPreviousValue = plugins.getPreviousValue;\n s.manageVars = plugins.manageVars;\n s.clearVars = plugins.clearVars;\n s.lowercaseVars = plugins.lowercaseVars;\n s.pt = plugins.pt;\n s.getValOnce = plugins.getValOnce;\n s.getDaysSinceLastVisit = plugins.getDaysSinceLastVisit;\n };\n SetupPlugins();\n for (i = 1; i <= 250; i++) {\n s[\"eVar\" + i] = \"\";\n }\n for (i = 1; i <= 75; i++) {\n s[\"prop\" + i] = \"\";\n }\n s.tnt = \"\";\n s.pe = \"\";\n s.pev2 = \"\";\n s.linkName = \"\";\n s.linkType = \"\";\n s.currencyCode = \"USD\";\n s.linkDownloadFileTypes = \"exe,zip,wav,mp3,mov,mpg,avi,wmv,pdf,doc,docx,xls,xlsx,ppt,pptx\";\n s.baseLinkTrackVars = \"pageName,server,prop2,prop17,prop22,prop33,prop45,prop54,prop56,prop57,prop59,prop60,prop61,prop71,eVar8,eVar18,eVar20,eVar21,eVar24,eVar25,eVar29,eVar42,eVar45,eVar50,eVar57,eVar59,eVar64,eVar74,eVar75,eVar92,eVar93,eVar130,eVar136,eVar137,eVar135,eVar142,eVar168,eVar169,eVar170\";\n s.linkInternalFilters = \"javascript:,tel:,\" + _dsgTag.linkInternalFilters;\n s.linkInternalFilters += \",\" + window.location.hostname.toLowerCase();\n s.linkTrackVars = s.baseLinkTrackVars;\n s.linkTrackEvents = \"\";\n s.server = window.location.hostname.toLowerCase();\n s._internalSites = [\"453andahalf\", \"custhelp\", \"dicks.careers\", \"dicks.reviews\",\n \"dickssportinggoods.jobs\", \"dicksteamgear\", \"dsg\", \"dsgcarriers\", \"dsgcorpevents\",\n \"dsgfreight\", \"dsgn.dcsg\", \"epicfit\",\n \"golfgalaxy.careers\", \"golfgalaxyjobs\", \"golfgalaxylessons\", \"investors.dicks\",\n \"koppen.prod.tracylocke\", \"maxfli\", \"mydickssportinggoods\", \"mygolfgalaxy\",\n \"nickentgolf\", \"ralphmaltby\", \"sombreropay\", \"sombrerosport\", \"sportsmansadvantageclub\", \"sportsmatter\", \"topflite\", \"truerunner\"\n ];\n for (var website in Websites) {\n if (Websites[website] !== _dsgTag.currentWebsite)\n s._internalSites.push(Websites[website].Domain.replace(\".com\", \"\"));\n }\n s._internalSitesRegEx = new RegExp(\"(\" + s._internalSites.join(\"|\").replace(/\\./g, \"\\\\.\") + \")\\\\.com\");\n SetupAdobeAnalyticsFunctions(inputDataObject);\n SetupAdobePageCode(inputDataObject);\n SetupAdobeEventCode(inputDataObject);\n HelperFunctions.BindDocumentClickEventWithAdditionalSelector(\"a\", function (element) {\n try {\n if (element instanceof HTMLAnchorElement && element.href && element.href.toLowerCase().indexOf(\"javascript:\") < 0 && element.href.toLowerCase().indexOf(\"tel:\") < 0) {\n var currentHost = window.location.host;\n var currentDomain = currentHost.substring(currentHost.indexOf(\".\") + 1);\n var currentSubdomain = currentHost.split(\".\")[0];\n var destinationHost = element.href.split(\"/\")[2];\n var destinationDomain = destinationHost.substring(destinationHost.indexOf(\".\") + 1);\n var destinationSubdomain = destinationHost.split(\".\")[0];\n var isDownloadLink = false;\n var path = element.href.split(\"?\")[0].split(\"#\")[0];\n path = path.split(\"/\")[path.split(\"/\").length - 1];\n for (var i = 0; i < s.linkDownloadFileTypes.split(\",\").length && !isDownloadLink; i++) {\n isDownloadLink = path.indexOf(s.linkDownloadFileTypes.split(\",\")[i]) >= 0;\n }\n var dataObject;\n if (isDownloadLink) {\n var path = element.href.split(\"?\")[0].split(\"#\")[0];\n path = path.split(\"/\")[path.split(\"/\").length - 1];\n for (var i = 0; i < s.linkDownloadFileTypes.split(\",\").length; i++) {\n if (path.indexOf(s.linkDownloadFileTypes.split(\",\")[i]) >= 0) {\n dataObject = {\n \"xdm\": {\n \"eventType\": \"web.webinteraction.linkClicks\",\n \"web\": {\n \"webInteraction\": {\n \"name\": element.href,\n \"type\": \"download\",\n \"URL\": element.href,\n \"linkClicks\": {\n \"value\": 1\n }\n }\n }\n }\n };\n s.triggerAEPAnalyticsEvent(\"downloadLink\", dataObject);\n }\n }\n }\n else if (destinationHost != currentHost) {\n dataObject = {\n \"xdm\": {\n \"eventType\": \"web.webinteraction.linkClicks\",\n \"web\": {\n \"webInteraction\": {\n \"name\": element.href,\n \"type\": \"exit\",\n \"URL\": element.href,\n \"linkClicks\": {\n \"value\": 1\n }\n }\n }\n },\n \"documentUnloading\": true\n };\n s.triggerAEPAnalyticsEvent(\"exitLink\", dataObject);\n if (currentDomain === destinationDomain && currentSubdomain !== destinationSubdomain) {\n _dsgTag.subdomainChangeLinkClick = true;\n var thisPageValues = HelperFunctions.GetValue(\"PreviousPageValues\");\n HelperFunctions.DeleteValue(\"PreviousPageValues\");\n if (thisPageValues) {\n HelperFunctions.WriteCookieValue(\"PreviousPageValues\", thisPageValues, 1, true);\n }\n }\n }\n }\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Error handling AEP Exit Link: \" + ex.message, LogLevels.Error);\n }\n });\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Error initilizing analytics: \" + ex.message, LogLevels.Error);\n }\n}\n;\nfunction SetupAdobeAnalyticsFunctions(inputDataObject) {\n s.SetAbort = function (newValue) {\n s.abort = s.abort || newValue;\n };\n s.getReferringInternalSite = function () {\n var a = \"\";\n var b = s._internalSitesRegEx.exec(document.referrer);\n a = (b !== null ? b[0] : \"\");\n return a;\n };\n s.preTrackCallbackList = [];\n s.processPreTrackCallbacks = function () {\n for (var i = 0; i < s.preTrackCallbackList.length; i++) {\n try {\n s.preTrackCallbackList[i]();\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Error handling pre-track callbacks: \" + ex.message, LogLevels.Error);\n }\n }\n s.preTrackCallbackList = [];\n };\n s.postTrackCallbackList = [];\n s.processPostTrackCallbacks = function (result) {\n for (var i = 0; i < s.postTrackCallbackList.length; i++) {\n try {\n s.postTrackCallbackList[i](result);\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Error handling post-track callbacks: \" + ex.message, LogLevels.Error);\n }\n }\n s.postTrackCallbackList = [];\n };\n s.dsgPageNameLookup = function () {\n if (typeof (s.pageNamingMap) !== \"undefined\") {\n var a = window.location.href.toLowerCase();\n for (var key in s.pageNamingMap) {\n if (a.indexOf(key) > -1) {\n return { \"name\": _dsgTag.currentWebsite.Abbreviation + \": \" + s.pageNamingMap[key][\"n\"], \"type\": (s.pageNamingMap[key][\"t\"] || s.pageNamingMap[key][\"n\"].split(\":\")[0]) };\n }\n }\n }\n };\n s.pageNamingMap = {\n '/myaccount/settings': { n: 'My Account: Account Settings' },\n '/myaccount/accountsummary': { n: 'My Account: Summary' },\n '/myaccount/addresses': { n: 'My Account: Addresses' },\n '/myaccount/athletesettings': { n: 'My Account: Settings' },\n '/myaccount/orderdetail': { n: 'My Account: Order Info: Order Details' },\n '/myaccount/orders': { n: 'My Account: Purchase History' },\n '/myaccount/personalinformation': { n: 'My Account: Personal Information' },\n '/myaccount/preferences': { n: 'My Account: Preference Center' },\n '/myaccount/purchases': { n: 'My Account: Purchase History' },\n '/myaccount/reservations': { n: 'My Account: Reservations' },\n '/myaccount/rewards': { n: 'My Account: My Rewards' },\n '/myaccount/scorecard': { n: 'My Account: ScoreCard' },\n '/completeprofile': { n: 'My Account: Account Creation Complete Profile' },\n '/trackorder': { n: 'Help Desk: Track Order' }\n };\n s.fulfillmentMethodConstants = {\n \"Standard\": { \"name\": \"Ship to Customer\", \"matches\": [\"STH\", \"standard\", \"expedited\", \"express\", \"shipToMe\", \"ship to customer\", \"parcel\", \"large\", \"verylarge\"] },\n \"BOPIS\": { \"name\": \"In Store Pickup (BOPIS)\", \"matches\": [\"BOPIS\", \"In Store Pickup (BOPIS)\", \"In Store Pick Up (BOPIS)\", \"In Store Pickup\", \"Pickup in store\"] },\n \"BOPL\": { \"name\": \"Ship to Store\", \"matches\": [\"BOPL\", \"In Store Pickup (BOPL)\", \"Ship to store\"] },\n \"SameDay\": { \"name\": \"Same Day Fulfillment\", \"matches\": [\"SAMEDAY\"] }\n };\n s.DetermineFulfillmentMethod = function (input) {\n for (var key in s.fulfillmentMethodConstants) {\n for (var i = 0; i < s.fulfillmentMethodConstants[key].matches.length; i++) {\n if (input.toLowerCase() == s.fulfillmentMethodConstants[key].matches[i].toLowerCase()) {\n return s.fulfillmentMethodConstants[key];\n }\n }\n }\n return { \"name\": \"Unrecognized: \" + input, \"matches\": [] };\n };\n s.contentHierProps = function () {\n var pn = s.pageName;\n if (typeof pn === \"undefined\")\n return;\n var d = \": \", l1 = \"\", l2 = \"\", l3 = \"\", a = pn.split(d), al = a.length;\n if (al > 2)\n l1 = l2 = l3 = a[0] + d + a[1];\n if (al > 3)\n l2 = l3 = l1 + d + a[2];\n if (al > 4)\n l3 = l2 + d + a[3];\n s.prop4 = l2;\n s.prop5 = l3;\n };\n s.saveValueForNextPageView = function (name, value) {\n var currentValuesRaw = HelperFunctions.GetValue(\"PreviousPageValues\");\n var currentValues = currentValuesRaw ? JSON.parse(currentValuesRaw) : {};\n currentValues[name] = value;\n HelperFunctions.SaveValue(\"PreviousPageValues\", JSON.stringify(currentValues));\n if (_dsgTag.subdomainChangeLinkClick) {\n HelperFunctions.WriteCookieValue(\"PreviousPageValues\", JSON.stringify(currentValues), 1, true);\n _dsgTag.subdomainChangeLinkClick = false;\n }\n };\n s.processDataEmTag = function (element) {\n var dataEm = element.getAttribute(\"data-em\");\n if (dataEm) {\n if (!(/^(plp|srlp|productcard|productview|header_search)/i.test(dataEm))) {\n s.saveValueForNextPageView(\"v1\", dataEm);\n }\n else if (/^(plp|srlp)/i.test(dataEm)) {\n try {\n var dataEm = dataEm.split(\"_\");\n if (dataEm.length >= 2 && /\\d+/.test(dataEm[1])) {\n var allPLPLinks = document.querySelectorAll(\"[data-em^='plp_']\");\n var page = parseInt(_dsgTag.pagination) || (HelperFunctions.GetQueryStringValue(\"pageNumber\") ? parseInt(HelperFunctions.GetQueryStringValue(\"pageNumber\") || \"\") + 1 : 1);\n var itemsPerPage = parseInt(DataLayer.GetValue(\"ProductsPerPage\")) || allPLPLinks.length;\n var positionCount = (((page - 1) * itemsPerPage) + (parseInt(dataEm[1]))).toFixed(0);\n var outValue = s.prop2 + \":\" + page + \":\" + positionCount;\n if (dataEm.length >= 4 && dataEm[3].toLowerCase() === \"pinned\") {\n outValue += \":pinned\";\n }\n s.saveValueForNextPageView(\"pageRowCol\", outValue);\n }\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Error occured recording page/row/col for v4: \" + ex.message, LogLevels.Error);\n }\n }\n }\n };\n s.bindDataEmTags = function (event, data) {\n HelperFunctions.BindDocumentClickEventWithAdditionalSelector(\"[data-em]\", s.processDataEmTag);\n };\n if (document.attachEvent ? document.readyState === \"complete\" : document.readyState !== \"loading\") {\n s.bindDataEmTags();\n }\n else {\n EventHandlers.AddDocumentReadyEventHandler(s.bindDataEmTags);\n }\n s.logContentsOfSObject = function (source) {\n var s = source || window.s;\n try {\n var logLevel = HelperFunctions.GetValue(\"Debug\");\n if (logLevel == \"true\" || logLevel == \"2\" || logLevel == \"3\") {\n var analyticsDebug = {};\n var eventType = s.pev2 || s.linkName || \"\";\n var variables = eventType ? s.linkTrackVars.split(\",\") : [\"pageName\", \"purchaseID\", \"transactionID\", \"server\", \"events\", \"products\", \"prop\", \"eVar\", \"list\", \"campaign\", \"pageType\"];\n for (var i = 0; i < variables.length; i++) {\n if (s[variables[i]]) {\n var value = s[variables[i]];\n if (eventType && variables[i] === \"events\") {\n value = value.split(\",\");\n var eventList = s.linkTrackEvents.split(\",\");\n for (var j = 0; j < value.length; j++) {\n if (typeof Array.prototype.indexOf !== \"undefined\" && eventList.indexOf(value[j].replace(/=\\d+(\\.\\d+)?/g, \"\")) < 0) {\n value.splice(j--, 1);\n }\n }\n value = value.join(\",\");\n }\n analyticsDebug[variables[i]] = value;\n if (variables[i] === \"products\") {\n var products = value.split(\",\");\n for (var j = 0; j < products.length; j++) {\n var product = products[j];\n var productValues = product.split(\";\");\n var eCode = productValues[1];\n if (productValues[2]) {\n analyticsDebug[j + \".\" + eCode + \".units\"] = productValues[2];\n }\n if (productValues[3]) {\n analyticsDebug[j + \".\" + eCode + \".revenue\"] = productValues[3];\n }\n var events = [];\n if (productValues[4] && (events = productValues[4].split(\"|\"))) {\n for (var k = 0; k < events.length; k++) {\n var event = events[k];\n var eventNumber = /event(\\d+)/g.exec(event);\n var eventValue = /event\\d+=(.*)/g.exec(event);\n if (eventNumber && eventValue) {\n analyticsDebug[j + \".\" + eCode + \".event\" + eventNumber[1]] = eventValue[1];\n }\n }\n }\n var evars = [];\n if (productValues[5] && (evars = productValues[5].split(\"|\"))) {\n for (var k = 0; k < evars.length; k++) {\n var evar = evars[k];\n var evarNumber = /evar(\\d+)/g.exec(evar);\n var evarValue = /evar\\d+=(.*)/g.exec(evar);\n if (evarNumber && evarValue) {\n analyticsDebug[j + \".\" + eCode + \".eVar\" + evarNumber[1]] = evarValue[1];\n }\n }\n }\n }\n }\n }\n else if (variables[i] === \"prop\" || variables[i] === \"eVar\" || variables[i] === \"list\") {\n var count = { \"prop\": 75, \"eVar\": 250, \"list\": 3 };\n for (var j = 1; j <= count[variables[i]]; j++) {\n if (s[variables[i] + j]) {\n analyticsDebug[variables[i] + j] = s[variables[i] + j];\n }\n }\n }\n }\n if (typeof navigator !== \"undefined\" && typeof navigator.userAgent !== \"undefined\" && navigator.userAgent.toLowerCase().indexOf(\"edge\") >= 0) {\n var ieArray = [];\n for (var key in analyticsDebug) {\n ieArray.push({ \"Name\": key, \"Value\": analyticsDebug[key] });\n }\n analyticsDebug = ieArray;\n }\n if (_dsgTag.subdomainChangeLinkClick) {\n HelperFunctions.DividerLog(\"Exit Link pixel fired\");\n }\n else {\n HelperFunctions.DividerLog(eventType ? eventType + \" pixel fired\" : \"Page View pixel fired\");\n console.table(analyticsDebug);\n return analyticsDebug;\n }\n }\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Failed to log s object.\");\n }\n };\n s.BuldDelmitedKeyValueString = function (keyValuePairs, delimiter, prefix) {\n var output = prefix ? [prefix] : [];\n for (var key in keyValuePairs) {\n if (key.indexOf(delimiter) >= 0 || keyValuePairs[key].toString().indexOf(delimiter) >= 0) {\n HelperFunctions.DebugLog(\"Key/value pair contains delimiter: \" + key + \"=\" + keyValuePairs[key], LogLevels.Error);\n return \"\";\n }\n output.push(key + \"=\" + keyValuePairs[key]);\n }\n return output.join(delimiter);\n };\n s.GetAvailabilityStringFromSKUArray = function (SKUArray, maxSkuCountByAttributes) {\n try {\n var skuCount = SKUArray.length;\n var availabilityValues = \"\";\n var shipAvailable = 0;\n var pickupAvailable = 0;\n var eitherAvailable = 0;\n var either;\n for (var i = 0; i < SKUArray.length; i++) {\n either = false;\n if (SKUArray[i].AvailabletoShip && SKUArray[i].AvailabletoShip.toString().toLowerCase() === \"true\") {\n shipAvailable++;\n either = true;\n }\n if (SKUArray[i].AvailableForPickup && SKUArray[i].AvailableForPickup.toString().toLowerCase() === \"true\") {\n pickupAvailable++;\n either = true;\n }\n if (either) {\n eitherAvailable++;\n }\n }\n availabilityValues += (eitherAvailable).toString() + \"_\" + (skuCount) + \"_\" + ((100 * ((eitherAvailable) / parseFloat(skuCount))));\n availabilityValues += \":\" + (shipAvailable).toString() + \"_\" + (skuCount) + \"_\" + ((100 * ((shipAvailable) / parseFloat(skuCount))));\n availabilityValues += \":\" + (pickupAvailable).toString() + \"_\" + (skuCount) + \"_\" + ((100 * ((pickupAvailable) / parseFloat(skuCount))));\n availabilityValues += \":\" + (eitherAvailable).toString() + \"_\" + (maxSkuCountByAttributes) + \"_\" + ((100 * ((eitherAvailable) / parseFloat(maxSkuCountByAttributes))));\n availabilityValues += \":\" + (shipAvailable).toString() + \"_\" + (maxSkuCountByAttributes) + \"_\" + ((100 * ((shipAvailable) / parseFloat(maxSkuCountByAttributes))));\n availabilityValues += \":\" + (pickupAvailable).toString() + \"_\" + (maxSkuCountByAttributes) + \"_\" + ((100 * ((pickupAvailable) / parseFloat(maxSkuCountByAttributes))));\n return availabilityValues;\n }\n catch (ex) { }\n };\n s.buildProductString = function (eCode, units, revenue, events, merchEvars) {\n units = units || 0;\n revenue = revenue || 0;\n events = events || [];\n merchEvars = merchEvars || [];\n try {\n var sortFunction = function (a, b) {\n var sortRegEx = /(?:event|evar)(\\d+)/;\n var aVal = sortRegEx.exec(a);\n var bVal = sortRegEx.exec(b);\n if (aVal && bVal) {\n return parseInt(aVal[1]) - parseInt(bVal[1]);\n }\n else {\n return 0;\n }\n };\n events.sort(sortFunction);\n merchEvars.sort(sortFunction);\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Error occured while sorting product string variables.\", LogLevels.Error);\n }\n var CONST_FirstDelimiter = \",\";\n var CONST_SecondDelimiter = \";\";\n var CONST_ThirdDelimiter = \"|\";\n var replaceRegEx = new RegExp(\"[\" + CONST_FirstDelimiter + CONST_SecondDelimiter + CONST_ThirdDelimiter + \"]\", \"g\");\n var output = [];\n var outputString = \"\";\n eCode = eCode.replace(replaceRegEx, \"\");\n if (eCode) {\n output = [];\n output.push(\"\");\n output.push(eCode);\n output.push((typeof units === \"number\" && units > 0) ? units.toFixed(0) : \"\");\n output.push((typeof revenue === \"number\" && revenue > 0) ? revenue.toFixed(2) : \"\");\n for (var i = 0, l = events.length; i < l; i++) {\n if (events[i] && /event\\d+(=\\d+)?/.test(events[i])) {\n events[i] = events[i].replace(replaceRegEx, \"\");\n var match = /event(\\d+)/.exec(events[i]);\n if (match && match.length >= 2) {\n s.events = s.apl(s.events, \"event\" + match[1], \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event\" + match[1], \",\", 2);\n }\n }\n else {\n events.splice(i, 1);\n i--;\n l--;\n }\n }\n output.push(events.join(CONST_ThirdDelimiter));\n for (var i = 0, l = merchEvars.length; i < l; i++) {\n if (merchEvars[i] && /evar\\d+=\\w+/.test(merchEvars[i])) {\n merchEvars[i] = merchEvars[i].replace(replaceRegEx, \"\");\n }\n else {\n merchEvars.splice(i, 1);\n i--;\n l--;\n }\n }\n output.push(merchEvars.join(CONST_ThirdDelimiter));\n outputString = output.join(CONST_SecondDelimiter);\n }\n return outputString;\n };\n _dsgTag.thirdPartyOrderList = [];\n var thirdPartyOrderTimeout;\n FunctionRepository.Track3rdPartyOrder = function (orderID, tagName) {\n try {\n if (window[\"trackorders_\" + tagName]) {\n if (thirdPartyOrderTimeout) {\n clearTimeout(thirdPartyOrderTimeout);\n }\n thirdPartyOrderTimeout = setTimeout(function () { EventHandlers.TriggerEvent(\"3rdPartyOrder\"); }, 750);\n if (_dsgTag.thirdPartyOrderList.length === 0) {\n _dsgTag.thirdPartyOrderList.push(orderID);\n }\n _dsgTag.thirdPartyOrderList.push(tagName);\n }\n }\n catch (ex) { }\n };\n var const_MCNotApplicable = \"n/a\";\n s.marketingChannelsSet = false;\n s.populateMarketingChannelVariables = function () {\n try {\n if (_dsgTag.pageType.BlockMarketingChannels) {\n return false;\n }\n if (HelperFunctions.GetQueryStringValue(\"zoovu\") == \"true\") {\n return false;\n }\n var storedInfo = HelperFunctions.GetValue(\"ChannelInfo\");\n var jsonPreviousChannelInfo = storedInfo ? storedInfo.split(\"|\")[0] : \"\";\n var previousChannelInfo = jsonPreviousChannelInfo ? JSON.parse(jsonPreviousChannelInfo) : {};\n var previousChannelString = jsonPreviousChannelInfo ? previousChannelInfo.Channel + \"|\" + previousChannelInfo.ReferringDomain.toLowerCase() + \"|\" + previousChannelInfo.Campaign.toLowerCase() + \"|\" + previousChannelInfo.URL : \"\";\n var channelChanged = false;\n var channelInfo = HelperFunctions.GetMarketingChannelInfo();\n var channelString = \"\";\n if (channelInfo.Channel) {\n if (_dsgTag.previousLocation && channelInfo.Channel === \"DRT\" && ((window.location.origin + window.location.pathname) == (_dsgTag.previousLocation.origin + _dsgTag.previousLocation.pathname))) {\n channelInfo = { Channel: \"\", ReferringDomain: \"\", Campaign: \"\", URL: \"\" };\n }\n }\n var getValOnceChannelInfo = \"\";\n if (channelInfo.Channel) {\n var jsonChannelInfo = '{\"Channel\":\"' + channelInfo.Channel + '\",\"ReferringDomain\":\"' + channelInfo.ReferringDomain + '\",\"Campaign\":\"' + channelInfo.Campaign + '\",\"URL\":\"' + channelInfo.URL + '\"}';\n channelChanged = jsonPreviousChannelInfo != jsonChannelInfo;\n channelInfo = JSON.parse(jsonChannelInfo);\n channelString = channelInfo.Channel + \"|\" + channelInfo.ReferringDomain.toLowerCase() + \"|\" + channelInfo.Campaign.toLowerCase() + \"|\" + channelInfo.URL;\n getValOnceChannelInfo = HelperFunctions.GetValOnce(jsonChannelInfo, \"ChannelInfo\", 30);\n }\n var setOldValues = false;\n if (!s.marketingChannelsSet && getValOnceChannelInfo) {\n s.campaign = channelInfo.Campaign != const_MCNotApplicable ? channelInfo.Campaign : \"\";\n s.eVar173 = channelString;\n s.eVar174 = \"D=v173\";\n if (HelperFunctions.GetQueryStringValue(\"gclid\")) {\n s.eVar94 = HelperFunctions.GetQueryStringValue(\"gclid\");\n s.eVar95 = \"D=v94\";\n }\n setOldValues = true;\n s.marketingChannelsSet = true;\n }\n s.eVar92 = channelString || previousChannelString;\n s.eVar93 = \"D=v92\";\n if (channelChanged) {\n s.events = s.apl(s.events, \"event101\");\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event101\", \",\", 2);\n }\n return setOldValues;\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Error occurred setting marketing channel data in AllPageDeployments: \" + ex.message, LogLevels.Error);\n }\n };\n s.SetUniversalAnatlyticsValues = function () {\n try {\n var variables = [];\n var errors = [];\n if (s.pageName) {\n s.pageName = s.pageName.replace(/'|\"/g, \"\");\n }\n variables.push({ \"Name\": \"dsgPageNameLookup\", \"Handler\": function () {\n if (!s.pageName) {\n var lookup = s.dsgPageNameLookup();\n if (lookup) {\n s.pageName = lookup.name;\n s.prop2 = lookup.type;\n }\n }\n } });\n variables.push({ \"Name\": \"contentHierProps\", \"Handler\": function () {\n s.contentHierProps();\n } });\n variables.push({ \"Name\": \"_previousPageName\", \"Handler\": function () {\n if (_dsgTag.previousPageValues) {\n s.eVar27 = _dsgTag.previousPageValues[\"v27\"];\n s.eVar28 = _dsgTag.previousPageValues[\"v28\"];\n if (!s.eVar27)\n s.eVar27 = \"Entry Page\";\n if (!s.eVar28)\n s.eVar28 = \"Entry Page\";\n }\n if (s.pageName && s.prop2) {\n s.saveValueForNextPageView(\"v27\", s.friendlyPageName || s.pageName);\n s.saveValueForNextPageView(\"v28\", s.prop2);\n s.friendlyPageName = \"\";\n }\n } });\n variables.push({ \"Name\": \"Queue\", \"Handler\": function () {\n if (document.title.toLowerCase().indexOf(\"waiting room\") >= 0) {\n s.pageName = _dsgTag.currentWebsite.Abbreviation + \": Special Product Queue\";\n s.prop2 = \"Special Product Queue\";\n }\n } });\n variables.push({ \"Name\": \"emptyProducts\", \"Handler\": function () {\n if (s.events && (s.eVar2 || s.eVar3 || s.eVar4 || s.eVar63) && !s.products)\n s.products = \";\";\n } });\n variables.push({ \"Name\": \"referrer\", \"Handler\": function () {\n if (document.referrer && document.referrer.indexOf(\"krypto=\") >= 0)\n s.referrer = HelperFunctions.removeURLParameters(document.referrer, [\"krypto\"]);\n } });\n variables.push({ \"Name\": \"prop8\", \"Handler\": function () {\n if (s.eVar2) {\n s.prop8 = \"D=v2\";\n s.events = s.apl(s.events, \"event2\");\n }\n } });\n variables.push({ \"Name\": \"prop22\", \"Handler\": function () {\n s.prop22 = _dsgTag.config.wasPrerendered.toString();\n } });\n variables.push({ \"Name\": \"prop33\", \"Handler\": function () {\n var botAnalysisCookie = \"\";\n var cookiePrefixes = [\"dsg\", \"gg\", \"cs\"];\n for (var i = 0; i < cookiePrefixes.length && !botAnalysisCookie; i++) {\n botAnalysisCookie = HelperFunctions.GetCookieValue(cookiePrefixes[i] + \"_perf_analysis\") || \"\";\n }\n if (botAnalysisCookie) {\n s.prop33 = botAnalysisCookie;\n }\n } });\n variables.push({ \"Name\": \"prop41\", \"Handler\": function () {\n if (HelperFunctions.GetCookieValue(\"locationAllowed\") === \"Y\") {\n s.prop41 = \"true\";\n }\n else {\n s.prop41 = \"false\";\n }\n } });\n variables.push({ \"Name\": \"prop42\", \"Handler\": function () {\n } });\n variables.push({ \"Name\": \"prop54\", \"Handler\": function () {\n s.prop54 = (typeof (window.siteData) !== 'undefined').toString();\n } });\n variables.push({ \"Name\": \"prop56\", \"Handler\": function () {\n var debugValues = [];\n debugValues.push(_dsgTag.tagVersion ? _dsgTag.tagVersion : \"Unknown\");\n var tagScript = document.querySelector(\"script[src*='utag.js']\");\n debugValues.push(tagScript ? tagScript.src.toLowerCase().replace(\"/utag.js\", \"\") : \"Unknown\");\n s.prop56 = debugValues.join(\"|\");\n } });\n variables.push({ \"Name\": \"prop60\", \"Handler\": function () {\n if (typeof _dsgTag.OrderHistory !== \"undefined\") {\n s.prop60 = (_dsgTag.OrderHistory.length).toString();\n }\n } });\n variables.push({ \"Name\": \"prop62\", \"Handler\": function () {\n s.prop62 = HelperFunctions.GetCookieValue(\"NNC\");\n } });\n variables.push({ \"Name\": \"prop65\", \"Handler\": function () {\n s.prop65 = HelperFunctions.GetCookieValue(\"yanni\") ? \"Y\" : \"N\";\n } });\n variables.push({ \"Name\": \"eVar6\", \"Handler\": function () {\n s.eVar6 = \"+1\";\n } });\n variables.push({ \"Name\": \"eVar22\", \"Handler\": function () {\n if (HelperFunctions.GetQueryStringValue(\"customerkey\")) {\n s.eVar22 = _dsgTag.CustomerIDs.CustomerKey;\n }\n } });\n variables.push({ \"Name\": \"eVar24\", \"Handler\": function () {\n var covertDateToVariableFormat = function (input) {\n var dayNames = ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'];\n var output = (input.getHours() % 12 === 0 ? 12 : input.getHours() % 12).toString();\n output += \":\" + (input.getMinutes() < 10 ? \"0\" : \"\") + input.getMinutes() + \" \";\n output += (input.getHours() >= 12 ? \"PM\" : \"AM\");\n output += \"|\" + dayNames[input.getDay()];\n return output;\n };\n var serverTimes = HelperFunctions.GetStandardizedDKSTime();\n if (serverTimes && serverTimes.length > 1) {\n s.eVar24 = covertDateToVariableFormat(serverTimes[0]);\n s.eVar25 = covertDateToVariableFormat(serverTimes[1]);\n }\n } });\n variables.push({ \"Name\": \"eVar29\", \"Handler\": function () {\n if (HelperFunctions.GetQueryStringValue(\"AthleteID\")) {\n if (_dsgTag.CustomerIDs.AthleteID) {\n s.eVar29 = _dsgTag.CustomerIDs.AthleteID;\n }\n }\n } });\n variables.push({ \"Name\": \"eVar36\", \"Handler\": function () {\n if (HelperFunctions.GetQueryStringValue(\"source\")) {\n s.eVar36 = HelperFunctions.GetQueryStringValue(\"source\");\n s.eVar36 = s.getValOnce(s.eVar36, \"v36\", 30, \"m\");\n if (s.eVar36) {\n s.events = s.apl(s.events, \"event21\");\n }\n }\n if (s.eVar36) {\n s.eVar36 = s.eVar36.toString().replace(/(^(\")|(\")$)/g, \"\");\n }\n } });\n variables.push({ \"Name\": \"eVar42\", \"Handler\": function () {\n s.eVar42 = \"D=User-Agent\";\n try {\n if (/\\t/gi.test(navigator.userAgent)) {\n s.eVar42 = navigator.userAgent.replace(/\\t/gi, \" \");\n }\n }\n catch (ex) { }\n } });\n variables.push({ \"Name\": \"eVar43\", \"Handler\": function () {\n s.eVar43 = _dsgTag.CustomerIDs.AdobeMCVID;\n } });\n variables.push({ \"Name\": \"eVar44\", \"Handler\": function () {\n if (s.eVar44) {\n s.prop55 = \"D=v44\";\n if (!s.prop23) {\n if (typeof s.pageName !== \"undefined\" && s.pageName.indexOf(\"D=\") >= 0) {\n s.prop23 = s.pageName;\n }\n else {\n s.prop23 = \"D=pageName\";\n }\n if (!s.prop23) {\n s.prop23 = _dsgTag.previousPageValues[\"v27\"];\n }\n }\n if (!s.prop24)\n s.prop24 = \"D=c2\";\n s.events = s.apl(s.events, \"event20\");\n }\n } });\n variables.push({ \"Name\": \"eVar45\", \"Handler\": function () {\n s.eVar45 = _dsgTag.currentWebsite.Abbreviation;\n } });\n variables.push({ \"Name\": \"eVar47\", \"Handler\": function () {\n s.eVar47 = \"D=r\";\n } });\n variables.push({ \"Name\": \"eVar50\", \"Handler\": function () {\n s.eVar50 = _dsgTag.customerLane;\n } });\n variables.push({ \"Name\": \"eVar64\", \"Handler\": function () {\n s.eVar64 = _dsgTag.experience;\n } });\n variables.push({ \"Name\": \"eVar65\", \"Handler\": function () {\n if ((s.eVar1 && s.eVar1.toLowerCase().indexOf(\"topnav\") >= 0) || s.eVar2) {\n if (s.eVar2) {\n s.eVar65 = 'D=\"Search|\"+v2';\n s.prop63 = 'D=\"Search|\"+v2';\n }\n else {\n s.eVar65 = 'D=\"Top Navigation|\"+v1';\n s.prop63 = 'D=\"Top Navigation|\"+v1';\n s.events = s.apl(s.events, \"event76\");\n }\n }\n } });\n variables.push({ \"Name\": \"eVar73\", \"Handler\": function () {\n if ((s.eVar27 && s.eVar27.toLowerCase().indexOf(\"home page\") >= 0) && s.eVar1) {\n s.eVar73 = \"D=v1\";\n s.prop67 = \"D=v1\";\n s.events = s.apl(s.events, \"event77\");\n }\n } });\n variables.push({ \"Name\": \"eVar74\", \"Handler\": function () {\n if (s.pageName) {\n s.eVar74 = \"D=pageName\";\n }\n } });\n variables.push({ \"Name\": \"eVar75\", \"Handler\": function () {\n if (window.location.search.indexOf(\"@\") < 0 && window.location.hash.indexOf(\"@\") < 0) {\n s.prop75 = \"D=g\";\n s.eVar75 = \"D=g\";\n }\n else {\n s.prop75 = \"D=v75\";\n s.eVar75 = \"PII-Email\";\n }\n } });\n variables.push({ \"Name\": \"eVar83\", \"Handler\": function () {\n s.eVar83 = HelperFunctions.GetCookieValue(\"QuantumMetricUserID\");\n } });\n variables.push({ \"Name\": \"eVar84\", \"Handler\": function () {\n s.eVar84 = HelperFunctions.GetCookieValue(\"QuantumMetricSessionID\");\n } });\n variables.push({ \"Name\": \"eVar130\", \"Handler\": function () {\n var cookieValue = HelperFunctions.GetCookieValue(\"_mitata\");\n s.eVar130 = cookieValue ? cookieValue.substring(cookieValue.length - 3) : \"\";\n } });\n variables.push({ \"Name\": \"eVar132\", \"Handler\": function () {\n s.eVar132 = _dsgTag.PageCount;\n } });\n variables.push({ \"Name\": \"eVar138\", \"Handler\": function () {\n s.eVar138 = HelperFunctions.GetCookieValue(\"adbinf\") || \"Cookie not Set\";\n } });\n variables.push({ \"Name\": \"eVar139\", \"Handler\": function () {\n s.eVar139 = HelperFunctions.GetCookieValue(\"modern\") || \"Cookie not Set\";\n } });\n variables.push({ \"Name\": \"eVar142\", \"Handler\": function () {\n s.eVar142 = HelperFunctions.GetValue(\"ErrorList\") ? JSON.parse(HelperFunctions.GetValue(\"ErrorList\") || \"\").join(\",\") : \"\";\n } });\n variables.push({ \"Name\": \"eVar152\", \"Handler\": function () {\n s.eVar152 = HelperFunctions.GetValue(\"eyeo\") ? (HelperFunctions.GetValue(\"eyeo\") || \"\").split(\"|\")[0] : \"\";\n s.baseLinkTrackVars = s.apl(s.baseLinkTrackVars, \"eVar152\", \",\", 2);\n } });\n variables.push({ \"Name\": \"Lane Variables\", \"Handler\": function () {\n var poolsPerVariable = 3;\n var evarsToUse = [\"168\", \"169\", \"170\"];\n for (var i = 0; i < evarsToUse.length; i++) {\n var currentPools = _dsgTag.customerLanes.slice(i * poolsPerVariable, (i * poolsPerVariable) + poolsPerVariable);\n s[\"eVar\" + evarsToUse[i]] = currentPools.join(\",\");\n }\n } });\n variables.push({ \"Name\": \"event226\", \"Handler\": function () {\n if (!_dsgTag.taggingIsSynchronous) {\n s.events = s.apl(s.events, \"event226\");\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event226\", \",\", 2);\n }\n } });\n for (var i = 0; i < variables.length; i++) {\n try {\n variables[i][\"Handler\"]();\n }\n catch (ex) {\n var variableName = variables[i][\"Name\"];\n if (typeof errors.indexOf === \"function\" && errors.indexOf(variableName) < 0) {\n errors.push(variableName);\n var errorMessage = \"Failed to set universal pixel value: \" + variableName + \": \" + ex.message;\n HelperFunctions.DebugLog(errorMessage, LogLevels.Error);\n }\n }\n }\n if (typeof s.eVar18 !== \"undefined\" && s.eVar18.toString() == \"0\") {\n s.eVar18 = \"Zero\";\n }\n s.ForceVariablesToLowerCase();\n s.SetVariableCopies();\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Error setting universal pixel value: \" + ex.message, LogLevels.Error);\n }\n };\n s.GetFullVariableName = function (i) {\n return i.replace(/^c(\\d+)$/g, \"prop$1\").replace(/^v(\\d+)$/g, \"eVar$1\");\n };\n s.ForceVariablesToLowerCase = function () {\n var forceToLowerCaseMap = [\"campaign\", \"v1\", \"v2\", \"v5\", \"c10\", \"c11\"];\n for (var i = 0; i < forceToLowerCaseMap.length; i++) {\n var varName = s.GetFullVariableName(forceToLowerCaseMap[i]);\n if (s[varName]) {\n s[varName] = s[varName].toString().toLowerCase();\n }\n }\n };\n s.SetVariableCopies = function () {\n var dynamicCopyMap = {\n \"purchaseID\": \"v16\",\n \"transactionID\": \"v16\",\n \"c8\": \"v2\",\n \"c28\": \"v28\",\n \"c45\": \"v45\",\n \"c55\": \"v44\",\n \"c57\": \"v64\",\n \"c58\": \"v54\",\n \"c64\": \"v27\",\n \"c66\": \"v1\",\n \"v93\": \"v92\",\n \"v95\": \"v94\"\n };\n for (var i in dynamicCopyMap) {\n if (s[s.GetFullVariableName(dynamicCopyMap[i])]) {\n s[s.GetFullVariableName(i)] = \"D=\" + dynamicCopyMap[i];\n }\n }\n if (typeof (s.events) !== 'undefined' && s.events !== null && s.events.match(/event67=(\\d+)/))\n s.prop9 = s.events.match(/event67=(\\d+)/)[1];\n if (s.eVar11) {\n s.events = s.apl(s.events, \"event44=\" + s.eVar11);\n }\n };\n s.AddEventsToTL = function (eventIDs) {\n if (typeof eventIDs.length === \"undefined\") {\n eventIDs = [eventIDs];\n }\n for (var i = 0; i < eventIDs.length; i++) {\n s.events = s.apl(s.events, \"event\" + eventIDs[i].toString(), \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, \"event\" + eventIDs[i].toString(), \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n }\n };\n s.triggerPageView = function () {\n try {\n try {\n s.populateMarketingChannelVariables();\n s.SetUniversalAnatlyticsValues();\n }\n catch (ex) { }\n s.triggerAEPAnalyticsEvent();\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Exception occured while triggering page view pixel: \" + ex.message, LogLevels.Error);\n }\n };\n s.triggerEvent = function (eventType) {\n try {\n try {\n if (s.populateMarketingChannelVariables()) {\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar173\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar174\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar94\", \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar95\", \",\", 2);\n }\n s.SetUniversalAnatlyticsValues();\n s.prop49 = EventHandlers.initialPageViewFired.toString();\n s.linkTrackVars = s.apl(s.linkTrackVars, \"prop49\", \",\", 2);\n }\n catch (ex) { }\n s.triggerAEPAnalyticsEvent(eventType);\n s.linkTrackEvents = \"None\";\n s.linkTrackVars = s.baseLinkTrackVars;\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Exception occured while triggering event pixel: \" + ex.message, LogLevels.Error);\n }\n };\n var AEPErrorFired = false;\n s.triggerAEPAnalyticsEvent = function (eventType, data) {\n try {\n var dataObject = data || s.CreateAEPDataObject(eventType);\n const eventData = HelperFunctions.DeepExtend({}, s.cjaData);\n delete s.cjaData;\n if (_dsgTag.SendXDMEventAnalyticsSetup) {\n FunctionRepository.SendXDMEventAnalytics(dataObject, eventData);\n }\n else {\n _dsgTag.PendingAnalyticsDataObjects = _dsgTag.PendingAnalyticsDataObjects || [];\n _dsgTag.PendingAnalyticsDataObjects.push({ aa: dataObject, cja: eventData });\n }\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Error sending AEP analytics event: \" + ex.message, LogLevels.Error);\n if (!AEPErrorFired) {\n AEPErrorFired = true;\n EventHandlers.TriggerEvent(\"SiteError\", { \"ErrorMessage\": \"Error sending AEP analytics event.\" });\n }\n }\n };\n s.CreateAEPDataObject = function (eventType) {\n var dataObject = { \"__adobe\": {} };\n s.currencyCode = \"USD\";\n try {\n var analyticsData = {};\n var variables = eventType ? s.linkTrackVars.split(\",\") : [\"pageName\", \"purchaseID\", \"transactionID\", \"server\", \"events\", \"products\", \"prop\", \"eVar\", \"list\", \"campaign\", \"pageType\", \"currencyCode\"];\n for (var i = 0; i < variables.length; i++) {\n if (s[variables[i]]) {\n var value = s[variables[i]];\n if (eventType && variables[i] === \"events\") {\n value = value.split(\",\");\n var eventList = s.linkTrackEvents.split(\",\");\n for (var j = 0; j < value.length; j++) {\n if (typeof Array.prototype.indexOf !== \"undefined\" && eventList.indexOf(value[j].replace(/=\\d+(\\.\\d+)?/g, \"\")) < 0) {\n value.splice(j--, 1);\n }\n }\n value = value.join(\",\");\n }\n analyticsData[variables[i]] = value;\n }\n else if (variables[i] === \"prop\" || variables[i] === \"eVar\" || variables[i] === \"list\") {\n var count = { \"prop\": 75, \"eVar\": 250, \"list\": 3 };\n for (var j = 1; j <= count[variables[i]]; j++) {\n if (s[variables[i] + j]) {\n analyticsData[variables[i] + j] = s[variables[i] + j];\n }\n }\n }\n }\n if (eventType) {\n analyticsData.linkName = eventType;\n analyticsData.linkType = \"o\";\n analyticsData.linkTrackVars = s.linkTrackVars;\n analyticsData.linkTrackEvents = s.linkTrackEvents;\n }\n dataObject.__adobe.analytics = analyticsData;\n }\n catch (ex) {\n var m = \"Failed to build analytics object for AEP.\";\n HelperFunctions.DebugLog(m, LogLevels.Error);\n if (!AEPErrorFired) {\n AEPErrorFired = true;\n EventHandlers.TriggerEvent(\"SiteError\", { \"ErrorMessage\": m });\n }\n }\n try {\n var targetData = {};\n targetData = FunctionRepository.targetPageParams(eventType);\n delete targetData.mbox3rdPartyId;\n dataObject.__adobe.target = targetData;\n }\n catch (ex) {\n var m = \"Failed to build target object for AEP.\";\n HelperFunctions.DebugLog(m, LogLevels.Error);\n if (!AEPErrorFired) {\n AEPErrorFired = true;\n EventHandlers.TriggerEvent(\"SiteError\", { \"ErrorMessage\": m });\n }\n }\n return dataObject;\n };\n s.tl = function () {\n var data = HelperFunctions.DeepExtend({}, window.s);\n var allowedEvents = [\"feedback_submitted\", \"form_displayed\", \"invite_triggered\", \"feedback_submitted\", \"Invite_rejected\", \"Thankyou_displayed\", \"Thankyou_close\"];\n var contextData = data.contextData;\n if (contextData && allowedEvents.indexOf(contextData.eventName) >= 0 && !(contextData.formId == \"14547\" && contextData.eventName == \"form_displayed\")) {\n EventHandlers.TriggerEvent(\"NebulaCX_Activity\", contextData);\n }\n if (data.events && data.events.indexOf(\"event63\") >= 0) {\n EventHandlers.TriggerEvent(\"BazaarVoiceInteraction\", data);\n }\n };\n s.noPageViewTimeout = setTimeout(function () {\n try {\n if (!_dsgTag.isIFrame) {\n FunctionRepository.TriggerBasicAnalyticsEvent(\"NewPageViewTimeout\", 88);\n }\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Error recording NoPageViewDetected event: \" + ex.message);\n }\n }, 10000);\n}\n;\n//# sourceMappingURL=AnalyticsInit.js.map","export const brandsToTrack = [\"adidas\", \"Allbirds\", \"ASICS\", \"Brooks\", \"CALIA\", \"Callaway\", \"Carhartt\", \"chubbies\", \"Columbia\", \"DSG\", \"FP Movement\", \"Hoka\", \"Igloo\", \"Lotto\", \"Maxfli\", \"Moolah Kicks\", \"New Balance\", \"Nike\", \"On\", \"Patagonia\", \"Speedo\", \"Stanley\", \"TaylorMade\", \"The North Face\", \"Titleist\", \"Under Armour\", \"Vans\", \"VRST\", \"Walter Hagen\", \"YETI\"];\n//# sourceMappingURL=brandsToTrack.const.js.map","export var AEPDataStreamIDs = {\n \"cartAbandonDataStreamID\": { \"prod\": \"82f399da-cb87-45b6-9cae-722e25a6789f\", \"stage\": \"82f399da-cb87-45b6-9cae-722e25a6789f:stage\", \"dev\": \"55e9cddc-ce46-4b5f-a9c4-f06310bf2fa5\" },\n \"capiDataStreamID\": { \"prod\": \"07330d93-f0ad-4a5f-b9e3-2ab1a45cf657\", \"stage\": \"87722caf-af3a-4975-8829-ff14c43c2b46\", \"dev\": \"87722caf-af3a-4975-8829-ff14c43c2b46\" },\n \"analyticsDataStreamID\": {\n \"DSG\": { \"prod\": \"39b513f8-4ee4-4b2d-910b-5848811e39f4\", \"stage\": \"9f02c9be-c017-4c67-960d-443ab2b62cf5\", \"dev\": \"9f02c9be-c017-4c67-960d-443ab2b62cf5\" },\n \"GGXY\": { \"prod\": \"27d06bdf-7e66-4599-a87d-fe02e7c9bf73\", \"stage\": \"78570821-22e8-4813-89dc-7c71bc582404\", \"dev\": \"78570821-22e8-4813-89dc-7c71bc582404\" },\n \"PBL\": { \"prod\": \"970744e6-996e-44c0-8839-a705d7c7b3da\", \"stage\": \"c8218d70-1be2-4816-9d7a-fd0919643084\", \"dev\": \"c8218d70-1be2-4816-9d7a-fd0919643084\" },\n \"GONE\": { \"prod\": \"ebce5ff3-470e-4de4-9f4b-e26e136602f7\", \"stage\": \"f6eb759b-422a-4f29-99b0-6ed021537aeb\", \"dev\": \"f6eb759b-422a-4f29-99b0-6ed021537aeb\" }\n }\n};\n//# sourceMappingURL=aepDataStreams.const.js.map","import { Websites } from \"../consts/websites.const\";\nimport { PageTypes } from \"../consts/pageTypes.const\";\nimport { InitTimings } from \"../enums/enums.enum\";\nimport { LogLevels } from \"../enums/enums.enum\";\nimport { _dsgTag } from \"../namespaces/_dsgTag.namespace\";\nimport { HelperFunctions } from \"../namespaces/helperFunctions.namespace\";\nimport { DataLayer } from \"../namespaces/dataLayer.namespace\";\nimport { TagCondition } from \"../classes/tagCondition.class\";\nimport { FunctionRepository } from \"../namespaces/functionRepository.namespace\";\nimport { CustomerIDService } from \"../namespaces/customerIDService.namespace\";\nimport { brandsToTrack } from \"../consts/brandsToTrack.const\";\nimport { AEPDataStreamIDs } from \"../consts/aepDataStreams.const\";\nvar baseConditions = [{ t: \"site\", c: \"=\", v: [\"DSG\", \"GGXY\", \"PBL\", \"GONE\", \"INVR\", \"SM\"] }, { t: \"page\", c: \"^!=\", v: \"Chat\" }, { t: \"bypass-restricted\", v: \"true\" }];\nvar conditions = [];\nfor (var i = 0; i < baseConditions.length; i++) {\n conditions.push(new TagCondition(baseConditions[i].t, baseConditions[i].c, baseConditions[i].v));\n}\nexport var AdobeExperienceManager = { name: \"AdobeExperienceManager\", timing: InitTimings.Immediate, conditions: conditions, initFunction: init };\nfunction init(inputDataObject) {\n var currentEnvironment = _dsgTag.isProduction ? ((HelperFunctions.GetValue(\"cdpStage\")) ? \"stage\" : \"prod\") : \"dev\";\n var currentWebsite = _dsgTag.currentWebsite;\n if (_dsgTag.currentWebsite.Abbreviation === \"SM\" || _dsgTag.currentWebsite.Abbreviation == \"INVR\") {\n currentWebsite = Websites.DicksSportingGoods;\n }\n var cdpCookie = HelperFunctions.GetValue(\"cdp\");\n if (cdpCookie && AEPDataStreamIDs[\"cartAbandonDataStreamID\"][cdpCookie]) {\n currentEnvironment = cdpCookie;\n }\n var ID = function (IDType, site) { return site ? AEPDataStreamIDs[IDType][site][currentEnvironment] : AEPDataStreamIDs[IDType][currentEnvironment]; };\n var cartAbandonBrands = { \"DSG\": \"DSG\", \"GGXY\": \"GG\", \"PBL\": \"PL\", \"MJ\": \"MJ\" };\n var SetupPageHandlers = function () {\n if (_dsgTag.CustomerIDs.AdobeMCVID) {\n SendXDMEventTargetOnly(FunctionRepository.targetPageParams());\n inputDataObject.AddEventHandler(\"NewPageView\", HandleAEPPageView);\n inputDataObject.AddEventHandler(\"AddToCart\", HandleAEPInteractionCartAdd);\n inputDataObject.AddEventHandler(\"CartRemoveProduct\", HandleAEPInteractionCartRemove);\n SetupCAPIHandlers();\n FunctionRepository.SendXDMEventAnalytics = SendXDMEventAnalytics;\n _dsgTag.SendXDMEventAnalyticsSetup = true;\n if (_dsgTag.PendingAnalyticsDataObjects) {\n for (var i = 0; i < _dsgTag.PendingAnalyticsDataObjects.length; i++) {\n SendXDMEventAnalytics(_dsgTag.PendingAnalyticsDataObjects[i].aa, _dsgTag.PendingAnalyticsDataObjects[i].cja);\n }\n }\n }\n else {\n setTimeout(SetupPageHandlers, 50);\n }\n };\n var SendXDMEventCartAbandon = function (xdmObject) {\n var eventData = {\n \"xdm\": xdmObject,\n \"edgeConfigOverrides\": {\n \"datastreamId\": ID(\"cartAbandonDataStreamID\")\n }\n };\n if (!_dsgTag.isAOS) {\n alloy(\"sendEvent\", eventData);\n }\n };\n var SendXDMEventAnalytics = function (dataObject, xdmObject) {\n if (HelperFunctions.IsKnownBot()) {\n return;\n }\n var eventData = {};\n if (dataObject) {\n eventData.data = dataObject;\n }\n eventData.xdm = {};\n if (typeof xdmObject.eventType !== \"undefined\") {\n eventData.xdm = xdmObject;\n }\n else {\n eventData.edgeConfigOverrides = {\n \"com_adobe_experience_platform\": {\n \"enabled\": false\n }\n };\n }\n eventData.renderDecisions = true;\n eventData.personalization = { \"includeRenderedPropositions\": true };\n if (_dsgTag.CustomerIDs.AthleteID) {\n eventData.xdm.identityMap = { \"AthleteId\": [{ \"id\": _dsgTag.CustomerIDs.AthleteID, \"authenticatedState\": \"authenticated\" }] };\n }\n alloy(\"sendEvent\", eventData).then(function (result) { s.processPostTrackCallbacks(result); }).catch(function (ex) { HelperFunctions.DebugLog(\"Error sending analytics to AEP: \" + ex.message, LogLevels.Error); });\n };\n var SendXDMEventTargetOnly = function (dataObject) {\n var eventData = {\n \"data\": { \"__adobe\": { \"target\": dataObject } },\n \"type\": \"decisioning.propositionFetch\",\n \"renderDecisions\": true,\n \"personalization\": { \"sendDisplayEvent\": false },\n \"edgeConfigOverrides\": {\n \"com_adobe_experience_platform\": {\n \"enabled\": false\n }\n }\n };\n if (_dsgTag.CustomerIDs.AthleteID) {\n eventData.xdm = { \"identityMap\": { \"AthleteId\": [{ \"id\": _dsgTag.CustomerIDs.AthleteID, \"authenticatedState\": \"authenticated\" }] } };\n }\n _dsgTag.targetData = _dsgTag.targetData || [];\n s.postTrackCallbackList.push(function (result) {\n if (result.propositions) {\n result.propositions.forEach(function (proposition) {\n if (proposition.renderAttempted) {\n proposition.items.forEach(function (item) {\n if (item.meta) {\n var exists = false;\n for (var i = 0; i < _dsgTag.targetData.length && !exists; i++) {\n exists = _dsgTag.targetData[i][\"activity.name\"] == item.meta[\"activity.name\"];\n }\n if (!exists) {\n _dsgTag.targetData.push(item.meta);\n }\n }\n });\n }\n });\n }\n });\n alloy(\"sendEvent\", eventData).then(function (result) { s.processPostTrackCallbacks(result); }).catch(function (ex) { HelperFunctions.DebugLog(\"Error sending Target to AEP: \" + ex.message, LogLevels.Error); });\n };\n var SendXDMEventCapi = function (xdmObject, eventID) {\n if (!_dsgTag.DoNotSell) {\n var IDObject = { \"_dsg\": {\n \"capiEventID\": eventID\n }\n };\n if (HelperFunctions.GetCookieValue(\"_fbp\")) {\n IDObject._dsg.fbBrowserID = HelperFunctions.GetCookieValue(\"_fbp\");\n }\n if (HelperFunctions.GetCookieValue(\"_scid\")) {\n IDObject._dsg.snapchatID = HelperFunctions.GetCookieValue(\"_scid\");\n }\n xdmObject = HelperFunctions.DeepExtend(xdmObject, IDObject);\n if (!_dsgTag.isAOS) {\n alloy(\"sendEvent\", {\n \"xdm\": xdmObject,\n \"edgeConfigOverrides\": {\n \"datastreamId\": ID(\"capiDataStreamID\")\n }\n });\n }\n }\n };\n var GetCartData = function () {\n var cartData = DataLayer.GetValue(\"CartCookieSKUList\");\n var productListItemsOutput = [];\n if (cartData) {\n for (var i = 0; i < cartData.length; i++) {\n productListItemsOutput.push({ 'SKU': cartData[i] });\n }\n }\n return productListItemsOutput;\n };\n var HandleAEPPageView = function (eventInstance) {\n switch (_dsgTag.pageType) {\n case PageTypes.ProductDetails: {\n HandleAEPInteractionProductView(eventInstance);\n break;\n }\n case PageTypes.OrderConfirmation: {\n HandleAEPInteractionPurchase(eventInstance);\n break;\n }\n }\n HandleAEPInteractionGenericPageView();\n };\n var HandleAEPInteractionGenericPageView = function () {\n var dataObject = {};\n try {\n dataObject = {\n \"_dsg\": {\n \"brand\": { \"brand\": cartAbandonBrands[currentWebsite.Abbreviation] },\n },\n \"eventType\": \"web.webPageDetails.pageViews\",\n \"web\": {\n \"webPageDetails\": {\n \"name\": window.s.pageName,\n \"siteSection\": window.location.pathname.split(\"/\")[window.location.pathname.split(\"/\").length - 1]\n }\n }\n };\n if (_dsgTag.pageType === PageTypes.Category) {\n dataObject.web.webPageDetails._dsg = {};\n dataObject.web.webPageDetails._dsg.categoryName = DataLayer.GetValue(\"CategoryName\");\n }\n else if (_dsgTag.pageType === PageTypes.Family) {\n dataObject.web.webPageDetails._dsg = {};\n dataObject.web.webPageDetails._dsg.familyName = DataLayer.GetValue(\"FamilyName\");\n }\n }\n catch (ex) { }\n SendXDMEventCartAbandon(dataObject);\n };\n var HandleAEPInteractionProductView = function (eventInstance) {\n var dataObject = {\n \"_dsg\": {\n \"brand\": { \"brand\": cartAbandonBrands[currentWebsite.Abbreviation] },\n },\n \"eventType\": \"commerce.productViews\",\n \"commerce\": {\n \"productViews\": {\n \"id\": DataLayer.GetValue(\"ProductID\"),\n \"value\": 0\n }\n }\n };\n SendXDMEventCartAbandon(dataObject);\n };\n var HandleAEPInteractionCartAdd = function (eventInstance) {\n var products = eventInstance.eventData.ItemsAddedToCart || eventInstance.eventData.ProductsAddedToCart;\n if (typeof products !== \"undefined\") {\n if (typeof products.length === \"undefined\") {\n var tempArray = [products];\n products = tempArray;\n }\n if (products.length > 0) {\n for (var key = 0; key < products.length; key++) {\n var currentProduct = products[key];\n var name = currentProduct.ProductName;\n var sku = currentProduct.ProductSku || currentProduct.ProductSKU;\n var quantity = parseInt(currentProduct.ProductQty);\n var revenue = (currentProduct.CurrentPricePerUnit.toString().replace(/[^0-9.]/g, '')) * quantity;\n var newCart = eventInstance.eventData.NewCart.toLowerCase() === \"y\" || eventInstance.eventData.NewCart.toLowerCase() === \"true\";\n var dataObject = {\n \"_dsg\": {\n \"brand\": { \"brand\": cartAbandonBrands[currentWebsite.Abbreviation] },\n },\n \"eventType\": \"commerce.productListAdds\",\n \"commerce\": {\n \"productListAdds\": {\n \"id\": sku,\n \"value\": parseFloat(revenue.toFixed(2))\n }\n },\n \"productListItems\": GetCartData()\n };\n SendXDMEventCartAbandon(dataObject);\n if (newCart) {\n dataObject = {\n \"_dsg\": {\n \"brand\": { \"brand\": cartAbandonBrands[currentWebsite.Abbreviation] },\n },\n \"eventType\": \"commerce.productListOpens\",\n \"commerce\": {\n \"productListOpens\": {\n \"id\": \"\",\n \"value\": 0\n }\n }\n };\n SendXDMEventCartAbandon(dataObject);\n }\n }\n }\n }\n };\n var HandleAEPInteractionCartRemove = function (eventInstance) {\n var sku = eventInstance.eventData.RemovedProductSKU;\n if (typeof sku !== \"undefined\") {\n var dataObject = {\n \"_dsg\": {\n \"brand\": { \"brand\": cartAbandonBrands[currentWebsite.Abbreviation] }\n },\n \"eventType\": \"commerce.productListRemovals\",\n \"commerce\": {\n \"productListRemovals\": {\n \"id\": sku,\n \"value\": 0\n }\n },\n \"productListItems\": GetCartData()\n };\n SendXDMEventCartAbandon(dataObject);\n }\n };\n var HandleAEPInteractionPurchase = function (eventInstance) {\n DataLayer.PassValuesToFunction([\"OrderID\", \"OrderTotal\", \"OrderTax\", \"OrderShippingRevenue\", \"ProductListArray\"], function (orderID, orderTotal, taxTotal, shippingTotal, products) {\n var productsArray = [];\n var orderRevenue = 0;\n if (typeof products !== \"undefined\") {\n if (products.length > 0) {\n for (var key = 0; key < products.length; key++) {\n var currentProduct = products[key];\n var name = currentProduct.ProductName;\n var sku = currentProduct.ProductSku || currentProduct.ProductSKU;\n var quantity = parseInt(currentProduct.ProductQty);\n var productrevenue = parseFloat((currentProduct.CurrentPricePerUnit - currentProduct.DistributedOrderDiscountPerUnit).toFixed(2).replace(/[^0-9.]/g, '')) * quantity;\n productsArray.push({\n \"SKU\": sku,\n \"currencyCode\": \"USD\",\n \"name\": name,\n \"priceTotal\": parseFloat(productrevenue.toFixed(2)),\n \"productAddMethod\": \"web\",\n \"quantity\": quantity,\n \"unitOfMeasureCode\": \"\"\n });\n }\n }\n }\n if (orderTotal && taxTotal && shippingTotal) {\n orderRevenue = (orderTotal - taxTotal - shippingTotal);\n }\n var dataObject = {\n \"_dsg\": {\n \"brand\": { \"brand\": cartAbandonBrands[currentWebsite.Abbreviation] }\n },\n \"eventType\": \"commerce.purchases\",\n \"commerce\": {\n \"purchases\": {\n \"id\": orderID,\n \"value\": parseFloat(orderRevenue.toFixed(2))\n }\n },\n \"productListItems\": productsArray\n };\n SendXDMEventCartAbandon(dataObject);\n }, eventInstance.eventData);\n };\n var SetupCAPIHandlers = function () {\n inputDataObject.AddEventHandler(\"NewPageView\", HandleCAPIGenericPageView);\n inputDataObject.AddEventHandler(\"AddToCart\", HandleCAPIAddToCart);\n inputDataObject.AddEventHandler(\"EmailSignup\", HandleCAPIEmailSignup);\n };\n var HandleCAPIGenericPageView = function (eventInstance) {\n var pageViewObject = {};\n try {\n pageViewObject = {\n \"eventType\": \"web.webPageDetails.pageViews\",\n \"web\": {\n \"webPageDetails\": {\n \"name\": window.s.pageName,\n \"siteSection\": _dsgTag.pageType.Name\n }\n }\n };\n }\n catch (ex) { }\n SendXDMEventCapi(pageViewObject, eventInstance.eventData.taggingEventID);\n switch (_dsgTag.pageType) {\n case PageTypes.Search: {\n HandleCAPISearch(eventInstance);\n break;\n }\n case PageTypes.ProductDetails: {\n HandleCAPIProductView(eventInstance);\n break;\n }\n case PageTypes.OrderConfirmation: {\n HandleCAPIPurchase(eventInstance);\n break;\n }\n }\n };\n var HandleCAPISearch = function (eventInstance) {\n var pageViewObject = {};\n try {\n pageViewObject = {\n \"eventType\": \"web.webinteraction.search\",\n \"web\": {\n \"webPageDetails\": {\n \"name\": window.s.pageName\n }\n },\n \"search\": {\n \"keywords\": eventInstance.eventData.EnteredSearchTerm\n }\n };\n }\n catch (ex) { }\n SendXDMEventCapi(pageViewObject, eventInstance.eventData.taggingEventID);\n };\n var HandleCAPIProductView = function (eventInstance) {\n var pageViewObject = {};\n try {\n pageViewObject = {\n \"eventType\": \"commerce.productViews\",\n \"web\": {\n \"webPageDetails\": {\n \"name\": window.s.pageName\n }\n },\n \"commerce\": {\n \"productViews\": {\n \"id\": DataLayer.GetValue(\"ProductID\", eventInstance.eventData),\n \"value\": 0,\n \"_dsg\": {\n \"brand\": DataLayer.GetValue(\"ProductBrand\", eventInstance.eventData),\n \"name\": DataLayer.GetValue(\"ProductName\", eventInstance.eventData)\n }\n }\n }\n };\n }\n catch (ex) { }\n SendXDMEventCapi(pageViewObject, eventInstance.eventID);\n };\n var HandleCAPIPurchase = function (eventInstance) {\n DataLayer.PassValuesToFunction([\"OrderID\", \"OrderTotal\", \"OrderTax\", \"OrderShippingRevenue\", \"ProductListArray\"], function (orderID, orderTotal, taxTotal, shippingTotal, products) {\n var productsArray = [];\n var orderRevenue = 0;\n if (typeof products !== \"undefined\") {\n if (products.length > 0) {\n for (var key = 0; key < products.length; key++) {\n var currentProduct = products[key];\n var name = currentProduct.ProductName;\n var sku = currentProduct.ProductSku || currentProduct.ProductSKU;\n var quantity = parseInt(currentProduct.ProductQty);\n var productrevenue = parseFloat((currentProduct.CurrentPricePerUnit - currentProduct.DistributedOrderDiscountPerUnit).toFixed(2).replace(/[^0-9.]/g, '')) * quantity;\n var brand = currentProduct.ProductBrand;\n var productData = {\n \"SKU\": sku,\n \"currencyCode\": \"USD\",\n \"name\": name,\n \"priceTotal\": parseFloat(productrevenue.toFixed(2)),\n \"productAddMethod\": \"web\",\n \"product\": currentProduct.ProductID,\n \"quantity\": quantity,\n \"unitOfMeasureCode\": \"\",\n \"_dsg\": { \"brand\": brand }\n };\n productsArray.push(productData);\n if (brand) {\n for (var j = 0; j < brandsToTrack.length; j++) {\n if (brand.toLowerCase() === brandsToTrack[j].toLowerCase()) {\n var brandDataObject = {\n \"eventType\": \"commerce.brandPurchase\",\n \"productListItems\": [productData]\n };\n SendXDMEventCapi(brandDataObject, orderID + \"-\" + j);\n }\n }\n }\n }\n }\n }\n if (orderTotal && taxTotal && shippingTotal) {\n orderRevenue = parseFloat((orderTotal - taxTotal - shippingTotal).toFixed(2));\n }\n var orderObject = {};\n try {\n orderObject = {\n \"eventType\": \"commerce.purchases\",\n \"web\": {\n \"webPageDetails\": {\n \"name\": window.s.pageName\n }\n },\n \"order\": {\n \"orderID\": orderID,\n \"priceTotal\": orderRevenue\n },\n \"productListItems\": productsArray\n };\n }\n catch (ex) { }\n SendXDMEventCapi(orderObject, orderID);\n }, eventInstance.eventData);\n };\n var HandleCAPIAddToCart = function (eventInstance) {\n var dataObject = {};\n try {\n var products = eventInstance.eventData.ItemsAddedToCart || eventInstance.eventData.ProductsAddedToCart;\n if (typeof products !== \"undefined\") {\n if (typeof products.length === \"undefined\") {\n var tempArray = [products];\n products = tempArray;\n }\n if (products.length > 0) {\n for (var key = 0; key < products.length; key++) {\n var currentProduct = products[key];\n var name = currentProduct.ProductName;\n var sku = currentProduct.ProductSku || currentProduct.ProductSKU;\n var quantity = parseInt(currentProduct.ProductQty);\n var revenue = (currentProduct.CurrentPricePerUnit.toString().replace(/[^0-9.]/g, '')) * quantity;\n var newCart = eventInstance.eventData.NewCart.toLowerCase() === \"y\" || eventInstance.eventData.NewCart.toLowerCase() === \"true\";\n dataObject = {\n \"eventType\": \"commerce.productListAdds\",\n \"commerce\": {\n \"productListAdds\": {\n \"id\": sku,\n \"value\": parseFloat(revenue.toFixed(2))\n }\n },\n \"productListItems\": [\n {\n \"SKU\": sku,\n \"currencyCode\": \"USD\",\n \"name\": name,\n \"priceTotal\": parseFloat(revenue.toFixed(2)),\n \"product\": currentProduct.ProductID,\n \"productAddMethod\": \"web\",\n \"quantity\": quantity,\n \"unitOfMeasureCode\": \"\"\n }\n ]\n };\n SendXDMEventCapi(dataObject, eventInstance.eventID);\n if (newCart) {\n dataObject = {\n \"eventType\": \"commerce.productListOpens\",\n \"commerce\": {\n \"productListOpens\": {\n \"id\": \"\",\n \"value\": 0\n }\n }\n };\n SendXDMEventCapi(dataObject, eventInstance.eventData.taggingEventID);\n }\n }\n }\n }\n }\n catch (ex) { }\n };\n var HandleCAPIEmailSignup = function (eventInstance) {\n var dataObject = {};\n try {\n dataObject = {\n \"eventType\": \"leadOperation.newLead\"\n };\n }\n catch (ex) { }\n SendXDMEventCapi(dataObject, eventInstance.eventID);\n };\n (function () {\n CustomerIDService.UpdateAllCustomerIDs();\n SetupPageHandlers();\n })();\n}\n;\n//# sourceMappingURL=AdobeExperienceManager.js.map","import { Websites } from \"../consts/websites.const\";\nimport { PageTypes } from \"../consts/pageTypes.const\";\nimport { InitTimings } from \"../enums/enums.enum\";\nimport { _dsgTag } from \"../namespaces/_dsgTag.namespace\";\nimport { HelperFunctions } from \"../namespaces/helperFunctions.namespace\";\nimport { DataLayer } from \"../namespaces/dataLayer.namespace\";\nimport { TagCondition } from \"../classes/tagCondition.class\";\nvar baseConditions = [{ t: \"site\", c: \"=\", v: [\"DSG\", \"GGXY\", \"PBL\", \"GONE\", \"MJ\"] }, { t: \"aos\", c: \"=\", v: \"false\" }, { t: \"iframe\", c: \"=\", v: \"false\" }];\nvar conditions = [];\nfor (var i = 0; i < baseConditions.length; i++) {\n conditions.push(new TagCondition(baseConditions[i].t, baseConditions[i].c, baseConditions[i].v));\n}\nexport var Attentive = { name: \"Attentive\", timing: InitTimings.Page3rdPartySignal, conditions: conditions, initFunction: init };\nfunction init(inputDataObject) {\n var attentiveID = \"\";\n switch (_dsgTag.currentWebsite) {\n case Websites.DicksSportingGoods:\n {\n attentiveID = \"dsg\";\n break;\n }\n case Websites.GolfGalaxy:\n {\n attentiveID = \"gg\";\n break;\n }\n case Websites.GoingGoingGone:\n {\n attentiveID = \"mgone\";\n break;\n }\n case Websites.PublicLands:\n {\n attentiveID = \"pl\";\n break;\n }\n case Websites.Moosejaw:\n {\n attentiveID = \"mj\";\n break;\n }\n }\n if (attentiveID) {\n HelperFunctions.LoadScriptAsyncAndCallFunction(\"//cdn.attn.tv/\" + attentiveID + \"/dtag.js\", inputDataObject.name, function () {\n inputDataObject.AddEventHandler(\"NewPageView\", function (eventObject) {\n switch (_dsgTag.pageType) {\n case (PageTypes.OrderConfirmation): {\n FireAttentiveOrder(eventObject.eventData);\n break;\n }\n }\n });\n inputDataObject.AddEventHandler(\"AddToCart\", FireAttentiveAddToCart);\n inputDataObject.AddEventHandler(\"SKUResolve\", FireAttentiveProductView);\n });\n }\n var FireAttentiveProductView = function (eventObject) {\n var data = eventObject.eventData;\n var itemObject = {\n productId: data.ecode,\n productVariantId: data.sku.id || data.sku.partNumber,\n price: {\n value: (data.sku.price || data.sku.prices).offerPrice,\n currency: 'USD',\n }\n };\n window.attentive.analytics.productView({\n items: [itemObject]\n });\n };\n var FireAttentiveAddToCart = function (eventObject) {\n var data = eventObject.eventData;\n if (data && data.ProductsAddedToCart) {\n var itemObject = {\n productId: data.ProductsAddedToCart[0].ProductID,\n productVariantId: data.ProductsAddedToCart[0].ProductSKU,\n name: data.ProductsAddedToCart[0].ProductName,\n price: {\n value: parseFloat(data.ProductsAddedToCart[0].CurrentPricePerUnit),\n currency: 'USD',\n },\n quantity: parseInt(data.ProductsAddedToCart[0].ProductQty),\n };\n window.attentive.analytics.addToCart({\n items: [itemObject]\n });\n }\n };\n var FireAttentiveOrder = function (eventObject) {\n var data = eventObject.eventData;\n var itemsArray = [];\n var productInfo = DataLayer.GetValue(\"ProductListArray\", data);\n for (var i = 0; i < productInfo.length; i++) {\n itemsArray.push({\n productId: productInfo[i].ProductID,\n productVariantId: productInfo[i].ProductSKU,\n name: productInfo[i].ProductName,\n price: {\n value: parseFloat((productInfo[i].CurrentPricePerUnit - productInfo[i].DistributedOrderDiscountPerUnit).toFixed(2)),\n currency: 'USD',\n },\n quantity: parseInt(productInfo[i].ProductQty),\n });\n }\n window.attentive.analytics.purchase({\n items: itemsArray,\n order: {\n orderId: DataLayer.GetValue(\"OrderID\", data)\n }\n });\n };\n}\n;\n//# sourceMappingURL=Attentive.js.map","import { Websites } from \"../consts/websites.const\";\nimport { PageTypes } from \"../consts/pageTypes.const\";\nimport { InitTimings } from \"../enums/enums.enum\";\nimport { LogLevels } from \"../enums/enums.enum\";\nimport { _dsgTag } from \"../namespaces/_dsgTag.namespace\";\nimport { HelperFunctions } from \"../namespaces/helperFunctions.namespace\";\nimport { DataLayer } from \"../namespaces/dataLayer.namespace\";\nimport { TagCondition } from \"../classes/tagCondition.class\";\nvar baseConditions = [{ t: \"site\", c: \"=\", v: [\"DSG\", \"GGXY\"] }, { t: \"aos\", c: \"=\", v: false }, { t: \"page\", c: \"*!=\", v: [\"Product Details\", \"My Account\"] }];\nvar conditions = [];\nfor (var i = 0; i < baseConditions.length; i++) {\n conditions.push(new TagCondition(baseConditions[i].t, baseConditions[i].c, baseConditions[i].v));\n}\nexport var BazaarVoice = { name: \"BazaarVoice\", timing: InitTimings.Page3rdPartySignal, conditions: conditions, initFunction: init };\nfunction init(inputDataObject) {\n var clientName = \"\";\n switch (_dsgTag.currentWebsite) {\n case Websites.DicksSportingGoods: {\n clientName = \"dsg\";\n break;\n }\n case Websites.GolfGalaxy: {\n clientName = \"golfgalaxy\";\n break;\n }\n }\n function FireBVConversionPixel(eventObject) {\n var d = eventObject.eventData;\n DataLayer.PassValuesToFunction([\"OrderID\", \"ProductListArray\", \"OrderTotal\", \"OrderTax\", \"OrderShippingRevenue\", \"BillingState\"], function (orderID, products, orderTotal, taxTotal, shippingTotal, state) {\n var productArray = [];\n var product = {};\n for (var i = 0; i < products.length; i++) {\n product = {};\n if (typeof products[i] !== \"undefined\" && typeof products[i].ProductID !== \"undefined\")\n product.sku = products[i].ProductID;\n if (typeof products[i] !== \"undefined\" && typeof products[i].ProductName !== \"undefined\")\n product.name = products[i].ProductName;\n if (typeof products[i] !== 'undefined' && products[i].CurrentPricePerUnit && products[i].DistributedOrderDiscountPerUnit)\n product.price = (products[i].CurrentPricePerUnit - products[i].DistributedOrderDiscountPerUnit).toFixed(2);\n if (typeof products[i] !== \"undefined\" && typeof products[i].ProductQty !== \"undefined\")\n product.quantity = products[i].ProductQty;\n productArray.push(product);\n }\n var orderInfoObject = {\n \"orderId\": orderID,\n \"currency\": \"USD\",\n \"items\": productArray,\n \"tax\": parseFloat(taxTotal).toFixed(2),\n \"shipping\": parseFloat(shippingTotal).toFixed(2),\n \"total\": (parseFloat(orderTotal) - parseFloat(taxTotal) - parseFloat(shippingTotal)).toFixed(2),\n \"email\": \"test@test.com\",\n \"state\": state\n };\n try {\n BV.pixel.trackTransaction(orderInfoObject);\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"BazaarVoice ROI pixel - problem sending order info to BV: \" + ex.message, LogLevels.Warning);\n }\n }, d);\n }\n if (clientName) {\n var scriptURLBazaarVoice = \"https://apps.bazaarvoice.com/deployments/\" + clientName + \"/main_site/\" + ((_dsgTag.isProduction) ? (\"production\") : (\"staging\")) + \"/en_US/bv.js\";\n HelperFunctions.LoadScriptAsyncAndCallFunction(scriptURLBazaarVoice, inputDataObject.name, function () {\n inputDataObject.AddEventHandler(\"NewPageView\", function (eventObject) {\n if (_dsgTag.pageType === PageTypes.OrderConfirmation) {\n FireBVConversionPixel(eventObject);\n }\n });\n });\n }\n}\n;\n//# sourceMappingURL=BazaarVoice.js.map","import { Websites } from \"../consts/websites.const\";\nimport { PageTypes } from \"../consts/pageTypes.const\";\nimport { InitTimings } from \"../enums/enums.enum\";\nimport { _dsgTag } from \"../namespaces/_dsgTag.namespace\";\nimport { HelperFunctions } from \"../namespaces/helperFunctions.namespace\";\nimport { DataLayer } from \"../namespaces/dataLayer.namespace\";\nimport { TagCondition } from \"../classes/tagCondition.class\";\nvar baseConditions = [{ t: \"site\", c: \"=\", v: [\"DSG\", \"GGXY\", \"PBL\", \"GONE\", \"MJ\"] }, { t: \"page\", c: \"^!=\", v: \"Chat\" }, { t: \"aos\", c: \"=\", v: \"false\" }, { t: \"iframe\", c: \"=\", v: \"false\" }, { t: \"dns\" }];\nvar conditions = [];\nfor (var i = 0; i < baseConditions.length; i++) {\n conditions.push(new TagCondition(baseConditions[i].t, baseConditions[i].c, baseConditions[i].v));\n}\nexport var Bing = { name: \"Bing\", timing: InitTimings.Page3rdPartySignal, conditions: conditions, initFunction: init };\nfunction init(inputDataObject) {\n var bingID = \"\";\n switch (_dsgTag.currentWebsite) {\n case Websites.DicksSportingGoods: {\n bingID = \"5566415\";\n break;\n }\n case Websites.GolfGalaxy: {\n bingID = \"5599825\";\n break;\n }\n case Websites.PublicLands: {\n bingID = \"36004533\";\n break;\n }\n case Websites.GoingGoingGone: {\n bingID = \"36004539\";\n break;\n }\n case Websites.Moosejaw: {\n bingID = \"4015288\";\n break;\n }\n }\n if (bingID) {\n var FireBingPageViewPixel = function (eventObject) {\n var o = {\n ti: bingID,\n q: window.uetq\n };\n window.uetq = new UET(o);\n window.uetq.push(\"pageLoad\");\n };\n var FireBingEventPixel = function (eventObject) {\n var d = eventObject.eventData;\n switch (_dsgTag.pageType) {\n case PageTypes.Home: {\n var parameterObject = {};\n parameterObject['ecomm_prodid'] = \"\";\n parameterObject['ecomm_pagetype'] = \"home\";\n window.uetq = window.uetq || [];\n window.uetq.push('event', '', parameterObject);\n break;\n }\n case PageTypes.Search: {\n var parameterObject = {};\n parameterObject['ecomm_prodid'] = \"\";\n parameterObject['ecomm_pagetype'] = \"searchresults\";\n window.uetq = window.uetq || [];\n window.uetq.push('event', '', parameterObject);\n break;\n }\n case PageTypes.Category:\n case PageTypes.Family: {\n var parameterObject = {};\n parameterObject['ecomm_prodid'] = \"\";\n parameterObject['ecomm_pagetype'] = \"category\";\n window.uetq = window.uetq || [];\n window.uetq.push('event', '', parameterObject);\n break;\n }\n case PageTypes.ProductDetails: {\n DataLayer.PassValuesToFunction([\"ProductDetails\"], function (productDetails) {\n if (productDetails && productDetails.length && productDetails.length > 0) {\n var parameterObject = {};\n parameterObject['ecomm_prodid'] = productDetails[0].ProductID;\n parameterObject['ecomm_pagetype'] = \"product\";\n window.uetq = window.uetq || [];\n window.uetq.push('event', '', parameterObject);\n }\n }, d);\n break;\n }\n case PageTypes.Cart: {\n DataLayer.PassValuesToFunction([\"ProductIDList\"], function (IDs) {\n var parameterObject = {};\n if (IDs && IDs.length > 0) {\n parameterObject['ecomm_prodid'] = IDs;\n }\n parameterObject['ecomm_pagetype'] = \"cart\";\n window.uetq = window.uetq || [];\n window.uetq.push('event', '', parameterObject);\n }, d);\n break;\n }\n case PageTypes.OrderConfirmation: {\n DataLayer.PassValuesToFunction([\"ProductIDList\"], function (IDs) {\n var parameterObject = {};\n if (IDs && IDs.length > 0) {\n parameterObject['ecomm_prodid'] = IDs;\n }\n parameterObject['ecomm_pagetype'] = \"purchase\";\n window.uetq = window.uetq || [];\n window.uetq.push('event', '', parameterObject);\n }, d);\n DataLayer.PassValuesToFunction([\"OrderTotal\", \"OrderTax\", \"OrderShippingRevenue\"], function (orderTotal, taxTotal, shippingTotal) {\n var revenue = (orderTotal - taxTotal - shippingTotal).toFixed(2);\n var parameterObject = {};\n parameterObject['currency'] = \"USD\";\n parameterObject['revenue_value'] = revenue;\n window.uetq = window.uetq || [];\n window.uetq.push('event', '', parameterObject);\n }, d);\n break;\n }\n }\n };\n HelperFunctions.LoadScriptAsyncAndCallFunction(\"https://bat.bing.com/bat.js\", inputDataObject.name, function () {\n inputDataObject.AddEventHandler(\"NewPageView\", function (eventObject) {\n FireBingPageViewPixel(eventObject);\n FireBingEventPixel(eventObject);\n });\n });\n }\n}\n;\n//# sourceMappingURL=Bing.js.map","import { Websites } from \"../consts/websites.const\";\nimport { InitTimings } from \"../enums/enums.enum\";\nimport { _dsgTag } from \"../namespaces/_dsgTag.namespace\";\nimport { HelperFunctions } from \"../namespaces/helperFunctions.namespace\";\nimport { TagCondition } from \"../classes/tagCondition.class\";\nvar baseConditions = [{ t: \"bypass-restricted\", c: \"\", v: \"true\" }];\nvar conditions = [];\nfor (var i = 0; i < baseConditions.length; i++) {\n conditions.push(new TagCondition(baseConditions[i].t, baseConditions[i].c, baseConditions[i].v));\n}\nexport var BlueTriangle = { name: \"BlueTriangle\", timing: InitTimings.Immediate, conditions: conditions, initFunction: init };\nfunction init(inputDataObject) {\n var bttID = \"\";\n switch (_dsgTag.currentWebsite) {\n case Websites.DicksSportingGoods:\n {\n switch (_dsgTag.experience) {\n case \"Kiosk\":\n {\n bttID = \"dsg2aos\";\n break;\n }\n case \"Mobile App\":\n {\n bttID = \"dsg2app\";\n break;\n }\n default:\n {\n bttID = _dsgTag.isProduction ? \"dsg2\" : (window.location.hostname.indexOf(\"preview.\") == 0 ? \"dsgpreview500z\" : \"dksperf\");\n break;\n }\n }\n break;\n }\n case Websites.GolfGalaxy:\n {\n bttID = \"golfgalaxy2\";\n break;\n }\n case Websites.GoingGoingGone:\n {\n bttID = \"g3v500z\";\n break;\n }\n case Websites.PublicLands:\n {\n bttID = \"publiclands500z\";\n break;\n }\n case Websites.Moosejaw:\n {\n bttID = \"moosejaw500z\";\n break;\n }\n }\n if (bttID) {\n HelperFunctions.LoadScriptAsyncAndCallFunction(\"//\" + bttID + \".btttag.com/btt.js\", inputDataObject.name);\n }\n}\n;\n//# sourceMappingURL=Blue%20Triangle.js.map","export function InitBranch() {\n (function (b, r, a, n, c, h, _, s, d, k) {\n if (!b[n] || !b[n]._q) {\n for (; s < _.length;)\n c(h, _[s++]);\n d = r.createElement(a);\n d.async = 1;\n d.src = \"https://cdn.branch.io/branch-latest.min.js\";\n k = r.getElementsByTagName(a)[0];\n k.parentNode.insertBefore(d, k);\n b[n] = h;\n }\n })(window, document, \"script\", \"branch\", function (b, r) {\n b[r] = function () {\n b._q.push([r, arguments]);\n };\n }, {\n _q: [],\n _v: 1\n }, \"addListener applyCode autoAppIndex banner closeBanner closeJourney creditHistory credits data deepview deepviewCta first getCode init link logout redeem referrals removeListener sendSMS setBranchViewData setIdentity track validateCode trackCommerceEvent logEvent disableTracking\".split(\" \"), 0);\n}\n//# sourceMappingURL=branch.js.map","import { Websites } from \"../consts/websites.const\";\nimport { InitTimings } from \"../enums/enums.enum\";\nimport { _dsgTag } from \"../namespaces/_dsgTag.namespace\";\nimport { TagCondition } from \"../classes/tagCondition.class\";\nimport { InitBranch } from \"../vendorScripts/branch\";\nvar baseConditions = [{ t: \"domain\", c: \"*!=\", v: \"custhelp\" }, { t: \"page\", c: \"^!=\", v: \"Chat\" }, { t: \"site\", c: \"*=\", v: [\"DSG\", \"GGXY\"] }, { t: \"iframe\", c: \"=\", v: \"false\" }];\nvar conditions = [];\nfor (var i = 0; i < baseConditions.length; i++) {\n conditions.push(new TagCondition(baseConditions[i].t, baseConditions[i].c, baseConditions[i].v));\n}\nexport var Branch = { name: \"Branch\", timing: InitTimings.Page3rdPartySignal, conditions: conditions, initFunction: init };\nfunction init(inputDataObject) {\n var branchID = \"\";\n switch (_dsgTag.currentWebsite) {\n case Websites.DicksSportingGoods: {\n branchID = _dsgTag.isProduction ? \"key_live_ha4Fjjyi2wV5D2EEXnwktkbaFBdevCjn\" : \"key_test_in8tgmyh2zSYAYBtXoJ5pmfawxokBxeA\";\n break;\n }\n case Websites.GolfGalaxy: {\n branchID = _dsgTag.isProduction ? \"key_live_bp0CfkBl7CHWLSCIhYW59iglwvigy2qk\" : \"key_test_hb1rffEb2zS0SPDHxfzTljapuxlgxZEv\";\n break;\n }\n }\n if (branchID) {\n var InitializeBranch = function () {\n InitBranch();\n branch.init(branchID, function (err, data) { });\n };\n InitializeBranch();\n }\n}\n;\n//# sourceMappingURL=Branch.js.map","export function InitCertona() {\n var certonaResx = function () {\n \"use strict\";\n var a, o = \"certonaResx.showResponse\", l = \"\", u, d, x = false, p, h, g, m, y, v, k, R;\n function s(e) { try {\n return parseInt(e, 10);\n }\n catch (e) { } }\n function w(e) { try {\n var r;\n if (e !== undefined && e !== null && e !== \"null\" && e !== \"\") {\n r = true;\n return r;\n }\n }\n catch (e) { } return false; }\n function f() { try {\n return resx.rrelem;\n }\n catch (e) { } return \"\"; }\n function c(e) { try {\n var r = null, n, t;\n if (w(e)) {\n r = [];\n if (w(document.getElementById(e))) {\n r[0] = e;\n }\n else {\n t = e.replace(/[,;]/g, \".\").split(\".\");\n for (n = 0; n < t.length; n += 1) {\n if (t[n] !== \"\" && w(document.getElementById(t[n]))) {\n r[n] = t[n];\n }\n else {\n r[n] = \"\";\n }\n }\n }\n }\n return r;\n }\n catch (e) { } return null; }\n function b() { try {\n var e, r, n;\n if (resx.rrelem !== undefined) {\n n = c(f());\n if (n !== undefined && n !== null) {\n for (e = 0; e < n.length; e += 1) {\n if (n[e] !== \"\") {\n r = document.getElementById(n[e]);\n }\n else {\n r = null;\n }\n if (w(r)) {\n r.style.visibility = \"visible\";\n }\n }\n }\n }\n }\n catch (e) { } }\n function C(e, r) { try {\n if (!x) {\n x = true;\n l = e + \"|\" + (r.number !== undefined ? r.number : \"undefined\") + \"|\" + (r.name !== undefined ? r.name : \"undefined\") + \"|\" + (r.description !== undefined ? r.description : \"undefined\");\n }\n }\n catch (e) { }\n finally {\n b();\n } }\n function I(e) { try {\n var r, n, t;\n if (document.cookie.length > 0) {\n r = document.cookie;\n n = r.indexOf(e + \"=\");\n if (n !== -1) {\n n += e.length + 1;\n t = r.indexOf(\";\", n);\n if (t === -1) {\n t = r.length;\n }\n return decodeURIComponent(r.slice(n, t));\n }\n }\n }\n catch (e) {\n C(\"\", e);\n } return null; }\n function L(e, r, n, t) { try {\n var i = new Date;\n if (n !== null) {\n i.setTime(i.getTime() + n * 3600 * 1e3);\n }\n document.cookie = e + \"=\" + encodeURIComponent(r) + (n !== null ? \"; expires=\" + i.toGMTString() : \"\") + \"; path=/\" + (w(t) ? \"; domain=\" + t : \"\");\n }\n catch (e) {\n C(\"\", e);\n } }\n function T() { try {\n var e, r, n, t, i;\n r = resx.rrec !== undefined && (resx.rrec === true || resx.rrec === \"true\") && (y === \"1\" || p) && w(resx.rrelem) && !x;\n if (r) {\n if (!d) {\n r = false;\n i = c(f());\n if (i !== undefined && i !== null) {\n for (e = 0; e < i.length; e += 1) {\n if (w(i[e])) {\n r = true;\n break;\n }\n }\n }\n }\n if (r) {\n if (!w(resx.useitems)) {\n r = false;\n if (resx.rrnum !== undefined) {\n n = resx.rrnum;\n n += \"\";\n n = n.replace(/,/g, \";\");\n t = n.split(\";\");\n for (e = 0; e < t.length; e += 1) {\n if (!isNaN(t[e]) && s(t[e]) > 0) {\n r = true;\n break;\n }\n }\n }\n }\n }\n }\n return r;\n }\n catch (e) { } return false; }\n function B(e) { try {\n var r, n = \"\";\n e += \"\";\n for (r = e.length - 1; r >= 0; r -= 1) {\n n += e.charAt(r);\n }\n return n;\n }\n catch (e) { } return \"\"; }\n function E() { try {\n var e, r, n, t, i;\n if (navigator.userAgent.toLowerCase().indexOf(\"mac\") === -1) {\n i = Math.floor(Math.random() * 1e15);\n i += \"\";\n }\n else {\n n = Math.floor(Math.random() * 1e6);\n e = new Date;\n r = e.getTime();\n r += \"\";\n t = B(r);\n n += \"\";\n i = n + t.slice(0, 11);\n }\n return i;\n }\n catch (e) {\n C(\"guid\", e);\n } return \"\"; }\n function r(e) { try {\n u = true;\n var r, n, t, i;\n if (!d) {\n for (r = 0; r < e.Resonance.Response.length; r += 1) {\n n = false;\n t = e.Resonance.Response[r].scheme;\n if (e.Resonance.Response[r].display === \"yes\") {\n n = true;\n i = document.getElementById(t);\n if (w(i)) {\n i.innerHTML = e.Resonance.Response[r].output;\n }\n }\n if (typeof resonanceResponseLoaded === \"function\") {\n resonanceResponseLoaded(t, n);\n }\n }\n if (typeof resonanceResponseLoadedAll === \"function\") {\n resonanceResponseLoadedAll();\n }\n }\n }\n catch (e) { }\n finally {\n b();\n } }\n function e() { try {\n if (!u && !d) {\n if (a < 2e3) {\n a = a + 10;\n window.setTimeout(certonaResx.checkCallback, 10);\n }\n else {\n d = true;\n b();\n }\n }\n }\n catch (e) {\n b();\n } }\n function S(e) { try {\n var r, n = \"\", t = \"\", i, s, c;\n s = \"\";\n if (w(resx.rrelem)) {\n i = f().replace(/[,;]/g, \".\").split(\".\");\n if (i !== null) {\n for (r = 0; r < i.length; r += 1) {\n s += \"&sc=\" + i[r];\n }\n }\n }\n if (typeof e === \"boolean\" && e === true) {\n if (w(resx.rrcall)) {\n n = resx.rrcall;\n }\n else {\n n = o;\n }\n }\n else if (typeof e === \"string\") {\n n = e;\n }\n if (n.length > 0) {\n if (n === o) {\n t = \"&cb=\";\n }\n else {\n t = \"&ccb=\";\n }\n t += n;\n }\n c = s + (w(resx.useitems) ? \"&ui=\" + resx.useitems : \"&no=\" + resx.rrnum) + (w(resx.rrqs) ? \"&\" + resx.rrqs : \"\") + (w(resx.rrnav) ? \"&nav=\" + resx.rrnav : \"\") + (w(resx.exitemid) ? \"&ex=\" + resx.exitemid : \"\") + t;\n return c;\n }\n catch (e) { } return \"\"; }\n function U() { try {\n var e, r, n = window.location.hostname;\n if (w(n)) {\n if (!n.match(/(\\d{1,3}\\.){3}\\d{1,3}/)) {\n e = n.split(\".\");\n if (e.length > 1) {\n n = \".\" + e[e.length - 2] + \".\" + e[e.length - 1];\n r = /\\.co\\.\\w{2}$|\\.com\\.\\w{2}$|\\.\\w{2}\\.com$/;\n if (n.toLowerCase().match(r) && e.length > 2) {\n n = \".\" + e[e.length - 3] + n;\n }\n }\n }\n return n;\n }\n }\n catch (e) {\n C(\"gsd\", e);\n } return null; }\n function M() { try {\n var e, r = \"\", n;\n for (e = 0; e < 51; e += 1) {\n if (resx[\"cv\" + e] !== undefined) {\n n = resx[\"cv\" + e];\n n += \"\";\n n = n.replace(/\\+/g, \"%2B\");\n r += \"&cv\" + e + \"=\" + encodeURIComponent(n);\n }\n }\n return r;\n }\n catch (e) {\n C(\"gcv\", e);\n } return \"\"; }\n function n(e) { try {\n var r = { callback: false }, n, t, i, s, c, f;\n if (e === undefined) {\n e = r;\n }\n else {\n for (s = 0; s < r.length; s += 1) {\n if (e[s] === undefined) {\n e[s] = r[s];\n }\n }\n }\n x = false;\n l = \"\";\n v = \"\";\n k = -1;\n R = false;\n y = \"\";\n g = \"\";\n m = \"\";\n p = false;\n h = false;\n u = false;\n d = false;\n a = 0;\n n = U();\n c = \"RES_TRACKINGID\";\n f = false;\n if (w(resx.dnt)) {\n if (resx.dnt === 0) {\n if (w(resx.trackingid)) {\n v = String(resx.trackingid);\n }\n f = true;\n k = 0;\n }\n if (resx.dnt === 1) {\n if (w(resx.trackingid)) {\n v = String(resx.trackingid);\n }\n else {\n v = \"000000000000000\";\n }\n f = true;\n k = 1;\n }\n if (!w(v)) {\n f = false;\n k = -1;\n R = true;\n }\n }\n if (!f) {\n if (w(resx.trackingid)) {\n v = String(resx.trackingid);\n }\n else {\n v = I(c);\n }\n if (!w(v)) {\n v = E();\n }\n }\n y = w(resx.segment) ? String(resx.segment) : \"\";\n if (!w(y)) {\n y = \"1\";\n }\n else {\n p = true;\n }\n if (!R) {\n if (!f) {\n if (v.length > 0) {\n L(c, v, 9490, n);\n if (!w(I(c))) {\n L(c, v, null, n);\n }\n }\n }\n else {\n L(c, v, -1, n);\n }\n }\n if (w(resx.pageid)) {\n g = resx.pageid;\n }\n else {\n g = E();\n }\n t = resx.links !== undefined ? String(resx.links) : \"\";\n if (w(t)) {\n i = t.replace(/\\,/g, \";\").replace(/\\|/g, \"%7C\").split(\";\", 50);\n for (s = 0; s < i.length; s += 1) {\n m += i[s] + \";\";\n }\n }\n if (typeof e.callback === \"string\" && e.callback !== o || e.callback === false || w(resx.rrcall) && resx.rrcall !== o) {\n d = true;\n }\n h = T() && w(v) && w(g);\n if (!h) {\n b();\n }\n }\n catch (e) {\n C(\"pv\", e);\n } }\n function t(e) { try {\n var r, n, t, i, s, c, f = \"5.11x\";\n if ((y === \"1\" || p) && !R) {\n if (h) {\n window.setTimeout(certonaResx.checkCallback, 50);\n }\n r = window.location.protocol.toLowerCase() === \"https:\" ? \"https://\" : \"http://\";\n i = \"www.res-x.com\";\n if (w(resx.host)) {\n i = resx.host;\n }\n s = window.location.href.slice(0, 400);\n if (w(resx.href)) {\n s = resx.href;\n }\n c = document.referrer;\n if (w(resx.referrer)) {\n c = resx.referrer;\n }\n n = \"appid=\" + (resx.appid !== undefined ? resx.appid : \"\") + \"&tk=\" + (w(v) ? v : \"\") + \"&pg=\" + (w(g) ? g : \"\") + \"&sg=\" + (w(y) ? y : \"\");\n n += (resx.event !== undefined ? \"&ev=\" + resx.event : \"\") + (resx.itemid !== undefined ? \"&ei=\" + resx.itemid : \"\") + (resx.qty !== undefined ? \"&qty=\" + resx.qty : \"\") + (resx.price !== undefined ? \"&pr=\" + resx.price : \"\") + (resx.shipping !== undefined ? \"&sh=\" + resx.shipping : \"\") + (resx.total !== undefined ? \"&tt=\" + resx.total : \"\") + (resx.currencycode !== undefined ? \"&cc=\" + resx.currencycode : \"\") + (w(resx.customerid) && !(k === 0 || k === 1) ? \"&cu=\" + resx.customerid : \"\") + (resx.transactionid !== undefined ? \"&tr=\" + resx.transactionid : \"\") + (resx.keyword !== undefined ? \"&kwd=\" + resx.keyword : \"\") + M() + (w(m) ? \"&plk=\" + m : \"\");\n n += k === 0 || k === 1 ? \"&dnt=\" + k : \"\";\n n += \"&bx=\" + h + (h ? S(e) : \"\");\n n += \"&vr=\" + f + \"&url=\" + encodeURIComponent(s) + \"&ref=\" + encodeURIComponent(c) + (x === true ? \"&er=\" + x + \"&em=\" + encodeURIComponent(l) : \"\");\n t = r + i + \"/ws/r2/Resonance.aspx\" + \"?\" + n;\n return t.slice(0, 2013);\n }\n }\n catch (e) { } return \"\"; }\n function i(e) { try {\n if (e !== \"\") {\n var r = document.createElement(\"script\"), n = document.getElementsByTagName(\"script\")[0];\n r.type = \"text/javascript\";\n r.async = true;\n r.src = e;\n n.parentNode.insertBefore(r, n);\n }\n }\n catch (e) { } }\n function q(e) { var r = { callback: false }, n; if (e === undefined) {\n e = r;\n }\n else {\n for (n = 0; n < r.length; n += 1) {\n if (e[n] === undefined) {\n e[n] = r[n];\n }\n }\n } return t(e.callback); }\n function A() { n({ callback: true }); var e = t(true); i(e); }\n return { checkCallback: function () { e(); }, showResponse: function (e) { r(e); }, getURL: function (e) { n(e); return q(e); }, run: function () { A(); } };\n }();\n var ready = function () { function g() { if (!a.isReady) {\n try {\n document.documentElement.doScroll(\"left\");\n }\n catch (b) {\n setTimeout(g, 1);\n return;\n }\n a.ready();\n } } var e, c, m = { \"[object Boolean]\": \"boolean\", \"[object Number]\": \"number\", \"[object String]\": \"string\", \"[object Function]\": \"function\", \"[object Array]\": \"array\", \"[object Date]\": \"date\", \"[object RegExp]\": \"regexp\", \"[object Object]\": \"object\" }, a = { isReady: !1, readyWait: 1, holdReady: function (b) { b ? a.readyWait++ : a.ready(!0); }, ready: function (b) { if (!0 === b && !--a.readyWait || !0 !== b && !a.isReady) {\n if (!document.body)\n return setTimeout(a.ready, 1);\n a.isReady = !0;\n !0 !== b && 0 < --a.readyWait || e.resolveWith(document, [a]);\n } }, bindReady: function () { if (!e) {\n e = a._Deferred();\n if (\"complete\" === document.readyState)\n return setTimeout(a.ready, 1);\n if (document.addEventListener)\n document.addEventListener(\"DOMContentLoaded\", c, !1), window.addEventListener(\"load\", a.ready, !1);\n else if (document.attachEvent) {\n document.attachEvent(\"onreadystatechange\", c);\n window.attachEvent(\"onload\", a.ready);\n var b = !1;\n try {\n b = null == window.frameElement;\n }\n catch (f) { }\n document.documentElement.doScroll && b && g();\n }\n } }, _Deferred: function () { var b = [], f, c, e, h = { done: function () { if (!e) {\n var c = arguments, d, g, j, l, k;\n f && (k = f, f = 0);\n d = 0;\n for (g = c.length; d < g; d++)\n j = c[d], l = a.type(j), \"array\" === l ? h.done.apply(h, j) : \"function\" === l && b.push(j);\n k && h.resolveWith(k[0], k[1]);\n } return this; }, resolveWith: function (a, d) { if (!e && !f && !c) {\n d = d || [];\n c = 1;\n try {\n for (; b[0];)\n b.shift().apply(a, d);\n }\n finally {\n f = [a, d], c = 0;\n }\n } return this; }, resolve: function () { h.resolveWith(this, arguments); return this; }, isResolved: function () { return !(!c && !f); }, cancel: function () { e = 1; b = []; return this; } }; return h; }, type: function (a) { return null == a ? String(a) : m[Object.prototype.toString.call(a)] || \"object\"; } }; document.addEventListener ? c = function () { document.removeEventListener(\"DOMContentLoaded\", c, !1); a.ready(); } : document.attachEvent && (c = function () { \"complete\" === document.readyState && (document.detachEvent(\"onreadystatechange\", c), a.ready()); }); return function (b) { a.bindReady(); a.type(b); e.done(b); }; }();\n window.certonaResx = certonaResx;\n window.ready = ready;\n}\n//# sourceMappingURL=certona.js.map","import { Websites } from \"../consts/websites.const\";\nimport { PageTypes } from \"../consts/pageTypes.const\";\nimport { InitTimings } from \"../enums/enums.enum\";\nimport { _dsgTag } from \"../namespaces/_dsgTag.namespace\";\nimport { HelperFunctions } from \"../namespaces/helperFunctions.namespace\";\nimport { DataLayer } from \"../namespaces/dataLayer.namespace\";\nimport { TagCondition } from \"../classes/tagCondition.class\";\nimport { FunctionRepository } from \"../namespaces/functionRepository.namespace\";\nimport { InitCertona } from \"../vendorScripts/certona\";\nimport { EventHandlers } from \"../namespaces/eventHandlers.namespace\";\nvar baseConditions = [{ t: \"site\", c: \"=\", v: [\"DSG\", \"GGXY\", \"PBL\", \"GONE\"] }, { t: \"domain\", c: \"*!=\", v: \"Protips\" }, { t: \"page\", c: \"^!=\", v: \"Chat\" }, { t: \"aos\", c: \"=\", v: \"false\" }, { t: \"iframe\", c: \"=\", v: \"false\" }];\nvar conditions = [];\nfor (var i = 0; i < baseConditions.length; i++) {\n conditions.push(new TagCondition(baseConditions[i].t, baseConditions[i].c, baseConditions[i].v));\n}\nexport var Certona = { name: \"Certona\", timing: InitTimings.Page3rdPartySignal, conditions: conditions, initFunction: init };\nfunction init(inputDataObject) {\n InitCertona();\n window.certonaResx = certonaResx;\n window.ready = ready;\n var CONST_recid_param = \"pagelocation\";\n var EDL = DataLayer.GetValue;\n var w = _dsgTag.currentWebsite;\n var e = _dsgTag.experience;\n var u = EDL(\"PageURL\");\n var skuLevelSupported = (w === Websites.DicksSportingGoods || w === Websites.PublicLands || w === Websites.GoingGoingGone);\n var currentRecommendationData, currentPage;\n if (e === \"Mobile App\")\n e = \"Mobile\";\n if (e === \"Kiosk\")\n e = \"Desktop\";\n var BuildRecommendationObject = function () {\n var s = Websites;\n var UniversalExperience = {\n I: \"\",\n C: \"\",\n P: {\n \"Home\": {\n \"RecID\": \"home\"\n },\n \"Category\": {\n \"RecID\": \"category\",\n \"D\": [\"CategoryID\"],\n \"EV\": function () {\n return (HelperFunctions.GetQueryStringValue(\"rrec\") == \"true\") ? \"category_r\" : \"category\";\n }\n },\n \"Family\": {\n \"RecID\": \"family\",\n \"D\": [\"FamilyID\"],\n \"EV\": function () {\n return (HelperFunctions.GetQueryStringValue(\"rrec\") == \"true\") ? \"category_r\" : \"category\";\n }\n },\n \"Search\": {\n \"RecID\": function () { return DataLayer.GetValue(\"InternalSearchResultsCount\") > 0 ? \"search\" : \"nosearch\"; },\n \"D\": [\"InternalSearchTerm\"]\n },\n \"ProductDetails\": {\n \"RecID\": function () {\n return (EDL(\"ProductAvailability\") === \"Out of Stock\") ? \"OOSPDP\" : \"Product\";\n },\n \"D\": function () {\n if (skuLevelSupported) {\n return [\"ProductID\", \"ProductSKU\", \"ProductPageTemplateType\", \"ProductDetails\"];\n }\n else {\n return [\"ProductID\", \"ProductPageTemplateType\", \"ProductDetails\"];\n }\n },\n \"EV\": function () {\n return (HelperFunctions.GetQueryStringValue(\"rrec\") == \"true\") ? \"product_r\" : \"product\";\n }\n },\n \"MyAccount\": {},\n \"OrderTracking\": {\n \"RecID\": \"OrderTracking\",\n \"T\": /\\/TrackOrder/i,\n \"E\": \"ordertracking_rr;ordertracking1_rr\"\n },\n \"StoreLocatorLocalStore\": {\n \"RecID\": \"store\",\n \"D\": [\"StoreLocatorStoreNumber\"]\n },\n \"Cart\": {\n \"RecID\": \"CartEmpty\",\n \"EN\": function () {\n return DataLayer.GetValue(\"CartItemQuantity\") == 0;\n },\n \"EV\": \"viewcart\",\n \"E\": \"cartempty_rr\"\n },\n \"OrderConfirmation\": {\n \"RecID\": \"OrderConfirm\",\n \"D\": [\"ProductIDList\", \"ProductSKUList\", \"OrderID\", \"ProductQuantityList\", \"ProductPriceList\", \"OrderTax\", \"OrderShippingRevenue\", \"OrderTotal\"],\n \"E\": (w === s.DicksSportingGoods && e === \"Desktop\" ? \"\" : \"orderconfirm_rr\"),\n \"EV\": \"purchase\"\n },\n \"Proxy\": {\n \"D\": function () {\n if (EDL(\"CategoryID\")) {\n return [\"CategoryName\", \"CategoryID\"];\n }\n else if (EDL(\"FamilyID\")) {\n return [\"FamilyName\", \"FamilyID\"];\n }\n return [];\n },\n \"EV\": function () {\n return (HelperFunctions.GetQueryStringValue(\"rrec\") == \"true\") ? \"category_r\" : \"category\";\n }\n },\n \"RecHubMarketing\": {\n \"RecID\": \"rechub\",\n \"T\": /\\/marketing\\/recommended-for-you/i,\n \"E\": \"rechub3_rr;rechub6_rr;rechub11_rr;rechub4_rr;rechub5_rr\"\n },\n \"RecHub\": {\n \"RecID\": \"rechub\",\n \"T\": /\\/recommended-for-you/i,\n \"E\": \"rechub3_rr;rechub1_rr;rechub2_rr;rechub4_rr;rechub5_rr;rechub6_rr;rechub7_rr;rechub8_rr;rechub9_rr;rechub10_rr;rechub11_rr;rechub12_rr;rechub13_rr\"\n },\n \"Finder\": {\n \"T\": /\\/((\\w|-)+)-finder$/i,\n },\n \"FinderResults\": {\n \"RecID\": function () {\n var matches = /\\/((\\w|-)+)-finder-results/i.exec(u);\n if (matches) {\n var finder = matches[1];\n return finder + \"Finder\";\n }\n },\n \"T\": /\\/((\\w|-)+)-finder-results/i,\n \"E\": function () {\n var matches = /\\/((\\w|-)+)-finder-results/i.exec(u);\n if (matches) {\n var finder = matches[1];\n switch (finder.toLowerCase()) {\n case \"bat\":\n return \"DSGFinder2_rr\";\n case \"backpack\":\n return \"BackpackFinder2_rr\";\n case \"sports-bra\":\n return \"sportsbrafinder2_rr\";\n }\n }\n return \"\";\n },\n \"I\": function () {\n var matches = /\\/((\\w|-)+)-finder-results/i.exec(u);\n if (matches) {\n var finder = matches[1];\n switch (finder.toLowerCase()) {\n case \"bat\":\n return e === \"Desktop\" ? \"Bat_Finder\" : \"Bat_Finder_Mobile\";\n case \"backpack\":\n return e === \"Desktop\" ? \"Backpack_Finder\" : \"Backpack_Finder_Mobile\";\n case \"sports-bra\":\n return e === \"Desktop\" ? \"sportsbra_finder\" : \"sportsbra_finder_mobile\";\n }\n }\n return \"\";\n },\n \"EV\": \"surveyresults\"\n },\n \"Holiday\": {\n \"RecID\": \"holiday\",\n \"T\": /\\/s\\/(holiday|cyber-week|black-friday|starts-here|back-to-school)/i,\n \"E\": \"holiday3_rr;holiday_rr;holiday2_rr;holiday4_rr;holiday5_rr;holiday6_rr\"\n },\n \"GiftOfSport\": {\n \"RecID\": \"holiday\",\n \"T\": /\\/s\\/gift-of-sport/i,\n \"E\": \"holiday_rr;holiday2_rr;holiday3_rr\"\n },\n \"GolfHoliday\": {\n \"RecID\": \"holiday\",\n \"T\": /\\/s\\/(golf-gifts)/i,\n \"E\": \"holiday_rr\"\n },\n \"Graduation\": {\n \"RecID\": \"graduation\",\n \"T\": /\\/s\\/seasonal\\/graduation-gifts/i,\n \"E\": \"holiday_rr\"\n },\n \"FathersDay\": {\n \"RecID\": \"FathersDay\",\n \"T\": /\\/s\\/fathers-day/i,\n \"E\": \"holiday_rr\"\n },\n \"Coupons\": {\n \"RecID\": \"coupon\",\n \"T\": /\\/s\\/((promotion-)?coupons)/i,\n \"E\": \"coupon_rr;coupon2_rr\"\n },\n \"promoCoupons\": {\n \"RecID\": \"marketing-promo\",\n \"T\": /\\/s\\/marketing\\/promotion-coupons/i,\n \"E\": \"coupon2_rr\"\n },\n \"shippingPromo\": {\n \"RecID\": \"shipping-clearance-promo\",\n \"T\": /\\/s\\/clearance-promo\\/shipping-value-promo-details/i,\n \"E\": \"coupon2_rr\"\n },\n \"EmailSignup\": {\n \"RecID\": \"signup\",\n \"T\": /\\/s\\/text-program-details/i,\n \"E\": \"signup_rr\"\n },\n \"InStorePickup\": {\n \"RecID\": \"BOPIS\",\n \"T\": /\\/s\\/in-store-pickup/i,\n \"E\": \"collections1_rr,collections2_rr,collections3_rr,collections4_rr,collections5_rr,collections6_rr\"\n },\n \"WomensDay\": {\n \"RecID\": \"WomensDay\",\n \"T\": /\\/s\\/(international-womens-day|shop-outerwear)/i,\n \"E\": \"golf_rr\"\n },\n \"ShopRunGear\": {\n \"RecID\": \"ShopRunGear\",\n \"T\": /\\/s\\/shop-running-gear/i,\n \"E\": \"coupon3_rr;coupon4_rr\"\n },\n \"SummerShop\": {\n \"RecID\": \"SummerShop\",\n \"T\": /\\/s\\/seasonal\\/summer-shop/i,\n \"E\": \"holiday2_rr\"\n },\n \"GiftGuide\": {\n \"RecID\": \"GiftGuide\",\n \"T\": /\\/s\\/gift-guide/i,\n \"E\": \"holiday_rr;holiday2_rr\"\n },\n \"WomensSports\": {\n \"RecID\": \"WomensSports\",\n \"T\": /\\/s\\/female-athlete-gear-apparel/i,\n \"E\": \"sports_rr\"\n },\n \"WVolleyball\": {\n \"RecID\": \"WVolleyball\",\n \"T\": /\\/s\\/volleyball-gear-apparel/i,\n \"E\": \"volleyball_rr\"\n },\n \"WTennis\": {\n \"RecID\": \"WTennis\",\n \"T\": /\\/s\\/womens-racquet/i,\n \"E\": \"tennis_rr\"\n },\n \"WFieldHockey\": {\n \"RecID\": \"WFieldHockey\",\n \"T\": /\\/s\\/Womens-field-hockey-gear-apparel/i,\n \"E\": \"fieldhockey_rr\"\n },\n \"WLacrosse\": {\n \"RecID\": \"WLacrosse\",\n \"T\": /\\/s\\/womens-lacrosse/i,\n \"E\": \"lacrosse_rr\"\n },\n \"GymDanceCheer\": {\n \"RecID\": \"GymDanceCheer\",\n \"T\": /\\/s\\/cheer-dance-gymnastics-equipment-apparel/i,\n \"E\": \"dance_rr\"\n },\n \"WSoftball\": {\n \"RecID\": \"WSoftball\",\n \"T\": /\\/s\\/womens-fastpitch-softball-gear-equipment/i,\n \"E\": \"softball_rr\"\n },\n \"WBasketball\": {\n \"RecID\": \"WBasketball\",\n \"T\": /\\/s\\/womens-basketball/i,\n \"E\": \"basketball_rr\"\n },\n \"WSoccer\": {\n \"RecID\": \"WSoccer\",\n \"T\": /\\/s\\/womens-soccer-gear-apparel/i,\n \"E\": \"soccer_rr\"\n },\n \"WGolf\": {\n \"RecID\": \"WGolf\",\n \"T\": /\\/s\\/womens-and-girls-golf/i,\n \"E\": \"womensgolf_rr\"\n },\n \"ShopMensOuter\": {\n \"RecID\": \"ShopMensOuter\",\n \"T\": /\\/s\\/shop-mens-outerwear/i,\n \"E\": \"event_rr\"\n },\n \"ShopWomensOuter\": {\n \"RecID\": \"ShopWomensOuter\",\n \"T\": /\\/s\\/shop-womens-outerwear/i,\n \"E\": \"event2_rr\"\n },\n \"ShopKidsOuter\": {\n \"RecID\": \"ShopKidsOuter\",\n \"T\": /\\/s\\/shop-kids-outerwear/i,\n \"E\": \"event3_rr\"\n },\n \"GolfTour\": {\n \"RecID\": \"GolfTour\",\n \"T\": /\\/s\\/golf-tour-apparel-gear/i,\n \"E\": \"tour_rr\"\n },\n \"SoftballProGloves\": {\n \"RecID\": \"SoftballProGloves\",\n \"T\": /\\/s\\/sports\\/softball\\/softball-pro-gloves/i,\n \"E\": \"softball_rr\"\n },\n \"SoloStoveBrand\": {\n \"RecID\": \"Brand\",\n \"T\": /\\/s\\/brand-shop\\/shop-solo-stove/i,\n \"E\": \"Coupon3_rr\",\n \"D\": [\"PageURL\", \"PageName\"]\n },\n \"PerfectGameBrand\": {\n \"RecID\": \"Brand\",\n \"T\": /\\/s\\/perfect-game/i,\n \"E\": \"sports_rr\",\n \"D\": [\"PageURL\", \"PageName\"]\n },\n \"Brand\": {\n \"RecID\": \"Brand\",\n \"T\": /\\/s\\/(taylormade-golf-clubs-and-equipment|callaway-golf-brand-shop|maxfli-elevated-brand-shop|easton-ghost-bats|titleist-tsr-woods|shop-mens-swim|shop-the-north-face|sports\\/baseball\\/baseball-pro-gloves)/i,\n \"E\": \"brand_rr\",\n \"D\": [\"PageURL\", \"PageName\"]\n },\n \"Brand1\": {\n \"RecID\": \"Brand1\",\n \"T\": /\\/s\\/(vans|howler-brothers|hestra-gloves|snow-peak-gear|zpacks-gear|askov-finlayson|hyperlite-mountain-gear|simms-fishing|sorel|free-people-clothing|altra|cannondale|shop-all-cannondale-bikes|hoka-one-one|birkenstock|parks-project|beyond-yoga)/i,\n \"E\": \"brand1_rr\",\n \"D\": [\"PageURL\", \"PageName\"]\n },\n \"DSGHouseBrand\": {\n \"RecID\": \"DSGBrand\",\n \"T\": /\\/s\\/(brand-shop\\/)?dsg-brand-clothing-gear/i,\n \"E\": \"category2_rr\",\n \"D\": [\"PageURL\", \"PageName\"]\n },\n \"MJtoPBL\": {\n \"RecID\": \"MJtoPBL\",\n \"T\": /\\/s\\/marketing\\/welcome-to-public-lands/i,\n \"E\": \"home_rr\",\n \"D\": [\"PageURL\", \"PageName\"]\n },\n \"GolfClubhouse\": {\n \"RecID\": \"GolfClubhouse\",\n \"T\": /\\/s\\/brand-shop\\/emerging-brands-golf-apparel-footwear/i,\n \"E\": \"golf_rr\",\n \"D\": [\"PageURL\", \"PageName\"]\n },\n \"StPatricksDay\": {\n \"RecID\": \"StPatricksDay\",\n \"T\": /\\/s\\/seasonal\\/st-patricks-day/i,\n \"E\": \"holiday2_rr\",\n \"D\": [\"PageURL\", \"PageName\"]\n },\n \"Easter\": {\n \"RecID\": \"Easter\",\n \"T\": /\\/s\\/seasonal\\/easter-gifts/i,\n \"E\": \"holiday2_rr\",\n \"D\": [\"PageURL\", \"PageName\"]\n },\n \"BrandShop\": {\n \"RecID\": \"BrandShop\",\n \"T\": /\\/s\\/brand-shop\\//i,\n \"E\": \"brand_rr;brand1_rr\",\n \"D\": [\"PageURL\", \"PageName\"]\n },\n \"GenericStatic\": {\n \"RecID\": \"Static\",\n \"T\": /\\/s\\/fitness\\/fitness-pooled-campaign/i,\n \"E\": \"static_rr \",\n \"D\": [\"PageURL\", \"PageName\"]\n }\n }\n };\n var siteSpecificExperiences = [\n {\n \"S\": s.DicksSportingGoods,\n \"E\": \"Desktop\",\n \"I\": \"dickssportinggoods04\",\n \"P\": {\n \"Home\": {\n \"E\": \"home3_rr;home4_rr;home_rr;home1_rr;home2_rr;contenthome1_rr;holiday_rr\"\n },\n \"Category\": {\n \"E\": \"category_rr\"\n },\n \"Family\": {\n \"E\": \"family1_rr;family2_rr;family4_rr;deals_rr\"\n },\n \"Search\": {\n \"E\": function () { return DataLayer.GetValue(\"InternalSearchResultsCount\") > 0 ? \"search_rr\" : \"nosearch1_rr;nosearch_rr;contentsearch1_rr\"; }\n },\n \"ProductDetails\": {\n \"E\": function () {\n var out = \"\";\n if (EDL(\"ProductAvailability\") === \"Out of Stock\") {\n return \"oosproduct_rr;oosproduct2_rr;oosproduct3_rr\";\n }\n else if (((/^(CSE|SEM|SNS):/i.test(HelperFunctions.GetQueryStringValue(\"camp\") || \"\") || DataLayer.GetValue(\"ReferringPageURL\").toLowerCase().indexOf(\"google\") >= 0 || HelperFunctions.GetQueryStringValue(\"EmailPLA\") == \"true\") && !window.turnOffPLASchemes) || window.forcePLASchemes) {\n if (window.isNewPLATemplateEnabled) {\n out = \"product3landing_rr;product4landing_rr;product5landing_rr\";\n }\n else {\n out = \"product1landing_rr;pdplanding_rr;product3_rr;productlanding_rr;product2landing_rr\";\n }\n }\n else {\n out = \"product1_rr;product3_rr;product_rr;product2_rr\";\n }\n if (EDL(\"ProductPageTemplateType\") == \"Bundle\") {\n out = out.replace(\"product_rr\", \"product4_rr\");\n }\n out += \";product5_rr\";\n return out;\n }\n },\n \"StoreLocatorLocalStore\": {\n \"E\": \"store_rr\"\n },\n \"Proxy\": {\n \"E\": function () {\n if (EDL(\"CategoryID\")) {\n return \"sdcategory_rr\";\n }\n else if (EDL(\"FamilyID\")) {\n return \"sdfamily1_rr\";\n }\n return [];\n }\n },\n \"DSGBrand\": {\n \"RecID\": \"DSGBrand\",\n \"T\": /\\/s\\/(taylormade-stealth|callaway-paradym|shop-ooni|shop-blackstone)/i,\n \"E\": \"brand_rr\",\n \"D\": [\"PageURL\", \"PageName\"]\n }\n }\n }, {\n \"S\": s.DicksSportingGoods,\n \"E\": \"Mobile\",\n \"I\": \"dickssportinggoods05\",\n \"P\": {\n \"Home\": {\n \"E\": \"home3_rr;home4_rr;home_rr;home1_rr;home2_rr;mcontenthome1_rr;holiday_rr\"\n },\n \"Category\": {\n \"E\": \"category_rr\"\n },\n \"Family\": {\n \"E\": \"family1_rr;family_rr;family2_rr;family4_rr;deals_rr\"\n },\n \"Search\": {\n \"E\": function () { return DataLayer.GetValue(\"InternalSearchResultsCount\") > 0 ? \"search_rr;search2_rr\" : \"nosearch1_rr;nosearch_rr;mcontentsearch1_rr\"; }\n },\n \"ProductDetails\": {\n \"E\": function () {\n var out = \"\";\n if (EDL(\"ProductAvailability\") === \"Out of Stock\") {\n return \"oosproduct_rr;oosproduct2_rr;oosproduct3_rr;product1_rr;product_rr;product2_rr\";\n }\n else if (((/^(CSE|SEM|SNS):/i.test(HelperFunctions.GetQueryStringValue(\"camp\") || \"\") || DataLayer.GetValue(\"ReferringPageURL\").toLowerCase().indexOf(\"google\") >= 0 || HelperFunctions.GetQueryStringValue(\"EmailPLA\") == \"true\") && !window.turnOffPLASchemes) || window.forcePLASchemes) {\n if (window.isNewPLATemplateEnabled) {\n out = \"product3landing_rr;product4landing_rr;product5landing_rr\";\n }\n else {\n out = \"product1landing_rr;pdplanding_rr;product3_rr;productlanding_rr;product2landing_rr\";\n }\n }\n else {\n out = \"product1_rr;product3_rr;product_rr;product2_rr\";\n }\n if (EDL(\"ProductPageTemplateType\") == \"Bundle\") {\n out = out.replace(\"product_rr\", \"product4_rr\");\n }\n out += \";product5_rr\";\n return out;\n }\n },\n \"StoreLocatorLocalStore\": {\n \"E\": \"store_rr\"\n },\n \"Proxy\": {\n \"E\": function () {\n if (EDL(\"CategoryID\")) {\n return \"sdcategory_rr\";\n }\n else if (EDL(\"FamilyID\")) {\n return \"sdfamily1_rr\";\n }\n return [];\n }\n },\n \"DSGBrand\": {\n \"RecID\": \"DSGBrand\",\n \"T\": /\\/s\\/(taylormade-stealth|callaway-paradym|shop-ooni|shop-blackstone)/i,\n \"E\": \"brand_rr\",\n \"D\": [\"PageURL\", \"PageName\"]\n }\n }\n }, {\n \"S\": s.GolfGalaxy,\n \"E\": \"Desktop\",\n \"I\": \"golfgalaxy01\",\n \"P\": {\n \"Home\": {\n \"E\": \"home1_rr;homeratings_rr;home_rr\"\n },\n \"Category\": {\n \"E\": \"category_rr\"\n },\n \"Family\": {\n \"E\": \"family1_rr;family_rr;deals_rr\"\n },\n \"Search\": {\n \"E\": function () { return DataLayer.GetValue(\"InternalSearchResultsCount\") == 0 ? \"nosearch1_rr;nosearch_rr\" : \"\"; }\n },\n \"ProductDetails\": {\n \"E\": function () {\n return (EDL(\"ProductAvailability\") !== \"Out of Stock\" ? \"product1_rr;product3_rr;product_rr;product2_rr;product5_rr\" : \"product1_rr;oosproduct_rr;product_rr;product2_rr\");\n }\n },\n \"StoreLocatorLocalStore\": {\n \"E\": \"store_rr\"\n },\n \"GGXYBrand\": {\n \"RecID\": \"GGXYBrand\",\n \"T\": /\\/s\\/(taylormade-stealth|callaway-paradym)/i,\n \"E\": \"golf_rr\",\n \"D\": [\"PageURL\", \"PageName\"]\n }\n }\n }, {\n \"S\": s.GolfGalaxy,\n \"E\": \"Mobile\",\n \"I\": \"golfgalaxy02\",\n \"P\": {\n \"Home\": {\n \"E\": \"home1_rr;homeratings_rr;home_rr\"\n },\n \"Search\": {\n \"E\": function () { return DataLayer.GetValue(\"InternalSearchResultsCount\") > 0 ? \"search_rr;search2_rr\" : \"nosearch1_rr;nosearch_rr\"; }\n },\n \"ProductDetails\": {\n \"E\": function () {\n return (EDL(\"ProductAvailability\") !== \"Out of Stock\" ? \"product1_rr;product3_rr;product_rr;product2_rr;product5_rr\" : \"product1_rr;oosproduct_rr;product_rr;product2_rr\");\n }\n },\n \"StoreLocatorLocalStore\": {\n \"E\": \"store_rr\"\n },\n \"GGXYBrand\": {\n \"RecID\": \"GGXYBrand\",\n \"T\": /\\/s\\/(taylormade-stealth|callaway-paradym)/i,\n \"E\": \"golf_rr\",\n \"D\": [\"PageURL\", \"PageName\"]\n }\n }\n }, {\n \"S\": s.PublicLands,\n \"I\": \"publiclands01\",\n \"E\": \"Desktop\",\n \"P\": {\n \"Home\": {\n \"E\": \"home3_rr;home_rr;home1_rr;home2_rr;contenthome1_rr\"\n },\n \"Category\": {\n \"E\": \"category_rr\"\n },\n \"Family\": {\n \"E\": \"family1_rr;family2_rr;family4_rr;deals_rr\"\n },\n \"Search\": {\n \"E\": function () { return DataLayer.GetValue(\"InternalSearchResultsCount\") > 0 ? \"search_rr\" : \"nosearch1_rr;nosearch_rr;contentsearch1_rr\"; }\n },\n \"ProductDetails\": {\n \"E\": function () {\n var out = \"\";\n if (EDL(\"ProductAvailability\") === \"Out of Stock\") {\n return \"oosproduct_rr;oosproduct2_rr;oosproduct3_rr\";\n }\n else if (/^(CSE|SEM|SNS):/i.test(HelperFunctions.GetQueryStringValue(\"camp\") || \"\") || DataLayer.GetValue(\"ReferringPageURL\").toLowerCase().indexOf(\"google\") >= 0 || HelperFunctions.GetQueryStringValue(\"EmailPLA\") == \"true\") {\n out = \"product1landing_rr;pdplanding_rr;product3_rr;productlanding_rr;product2landing_rr\";\n }\n else {\n out = \"product1_rr;product3_rr;product_rr;product2_rr\";\n }\n if (EDL(\"ProductPageTemplateType\") == \"Bundle\") {\n out = out.replace(\"product_rr\", \"product4_rr\");\n }\n out += \";product5_rr\";\n return out;\n }\n },\n \"StoreLocatorLocalStore\": {\n \"E\": \"store_rr\"\n },\n \"Proxy\": {\n \"E\": function () {\n if (EDL(\"CategoryID\")) {\n return \"sdcategory_rr\";\n }\n else if (EDL(\"FamilyID\")) {\n return \"sdfamily1_rr\";\n }\n return [];\n }\n },\n \"PBLBrand\": {\n \"RecID\": \"PBLBrand\",\n \"T\": /\\/s\\/(shop-ooni|shop-blackstone)/i,\n \"E\": \"brand1_rr\",\n \"D\": [\"PageURL\", \"PageName\"]\n }\n }\n }, {\n \"S\": s.PublicLands,\n \"I\": \"publiclands02\",\n \"E\": \"Mobile\",\n \"P\": {\n \"Home\": {\n \"E\": \"home3_rr;home_rr;home1_rr;home2_rr;contenthome1_rr\"\n },\n \"Category\": {\n \"E\": \"category_rr\"\n },\n \"Family\": {\n \"E\": \"family1_rr;family2_rr;family4_rr;deals_rr\"\n },\n \"Search\": {\n \"E\": function () { return DataLayer.GetValue(\"InternalSearchResultsCount\") > 0 ? \"search_rr\" : \"nosearch1_rr;nosearch_rr;contentsearch1_rr\"; }\n },\n \"ProductDetails\": {\n \"E\": function () {\n var out = \"\";\n if (EDL(\"ProductAvailability\") === \"Out of Stock\") {\n return \"oosproduct_rr;oosproduct2_rr;oosproduct3_rr\";\n }\n else if (/^(CSE|SEM|SNS):/i.test(HelperFunctions.GetQueryStringValue(\"camp\") || \"\") || DataLayer.GetValue(\"ReferringPageURL\").toLowerCase().indexOf(\"google\") >= 0 || HelperFunctions.GetQueryStringValue(\"EmailPLA\") == \"true\") {\n out = \"product1landing_rr;pdplanding_rr;product3_rr;productlanding_rr;product2landing_rr\";\n }\n else {\n out = \"product1_rr;product3_rr;product_rr;product2_rr\";\n }\n if (EDL(\"ProductPageTemplateType\") == \"Bundle\") {\n out = out.replace(\"product_rr\", \"product4_rr\");\n }\n out += \";product5_rr\";\n return out;\n }\n },\n \"StoreLocatorLocalStore\": {\n \"E\": \"store_rr\"\n },\n \"Proxy\": {\n \"E\": function () {\n if (EDL(\"CategoryID\")) {\n return \"sdcategory_rr\";\n }\n else if (EDL(\"FamilyID\")) {\n return \"sdfamily1_rr\";\n }\n return [];\n }\n },\n \"PBLBrand\": {\n \"RecID\": \"PBLBrand\",\n \"T\": /\\/s\\/(shop-ooni|shop-blackstone)/i,\n \"E\": \"brand1_rr\",\n \"D\": [\"PageURL\", \"PageName\"]\n }\n }\n }, {\n \"S\": s.GoingGoingGone,\n \"I\": \"goinggoinggone01\",\n \"E\": \"Desktop\",\n \"P\": {\n \"Home\": {\n \"E\": \"home3_rr;home_rr;home1_rr;home2_rr;contenthome1_rr\"\n },\n \"Category\": {\n \"E\": \"category_rr\"\n },\n \"Family\": {\n \"E\": \"family1_rr;family2_rr;family4_rr;deals_rr\"\n },\n \"Search\": {\n \"E\": function () { return DataLayer.GetValue(\"InternalSearchResultsCount\") > 0 ? \"search_rr\" : \"nosearch1_rr;nosearch_rr;contentsearch1_rr\"; }\n },\n \"ProductDetails\": {\n \"E\": function () {\n var out = \"\";\n if (EDL(\"ProductAvailability\") === \"Out of Stock\") {\n return \"oosproduct_rr;oosproduct2_rr;oosproduct3_rr\";\n }\n else if ((/^(CSE|SEM|SNS):/i.test(HelperFunctions.GetQueryStringValue(\"camp\") || \"\") || DataLayer.GetValue(\"ReferringPageURL\").toLowerCase().indexOf(\"google\") >= 0 || HelperFunctions.GetQueryStringValue(\"EmailPLA\") == \"true\") && !window.turnOffPLASchemes) {\n if (window.isNewPLATemplateEnabled) {\n out = \"product3landing_rr;product4landing_rr;product5landing_rr\";\n }\n else {\n out = \"product1landing_rr;pdplanding_rr;product3_rr;productlanding_rr;product2landing_rr\";\n }\n }\n else {\n out = \"product1_rr;product3_rr;product_rr;product2_rr\";\n }\n if (EDL(\"ProductPageTemplateType\") == \"Bundle\") {\n out = out.replace(\"product_rr\", \"product4_rr\");\n }\n out += \";product5_rr\";\n return out;\n }\n },\n \"StoreLocatorLocalStore\": {\n \"E\": \"store_rr\"\n },\n \"Proxy\": {\n \"E\": function () {\n if (EDL(\"CategoryID\")) {\n return \"sdcategory_rr\";\n }\n else if (EDL(\"FamilyID\")) {\n return \"sdfamily1_rr\";\n }\n return [];\n }\n }\n }\n }, {\n \"S\": s.GoingGoingGone,\n \"I\": \"goinggoinggone02\",\n \"E\": \"Mobile\",\n \"P\": {\n \"Home\": {\n \"E\": \"home3_rr;home_rr;home1_rr;home2_rr;contenthome1_rr\"\n },\n \"Category\": {\n \"E\": \"category_rr\"\n },\n \"Family\": {\n \"E\": \"family1_rr;family2_rr;family4_rr;deals_rr\"\n },\n \"Search\": {\n \"E\": function () { return DataLayer.GetValue(\"InternalSearchResultsCount\") > 0 ? \"search_rr\" : \"nosearch1_rr;nosearch_rr;contentsearch1_rr\"; }\n },\n \"ProductDetails\": {\n \"E\": function () {\n var out = \"\";\n if (EDL(\"ProductAvailability\") === \"Out of Stock\") {\n return \"oosproduct_rr;oosproduct2_rr;oosproduct3_rr\";\n }\n else if ((/^(CSE|SEM|SNS):/i.test(HelperFunctions.GetQueryStringValue(\"camp\") || \"\") || DataLayer.GetValue(\"ReferringPageURL\").toLowerCase().indexOf(\"google\") >= 0 || HelperFunctions.GetQueryStringValue(\"EmailPLA\") == \"true\") && !window.turnOffPLASchemes) {\n if (window.isNewPLATemplateEnabled) {\n out = \"product3landing_rr;product4landing_rr;product5landing_rr\";\n }\n else {\n out = \"product1landing_rr;pdplanding_rr;product3_rr;productlanding_rr;product2landing_rr\";\n }\n }\n else {\n out = \"product1_rr;product3_rr;product_rr;product2_rr\";\n }\n if (EDL(\"ProductPageTemplateType\") == \"Bundle\") {\n out = out.replace(\"product_rr\", \"product4_rr\");\n }\n out += \";product5_rr\";\n return out;\n }\n },\n \"StoreLocatorLocalStore\": {\n \"E\": \"store_rr\"\n },\n \"Proxy\": {\n \"E\": function () {\n if (EDL(\"CategoryID\")) {\n return \"sdcategory_rr\";\n }\n else if (EDL(\"FamilyID\")) {\n return \"sdfamily1_rr\";\n }\n return [];\n }\n }\n }\n }\n ];\n for (var i in siteSpecificExperiences) {\n if ((siteSpecificExperiences[i].S === w || typeof siteSpecificExperiences[i].S === \"undefined\") && (siteSpecificExperiences[i].E === e || typeof siteSpecificExperiences[i].E === \"undefined\")) {\n UniversalExperience.I = siteSpecificExperiences[i].I;\n for (var key in siteSpecificExperiences[i].P) {\n for (var property in siteSpecificExperiences[i].P[key]) {\n if (typeof UniversalExperience.P[key] === \"undefined\") {\n UniversalExperience.P[key] = {};\n }\n UniversalExperience.P[key][property] = siteSpecificExperiences[i].P[key][property];\n }\n }\n break;\n }\n }\n return UniversalExperience;\n };\n var GetPageData = function (recommendationData) {\n for (var key in recommendationData.P) {\n if (typeof PageTypes[key] !== \"undefined\" && _dsgTag.pageType === PageTypes[key]) {\n return recommendationData.P[key];\n }\n else if (recommendationData.P[key].T) {\n if (typeof recommendationData.P[key].T === \"function\") {\n if (recommendationData.P[key].T()) {\n return recommendationData.P[key];\n }\n }\n else if (recommendationData.P[key].T instanceof RegExp) {\n if (recommendationData.P[key].T.test(u)) {\n return recommendationData.P[key];\n }\n }\n }\n }\n return null;\n };\n var FireResX = function (pageData) {\n window.resx = {};\n resx.host = (HelperFunctions.GetQueryStringValue(\"certona_qa\") === \"true\") ? \"qa.res-x.com\" : \"www.res-x.com\";\n resx.appid = currentRecommendationData.I;\n var customerID = _dsgTag.CustomerIDs.AthleteID || _dsgTag.CustomerIDs.DeviceID;\n if (customerID) {\n resx.customerid = customerID;\n }\n resx.top1 = 1e5;\n resx.top2 = 1e5;\n for (var key in pageData) {\n if (typeof pageData[key] !== \"undefined\") {\n if (key == \"rrqs\") {\n resx[key] = pageData[key]?.join(\"&\");\n }\n else {\n resx[key] = pageData[key];\n }\n }\n }\n if (resx.rrelem) {\n resx.rrnum = 20;\n resx.rrec = true;\n resx.rrcall = \"FunctionRepository.HandleCertonaResponse\";\n }\n _dsgTag.resxPixels = _dsgTag.resxPixels || [];\n _dsgTag.resxPixels.push(resx);\n certonaResx.run();\n if (pageData.event === \"purchase\") {\n FunctionRepository.Track3rdPartyOrder(pageData.transactionid, inputDataObject.name);\n }\n };\n var GetPageProperty = function (page, property) {\n return (typeof page[property] === \"function\") ? page[property]() : page[property];\n };\n var initialProcessComplete = false;\n var requestedTeams = [];\n var ProcessTargetResponse = function (eventInstance) {\n const data = eventInstance.eventData;\n if (data && data.responseTokens) {\n for (var i = 0; i < data.responseTokens.length; i++) {\n if (_dsgTag.pageType === PageTypes.Home) {\n if (data.responseTokens[i][\"activity.name\"].toLowerCase().indexOf(\"mastertm\") >= 0) {\n var experienceName = data.responseTokens[i][\"experience.name\"];\n experienceName = experienceName.replace(/\\d+$/g, \"\");\n if (requestedTeams.length == 0) {\n requestedTeams.push(experienceName);\n var pageValues = { \"rrqs\": [\"teammaster=\" + experienceName] };\n pageValues.rrelem = \"home4_rr;home5_rr\";\n FireResX(pageValues);\n }\n }\n }\n }\n }\n };\n var certonaQuickView = false;\n var ProcessProductQuickView = function (eventObject) {\n var data = eventObject.eventData;\n data = data.data || data;\n if (!DataLayer.GetValue(\"IsQuickView\", data)) {\n return;\n }\n var pageValues = {};\n pageValues.event = \"quickview_op\";\n if (data.ReferringPage.toLowerCase() === \"certona\") {\n pageValues.event += \"r\";\n certonaQuickView = true;\n }\n else {\n certonaQuickView = false;\n }\n var ecode = data.ProductDetails[0].ProductID;\n var sku = data.ProductDetails[0].ProductSKUDetails.length === 1 ? data.ProductDetails[0].ProductSKUDetails[0].ProductSKU : \"\";\n pageValues.itemid = ecode;\n if (skuLevelSupported && sku) {\n pageValues.itemid += \";\" + sku;\n }\n FireResX(pageValues);\n };\n var previousSKU = \"\";\n var ProcessSKUResolve = function (eventObject) {\n var data = eventObject.eventData;\n var pageValues = {};\n pageValues.event = \"product\";\n pageValues.rrqs = [CONST_recid_param + \"=OOSSKU\"];\n var sku = data.sku.id || data.sku.partNumber;\n pageValues.itemid = sku;\n if (w === Websites.DicksSportingGoods && !data.AvailableToShip && !data.AvailableForPickup) {\n pageValues.rrelem = \"skuoos_rr\";\n }\n var isSingleSKUItem = DataLayer.GetValue(\"ProductSKUList\").length === 1;\n if ((!isSingleSKUItem || pageValues.rrelem) && (!previousSKU || sku !== previousSKU)) {\n FireResX(pageValues);\n previousSKU = sku;\n }\n };\n var ProcessNotifyMe = function (eventObject) {\n var data = eventObject.eventData;\n var pageValues = {};\n pageValues.rrelem = \"backinstock_rr\";\n pageValues.itemid = data.ecode;\n var rreqValues = [];\n rreqValues.push(CONST_recid_param + \"=NotifyMe\");\n if (typeof data.sku.defAttributes !== \"undefined\" && typeof data.sku.defAttributes.length !== \"undefined\") {\n for (var i = 0; i < data.sku.defAttributes.length; i++) {\n if (data.sku.defAttributes[i].name.toLowerCase().indexOf(\"size\") >= 0) {\n rreqValues.push(\"size=\" + data.sku.defAttributes[i].value);\n break;\n }\n }\n }\n if (typeof data.bopisNotification !== \"undefined\" && data.store) {\n rreqValues.push(\"storeid=\" + data.store);\n }\n for (var i = 0; i < rreqValues.length; i++) {\n rreqValues[i] = encodeURIComponent(rreqValues[i]);\n }\n FireResX(pageValues);\n };\n var ProcessOOSSKUSelected = function (eventObject) {\n var data = eventObject.eventData;\n var pageValues = {};\n pageValues.rrelem = \"skuoos2_rr\";\n var rreqValues = [];\n rreqValues.push(CONST_recid_param + \"=OOSSku\");\n var certonaKeyLookup = { \"Size\": \"Size\",\n \"Shoe Size\": \"eComShoeSize\",\n \"Shoe Width\": \"eComShoeWidth\",\n \"Inseam\": \"Inseam\",\n \"Length\": \"PantLength\"\n };\n for (var key in data) {\n if (data[key].ecode) {\n pageValues.itemid = data[key].ecode;\n }\n else if (data[key].name && data[key].value && certonaKeyLookup[data[key].name]) {\n rreqValues.push(certonaKeyLookup[data[key].name] + \"=\" + data[key].value);\n }\n }\n for (var i = 0; i < rreqValues.length; i++) {\n rreqValues[i] = encodeURIComponent(rreqValues[i]);\n }\n FireResX(pageValues);\n };\n var ProcessAddToCart = function (eventObject) {\n var data = eventObject.eventData;\n var pageValues = {};\n var mainItem = false;\n var products = [];\n var stores = [];\n pageValues.rrqs = [];\n pageValues.event = \"addtocart_op\";\n var quickViewATC = false;\n if (typeof data.ProductsAddedToCart !== \"undefined\") {\n for (var i = 0; i < data.ProductsAddedToCart.length; i++) {\n mainItem = mainItem || (typeof data.ProductsAddedToCart[i].IsMainItem === \"undefined\" || data.ProductsAddedToCart[i].IsMainItem);\n products.push(data.ProductsAddedToCart[i].ProductID);\n quickViewATC = quickViewATC || data.ProductsAddedToCart[i].CartAdditionSource.toLowerCase() === \"quickview\";\n if (skuLevelSupported) {\n products.push(data.ProductsAddedToCart[i].ProductSKU);\n }\n if (data.ProductsAddedToCart[i].FulfillmentStore) {\n stores.push(data.ProductsAddedToCart[i].FulfillmentStore);\n }\n }\n }\n if (quickViewATC && certonaQuickView) {\n pageValues.event += \"r\";\n }\n if (products.length > 0) {\n pageValues.rrqs.push(CONST_recid_param + \"=CartModal\");\n pageValues.itemid = products.join(\";\");\n if (stores.length > 0) {\n pageValues.rrqs.push(\"storeid=\" + stores.join(\";\"));\n }\n if (mainItem) {\n pageValues.rrelem = \"cartmodal1_rr\";\n }\n FireResX(pageValues);\n }\n };\n var viewCartFired = false;\n var ProcessCartDataUpdated = function (eventObject) {\n var data = eventObject.eventData;\n var pageValues = {};\n if (!viewCartFired) {\n pageValues.event = \"viewcart\";\n viewCartFired = true;\n }\n if (typeof data.ProductArray !== \"undefined\") {\n var products = [];\n var prices = [];\n var storeSaved = false;\n pageValues.rrqs = [];\n pageValues.rrqs.push(CONST_recid_param + \"=Cart\");\n for (var i = 0; i < data.ProductArray.length; i++) {\n products.push(skuLevelSupported ? data.ProductArray[i].ProductSKU : data.ProductArray[i].ProductID);\n prices.push(parseFloat(data.ProductArray[i].CurrentPricePerUnit) * parseInt(data.ProductArray[i].ProductQty));\n if (data.ProductArray[i].FulfillmentStore && !storeSaved) {\n pageValues.rrqs.push(\"storeno=\" + data.ProductArray[i].FulfillmentStore);\n storeSaved = true;\n }\n }\n pageValues.itemid = products.join(\";\");\n try {\n pageValues.rrqs.push(\"carttotal=\" + (parseFloat(data.OrderTotal) - parseFloat(data.TaxTotal) - parseFloat(data.ShippingTotal)).toFixed(2));\n }\n catch (ex) { }\n }\n FireResX(pageValues);\n };\n var ProcessTabClicked = function (eventObject) {\n var data = eventObject.eventData;\n var pageValues = {};\n if (data.value.toLowerCase() === \"cartoos\") {\n pageValues.rrelem = \"cart2_rr\";\n pageValues.itemid = data.ecode;\n if (data.ProductSKU) {\n pageValues.itemid = data.ProductSKU;\n }\n FireResX(pageValues);\n }\n else if (data.value.toLowerCase() === \"calia\") {\n pageValues.rrelem = \"rechub1_rr\";\n FireResX(pageValues);\n }\n else if (data.value.toLowerCase() === \"vrst\") {\n pageValues.rrelem = \"rechub2_rr\";\n FireResX(pageValues);\n }\n else if (data.value.toLowerCase() === \"recently viewed\") {\n pageValues.rrelem = \"cart1_rr\";\n FireResX(pageValues);\n }\n else if (data.value.toLowerCase() === \"listoos\") {\n pageValues.event = \"favorites\";\n pageValues.rrelem = \"favorites_rr\";\n pageValues.itemid = data.ecode;\n if (data.ProductSKU) {\n pageValues.itemid = data.ProductSKU;\n }\n FireResX(pageValues);\n }\n };\n var ProcessTrackOrder = function (eventObject) {\n var data = eventObject.eventData;\n var pageValues = {};\n pageValues.rrelem = \"ordertracking_rr;ordertracking1_rr\";\n if (typeof data.ProductArray !== \"undefined\") {\n var products = [];\n for (var i = 0; i < data.ProductArray.length; i++) {\n products.push(skuLevelSupported ? data.ProductArray[i].ProductSKU : data.ProductArray[i].ProductID);\n }\n pageValues.itemid = products.join(\";\");\n }\n FireResX(pageValues);\n };\n var ProcessAEPDynamicProductSKUs = function (SKUs) {\n var pageValues = {};\n pageValues.rrelem = \"article_rr;article2_rr\";\n if (SKUs.length > 0) {\n pageValues.itemid = SKUs.join(\";\");\n FireResX(pageValues);\n }\n };\n var ProcessReturns = function (eventObject) {\n var data = eventObject.eventData;\n var productArray = DataLayer.GetValue(\"ProductReturnsArray\");\n var pageValues = {};\n pageValues.rrelem = \"product_rr\";\n currentRecommendationData.C = \"returnsCertonaRecommendations\";\n var items = [];\n if (typeof productArray.product !== \"undefined\") {\n items.push(productArray.product.sku);\n if (typeof productArray.reason !== \"undefined\") {\n pageValues.rrqs = [\"reasonCode=\" + productArray.reason];\n }\n }\n else if (typeof productArray.length !== \"undefined\") {\n for (var i = 0; i < productArray.length; i++) {\n var currentReturn = productArray[i];\n items.push(currentReturn.sku);\n }\n }\n pageValues.itemid = items.join(\";\");\n FireResX(pageValues);\n };\n var ProcessCertona = function (eventObject) {\n var data = eventObject.eventData;\n if (data && data.pageTypeOverride) {\n return;\n }\n u = EDL(\"PageURL\");\n currentRecommendationData = BuildRecommendationObject();\n currentPage = GetPageData(currentRecommendationData);\n if (currentPage !== null) {\n var enabled = GetPageProperty(currentPage, \"EN\");\n if (typeof enabled == \"undefined\" || enabled) {\n var EDLNames = GetPageProperty(currentPage, \"D\") || [];\n EDLNames.push(\"AOSStoreID\", \"SavedStoreNumber\", \"ZipCodeEstimation\");\n DataLayer.PassValuesToFunction(EDLNames, function (...args) {\n try {\n var D = {};\n for (var i = 0; i < args.length; i++) {\n D[EDLNames[i]] = args[i];\n }\n var AOSStoreNumber = D[\"AOSStoreID\"];\n var SavedStoreNumber = D[\"SavedStoreNumber\"];\n var ZipCodeEstimation = D[\"ZipCodeEstimation\"];\n var pageValues = {};\n var rreqValues = [];\n var itemidValues = [];\n pageValues.rrelem = GetPageProperty(currentPage, \"E\");\n pageValues.event = GetPageProperty(currentPage, \"EV\");\n pageValues.itemid = GetPageProperty(currentPage, \"I\");\n pageValues.externalPageHit = (!document.referrer || document.referrer.indexOf(_dsgTag.currentWebsite.Domain) < 0);\n if (AOSStoreNumber) {\n pageValues.storeNumber = AOSStoreNumber;\n }\n if (SavedStoreNumber && !D[\"StoreLocatorStoreNumber\"] && pageValues.event !== \"surveyresults\") {\n rreqValues.push(\"storeid=\" + SavedStoreNumber);\n }\n if (GetPageProperty(currentPage, \"RecID\")) {\n rreqValues.push(CONST_recid_param + \"=\" + GetPageProperty(currentPage, \"RecID\"));\n }\n var channelRules = {\n \"lia\": /^CSE\\|.*?\\|.*?(lia|mk_pla_454).*?\\|/i,\n \"pla\": /^CSE\\|.*?\\|.*?(PLA|pla|bingshoppingpaid).*?\\|/i,\n \"sem\": /^SEM/i,\n \"seo\": /^SEO/i,\n \"dabasocial\": /^SNS\\|.*?\\|.*?(daba).*?\\|/i,\n \"dpasocial\": /^SNS\\|.*?\\|.*?(dpa).*?\\|/i,\n \"othersocial\": /^SNS/i\n };\n var channelInfo = HelperFunctions.GetMarketingChannelInfo();\n var channelString = channelInfo.Channel + \"|\" + channelInfo.ReferringDomain.toLowerCase() + \"|\" + channelInfo.Campaign.toLowerCase() + \"|\" + channelInfo.URL;\n for (var key in channelRules) {\n if (channelRules[key].test(channelString)) {\n rreqValues.push(\"entrancesource=\" + key);\n break;\n }\n }\n if (D) {\n if (D[\"InternalSearchTerm\"]) {\n rreqValues.push(\"SearchTerm=\" + D[\"InternalSearchTerm\"]);\n }\n if (D[\"FamilyID\"]) {\n rreqValues.push(\"categoryid=\" + D[\"FamilyID\"]);\n pageValues.itemid = D[\"FamilyID\"] + ((pageValues.event === \"category_r\") ? \";\" + (HelperFunctions.GetQueryStringValue(\"contentid\") ? HelperFunctions.GetQueryStringValue(\"contentid\") : \"\") : \"\");\n }\n else if (D[\"CategoryID\"]) {\n rreqValues.push(\"categoryid=\" + D[\"CategoryID\"]);\n pageValues.itemid = D[\"CategoryID\"] + ((pageValues.event === \"category_r\") ? \";\" + (HelperFunctions.GetQueryStringValue(\"contentid\") ? HelperFunctions.GetQueryStringValue(\"contentid\") : \"\") : \"\");\n }\n if (D[\"ProductID\"]) {\n itemidValues.push(D[\"ProductID\"]);\n }\n else if (D[\"ProductIDList\"]) {\n itemidValues.push.apply(itemidValues, D[\"ProductIDList\"]);\n }\n if (skuLevelSupported) {\n if (currentPage !== currentRecommendationData.P.ProductDetails) {\n itemidValues = [];\n }\n if (D[\"ProductSKU\"]) {\n itemidValues.push(D[\"ProductSKU\"]);\n previousSKU = D[\"ProductSKU\"];\n }\n else if (D[\"ProductSKUList\"]) {\n itemidValues.push.apply(itemidValues, D[\"ProductSKUList\"]);\n }\n }\n if (D[\"ProductPageTemplateType\"] && D[\"ProductPageTemplateType\"].toLowerCase() === \"bundle\" && D[\"ProductDetails\"] && D[\"ProductDetails\"].length > 1) {\n for (var i = 0; i < D[\"ProductDetails\"].length; i++) {\n itemidValues.push(D[\"ProductDetails\"][i].ProductID);\n }\n }\n if (D[\"StoreLocatorStoreNumber\"]) {\n rreqValues.push(\"storeid=\" + D[\"StoreLocatorStoreNumber\"]);\n }\n if (D[\"ProductQuantityList\"]) {\n pageValues.qty = D[\"ProductQuantityList\"].join(\";\");\n }\n if (D[\"ProductPriceList\"] && D[\"ProductQuantityList\"]) {\n var prices = D[\"ProductPriceList\"];\n for (var j = 0; j < prices.length; j++) {\n prices[j] = prices[j] * D[\"ProductQuantityList\"][j];\n }\n var currentValue = prices.join(\";\");\n pageValues.price = currentValue;\n }\n if (D[\"OrderTotal\"] && D[\"OrderTax\"] && D[\"OrderShippingRevenue\"]) {\n pageValues.total = (parseFloat(D[\"OrderTotal\"]) - D[\"OrderTax\"] - D[\"OrderShippingRevenue\"]).toFixed(2);\n }\n if (D[\"OrderID\"]) {\n pageValues.transactionid = D[\"OrderID\"];\n }\n if (D[\"ProductReturnsArray\"]) {\n var idList = [];\n if (typeof D[\"ProductReturnsArray\"].product !== \"undefined\") {\n idList.push(D[\"ProductReturnsArray\"].product.sku);\n }\n else if (typeof D[\"ProductReturnsArray\"].length !== \"undefined\") {\n for (var i = 0; i < D[\"ProductReturnsArray\"].length; i++) {\n var currentReturn = D[\"ProductReturnsArray\"][i];\n idList.push(currentReturn.sku);\n }\n }\n pageValues.itemid = idList.join(\";\");\n }\n if ((GetPageProperty(currentPage, \"RecID\") && GetPageProperty(currentPage, \"RecID\").toLowerCase().indexOf(\"brand\") >= 0) && (D[\"PageURL\"] || D[\"PageName\"])) {\n var brandLookupTable = { \"free-people-clothing\": \"FP Movement by Free People\", \"dsg-brand-clothing-gear\": \"DSG\", \"taylormade-golf-clubs-and-equipment\": \"Taylormade\", \"callaway-golf-brand-shop\": \"Callaway\", \"maxfli-elevated-brand-shop\": \"Maxfli\", \"easton-ghost-bats\": \"Easton Sports\", \"titleist-tsr-woods\": \"Titleist\", \"baseball-pro-gloves\": \"Pro Series Gloves\", \"perfect-game\": \"perfectgame\", \"shop-solo-stove\": \"solo\" };\n var brandName = D[\"PageName\"];\n var URL = D[\"PageURL\"];\n var scrapeValue = document.querySelector(\".cmp-title__text\");\n brandName = brandName || (scrapeValue ? scrapeValue.innerText.toLowerCase() : brandName);\n for (var key in brandLookupTable) {\n if (URL.toLowerCase().indexOf(key.toLowerCase()) >= 0) {\n brandName = brandLookupTable[key];\n break;\n }\n }\n if (brandName) {\n rreqValues.push(\"brand=\" + brandName);\n }\n else {\n HelperFunctions.DebugLog(\"Couldn't determine brand name for Certona!\", 2);\n }\n }\n }\n for (var i = 0; i < rreqValues.length; i++) {\n rreqValues[i] = encodeURIComponent(rreqValues[i]);\n }\n if (itemidValues.length > 0) {\n pageValues.itemid = itemidValues.join(\";\");\n }\n if (currentPage.C) {\n currentRecommendationData.C = currentPage.C;\n }\n FireResX(pageValues);\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Error in Process Certona: \" + ex.message, 2);\n }\n }, data);\n }\n }\n if (!initialProcessComplete) {\n inputDataObject.AddEventHandler(\"ProductQuickView\", ProcessProductQuickView);\n inputDataObject.AddEventHandler(\"AddToCart\", ProcessAddToCart);\n if (skuLevelSupported) {\n inputDataObject.AddEventHandler(\"SKUResolve\", ProcessSKUResolve);\n }\n inputDataObject.AddEventHandler(\"tabbedComponentClicked\", ProcessTabClicked);\n inputDataObject.AddEventHandler(\"CartDataUpdated\", ProcessCartDataUpdated);\n inputDataObject.AddEventHandler(\"TrackOrder\", ProcessTrackOrder);\n inputDataObject.AddEventHandler(\"NotifyMeStock\", ProcessNotifyMe);\n inputDataObject.AddEventHandler(\"AlternativeInStockProduct\", ProcessOOSSKUSelected);\n inputDataObject.AddEventHandler(\"AdobeTargetRequestSucceeded\", ProcessTargetResponse);\n if (typeof window.DSGShoppingPathJS !== \"undefined\" && typeof window.DSGShoppingPathJS.certonaRecommendations == \"function\") {\n FunctionRepository.AddCertonaResponseHandler(window.DSGShoppingPathJS.certonaRecommendations);\n }\n if (typeof window.certonaRecommendations == \"function\") {\n FunctionRepository.AddCertonaResponseHandler(window.certonaRecommendations);\n }\n var AEPSkus = [];\n var attempts = 0;\n var CheckForAEPDynamicProductData = function () {\n try {\n if (window.adobeDataLayer) {\n var i = 0;\n while (window.adobeDataLayer[i] && AEPSkus.length == 0) {\n if (window.adobeDataLayer[i].component) {\n var names = Object.getOwnPropertyNames(window.adobeDataLayer[i].component);\n for (var j = 0; j < names.length; j++) {\n if (names[j].toLowerCase().indexOf(\"dynamicproductplacement\") == 0 || window.adobeDataLayer[i].component[names[j]]['@type'].toLowerCase().indexOf(\"productplacement\") >= 0) {\n if (window.adobeDataLayer[i].component[names[j]].productSKUList) {\n AEPSkus = window.adobeDataLayer[i].component[names[j]].productSKUList;\n }\n }\n }\n }\n i++;\n }\n if (AEPSkus.length > 0) {\n ProcessAEPDynamicProductSKUs(AEPSkus);\n }\n }\n else {\n if (attempts < 10) {\n attempts++;\n setTimeout(CheckForAEPDynamicProductData, 500);\n }\n }\n }\n catch (ex) { }\n };\n CheckForAEPDynamicProductData();\n }\n initialProcessComplete = true;\n };\n FunctionRepository.AddCertonaResponseHandler(function (certonaData) {\n for (var i = 0; i < certonaData.resonance.schemes.length; i++) {\n var currentScheme = certonaData.resonance.schemes[i];\n if (currentScheme.scheme == \"cart1_rr\" && currentScheme.display == \"no\") {\n EventHandlers.TriggerEvent(\"multiUseAnalyticsEvent\", { \"event\": \"Certona scheme did not display\", \"value\": currentScheme.scheme });\n }\n }\n });\n inputDataObject.AddEventHandler(\"NewPageView\", ProcessCertona);\n}\n;\n_dsgTag.certonaResponseHandlers = [];\n_dsgTag.certonaData = [];\n//# sourceMappingURL=CertonaHostless.js.map","import { Websites } from \"../consts/websites.const\";\nimport { PageTypes } from \"../consts/pageTypes.const\";\nimport { InitTimings } from \"../enums/enums.enum\";\nimport { _dsgTag } from \"../namespaces/_dsgTag.namespace\";\nimport { HelperFunctions } from \"../namespaces/helperFunctions.namespace\";\nimport { DataLayer } from \"../namespaces/dataLayer.namespace\";\nimport { TagCondition } from \"../classes/tagCondition.class\";\nvar baseConditions = [{ t: \"site\", c: \"=\", v: [\"DSG\", \"GGXY\", \"PBL\", \"GONE\"] }, { t: \"page\", c: \"^!=\", v: \"Chat\" }, { t: \"aos\", c: \"=\", v: \"false\" }, { t: \"iframe\", c: \"=\", v: \"false\" }, { t: \"dns\" }];\nvar conditions = [];\nfor (var i = 0; i < baseConditions.length; i++) {\n conditions.push(new TagCondition(baseConditions[i].t, baseConditions[i].c, baseConditions[i].v));\n}\nexport var CommissionJunction = { name: \"CommissionJunction\", timing: InitTimings.Page3rdPartySignal, conditions: conditions, initFunction: init };\nfunction init(inputDataObject) {\n var actionID, enterpriseID, tagID;\n switch (_dsgTag.currentWebsite) {\n case Websites.DicksSportingGoods:\n actionID = 482772;\n enterpriseID = 1583679;\n tagID = 972974011589;\n break;\n case Websites.GolfGalaxy:\n actionID = 482912;\n enterpriseID = 1583739;\n tagID = 973786998200;\n break;\n case Websites.PublicLands:\n actionID = 482892;\n enterpriseID = 1583740;\n tagID = 973778043146;\n break;\n case Websites.GoingGoingGone:\n actionID = 482913;\n enterpriseID = 1583741;\n tagID = 973793807439;\n break;\n }\n var CJLocalStorageName = \"CJChannel\";\n if (enterpriseID) {\n var tagLocation = \"https://www.mczbf.com/tags/\" + tagID.toString() + \"/tag.js\";\n var InsertCJScript = function () {\n HelperFunctions.LoadScriptAsyncAndCallFunction(tagLocation, inputDataObject.name, null, \"cjapitag\");\n };\n var GetCJPageType = function () {\n var output = \"\";\n switch (_dsgTag.pageType) {\n case PageTypes.Home: {\n output = \"homepage\";\n break;\n }\n case PageTypes.Search: {\n output = \"searchResults\";\n break;\n }\n case PageTypes.Category: {\n output = \"category\";\n break;\n }\n case PageTypes.Family: {\n output = \"subcategory\";\n break;\n }\n case PageTypes.ProductDetails: {\n output = \"productDetail\";\n break;\n }\n case PageTypes.Cart: {\n output = \"cart\";\n break;\n }\n case PageTypes.MyAccount: {\n output = \"accountCenter\";\n break;\n }\n case PageTypes.MyAccountRegistration: {\n output = \"accountSignup\";\n break;\n }\n case PageTypes.Static: {\n if (window.location.href.indexOf(\"/s/stores\") >= 0) {\n output = \"storeLocator\";\n }\n break;\n }\n }\n return output;\n };\n var FireCJPixel = function (eventInstance) {\n if (!window.cj)\n window.cj = {};\n if (_dsgTag.pageType === PageTypes.OrderConfirmation) {\n DataLayer.PassValuesToFunction([\"OrderID\", \"OrderTotal\", \"OrderTax\", \"OrderShippingRevenue\", \"ProductListArray\"], function (orderID, orderTotal, taxTotal, shippingTotal, productList) {\n var revenue = \"0.00\";\n if (orderTotal && taxTotal && shippingTotal) {\n revenue = (orderTotal - taxTotal - shippingTotal).toFixed(2);\n }\n var order = {};\n order = {\n enterpriseId: enterpriseID,\n pageType: 'conversionConfirmation',\n orderId: orderID,\n actionTrackerId: actionID,\n currency: 'USD',\n amount: revenue,\n items: []\n };\n if (HelperFunctions.GetCookieValue(\"cje\")) {\n order.cjeventOrder = HelperFunctions.GetCookieValue(\"cje\");\n }\n order.items = [];\n for (var i = 0; i < productList.length; i++) {\n var currentItem = {};\n currentItem.itemId = productList[i].ProductSKU;\n currentItem.quantity = productList[i].ProductQty;\n currentItem.unitPrice = productList[i].CurrentPricePerUnit;\n currentItem.discount = (productList[i].DistributedOrderDiscountPerUnit * productList[i].ProductQty).toFixed(2);\n if (productList[i].ProductQty > 15 && !cj.order.category) {\n order.category = \"reseller\";\n }\n order.items.push(currentItem);\n }\n if (_dsgTag.CustomerIDs.AthleteID) {\n order.userId = _dsgTag.CustomerIDs.AthleteID;\n }\n if (_dsgTag.CustomerIDs.HashedEmail) {\n order.emailHash = _dsgTag.CustomerIDs.HashedEmail;\n }\n var storedChannel = HelperFunctions.GetValue(CJLocalStorageName) ? JSON.parse(HelperFunctions.GetValue(CJLocalStorageName) || \"\") : \"\";\n if (storedChannel) {\n order.bypassChannel = storedChannel;\n }\n cj.order = order;\n InsertCJScript();\n }, eventInstance.eventData);\n }\n else {\n var pageType = GetCJPageType();\n var marketingChannelInfo = HelperFunctions.GetMarketingChannelInfo();\n var existingCJChannelInfo = HelperFunctions.GetValue(CJLocalStorageName);\n if (existingCJChannelInfo) {\n var parsedExistingCJChannelInfo = JSON.parse(existingCJChannelInfo);\n var expirationTime = 1000 * 60 * 60 * 72;\n if (Date.now() - Date.parse(parsedExistingCJChannelInfo.timestamp) >= expirationTime) {\n parsedExistingCJChannelInfo = null;\n HelperFunctions.DeleteValue(CJLocalStorageName);\n }\n }\n if (marketingChannelInfo && marketingChannelInfo.Channel) {\n var channelName = \"\";\n switch (marketingChannelInfo.Channel) {\n case \"AFF\": {\n channelName = \"CJ\";\n break;\n }\n case \"DRT\": {\n channelName = \"Direct\";\n break;\n }\n case \"DSP\": {\n channelName = \"Display\";\n break;\n }\n case \"SNS\": {\n channelName = \"Social\";\n break;\n }\n case \"SEM\":\n case \"SEO\": {\n channelName = \"Search\";\n break;\n }\n case \"EML\": {\n channelName = \"Email\";\n break;\n }\n default: {\n channelName = \"Other\";\n break;\n }\n }\n if (channelName) {\n var channel = {\n name: channelName,\n timestamp: new Date(Date.now()).toISOString()\n };\n if (!existingCJChannelInfo || channelName !== \"Direct\") {\n HelperFunctions.SaveValue(CJLocalStorageName, JSON.stringify(channel));\n }\n }\n }\n if (pageType) {\n cj.sitePage = {\n enterpriseId: enterpriseID,\n pageType: pageType,\n };\n if (_dsgTag.CustomerIDs.AthleteID) {\n cj.sitePage.userId = _dsgTag.CustomerIDs.AthleteID;\n }\n if (_dsgTag.CustomerIDs.HashedEmail) {\n cj.sitePage.emailHash = _dsgTag.CustomerIDs.HashedEmail;\n }\n InsertCJScript();\n }\n }\n };\n inputDataObject.AddEventHandler(\"NewPageView\", FireCJPixel);\n }\n}\n;\n//# sourceMappingURL=CommissionJunction.js.map","import { Websites } from \"../consts/websites.const\";\nimport { PageTypes } from \"../consts/pageTypes.const\";\nimport { InitTimings } from \"../enums/enums.enum\";\nimport { _dsgTag } from \"../namespaces/_dsgTag.namespace\";\nimport { HelperFunctions } from \"../namespaces/helperFunctions.namespace\";\nimport { DataLayer } from \"../namespaces/dataLayer.namespace\";\nimport { TagCondition } from \"../classes/tagCondition.class\";\nvar baseConditions = [{ t: \"site\", c: \"=\", v: [\"DSG\", \"GGXY\", \"PBL\", \"MJ\"] }, { t: \"page\", c: \"^!=\", v: \"Chat\" }, { t: \"aos\", c: \"=\", v: \"false\" }, { t: \"iframe\", c: \"=\", v: \"false\" }, { t: \"dns\" }];\nvar conditions = [];\nfor (var i = 0; i < baseConditions.length; i++) {\n conditions.push(new TagCondition(baseConditions[i].t, baseConditions[i].c, baseConditions[i].v));\n}\nexport var CriteoRemarketing = { name: \"CriteoRemarketing\", timing: InitTimings.Page3rdPartySignal, conditions: conditions, initFunction: init };\nfunction init(inputDataObject) {\n var criteoID = \"\";\n var additionalSetDataEvent = \"\";\n var skuBased = false;\n switch (_dsgTag.currentWebsite) {\n case Websites.DicksSportingGoods:\n skuBased = true;\n criteoID = \"25953\";\n break;\n case Websites.GolfGalaxy:\n criteoID = \"35855\";\n break;\n case Websites.PublicLands:\n criteoID = \"88190\";\n skuBased = true;\n break;\n case Websites.Moosejaw:\n criteoID = \"88190\";\n skuBased = true;\n additionalSetDataEvent = \"ui_moosejaw\";\n break;\n }\n if (criteoID) {\n HelperFunctions.LoadScriptAsyncAndCallFunction(\"//dynamic.criteo.com/js/ld/ld.js?a=\" + criteoID, inputDataObject.name, function () { });\n window.criteo_q = window.criteo_q || [];\n window.criteo_q.push({\n event: \"setAccount\",\n account: criteoID\n }, {\n event: \"setSiteType\",\n type: _dsgTag.experience === \"Desktop\" ? \"d\" : (_dsgTag.experience === \"Mobile\" || _dsgTag.experience === \"Mobile App\" ? \"m\" : (_dsgTag.experience === \"Tablet\" ? \"t\" : \"\"))\n }, {\n event: \"setEmail\",\n email: _dsgTag.CustomerIDs.HashedEmail,\n hash_method: \"sha256\"\n });\n if (additionalSetDataEvent) {\n var dataObject = {};\n dataObject[\"event\"] = \"setData\";\n dataObject[additionalSetDataEvent] = \"yes\";\n window.criteo_q.push(dataObject);\n }\n var FireCriteoPagePixel = function (eventObject) {\n var d = eventObject.eventData;\n switch (_dsgTag.pageType) {\n case PageTypes.Home:\n {\n window.criteo_q.push({\n event: \"viewHome\"\n });\n break;\n }\n case PageTypes.Family:\n case PageTypes.Search:\n {\n window.criteo_q.push({\n event: \"viewList\"\n });\n break;\n }\n case PageTypes.ProductDetails:\n {\n DataLayer.PassValuesToFunction([\"ProductID\", \"ProductSKU\"], function (productID, productSKU) {\n window.criteo_q.push({\n event: \"viewItem\",\n item: skuBased ? (productSKU || productID) : productID\n });\n }, d);\n break;\n }\n case PageTypes.OrderConfirmation:\n {\n DataLayer.PassValuesToFunction([\"ProductListArray\", \"OrderID\"], function (products, orderID) {\n var items = [];\n if (products) {\n for (var i = 0; i < products.length; i++) {\n items.push({\n id: skuBased ? products[i].ProductSKU : products[i].ProductID,\n price: (products[i].CurrentPricePerUnit - products[i].DistributedOrderDiscountPerUnit).toFixed(2),\n quantity: products[i].ProductQty\n });\n }\n }\n window.criteo_q.push({\n event: \"trackTransaction\",\n id: orderID,\n item: items\n });\n }, d);\n break;\n }\n default: {\n window.criteo_q.push({\n event: \"viewPage\"\n });\n }\n }\n };\n var FireCriteoAddToCartPixel = function (eventObject) {\n var d = eventObject.eventData;\n if (d && d.ProductsAddedToCart && d.ProductsAddedToCart.length > 0) {\n var items = [];\n if (d && d.ProductsAddedToCart && typeof d.ProductsAddedToCart === \"object\" && d.ProductsAddedToCart.length > 0) {\n for (var i = 0; i < d.ProductsAddedToCart.length; i++) {\n if (d.ProductsAddedToCart[i] && d.ProductsAddedToCart[i].ProductID) {\n items.push({\n id: skuBased ? d.ProductsAddedToCart[i].ProductSKU : d.ProductsAddedToCart[i].ProductID,\n price: d.ProductsAddedToCart[i].CurrentPricePerUnit,\n quantity: d.ProductsAddedToCart[i].ProductQty\n });\n }\n }\n }\n if (items.length > 0) {\n window.criteo_q.push({\n event: \"addToCart\",\n item: items\n });\n }\n }\n };\n var FireCriteoCartPixel = function (eventObject) {\n var d = eventObject.eventData;\n DataLayer.PassValuesToFunction([\"ProductListArray\"], function (products) {\n var items = [];\n if (products) {\n for (var i = 0; i < products.length; i++) {\n items.push({\n id: skuBased ? products[i].ProductSKU : products[i].ProductID,\n price: products[i].CurrentPricePerUnit,\n quantity: products[i].ProductQty\n });\n }\n }\n window.criteo_q.push({\n event: \"viewBasket\",\n item: items\n });\n }, d);\n };\n inputDataObject.AddEventHandler(\"NewPageView\", FireCriteoPagePixel);\n inputDataObject.AddEventHandler(\"AddToCart\", FireCriteoAddToCartPixel);\n inputDataObject.AddEventHandler(\"CartDataUpdated\", FireCriteoCartPixel);\n }\n}\n;\n//# sourceMappingURL=CriteoRemarketing.js.map","import { PageTypes } from \"../consts/pageTypes.const\";\nimport { InitTimings } from \"../enums/enums.enum\";\nimport { _dsgTag } from \"../namespaces/_dsgTag.namespace\";\nimport { DataLayer } from \"../namespaces/dataLayer.namespace\";\nimport { TagCondition } from \"../classes/tagCondition.class\";\nvar baseConditions = [{ t: \"aos\", c: \"=\", v: false }, { t: \"page\", c: \"=\", v: \"Order Confirmation\" }];\nvar conditions = [];\nfor (var i = 0; i < baseConditions.length; i++) {\n conditions.push(new TagCondition(baseConditions[i].t, baseConditions[i].c, baseConditions[i].v));\n}\nexport var Epsilon = { name: \"Epsilon\", timing: InitTimings.Page3rdPartySignal, conditions: conditions, initFunction: init };\nfunction init(inputDataObject) {\n function LoadEpsilonPixel(eventObject) {\n var d = eventObject.eventData;\n DataLayer.PassValuesToFunction([\"OrderID\", \"ProductQuantityList\", \"OrderTotal\", \"OrderTax\", \"OrderShippingRevenue\"], function (orderID, productQuantityList, orderTotal, taxTotal, shippingTotal) {\n var d = new Date();\n var hDateTime = d.toISOString();\n hDateTime = hDateTime.substring(0, 19) + \"Z\";\n var site = _dsgTag.currentWebsite.Domain;\n var revenue;\n var quantity = \"0\";\n for (var i = 0; i < productQuantityList.length; i++) {\n quantity += parseInt(productQuantityList[i], 10);\n }\n quantity = quantity.toString();\n revenue = (orderTotal - taxTotal - shippingTotal).toFixed(2);\n var pixelURL = \"https://e.\" + site + \"/C?hEventName=Purchase&hAmount=\" + revenue + \"&hQuantity=\" + quantity + \"&hOrderId=\" + orderID + \"&hCustomerTransactionId=\" + orderID + \"&hDateTime=\" + encodeURIComponent(hDateTime);\n var img = document.createElement('img');\n img.src = pixelURL;\n }, d);\n }\n inputDataObject.AddEventHandler(\"NewPageView\", function (eventObject) {\n if (_dsgTag.pageType === PageTypes.OrderConfirmation) {\n LoadEpsilonPixel(eventObject);\n }\n });\n}\n;\n//# sourceMappingURL=Epsilon.js.map","export function InitFacebook() {\n var locale = \"en_US\" || \"en_US\";\n (function (n) {\n if (window.fbq)\n return;\n n = window.fbq = function () {\n n.callMethod ? n.callMethod.apply(n, arguments) : n.queue.push(arguments);\n };\n if (!window._fbq)\n window._fbq = n;\n n.push = n;\n n.loaded = !0;\n n.version = \"2.0\";\n n.queue = [];\n })();\n}\n//# sourceMappingURL=facebook.js.map","import { Websites } from \"../consts/websites.const\";\nimport { PageTypes } from \"../consts/pageTypes.const\";\nimport { InitTimings } from \"../enums/enums.enum\";\nimport { LogLevels } from \"../enums/enums.enum\";\nimport { _dsgTag } from \"../namespaces/_dsgTag.namespace\";\nimport { HelperFunctions } from \"../namespaces/helperFunctions.namespace\";\nimport { DataLayer } from \"../namespaces/dataLayer.namespace\";\nimport { TagCondition } from \"../classes/tagCondition.class\";\nimport { brandsToTrack } from \"../consts/brandsToTrack.const\";\nimport { InitFacebook } from \"../vendorScripts/facebook\";\nvar baseConditions = [{ t: \"site\", c: \"=\", v: [\"DSG\", \"GGXY\", \"PBL\", \"GONE\", \"MJ\"] }, { t: \"page\", c: \"^!=\", v: \"Chat\" }, { t: \"aos\", c: \"=\", v: \"false\" }, { t: \"iframe\", c: \"=\", v: \"false\" }, { t: \"dns\" }];\nvar conditions = [];\nfor (var i = 0; i < baseConditions.length; i++) {\n conditions.push(new TagCondition(baseConditions[i].t, baseConditions[i].c, baseConditions[i].v));\n}\nexport var Facebook = { name: \"Facebook\", timing: InitTimings.Page3rdPartySignal, conditions: conditions, initFunction: init };\nfunction init(inputDataObject) {\n var pixelID = \"\";\n var affirmID = \"\";\n var gameChangerID = \"\";\n switch (_dsgTag.currentWebsite) {\n case Websites.DicksSportingGoods:\n {\n pixelID = \"135094900296930\";\n affirmID = \"2790099174426551\";\n gameChangerID = \"443467580009962\";\n break;\n }\n case Websites.GolfGalaxy:\n {\n pixelID = \"837841406319460\";\n break;\n }\n case Websites.PublicLands:\n {\n pixelID = \"1380756192320784\";\n break;\n }\n case Websites.GoingGoingGone:\n {\n pixelID = \"1127232681100669\";\n break;\n }\n case Websites.Moosejaw:\n {\n pixelID = \"1295173757833128\";\n break;\n }\n }\n if (pixelID) {\n let TrackType;\n (function (TrackType) {\n TrackType[\"track\"] = \"track\";\n TrackType[\"trackSingle\"] = \"trackSingle\";\n TrackType[\"trackCustom\"] = \"trackCustom\";\n })(TrackType || (TrackType = {}));\n InitFacebook();\n HelperFunctions.LoadScriptAsyncAndCallFunction(\"https://connect.facebook.net/en_US/fbevents.js\", inputDataObject.name);\n var FireFacebookPageView = function (eventObject) {\n var d = eventObject.eventData;\n var additionalData = {};\n if (HelperFunctions.GetQueryStringValue(\"CONNECTION_STATUS\") && HelperFunctions.GetQueryStringValue(\"CONNECTION_STATUS\").toLowerCase() == \"success\") {\n additionalData = { \"NikeConnected\": true };\n }\n TriggerPixel(TrackType.track, \"PageView\", additionalData, d.taggingEventID);\n };\n var FireFacebookViewContentPixel = function (eventObject) {\n var d = eventObject.eventData;\n var eventType = \"ViewContent\";\n var content_ids = DataLayer.GetValue(\"ProductID\", d);\n content_ids = content_ids.split(\",\");\n var content_type = \"product_group\";\n var trackObject = {};\n if (content_ids)\n trackObject.content_ids = content_ids;\n if (content_type)\n trackObject.content_type = content_type;\n TriggerPixel(TrackType.trackSingle, eventType, trackObject, d.taggingEventID, pixelID);\n if (gameChangerID && window.location.pathname === \"/p/gamechanger-streaming-kit-w-fence-mount-tripod-23sojuphnhldrbgxxtrm/23sojuphnhldrbgxxtrm\") {\n TriggerPixel(TrackType.trackSingle, \"Dicks_GC_StreamKit_PageView\", {}, d.taggingEventID, gameChangerID);\n }\n };\n var FireFaceBookEmailSignupPixel = function (eventObject) {\n var eventData = eventObject.eventData;\n TriggerPixel(TrackType.trackSingle, 'Lead', { currency: \"USD\", value: 0.00 }, eventData.taggingEventID, pixelID);\n };\n var FireFaceBookAddToCartPixel = function (eventObject) {\n var eventData = eventObject.eventData;\n if (eventData && eventData.ProductsAddedToCart && eventData.ProductsAddedToCart.length > 0) {\n var products = [];\n var revenue = 0;\n var isGameChanger = false;\n try {\n if (eventData && eventData.ProductsAddedToCart && typeof eventData.ProductsAddedToCart === \"object\" && eventData.ProductsAddedToCart.length > 0) {\n for (var i = 0; i < eventData.ProductsAddedToCart.length; i++) {\n if (eventData.ProductsAddedToCart[i] && eventData.ProductsAddedToCart[i].ProductSKU) {\n revenue += (eventData.ProductsAddedToCart[i].CurrentPricePerUnit * eventData.ProductsAddedToCart[i].ProductQty);\n products.push({ \"id\": eventData.ProductsAddedToCart[i].ProductSKU, \"quantity\": eventData.ProductsAddedToCart[i].ProductQty });\n isGameChanger = (eventData.ProductsAddedToCart[i].ProductID.toLowerCase() === \"23sojuphnhldrbgxxtrm\") || isGameChanger;\n }\n }\n }\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Facebook AddToCart Pixel - Error while parsing product info\", LogLevels.Error);\n }\n if (products.length > 0) {\n var eventType = \"AddToCart\";\n var trackObject = {};\n trackObject.value = revenue.toFixed(2);\n trackObject.contents = products;\n trackObject.content_type = \"product\";\n trackObject.currency = \"USD\";\n TriggerPixel(TrackType.trackSingle, eventType, trackObject, eventData.taggingEventID, pixelID);\n if (gameChangerID && isGameChanger) {\n TriggerPixel(TrackType.trackSingle, \"Dicks_GC_StreamKit_AddToCart\", trackObject, eventData.taggingEventID, gameChangerID);\n }\n }\n }\n };\n var FireFacebookConversion = function (eventObject) {\n var d = eventObject.eventData;\n DataLayer.PassValuesToFunction([\"OrderID\", \"OrderTotal\", \"OrderTax\", \"OrderShippingRevenue\", \"ProductListArray\", \"OrderPaymentMethods\", \"OrderShippingMethod\"], function (orderID, orderTotal, taxTotal, shippingTotal, productList, paymentMethods, shippingMethod) {\n var revenue = \"0.00\";\n var totalQuantity = 0;\n if (orderTotal && taxTotal && shippingTotal) {\n revenue = (orderTotal - taxTotal - shippingTotal).toFixed(2);\n }\n var contentsList = [];\n var containsBopis = 0;\n var isGameChanger = false;\n if (productList) {\n var currentItem = {};\n for (var i = 0; i < productList.length; i++) {\n if (!isNaN(Number(productList[i].ProductQty))) {\n totalQuantity += Number(productList[i].ProductQty);\n }\n currentItem.content_type = \"product\";\n currentItem.content_ids = productList[i].ProductSKU;\n currentItem.currency = \"USD\";\n currentItem.value = (productList[i].CurrentPricePerUnit - productList[i].DistributedOrderDiscountPerUnit).toFixed(2);\n currentItem.brand = productList[i].ProductBrand;\n if (containsBopis < 1 && typeof productList[i].FulfillmentMethod !== \"undefined\" && productList[i].FulfillmentMethod.match(/BOPIS/)) {\n containsBopis = 1;\n }\n isGameChanger = (productList[i].ProductID.toLowerCase() === \"23sojuphnhldrbgxxtrm\") || isGameChanger;\n if (currentItem.brand) {\n for (var j = 0; j < brandsToTrack.length; j++) {\n if (currentItem.brand.toLowerCase() === brandsToTrack[j].toLowerCase()) {\n TriggerPixel(TrackType.trackCustom, \"BrandPurchase\", currentItem, orderID + \"-\" + j);\n }\n }\n }\n contentsList.push({ \"id\": productList[i].ProductSKU, \"quantity\": productList[i].ProductQty });\n }\n }\n if (orderID && revenue && contentsList.length > 0) {\n var trackObject = {};\n trackObject.order_id = orderID;\n trackObject.value = revenue;\n trackObject.contents = contentsList;\n trackObject.content_type = \"product\";\n trackObject.currency = \"USD\";\n trackObject.num_items = totalQuantity.toString();\n trackObject.bopis = containsBopis.toString();\n trackObject.delivery_category = shippingMethod.toLowerCase().indexOf(\"sameday\") >= 0 ? \"same_day\" : (containsBopis === 1 ? \"in_store\" : \"home_delivery\");\n trackObject.synchrony = (paymentMethods.join(\",\").toLowerCase().indexOf(\"plcc\") >= 0).toString();\n TriggerPixel(TrackType.trackSingle, \"Purchase\", trackObject, orderID, pixelID);\n if (gameChangerID && isGameChanger) {\n TriggerPixel(TrackType.trackSingle, \"Dicks_GC_StreamKit_KPI_Purchase\", trackObject, orderID, gameChangerID);\n }\n }\n }, d);\n };\n var hasBeenInitialized = false;\n var Initialize = function () {\n if (!hasBeenInitialized) {\n var idObject = {};\n if (_dsgTag.CustomerIDs.HashedEmail) {\n idObject.em = _dsgTag.CustomerIDs.HashedEmail;\n }\n fbq(\"init\", pixelID, idObject);\n if (affirmID) {\n fbq(\"init\", affirmID, idObject);\n }\n if (gameChangerID) {\n fbq(\"init\", gameChangerID, idObject);\n }\n hasBeenInitialized = true;\n }\n };\n function TriggerPixel(type, event, data, eventID, pixelID) {\n if (!hasBeenInitialized) {\n Initialize();\n }\n if (pixelID) {\n fbq(type, pixelID, event, data, { eventID: eventID });\n }\n else {\n fbq(type, event, data, { eventID: eventID });\n }\n }\n inputDataObject.AddEventHandler(\"NewPageView\", function (eventObject) {\n FireFacebookPageView(eventObject);\n if (_dsgTag.pageType === PageTypes.ProductDetails) {\n FireFacebookViewContentPixel(eventObject);\n }\n else if (_dsgTag.pageType === PageTypes.OrderConfirmation) {\n FireFacebookConversion(eventObject);\n }\n });\n inputDataObject.AddEventHandler(\"AddToCart\", FireFaceBookAddToCartPixel);\n inputDataObject.AddEventHandler(\"EmailSignup\", FireFaceBookEmailSignupPixel);\n }\n}\n//# sourceMappingURL=Facebook.js.map","import { Websites } from \"../consts/websites.const\";\nimport { PageTypes } from \"../consts/pageTypes.const\";\nimport { InitTimings } from \"../enums/enums.enum\";\nimport { _dsgTag } from \"../namespaces/_dsgTag.namespace\";\nimport { HelperFunctions } from \"../namespaces/helperFunctions.namespace\";\nimport { DataLayer } from \"../namespaces/dataLayer.namespace\";\nimport { TagCondition } from \"../classes/tagCondition.class\";\nvar baseConditions = [{ t: \"site\", c: \"=\", v: [\"DSG\", \"GGXY\", \"PBL\", \"GONE\", \"MJ\"] }, { t: \"page\", c: \"^!=\", v: \"Chat\" }, { t: \"aos\", c: \"=\", v: \"false\" }, { t: \"iframe\", c: \"=\", v: \"false\" }, { t: \"dns\" }];\nvar conditions = [];\nfor (var i = 0; i < baseConditions.length; i++) {\n conditions.push(new TagCondition(baseConditions[i].t, baseConditions[i].c, baseConditions[i].v));\n}\nexport var Google = { name: \"Google\", timing: InitTimings.Page3rdPartySignal, conditions: conditions, initFunction: init };\nfunction init(inputDataObject) {\n var baseGoogleScriptID = \"\";\n switch (_dsgTag.currentWebsite) {\n case Websites.DicksSportingGoods: {\n baseGoogleScriptID = \"AW-1006136630\";\n break;\n }\n case Websites.GolfGalaxy: {\n baseGoogleScriptID = \"AW-986469690\";\n break;\n }\n case Websites.PublicLands: {\n baseGoogleScriptID = \"AW-347384067\";\n break;\n }\n case Websites.GoingGoingGone: {\n baseGoogleScriptID = \"AW-347384043\";\n break;\n }\n case Websites.Moosejaw: {\n baseGoogleScriptID = \"AW-1059669297\";\n break;\n }\n }\n var googleRemarketingIDs = { \"DSG\": \"AW-1006136630\", \"GONE\": \"AW-768872558\", \"GGXY\": \"AW-17980030\", \"PBL\": \"AW-769539972\", \"MJ\": \"AW-1059669297\" };\n var floodResolutionIDs = { \"DSG\": \"DC-4351555\", \"GONE\": \"DC-4351555\", \"GGXY\": \"DC-4351555\", \"PBL\": \"DC-4351555\", \"MJ\": \"DC-4351555\" };\n var hashedEmailExclusionCategories = [\"200-001-002-001\", \"200-001-002-002\", \"200-001-002-003\", \"200-001-002-004\", \"200-001-002-005\", \"200-002-001-001\", \"200-002-002-001\", \"200-002-003-001\", \"200-002-004-001\", \"200-003-006-001\", \"200-003-006-002\", \"200-003-007-001\", \"200-003-007-002\", \"200-003-007-003\", \"200-003-008-001\", \"200-004-002-003\", \"200-006-001-001\", \"200-006-001-002\", \"200-006-001-003\", \"200-008-001-001\", \"205-001-001-001\", \"205-001-002-001\", \"205-001-002-002\", \"205-001-003-001\", \"205-001-003-002\", \"205-001-004-001\", \"205-001-004-002\", \"205-001-004-003\", \"205-001-005-001\", \"205-001-006-001\", \"205-001-006-003\", \"205-001-006-004\", \"205-001-007-001\", \"205-001-007-002\", \"205-001-008-001\", \"205-001-009-001\", \"205-001-0010-001\", \"205-099-001-001\", \"220-001-001-001\", \"220-001-001-002\", \"220-001-001-003\", \"220-001-001-004\", \"220-001-007-001\", \"220-002-001-001\", \"220-002-001-003\", \"220-002-002-001\", \"220-002-002-002\", \"220-002-002-003\", \"220-002-003-001\", \"220-002-003-002\", \"220-002-004-001\", \"220-002-004-002\", \"220-003-001-001\", \"220-003-002-001\", \"220-005-001-001\", \"220-005-002-001\", \"222-001-001-001\", \"222-001-002-001\", \"225-001-001-001\", \"225-001-002-001\", \"225-002-001-001\", \"225-002-002-001\", \"230-001-001-001\", \"230-002-001-001\", \"230-003-001-001\"];\n var getID = function (type) {\n return type[_dsgTag.currentWebsite.Abbreviation];\n };\n var g = function (eventType, idType, object, idLocation) {\n getID(idType) && (object['send_to'] = getID(idType) + (idLocation || \"\")) && gtag('event', eventType, object);\n };\n var gtag = function (...args) {\n window._gTagData.push(args);\n };\n var loadGTag = function (eventInstance) {\n window._gTagData = window._gTagData || [];\n function ItemIsBOPIS(product) {\n return typeof product.FulfillmentMethod !== \"undefined\" && product.FulfillmentMethod.match(/bopis/gi);\n }\n gtag('js', new Date());\n gtag('config', baseGoogleScriptID);\n var googlePageName = document.title.split(\"|\").length > 1 ? document.title.split(\"|\")[0] : document.title;\n googlePageName = googlePageName.replace(/[^\\x00-\\x7F]+/g, \"\");\n DataLayer.PassValuesToFunction([\"PageURL\"], function (pageURL) {\n var currentURL = pageURL;\n var pagePath = \"/\" + currentURL.split(\"/\").splice(3).join(\"/\");\n pagePath = pagePath.toLowerCase();\n switch (_dsgTag.currentWebsite) {\n case Websites.DicksSportingGoods: {\n gtag('event', 'conversion', {\n 'send_to': 'AW-1001247795/VkXCCM3y9AYQs6i33QM',\n 'aw_remarketing_only': true\n });\n gtag('event', 'conversion', {\n 'send_to': 'DC-4845927/dsgsi0/retar0+standard',\n 'allow_custom_scripts': true\n });\n gtag('event', 'conversion', {\n 'send_to': 'DC-10419326/dsglu0/dsg-g0+unique',\n 'u1': window.location.href,\n 'allow_custom_scripts': true\n });\n inputDataObject.AddEventHandler(\"EmailSignup\", function () {\n gtag('event', 'conversion', {\n 'send_to': 'DC-4351555/dsg20001/sitev0+standard',\n 'allow_custom_scripts': true,\n 'u11': googlePageName,\n 'u14': \"1\",\n 'u16': _dsgTag.suspectedAB\n });\n });\n break;\n }\n case Websites.GolfGalaxy: {\n gtag('event', 'conversion', {\n 'send_to': 'AW-991675069/9SmjCJu33gkQvYXv2AM',\n 'aw_remarketing_only': true\n });\n break;\n }\n case Websites.PublicLands: {\n gtag('event', 'conversion', {\n 'allow_custom_scripts': true,\n 'send_to': 'DC-4351555/publi0/publi0+per_session',\n 'u16': _dsgTag.suspectedAB\n });\n break;\n }\n case Websites.GoingGoingGone: {\n gtag('event', 'conversion', {\n 'allow_custom_scripts': true,\n 'send_to': 'DC-4351555/going0/gggsi0+per_session',\n 'u16': _dsgTag.suspectedAB\n });\n break;\n }\n }\n if (_dsgTag.pageType === PageTypes.Home) {\n switch (_dsgTag.currentWebsite) {\n case Websites.DicksSportingGoods: {\n gtag('event', 'conversion', {\n 'u2': typeof window.adobeDataLayer === 'undefined' ? 'homr' : 'aem',\n 'u11': googlePageName,\n 'send_to': 'DC-11687796/dsghj0/dsg_h0+standard',\n 'u16': _dsgTag.suspectedAB\n });\n break;\n }\n case Websites.GolfGalaxy: {\n gtag('event', 'conversion', {\n 'send_to': 'DC-4351555/golfg000/golfg0+standard',\n 'allow_custom_scripts': true,\n 'u11': googlePageName,\n 'u16': _dsgTag.suspectedAB\n });\n break;\n }\n }\n }\n else if (_dsgTag.pageType === PageTypes.Search) {\n g('view_search_results', googleRemarketingIDs, {\n 'page_type': 'Search Results'\n });\n }\n else if (_dsgTag.pageType === PageTypes.Category) {\n switch (_dsgTag.currentWebsite) {\n case Websites.DicksSportingGoods: {\n var id = \"\";\n if (pagePath.indexOf(\"/c/golf-equipment\") >= 0) {\n id = \"dsg-g00+unique\";\n }\n else if (pagePath.indexOf(\"/c/shop-all-mens-apparel-footwear\") >= 0) {\n id = \"dsg-m0+unique\";\n }\n else if (pagePath.indexOf(\"/c/shop-all-womens-apparel-footwear\") >= 0) {\n id = \"dsg-w0+unique\";\n }\n if (id) {\n gtag('event', 'conversion', {\n 'send_to': \"DC-10419326/dsglu0/\" + id,\n 'allow_custom_scripts': true,\n 'u1': window.location.href\n });\n }\n break;\n }\n }\n }\n else if (_dsgTag.pageType === PageTypes.Family) {\n g('view_item_list', googleRemarketingIDs, {\n 'page_type': 'Family'\n });\n }\n else if (_dsgTag.pageType === PageTypes.ProductDetails) {\n DataLayer.PassValuesToFunction([\"ProductID\"], function (productID) {\n g('view_item', googleRemarketingIDs, {\n 'page_type': 'PDP',\n 'items': [{\n 'id': productID,\n 'google_business_vertical': 'retail'\n }]\n });\n switch (_dsgTag.currentWebsite) {\n case Websites.DicksSportingGoods: {\n gtag('event', 'conversion', {\n 'send_to': 'DC-4351555/dsg20001/shopp0+standard',\n 'allow_custom_scripts': true,\n 'u4': productID,\n 'u11': googlePageName,\n 'u16': _dsgTag.suspectedAB\n });\n gtag('event', 'conversion', {\n 'send_to': 'DC-4351555/dsg20001/produ0+unique',\n 'allow_custom_scripts': true,\n 'u4': productID,\n 'u11': googlePageName,\n 'u16': _dsgTag.suspectedAB\n });\n if (productID.toUpperCase() == \"23SOJUPHNHLDRBGXXTRM\") {\n gtag('event', 'conversion', {\n 'allow_custom_scripts': true,\n 'u1': window.location.href,\n 'send_to': 'DC-10552827/gc_st0/dicks0+standard'\n });\n }\n break;\n }\n }\n }, eventInstance.eventData);\n }\n else if (_dsgTag.pageType === PageTypes.Cart) {\n inputDataObject.AddEventHandler(\"CartDataUpdated\", function (eventInstance) {\n DataLayer.PassValuesToFunction([\"ProductListArray\", \"LoyaltyID\", \"OrderLevelPromoCodes\", \"OrderTotal\", \"OrderTax\", \"OrderShippingRevenue\"], function (products, loyaltyID, promoCodes, orderTotal, orderTax, orderShipping) {\n var revenue = parseFloat((orderTotal - orderTax - orderShipping).toFixed(2));\n var productIDList = [];\n var skuList = [];\n var combinedList = [];\n var adwordsItems = [];\n var bopisItems = 0, nonBopisItems = 0;\n for (var i = 0; i < products.length; i++) {\n if (typeof products[i].ProductID !== \"undefined\") {\n productIDList.push(products[i].ProductID);\n skuList.push(products[i].ProductSKU);\n combinedList.push(products[i].ProductID + \":\" + products[i].ProductSKU);\n adwordsItems.push({\n \"id\": products[i].ProductSKU,\n \"google_business_vertical\": \"retail\"\n });\n }\n if (ItemIsBOPIS(products[i])) {\n bopisItems += 1;\n }\n else {\n nonBopisItems += 1;\n }\n }\n var bopisStatus = \"2\";\n if (bopisItems === 0) {\n bopisStatus = \"3\";\n }\n else if (nonBopisItems === 0) {\n bopisStatus = \"1\";\n }\n var scorecard = \"0\";\n if (typeof loyaltyID !== \"undefined\" && loyaltyID !== \"\") {\n scorecard = \"1\";\n }\n var promoCode = \"0\";\n if (promoCodes.length > 0 && promoCodes[0]) {\n promoCode = \"1\";\n }\n g('add_to_cart', googleRemarketingIDs, {\n 'page_type': 'Cart',\n 'value': revenue,\n 'items': adwordsItems\n });\n switch (_dsgTag.currentWebsite) {\n case Websites.DicksSportingGoods: {\n gtag('event', 'conversion', {\n 'send_to': 'DC-4351555/dsg20001/shopp0+standard',\n 'allow_custom_scripts': true,\n 'u4': skuList.join(\",\"),\n 'u5': bopisStatus,\n 'u8': scorecard,\n 'u9': promoCode,\n 'u11': googlePageName,\n 'u16': _dsgTag.suspectedAB\n });\n inputDataObject.AddEventHandler(\"CheckStoreAvailabilitySearch\", function () {\n gtag('event', 'conversion', {\n 'send_to': 'DC-4351555/dsg20001/sitev0+standard',\n 'allow_custom_scripts': true,\n 'u4': skuList.join(\",\"),\n 'u5': bopisStatus,\n 'u8': scorecard,\n 'u11': googlePageName,\n 'u13': \"1\",\n 'u16': _dsgTag.suspectedAB\n });\n });\n break;\n }\n case Websites.GolfGalaxy: {\n gtag('event', 'conversion', {\n 'send_to': 'AW-991675069/9SmjCJu33gkQvYXv2AM',\n 'aw_remarketing_only': true\n });\n gtag('event', 'conversion', {\n 'send_to': 'DC-4351555/golfg001/golfg0+standard',\n 'allow_custom_scripts': true,\n 'u4': skuList.join(\",\"),\n 'u5': bopisStatus,\n 'u8': scorecard,\n 'u9': promoCode,\n 'u11': googlePageName,\n 'u16': _dsgTag.suspectedAB\n });\n break;\n }\n }\n }, eventInstance.eventData);\n });\n }\n else if (_dsgTag.pageType === PageTypes.OrderConfirmation) {\n DataLayer.PassValuesToFunction([\"ProductListArray\", \"OrderID\", \"OrderTotal\", \"OrderTax\", \"OrderShippingRevenue\", \"OrderDiscountTotal\", \"BillingZip\", \"BillingState\", \"LoyaltyID\", \"OrderLevelPromoCodes\", \"OrderPaymentMethods\", \"OrderShippingMethod\", \"HashedEmailAddress\", \"CheckoutSummary\"], function (products, orderID, orderTotal, orderTax, orderShipping, orderDiscountTotal, billingZip, billingState, loyaltyID, promoCodes, paymentMethods, shippingMethod, hashedEmail, checkoutData) {\n var revenue = parseFloat((orderTotal - orderTax - orderShipping).toFixed(2));\n var productIDList = [];\n var skuList = [];\n var combinedList = [];\n var quantityList = [];\n var priceList = [];\n var googleProductObjects = [];\n var bopisItems = 0, nonBopisItems = 0, totalQuantity = 0;\n var isGameChanger = false;\n var productPricePerUnit;\n for (var i = 0; i < products.length; i++) {\n if (typeof products[i].ProductID !== \"undefined\") {\n productIDList.push(products[i].ProductID);\n skuList.push(products[i].ProductSKU);\n combinedList.push(products[i].ProductID + \":\" + products[i].ProductSKU);\n quantityList.push(products[i].ProductQty);\n totalQuantity += products[i].ProductQty;\n productPricePerUnit = (products[i].CurrentPricePerUnit - products[i].DistributedOrderDiscountPerUnit).toFixed(2);\n priceList.push(productPricePerUnit);\n isGameChanger = (products[i].ProductID.toLowerCase() === \"23sojuphnhldrbgxxtrm\") || isGameChanger;\n }\n if (ItemIsBOPIS(products[i])) {\n bopisItems += 1;\n }\n else {\n nonBopisItems += 1;\n }\n googleProductObjects.push({\n \"id\": products[i].ProductSKU,\n \"quantity\": products[i].ProductQty,\n \"price\": productPricePerUnit,\n \"google_business_vertical\": \"retail\"\n });\n }\n var containsEmailExcludedItems = false;\n try {\n for (var i = 0; i < checkoutData.cart.items.length && !containsEmailExcludedItems; i++) {\n var currentCategories = checkoutData.cart.items[i].attributes.display[0].values;\n for (var j = 0; j < currentCategories.length && !containsEmailExcludedItems; j++) {\n containsEmailExcludedItems = containsEmailExcludedItems || hashedEmailExclusionCategories.indexOf(currentCategories[0]) >= 0;\n }\n }\n }\n catch (ex) { }\n var bopisStatus = \"2\";\n if (bopisItems === 0) {\n bopisStatus = \"3\";\n }\n else if (nonBopisItems === 0) {\n bopisStatus = \"1\";\n }\n var scorecard = \"0\";\n if (typeof loyaltyID !== \"undefined\" && loyaltyID !== \"\") {\n scorecard = \"1\";\n }\n var promoCode = \"0\";\n if (promoCodes.length > 0 && promoCodes[0]) {\n promoCode = \"1\";\n }\n var cleanedUpPaymentMethods = [];\n for (var i = 0; i < paymentMethods.length; i++) {\n cleanedUpPaymentMethods.push(paymentMethods[i].replace(/\\(.+\\)/gi, \"\").trim().toLowerCase());\n }\n var floodlightResolutionData = {\n 'allow_custom_scripts': true,\n 'value': revenue,\n 'transaction_id': orderID,\n \"items\": googleProductObjects,\n 'u1': orderID,\n 'u2': totalQuantity.toString(),\n 'u3': revenue,\n 'u4': skuList.join(\",\"),\n 'u5': bopisStatus,\n 'u6': billingZip,\n 'u7': billingState,\n 'u8': scorecard,\n 'u9': promoCode,\n 'u11': googlePageName,\n 'u16': _dsgTag.suspectedAB,\n 'u20': priceList.join(\",\"),\n 'u21': quantityList.join(\",\")\n };\n if (!containsEmailExcludedItems && hashedEmail) {\n floodlightResolutionData.user_data = floodlightResolutionData.userData || {};\n floodlightResolutionData.user_data.email = hashedEmail;\n }\n var FireAdWordsConversionPixel = function (adWordsID, merchantID) {\n var purchaseObject = {\n 'send_to': adWordsID,\n 'value': revenue,\n \"transaction_id\": orderID,\n \"currency\": \"USD\",\n \"discount\": orderDiscountTotal,\n \"aw_merchant_id\": merchantID,\n \"aw_feed_country\": \"US\",\n \"aw_feed_language\": \"EN\",\n \"items\": googleProductObjects\n };\n if (!containsEmailExcludedItems && hashedEmail) {\n purchaseObject.user_data = purchaseObject.userData || {};\n purchaseObject.user_data.email = hashedEmail;\n }\n gtag('event', 'purchase', purchaseObject);\n };\n g('purchase', googleRemarketingIDs, {\n 'page_type': 'Order Confirmation',\n 'value': revenue,\n 'items': googleProductObjects\n });\n var ProcessRMNBrandFloodLights = function (brandsToTrack) {\n for (var brand in brandsToTrack) {\n if (brandsToTrack[brand][_dsgTag.currentWebsite.Abbreviation]) {\n var brandProducts = products.filter(function (x) {\n if (brand.toLowerCase() == \"all\") {\n return true;\n }\n else if (brand.toLowerCase() == \"afterpay\" && cleanedUpPaymentMethods.indexOf(\"afterpay\") >= 0) {\n return true;\n }\n else if (brand.toLowerCase() == \"affirm\" && cleanedUpPaymentMethods.indexOf(\"affirm\") >= 0) {\n return true;\n }\n else if (brand.toLowerCase() == \"plcc\" && cleanedUpPaymentMethods.indexOf(\"plcc\") >= 0) {\n return true;\n }\n else {\n return x.ProductBrand.toLowerCase() == brand.toLowerCase();\n }\n });\n if (brandProducts.length > 0) {\n var brandRevenue = 0;\n var brandProductIds = [];\n var brandProductSKUs = [];\n var brandProductQuantities = [];\n var brandProductPrices = [];\n var brandListForNonSpecific = [];\n var brandBopisStatus = \"\";\n var brandBopisItems = 0;\n var brandNonBopisItems = 0;\n var currentProductPricePerUnit;\n brandProducts.forEach(function (x) {\n currentProductPricePerUnit = (x.CurrentPricePerUnit - x.DistributedOrderDiscountPerUnit);\n brandProductIds.push(x.ProductID);\n brandProductSKUs.push(x.ProductSKU);\n brandProductQuantities.push(x.ProductQty);\n brandProductPrices.push(currentProductPricePerUnit.toFixed(2));\n brandListForNonSpecific.push(x.ProductBrand);\n brandRevenue += parseFloat((currentProductPricePerUnit * x.ProductQty).toFixed(2));\n if (ItemIsBOPIS(x)) {\n brandBopisItems += 1;\n }\n else {\n brandNonBopisItems += 1;\n }\n });\n var brandBopisStatus = \"2\";\n if (brandBopisItems === 0) {\n brandBopisStatus = \"3\";\n }\n else if (brandNonBopisItems === 0) {\n brandBopisStatus = \"1\";\n }\n var purchaseObject = {\n 'send_to': brandsToTrack[brand][_dsgTag.currentWebsite.Abbreviation],\n 'allow_custom_scripts': true,\n 'value': brandRevenue,\n 'transaction_id': orderID,\n 'u1': orderID,\n 'u4': brandProductIds.join(\",\"),\n 'u5': brandBopisStatus,\n 'u6': billingZip,\n 'u7': billingState,\n 'u8': scorecard,\n 'u9': promoCode,\n 'u11': googlePageName,\n 'u12': brand.toLowerCase() === \"all\" ? shippingMethod : \"\",\n 'u13': _dsgTag.currentWebsite.Domain,\n 'u16': _dsgTag.suspectedAB,\n 'u18': brand.toLowerCase() === \"all\" ? brandListForNonSpecific : brand,\n 'u19': brandProductSKUs.join(\",\"),\n 'u20': cleanedUpPaymentMethods.join(\",\"),\n 'u21': brandProductQuantities.join(\",\"),\n 'u22': brandProductPrices.join(\",\")\n };\n gtag('event', 'purchase', purchaseObject);\n }\n }\n }\n };\n switch (_dsgTag.currentWebsite) {\n case Websites.DicksSportingGoods: {\n FireAdWordsConversionPixel('AW-1006136630/z7F-CMqB_AYQttrh3wM', 7972);\n g('purchase', floodResolutionIDs, floodlightResolutionData, '/dsg20002/confi0+transactions');\n gtag('event', 'purchase', {\n 'send_to': 'DC-4845927/dsgon0/dsgsh0+transactions',\n 'allow_custom_scripts': true,\n 'value': revenue,\n 'transaction_id': orderID\n });\n gtag('event', 'conversion', {\n 'allow_custom_scripts': true,\n 'send_to': 'DC-10419326/dsglu0/dsg-p0+unique'\n });\n if (isGameChanger) {\n gtag('event', 'purchase', {\n 'allow_custom_scripts': true,\n 'value': revenue,\n 'transaction_id': orderID,\n 'u1': window.location.href,\n 'send_to': 'DC-10552827/sales0/dicks0+transactions'\n });\n }\n HelperFunctions.PullJSONFromURL(\"scripts/rmn-brands.json\", ProcessRMNBrandFloodLights);\n break;\n }\n case Websites.GolfGalaxy: {\n FireAdWordsConversionPixel('AW-986469690/GJMrCP60yQgQuqqx1gM', 106997);\n g('purchase', floodResolutionIDs, floodlightResolutionData, '/golfg001/golfg004+transactions');\n HelperFunctions.PullJSONFromURL(\"scripts/rmn-brands.json\", ProcessRMNBrandFloodLights);\n break;\n }\n case Websites.PublicLands: {\n FireAdWordsConversionPixel('AW-347384067/aO-7CIT_-O4CEIPS0qUB', 477117549);\n g('purchase', floodResolutionIDs, floodlightResolutionData, '/publi00/publi0+transactions');\n break;\n }\n case Websites.GoingGoingGone: {\n FireAdWordsConversionPixel('AW-347384043/WymNCO6g0O4CEOvR0qUB', 507778641);\n g('purchase', floodResolutionIDs, floodlightResolutionData, '/going00/gggor0+transactions');\n break;\n }\n case Websites.Moosejaw: {\n FireAdWordsConversionPixel('AW-1059669297/nBIYCMuH-AEQsYql-QM', 30663);\n g('purchase', floodResolutionIDs, floodlightResolutionData, '/auto_tra/moose0+transactions');\n break;\n }\n }\n }, eventInstance.eventData);\n }\n else if (_dsgTag.pageType === PageTypes.StoreLocatorIFrame) {\n switch (_dsgTag.currentWebsite) {\n case Websites.DicksSportingGoods: {\n inputDataObject.AddEventHandler(\"AJAXStoreSearch\", function () {\n gtag('event', 'conversion', {\n 'send_to': 'DC-4351555/dsg20001/sitev0+standard',\n 'allow_custom_scripts': true,\n 'u11': googlePageName,\n 'u13': \"1\",\n 'u16': _dsgTag.suspectedAB\n });\n });\n break;\n }\n }\n }\n else if (_dsgTag.pageType === PageTypes.InStoreDisplay) {\n var displayPageURL = window.location.pathname.split(\"/\")[window.location.pathname.split(\"/\").length - 1].toLowerCase();\n var floodlightIDs = { \"trackman-custom-page\": \"DC-11687796/trackma0/track0+standard\" };\n var id = floodlightIDs[displayPageURL];\n var store = HelperFunctions.GetQueryStringValue(\"store\") || \"\";\n var bay = HelperFunctions.GetQueryStringValue(\"bay\") || \"\";\n if (id) {\n gtag('event', 'conversion', {\n 'allow_custom_scripts': true,\n 'u11': googlePageName,\n 'u13': _dsgTag.currentWebsite.Domain,\n 'u14': store,\n 'u15': bay,\n 'u16': _dsgTag.suspectedAB,\n 'send_to': id\n });\n }\n }\n else if (pagePath.indexOf(\"/s/holiday\") >= 0 || pagePath.indexOf(\"/s/special-offer-promo-omni\") >= 0) {\n switch (_dsgTag.currentWebsite) {\n case Websites.DicksSportingGoods: {\n gtag('event', 'conversion', {\n 'send_to': 'AW-1006136630/feZDCLzTuosBELba4d8D',\n 'value': 1.0,\n 'currency': 'USD'\n });\n break;\n }\n }\n }\n else if (pagePath.indexOf(\"/s/email-sign-up\") >= 0) {\n switch (_dsgTag.currentWebsite) {\n case Websites.GolfGalaxy: {\n gtag('event', 'conversion', {\n 'send_to': 'DC-4351555/golfg000/golfg002+standard',\n 'allow_custom_scripts': true,\n 'u11': googlePageName,\n 'u16': _dsgTag.suspectedAB\n });\n break;\n }\n }\n }\n else if (pagePath.indexOf(\"/s/golf-services\") >= 0) {\n switch (_dsgTag.currentWebsite) {\n case Websites.GolfGalaxy: {\n gtag('event', 'conversion', {\n 'send_to': 'DC-4351555/golfg000/golfg00+standard',\n 'allow_custom_scripts': true,\n 'u11': googlePageName,\n 'u16': _dsgTag.suspectedAB\n });\n break;\n }\n }\n }\n else if (pagePath.indexOf(\"/s/our-top-deals\") >= 0) {\n switch (_dsgTag.currentWebsite) {\n case Websites.GolfGalaxy: {\n gtag('event', 'conversion', {\n 'send_to': 'DC-4351555/golfg000/golfg001+standard',\n 'allow_custom_scripts': true,\n 'u11': googlePageName,\n 'u16': _dsgTag.suspectedAB\n });\n break;\n }\n }\n }\n else if (pagePath.indexOf(\"/s/golf-events-and-in-store-golf-demonstrations\") >= 0) {\n switch (_dsgTag.currentWebsite) {\n case Websites.GolfGalaxy: {\n gtag('event', 'conversion', {\n 'send_to': 'DC-4351555/golfg000/golfg000+standard',\n 'allow_custom_scripts': true,\n 'u11': googlePageName,\n 'u16': _dsgTag.suspectedAB\n });\n break;\n }\n }\n }\n else if (pagePath.indexOf(\"/s/scheduling/confirmedservice\") >= 0) {\n DataLayer.PassValuesToFunction([\"ServiceName\", \"ServiceOrderID\", \"ServiceRevenue\"], function (name, orderID, revenue) {\n var serviceFloodlights = { \"DSG\": \"DC-4351555/auto_act/gamet0+standard\", \"GGXY\": \"DC-4351555/GolfG0/golfg001+standard\" };\n if (getID(serviceFloodlights)) {\n gtag('event', 'conversion', {\n 'allow_custom_scripts': true,\n 'u1': orderID,\n 'u2': 1,\n 'u4': name,\n 'u11': googlePageName,\n 'u15': revenue.toFixed(2),\n 'u16': _dsgTag.suspectedAB,\n 'send_to': getID(serviceFloodlights)\n });\n }\n }, eventInstance.eventData);\n }\n else if (pagePath.indexOf(\"/s/taylormade-tp5-2022\") >= 0) {\n if (_dsgTag.currentWebsite === Websites.DicksSportingGoods) {\n gtag('event', 'conversion', {\n 'allow_custom_scripts': true,\n 'send_to': 'DC-9666466/dsgtp5/2023t0+standard'\n });\n }\n }\n else {\n DataLayer.PassValuesToFunction([\"LoyaltyID\", \"RegistrationOccured\"], function (loyaltyID, registered) {\n switch (_dsgTag.currentWebsite) {\n case Websites.DicksSportingGoods: {\n var newAccountRegistration = 0;\n var scorecard = \"0\";\n if (typeof loyaltyID !== \"undefined\" && loyaltyID !== \"\") {\n scorecard = \"1\";\n }\n if (registered) {\n newAccountRegistration = 1;\n }\n gtag('event', 'conversion', {\n 'send_to': 'DC-4351555/dsg20001/sitev0+standard',\n 'allow_custom_scripts': true,\n 'u8': scorecard,\n 'u10': newAccountRegistration,\n 'u11': googlePageName,\n 'u16': _dsgTag.suspectedAB\n });\n break;\n }\n case Websites.GolfGalaxy: {\n gtag('event', 'conversion', {\n 'send_to': 'DC-4351555/golfg000/golfg0+standard',\n 'allow_custom_scripts': true,\n 'u11': googlePageName,\n 'u16': _dsgTag.suspectedAB\n });\n break;\n }\n }\n }, eventInstance.eventData);\n }\n inputDataObject.AddEventHandler(\"AddToCart\", function (eventInstance) {\n var adwordsItems = [];\n var revenue = 0;\n var isGameChanger = false;\n if (typeof eventInstance.eventData.ProductsAddedToCart !== \"undefined\" && eventInstance.eventData.ProductsAddedToCart.length > 0) {\n for (var i = 0; i < eventInstance.eventData.ProductsAddedToCart.length; i++) {\n revenue += (parseFloat(eventInstance.eventData.ProductsAddedToCart[i].CurrentPricePerUnit) * parseInt(eventInstance.eventData.ProductsAddedToCart[i].ProductQty));\n adwordsItems.push({\n \"id\": eventInstance.eventData.ProductsAddedToCart[i].ProductSKU,\n \"google_business_vertical\": \"retail\"\n });\n isGameChanger = (eventInstance.eventData.ProductsAddedToCart[i].ProductID.toLowerCase() === \"23sojuphnhldrbgxxtrm\") || isGameChanger;\n }\n g('add_to_cart', googleRemarketingIDs, {\n 'page_type': 'Add To Cart',\n 'value': revenue,\n 'items': adwordsItems\n });\n switch (_dsgTag.currentWebsite) {\n case Websites.DicksSportingGoods: {\n gtag('event', 'conversion', {\n 'allow_custom_scripts': true,\n 'send_to': 'DC-10419326/dsglu0/dsg-a0+unique',\n 'u1': window.location.href\n });\n if (isGameChanger) {\n gtag('event', 'conversion', {\n 'allow_custom_scripts': true,\n 'u1': window.location.href,\n 'send_to': 'DC-10552827/gc_st0/dicks00+standard'\n });\n }\n break;\n }\n case Websites.PublicLands: {\n gtag('event', 'conversion', {\n 'allow_custom_scripts': true,\n 'send_to': 'DC-4351555/publi0/publi00+standard',\n 'u16': _dsgTag.suspectedAB\n });\n break;\n }\n case Websites.GoingGoingGone: {\n gtag('event', 'conversion', {\n 'allow_custom_scripts': true,\n 'send_to': 'DC-4351555/going0/gggad0+standard',\n 'u16': _dsgTag.suspectedAB\n });\n break;\n }\n }\n }\n });\n if (HelperFunctions.GetQueryStringValue(\"CONNECTION_STATUS\") && HelperFunctions.GetQueryStringValue(\"CONNECTION_STATUS\").toLowerCase() == \"success\") {\n gtag('event', 'conversion', {\n 'send_to': 'DC-11687796/nike50/nike_000+standard',\n 'allow_custom_scripts': true,\n 'u11': googlePageName,\n 'u16': _dsgTag.suspectedAB\n });\n }\n HelperFunctions.BindDocumentClickEventWithAdditionalSelector(\".affirm-modal-trigger\", function () {\n gtag('event', 'conversion', {\n 'send_to': 'DC-10419326/dsglu0/dsg-a00+unique',\n 'allow_custom_scripts': true\n });\n });\n if (window.location.href.indexOf(\"/s/connected\") >= 0) {\n HelperFunctions.BindDocumentClickEventWithAdditionalSelector(\"button#panel-trigger\", function () {\n gtag('event', 'conversion', {\n 'allow_custom_scripts': true,\n 'u11': googlePageName,\n 'u18': 'Nike',\n 'send_to': 'DC-11687796/nike50/nike_001+standard',\n 'u16': _dsgTag.suspectedAB\n });\n });\n }\n if (window.location.href.indexOf(\"/s/scorerewards-credit-card\") >= 0) {\n HelperFunctions.BindDocumentClickEventWithAdditionalSelector(\"[href*='apply.syf.com']\", function () {\n gtag('event', 'conversion', {\n 'allow_custom_scripts': true,\n 'u11': googlePageName,\n 'u18': 'Synchrony',\n 'send_to': 'DC-11687796/synch0/synch0+standard',\n 'u16': _dsgTag.suspectedAB\n });\n });\n }\n var AnyRoadSignup = function (eventInstance) {\n var hosURLs = [\"/s/knoxville-schedule-events-services\", \"/s/victor-schedule-events-services\", \"/s/minnetonka-schedule-events-services\"];\n var isHOS = false;\n for (var i = 0; i < hosURLs.length && !isHOS; i++) {\n isHOS = window.location.href.indexOf(hosURLs[i]) >= 0;\n }\n if (isHOS && eventInstance.eventData.event === \"purchase\") {\n gtag('event', 'conversion', {\n 'send_to': 'AW-1006136630/PxqkCJXL_4oYELba4d8D',\n 'value': 1.0,\n 'currency': 'USD'\n });\n gtag('event', 'conversion', { 'send_to': 'AW-1006136630/3_8vCI6BkIsYELba4d8D' });\n }\n };\n inputDataObject.AddEventHandler(\"AnyRoadIframeMessage\", AnyRoadSignup);\n }, eventInstance.eventData);\n };\n if (baseGoogleScriptID) {\n HelperFunctions.LoadScriptAsyncAndCallFunction(\"https://www.googletagmanager.com/gtag/js?l=_gTagData&id=\" + baseGoogleScriptID, inputDataObject.name, function () {\n inputDataObject.AddEventHandler(\"NewPageView\", loadGTag);\n });\n }\n}\n;\n//# sourceMappingURL=Google%20GTag.js.map","import { Websites } from \"../consts/websites.const\";\nimport { PageTypes } from \"../consts/pageTypes.const\";\nimport { InitTimings } from \"../enums/enums.enum\";\nimport { _dsgTag } from \"../namespaces/_dsgTag.namespace\";\nimport { HelperFunctions } from \"../namespaces/helperFunctions.namespace\";\nimport { DataLayer } from \"../namespaces/dataLayer.namespace\";\nimport { TagCondition } from \"../classes/tagCondition.class\";\nvar baseConditions = [{ t: \"site\", c: \"=\", v: [\"DSG\", \"GGXY\"] }, { t: \"page\", c: \"^!=\", v: \"Chat\" }, { t: \"aos\", c: \"=\", v: \"false\" }, { t: \"iframe\", c: \"=\", v: \"false\" }, { t: \"dns\" }];\nvar conditions = [];\nfor (var i = 0; i < baseConditions.length; i++) {\n conditions.push(new TagCondition(baseConditions[i].t, baseConditions[i].c, baseConditions[i].v));\n}\nexport var GoogleAds = { name: \"GoogleAds\", timing: InitTimings.Page3rdPartySignal, conditions: conditions, initFunction: init };\nfunction init(inputDataObject) {\n var googleAdsID = \"\";\n switch (_dsgTag.currentWebsite) {\n case Websites.DicksSportingGoods: {\n googleAdsID = \"/22686202263/\" + (_dsgTag.isProduction ? \"dickssportinggoods\" : \"dickssportinggoodstest\");\n break;\n }\n case Websites.GolfGalaxy: {\n googleAdsID = \"/22686202263/\" + (_dsgTag.isProduction ? \"golfgalaxy\" : \"golf_galaxy_test\");\n break;\n }\n }\n var loadGoogleAds = function (eventInstance) {\n window.googletag = window.googletag || { cmd: [] };\n window.googletag.cmd.push(function () {\n var mapping;\n var defaultSizes = [[728, 90], [320, 50], \"fluid\"];\n var defaultMapping = window.googletag.sizeMapping().addSize([0, 0], [[320, 50], \"fluid\"]).addSize([900, 200], [[728, 90], \"fluid\"]).build();\n var adList = [];\n var sourceData = eventInstance.eventData.AdSpotIDs;\n if (typeof sourceData === 'undefined') {\n sourceData = eventInstance.eventData;\n }\n if (!Array.isArray(sourceData)) {\n if (typeof sourceData === \"string\") {\n sourceData = [sourceData];\n }\n else if (typeof sourceData === \"object\") {\n var newSourceData = [];\n for (key in sourceData) {\n if (parseInt(key) >= 0) {\n newSourceData[parseInt(key)] = sourceData[key];\n }\n }\n sourceData = newSourceData;\n }\n }\n for (var i = 0; i < sourceData.length; i++) {\n adList.push({\n \"name\": typeof sourceData[i].name !== \"undefined\" ? sourceData[i].name : typeof sourceData[i] === \"string\" ? sourceData[i] : \"\",\n \"size\": typeof sourceData[i].size !== \"undefined\" ? sourceData[i].size : \"\"\n });\n }\n if (adList.length > 0) {\n window.googletag.pubads().enableSingleRequest();\n window.googletag.pubads().collapseEmptyDivs();\n window.googletag.pubads().setCentering(true);\n if (_dsgTag.CustomerIDs.AthleteID) {\n window.googletag.pubads().setPublisherProvidedId(_dsgTag.CustomerIDs.AthleteID);\n }\n window.googletag.enableServices();\n for (var i = 0; i < adList.length; i++) {\n var bannerID, sizes;\n var adURL = [googleAdsID];\n if (!adList[i].name) {\n continue;\n }\n bannerID = adList[i].name;\n var cleanValue = function (input) {\n return input.toString().toLowerCase().replace(/[^\\w\\d\\- ]/gi, \"\").replace(/ +/gi, \"-\");\n };\n var keyValues = {};\n if (_dsgTag.CustomerIDs.AthleteID) {\n keyValues[\"dks_aid\"] = _dsgTag.CustomerIDs.AthleteID;\n }\n if (_dsgTag.CustomerIDs.AdobeMCVID) {\n keyValues[\"dks_ecid\"] = _dsgTag.CustomerIDs.AdobeMCVID;\n }\n keyValues[\"AdBlocker_DMN\"] = (typeof _dsgTag.suspectedAB !== \"undefined\" ? _dsgTag.suspectedAB.toString() : \"false\");\n var urlPath = window.location.pathname.split(\"/\")[window.location.pathname.split(\"/\").length - 1];\n keyValues[\"URLPath\"] = urlPath;\n if (_dsgTag.pageType === PageTypes.Home) {\n sizes = ['fluid'];\n adURL.push(\"home\");\n }\n else if (_dsgTag.pageType === PageTypes.Category) {\n mapping = defaultMapping;\n sizes = defaultSizes;\n adURL.push(\"category_lp\");\n if (document.querySelector(\"meta[name='keywords']\")) {\n keyValues[\"metaKeywords\"] = document.querySelector(\"meta[name='keywords']\").content;\n }\n if (DataLayer.GetValue(\"CategoryID\")) {\n keyValues[\"categoryID\"] = DataLayer.GetValue(\"CategoryID\");\n }\n if (DataLayer.GetValue(\"CategoryName\")) {\n keyValues[\"categoryName\"] = DataLayer.GetValue(\"CategoryName\");\n }\n if (eventInstance.eventData.Breadcrumbs && eventInstance.eventData.Breadcrumbs.length > 1) {\n var names = [];\n var IDs = [];\n for (var j = 0; j < eventInstance.eventData.Breadcrumbs.length - 1; j++) {\n names.push(cleanValue(eventInstance.eventData.Breadcrumbs[j].name));\n IDs.push(cleanValue(eventInstance.eventData.Breadcrumbs[j].categoryId));\n }\n keyValues[\"parentName\"] = names;\n keyValues[\"parentID\"] = IDs;\n }\n }\n else if (_dsgTag.pageType === PageTypes.Family) {\n mapping = defaultMapping;\n sizes = defaultSizes;\n adURL.push(\"product_lp\");\n if (DataLayer.GetValue(\"FamilyID\")) {\n keyValues[\"familyID\"] = DataLayer.GetValue(\"FamilyID\");\n }\n if (DataLayer.GetValue(\"FamilyName\")) {\n keyValues[\"familyName\"] = DataLayer.GetValue(\"FamilyName\");\n }\n if (eventInstance.eventData.Breadcrumbs && eventInstance.eventData.Breadcrumbs.length > 1) {\n var names = [];\n var IDs = [];\n for (var j = 0; j < eventInstance.eventData.Breadcrumbs.length - 1; j++) {\n names.push(cleanValue(eventInstance.eventData.Breadcrumbs[j].name));\n IDs.push(cleanValue(eventInstance.eventData.Breadcrumbs[j].categoryId));\n }\n keyValues[\"parentName\"] = names;\n keyValues[\"parentID\"] = IDs;\n }\n }\n else if (_dsgTag.pageType === PageTypes.Search) {\n mapping = defaultMapping;\n sizes = defaultSizes;\n adURL.push(\"search\");\n if (DataLayer.GetValue(\"InternalSearchTerm\")) {\n keyValues[\"searchTerm\"] = DataLayer.GetValue(\"InternalSearchTerm\").toLowerCase().trim().replace(/\\s/g, \"-\").replace(/'s/g, \"\");\n }\n }\n else if (_dsgTag.pageType === PageTypes.ProductDetails) {\n mapping = defaultMapping;\n sizes = defaultSizes;\n adURL.push(\"product_detail\");\n if (DataLayer.GetValue(\"ProductID\")) {\n keyValues[\"productSKU\"] = DataLayer.GetValue(\"ProductID\");\n }\n if (DataLayer.GetValue(\"ProductName\")) {\n keyValues[\"productName\"] = DataLayer.GetValue(\"ProductName\");\n }\n if (DataLayer.GetValue(\"ProductGender\")) {\n keyValues[\"Gender\"] = DataLayer.GetValue(\"ProductGender\");\n }\n if (DataLayer.GetValue(\"ProductType\")) {\n keyValues[\"ProductType\"] = DataLayer.GetValue(\"ProductType\");\n }\n if (DataLayer.GetValue(\"ProductBrand\")) {\n keyValues[\"ProductBrand\"] = DataLayer.GetValue(\"ProductBrand\");\n }\n }\n else if (_dsgTag.pageType === PageTypes.Static && window.location.href.indexOf(\"/s/stores\") >= 0) {\n mapping = defaultMapping;\n sizes = defaultSizes;\n adURL.push(\"stores\");\n }\n else if (_dsgTag.pageType === PageTypes.OrderConfirmation) {\n mapping = defaultMapping;\n sizes = defaultSizes;\n adURL.push(\"order_confirmation\");\n }\n else if (_dsgTag.pageType === PageTypes.MyAccount) {\n sizes = ['fluid'];\n adURL.push(\"account/summary\");\n }\n else if (_dsgTag.pageType === PageTypes.BlogArticle) {\n sizes = ['fluid'];\n adURL.push(\"custom_landing/\" + urlPath);\n }\n else if (_dsgTag.pageType === PageTypes.InStoreDisplay) {\n sizes = ['fluid'];\n adURL.push(\"custom_landing/\" + urlPath);\n keyValues[\"StoreNumber\"] = HelperFunctions.GetQueryStringValue(\"store\");\n keyValues[\"BayNumber\"] = HelperFunctions.GetQueryStringValue(\"bay\");\n }\n else if (_dsgTag.pageType === PageTypes.Static || _dsgTag.pageType === PageTypes.BrandShop) {\n sizes = ['fluid'];\n adURL.push(\"custom_landing\");\n }\n if (typeof adList[i].size !== \"undefined\" && adList[i].size) {\n sizes = [adList[i].size];\n }\n for (var key in keyValues) {\n if (typeof keyValues[key] == \"string\") {\n window.googletag.pubads().setTargeting(key, cleanValue(keyValues[key]));\n }\n else if (Array.isArray(keyValues[key])) {\n window.googletag.pubads().setTargeting(key, keyValues[key]);\n }\n }\n adURL.push(bannerID);\n if (adURL.length == 3 && sizes) {\n var slot = window.googletag.defineSlot(adURL.join(\"/\"), sizes, bannerID);\n if (mapping) {\n slot = slot.defineSizeMapping(mapping);\n }\n slot.addService(window.googletag.pubads());\n window.googletag.cmd.push(function () {\n window.googletag.display(bannerID);\n });\n }\n }\n }\n });\n };\n HelperFunctions.LoadScriptAsyncAndCallFunction(\"https://securepubads.g.doubleclick.net/tag/js/gpt.js\", inputDataObject.name, function () {\n inputDataObject.AddEventHandler(\"AdSpotsReady\", loadGoogleAds);\n });\n}\n;\n//# sourceMappingURL=GoogleAds.js.map","import { InitTimings } from \"../enums/enums.enum\";\nimport { DataLayer } from \"../namespaces/dataLayer.namespace\";\nimport { TagCondition } from \"../classes/tagCondition.class\";\nvar baseConditions = [{ t: \"site\", c: \"=\", v: [\"DSG\", \"GGXY\", \"PBL\", \"MJ\"] }, { t: \"aos\", c: \"=\", v: false }, { t: \"page\", c: \"=\", v: \"Order Confirmation\" }];\nvar conditions = [];\nfor (var i = 0; i < baseConditions.length; i++) {\n conditions.push(new TagCondition(baseConditions[i].t, baseConditions[i].c, baseConditions[i].v));\n}\nexport var LivePerson = { name: \"LivePerson\", timing: InitTimings.Page3rdPartySignal, conditions: conditions, initFunction: init };\nfunction init(inputDataObject) {\n inputDataObject.AddEventHandler(\"NewPageView\", function (eventInstance) {\n DataLayer.PassValuesToFunction([\"OrderID\", \"ProductListArray\", \"OrderTotal\", \"OrderTax\", \"OrderShippingRevenue\"], function (orderID, productList, total, tax, shipping) {\n var revenue = (total - tax - shipping).toFixed(2);\n var orderObject = {\n \"type\": \"purchase\",\n \"currency\": \"USD\",\n \"total\": revenue,\n \"orderId\": orderID,\n \"cart\": {\n \"products\": []\n }\n };\n if (productList) {\n var currentItem = {};\n for (var i = 0; i < productList.length; i++) {\n currentItem = {};\n currentItem.quantity = productList[i].ProductQty;\n currentItem.product = {};\n currentItem.product.name = productList[i].ProductName;\n currentItem.product.sku = productList[i].ProductSKU;\n currentItem.product.price = (productList[i].CurrentPricePerUnit - productList[i].DistributedOrderDiscountPerUnit).toFixed(2);\n orderObject.cart.products.push(currentItem);\n }\n }\n var fireTag = function () {\n if (window.lpTag) {\n window.lpTag.sdes.push(orderObject);\n }\n else {\n setTimeout(fireTag, 500);\n }\n };\n fireTag();\n }, eventInstance.eventData);\n });\n}\n;\n//# sourceMappingURL=LivePerson.js.map","import { Websites } from \"../consts/websites.const\";\nimport { PageTypes } from \"../consts/pageTypes.const\";\nimport { InitTimings } from \"../enums/enums.enum\";\nimport { _dsgTag } from \"../namespaces/_dsgTag.namespace\";\nimport { HelperFunctions } from \"../namespaces/helperFunctions.namespace\";\nimport { DataLayer } from \"../namespaces/dataLayer.namespace\";\nimport { TagCondition } from \"../classes/tagCondition.class\";\nvar baseConditions = [{ t: \"site\", c: \"=\", v: [\"DSG\"] }, { t: \"aos\", c: \"=\", v: \"false\" }, { t: \"iframe\", c: \"=\", v: \"false\" }, { t: \"dns\" }];\nvar conditions = [];\nfor (var i = 0; i < baseConditions.length; i++) {\n conditions.push(new TagCondition(baseConditions[i].t, baseConditions[i].c, baseConditions[i].v));\n}\nexport var LiveRamp = { name: \"LiveRamp\", timing: InitTimings.Page3rdPartySignal, conditions: conditions, initFunction: init };\nfunction init(inputDataObject) {\n var liveRampID = \"\";\n switch (_dsgTag.currentWebsite) {\n case Websites.DicksSportingGoods:\n {\n liveRampID = \"dickssportinggoods-1bfa9100-54ca-4d75-ba54-e6f6f7ed96e4\";\n break;\n }\n }\n var FireLiveRampConversionPixel = function (eventInstance) {\n DataLayer.PassValuesToFunction([\"OrderID\", \"OrderTotal\", \"OrderTax\", \"OrderShippingRevenue\", \"ProductListArray\", \"OrderPaymentMethods\"], function (orderID, orderTotal, taxTotal, shippingTotal, productList, paymentMethods) {\n var customerID = _dsgTag.CustomerIDs.AthleteID;\n var productIDs = [];\n if (productList) {\n for (var i = 0; i < productList.length; i++) {\n productIDs.push(productList[i].ProductID);\n }\n }\n var revenue = \"0.00\";\n if (orderTotal && taxTotal && shippingTotal) {\n revenue = (orderTotal - taxTotal - shippingTotal).toFixed(2);\n }\n (function (s, o, v) {\n var w = window, e = \"DPMSendSingleTransactionEvent\", c = \"dpmContext\";\n w[e] && w[e](s, o, v), w[c] = w[c] ? w[c] : {}, w[c][(new Date).getTime()] = function () { w[e](s, o, v); };\n })(`${orderID}`, `${customerID}`, `${revenue}`);\n }, eventInstance.eventData);\n };\n if (liveRampID) {\n HelperFunctions.LoadScriptAsyncAndCallFunction(\"https://c.tvpixel.com/js/current/dpm_pixel_min.js?aid=\" + liveRampID, inputDataObject.name, function () {\n if (_dsgTag.pageType === PageTypes.OrderConfirmation) {\n inputDataObject.AddEventHandler('NewPageView', FireLiveRampConversionPixel);\n }\n });\n }\n}\n;\n//# sourceMappingURL=LiveRamp.js.map","import { Websites } from \"../consts/websites.const\";\nimport { InitTimings } from \"../enums/enums.enum\";\nimport { _dsgTag } from \"../namespaces/_dsgTag.namespace\";\nimport { HelperFunctions } from \"../namespaces/helperFunctions.namespace\";\nimport { DataLayer } from \"../namespaces/dataLayer.namespace\";\nimport { TagCondition } from \"../classes/tagCondition.class\";\nvar baseConditions = [{ t: \"site\", c: \"=\", v: [\"DSG\", \"GGXY\", \"PBL\", \"GONE\", \"MJ\"] }, { t: \"bypass-restricted\", v: \"true\" }, { t: \"domain\", c: \"*!=\", v: \"custhelp\" }, { t: \"page\", c: \"^!=\", v: \"Chat\" }, { t: \"iframe\", c: \"=\", v: \"false\" }, { t: \"dns\" }];\nvar conditions = [];\nfor (var i = 0; i < baseConditions.length; i++) {\n conditions.push(new TagCondition(baseConditions[i].t, baseConditions[i].c, baseConditions[i].v));\n}\nexport var Medallia = { name: \"Medallia\", timing: InitTimings.Page3rdPartySignal, conditions: conditions, initFunction: init };\nfunction init(inputDataObject) {\n var medalliaID = \"\";\n switch (_dsgTag.websiteOverride || _dsgTag.currentWebsite) {\n case Websites.DicksSportingGoods: {\n medalliaID = \"117139\";\n break;\n }\n case Websites.GolfGalaxy: {\n medalliaID = \"117277\";\n break;\n }\n case Websites.PublicLands: {\n medalliaID = \"140583\";\n break;\n }\n case Websites.GoingGoingGone: {\n medalliaID = \"140721\";\n break;\n }\n case Websites.Moosejaw: {\n medalliaID = \"355782\";\n break;\n }\n }\n if (medalliaID) {\n window.medallia_ab = DataLayer.GetValue(\"Random100\");\n HelperFunctions.LoadScriptAsyncAndCallFunction(\"https://resources.digital-cloud.medallia.com/wdcus/\" + medalliaID + \"/onsite/embed.js\", \"Medallia\");\n }\n}\n;\n//# sourceMappingURL=Medallia.js.map","import { Websites } from \"../consts/websites.const\";\nimport { PageTypes } from \"../consts/pageTypes.const\";\nimport { InitTimings } from \"../enums/enums.enum\";\nimport { _dsgTag } from \"../namespaces/_dsgTag.namespace\";\nimport { HelperFunctions } from \"../namespaces/helperFunctions.namespace\";\nimport { DataLayer } from \"../namespaces/dataLayer.namespace\";\nimport { TagCondition } from \"../classes/tagCondition.class\";\nvar baseConditions = [{ t: \"domain\", c: \"*!=\", v: \"custhelp\" }, { t: \"page\", c: \"^!=\", v: \"Chat\" }, { t: \"site\", c: \"*=\", v: [\"DSG\", \"GGXY\", \"PBL\"] }, { t: \"aos\", c: \"=\", v: \"false\" }, { t: \"iframe\", c: \"=\", v: \"false\" }];\nvar conditions = [];\nfor (var i = 0; i < baseConditions.length; i++) {\n conditions.push(new TagCondition(baseConditions[i].t, baseConditions[i].c, baseConditions[i].v));\n}\nexport var Metrical = { name: \"Metrical\", timing: InitTimings.Page3rdPartySignal, conditions: conditions, initFunction: init };\nfunction init(inputDataObject) {\n var metricalID = \"\";\n var website = \"\";\n var newVersion;\n switch (_dsgTag.currentWebsite) {\n case Websites.DicksSportingGoods: {\n metricalID = \".com.dickssportinggoods.acconfig\";\n website = \".getmetrical.com/js/metrical.abandon.cart.dsg.js\";\n newVersion = true;\n break;\n }\n case Websites.GolfGalaxy: {\n metricalID = \".com.golfgalaxy.acconfig\";\n website = \".getmetrical.com/js/metrical.abandon.cart.golfgalaxy.js\";\n newVersion = true;\n break;\n }\n case Websites.PublicLands: {\n metricalID = \".com.publiclands.acconfig\";\n website = \".getmetrical.com/js/metrical.abandon.cart.publiclands.js\";\n newVersion = true;\n break;\n }\n }\n if (metricalID) {\n metricalID = (_dsgTag.isProduction ? \"prod\" : \"stage\") + metricalID;\n var arrayLike = function (array) {\n return \"[\" + array.join(\"+\") + \"]\";\n };\n var FireMetricalPixel = function (eventInstance) {\n var productQuantityList = DataLayer.GetValue(\"ProductQuantityList\", eventInstance.eventData);\n var orderTotal = parseFloat(DataLayer.GetValue(\"OrderTotal\", eventInstance.eventData));\n var orderTax = parseFloat(DataLayer.GetValue(\"OrderTax\", eventInstance.eventData));\n var orderShippingRevenue = parseFloat(DataLayer.GetValue(\"OrderShippingRevenue\", eventInstance.eventData));\n var discount = parseFloat(DataLayer.GetValue(\"OrderDiscountTotal\", eventInstance.eventData));\n var productSKUList = DataLayer.GetValue(\"ProductSKUList\", eventInstance.eventData);\n var productPriceList = DataLayer.GetValue(\"ProductPriceList\", eventInstance.eventData);\n var productIdList = DataLayer.GetValue(\"ProductIDList\", eventInstance.eventData);\n var uniqueQuantity = 0;\n var cartQuantityList = null;\n var subTotal = (orderTotal - orderTax - orderShippingRevenue);\n var skuArray = null;\n var totalQuantity = 0;\n var numSKU = 0;\n var cartUserMeta = null;\n if (Array.isArray(productSKUList)) {\n numSKU = productSKUList.length;\n skuArray = productSKUList;\n productSKUList = arrayLike(productSKUList);\n }\n if (Array.isArray(productPriceList))\n productPriceList = arrayLike(productPriceList);\n if (Array.isArray(productIdList))\n productIdList = arrayLike(productIdList);\n if (Array.isArray(productQuantityList)) {\n cartQuantityList = arrayLike(productQuantityList);\n uniqueQuantity += 1;\n for (var i = 0; i < productQuantityList.length; i++) {\n if (!isNaN(Number(productQuantityList[i]))) {\n totalQuantity += Number(productQuantityList[i]);\n }\n }\n }\n var allPages = {\n 'isloggedin': DataLayer.GetValue('SignedInBoolean', eventInstance.eventData),\n 'customerid': _dsgTag.CustomerIDs.Loyalty,\n 'athleteid': _dsgTag.CustomerIDs.AthleteID,\n 'pagetype': _dsgTag.pageType.Name\n };\n var userData = allPages;\n switch (_dsgTag.pageType) {\n case PageTypes.ProductDetails: {\n userData = HelperFunctions.DeepExtend(allPages, {\n 'itemname': DataLayer.GetValue('ProductName', eventInstance.eventData),\n 'itemid': DataLayer.GetValue('ProductID', eventInstance.eventData),\n 'itemprice': productPriceList,\n 'itemcategory': DataLayer.GetValue('CategoryName', eventInstance.eventData),\n 'numskusavailable': numSKU,\n 'numreviews': DataLayer.GetValue('ReviewCount', eventInstance.eventData),\n 'customerrating': DataLayer.GetValue('ReviewAverage', eventInstance.eventData),\n 'sku': skuArray\n });\n break;\n }\n case PageTypes.CheckoutBillingShippingAddress:\n case PageTypes.CheckoutBillingAddress:\n case PageTypes.CheckoutShippingAddress:\n case PageTypes.CheckoutDelivery:\n case PageTypes.CheckoutPayment:\n case PageTypes.CheckoutReview:\n case PageTypes.Cart: {\n userData = HelperFunctions.DeepExtend(allPages, {\n 'numuniqueitemsincart': uniqueQuantity,\n 'totalnumitemsincart': totalQuantity,\n 'cartskulist': productSKUList,\n 'cartqtylist': cartQuantityList,\n 'cartpricelist': productPriceList,\n 'cartidlist': productIdList,\n 'cartid': DataLayer.GetValue('CartID', eventInstance.eventData),\n 'subtotalcartvalue': subTotal,\n 'totalcartvalue': orderTotal\n });\n break;\n }\n case PageTypes.OrderConfirmation: {\n userData = HelperFunctions.DeepExtend(allPages, {\n 'currency': 'USD',\n 'zipcode': DataLayer.GetValue('ZipCodeEstimation', eventInstance.eventData),\n 'billstate': DataLayer.GetValue('BillingState', eventInstance.eventData),\n 'billzip': DataLayer.GetValue('BillingZip', eventInstance.eventData),\n 'tax': orderTax,\n 'shippingcost': orderShippingRevenue,\n 'numuniqueitemsincart': uniqueQuantity,\n 'totalnumitemsincart': totalQuantity,\n 'cartskulist': productSKUList,\n 'cartqtylist': cartQuantityList,\n 'cartpricelist': productPriceList,\n 'cartidlist': productIdList,\n 'cartid': DataLayer.GetValue('CartID', eventInstance.eventData),\n 'subtotalcartvalue': subTotal,\n 'totalcartvalue': orderTotal,\n 'orderid': DataLayer.GetValue('OrderID', eventInstance.eventData),\n 'discountvalue': discount\n });\n break;\n }\n default: {\n userData = allPages;\n }\n }\n if (window._MetricalAbandonCart.cart)\n cartUserMeta = window._MetricalAbandonCart.cart.usermetaValues();\n var usermeta = cartUserMeta != null ? Object.assign({}, userData, cartUserMeta) : Object.assign({}, userData);\n if (newVersion) {\n window._MetricalAbandonCart.EventBus.publish(window._MetricalAbandonCart.EventBus.constants.topics.ACTION_PAGE_LOAD, {\n 'usermeta': usermeta\n });\n }\n else {\n window._MetricalAbandonCart.record({\n action: \"Page Load\",\n usermeta: usermeta\n });\n }\n if (DataLayer.GetValue(\"CartItemQuantity\", eventInstance.eventData) == 0) {\n window._MetricalAbandonCart.observe(\"postInit\", function () {\n window._MetricalAbandonCart.cart.clear();\n });\n }\n };\n var FireMetricalAddToCartPixel = function (eventInstance) {\n if (eventInstance.eventData && eventInstance.eventData.ProductsAddedToCart && eventInstance.eventData.ProductsAddedToCart.length > 0) {\n console.log(\"Metrical - Add To Cart\");\n var productsAddedToCart = eventInstance.eventData[\"ProductsAddedToCart\"];\n var productID = \"\";\n var sku = \"\";\n var revenue = 0;\n var price = 0;\n var qty = 0;\n if (Array.isArray(productsAddedToCart) && productsAddedToCart[0]) {\n productID = productsAddedToCart[0][\"ProductID\"];\n sku = productsAddedToCart[0][\"ProductSKU\"];\n price = productsAddedToCart[0][\"CurrentPricePerUnit\"];\n qty = productsAddedToCart[0][\"ProductQty\"];\n if (price && qty)\n revenue = Number(price) * Number(qty);\n }\n var userMeta = {\n 'itemname': DataLayer.GetValue('ProductName', eventInstance.eventData),\n 'itemid': productID,\n 'itemprice': revenue,\n 'sku': sku\n };\n if (newVersion) {\n window._MetricalAbandonCart.EventBus.publish(window._MetricalAbandonCart.EventBus.constants.topics.ACTION_ADD_TO_CART, {\n \"usermeta\": userMeta,\n \"add\": {\n id: productID,\n quantity: Number(qty),\n price: Number(price),\n sku: sku\n }\n });\n }\n else {\n window._MetricalAbandonCart.cart.add(productID, qty, Number(price), sku);\n var cartUserMeta = window._MetricalAbandonCart.cart.usermetaValues();\n window._MetricalAbandonCart.updateUserMeta(Object.assign({}, userMeta, cartUserMeta));\n window._MetricalAbandonCart.recordInteraction(\"Add To Cart\");\n }\n }\n };\n var FireMetricalSKUResolve = function (eventInstance) {\n if (eventInstance.eventData && eventInstance.eventData.sku) {\n console.log('Metrical SKUResolve');\n var sku = eventInstance.eventData.sku;\n var price = sku.price || sku.prices;\n var id = `${eventInstance.eventData.ecode}-${sku.id || sku.partNumber}`;\n var lowStockFields = {\n bopisMessageShown: eventInstance.eventData.lowStockBopisMessageShown,\n bopisQuantityAvailable: eventInstance.eventData.lowStockBopisQuantityAvailable,\n floorMessageShown: eventInstance.eventData.lowStockFloorMessageShown || false,\n nearbyStoresCount: eventInstance.eventData.lowStockNearbyStoresCount || 0,\n nearbyStoresCurrentStoreNumber: eventInstance.eventData.lowStockNearbyStoresCurrentStoreNumber,\n nearbyStoresMessageShown: eventInstance.eventData.lowStockNearbyStoresMessageShown,\n shipMessageShown: eventInstance.eventData.lowStockShipMessageShown,\n shipQuantityAvailable: eventInstance.eventData.lowStockShipQuantityAvailable\n };\n var userMeta = {};\n userMeta[id] = {\n \"productId-sku\": sku.id || sku.partNumber,\n \"bopis\": sku.bopisable || sku.bopisFlag,\n \"currentPrice\": price.offerPrice,\n \"listPrice\": price.listPrice,\n \"atsInventory\": sku.atsInventory || sku.shipQty,\n \"lowStock*Fields\": lowStockFields,\n \"avaialbleForPickup\": eventInstance.eventData.AvailableForPickup,\n \"availableInStore\": eventInstance.eventData.AvailableInStore,\n \"availalbleToShip\": eventInstance.eventData.AvailableToShip\n };\n window._MetricalAbandonCart.dataPoints.record(userMeta);\n }\n };\n var FireMetricalCartRemove = function (eventInstance) {\n if (eventInstance.eventData) {\n console.log('Metrical CartRemoveProduct');\n var sku = eventInstance.eventData.RemovedProductSKU;\n var id = eventInstance.eventData.RemovedProductID;\n var userMeta = {};\n var remove = { 'id': id, 'sku': sku };\n if (newVersion) {\n window._MetricalAbandonCart.EventBus.publish(window._MetricalAbandonCart.EventBus.constants.topics.ACTION_REMOVE_FROM_CART, {\n 'usermeta': userMeta, 'remove': remove\n });\n }\n else {\n window._MetricalAbandonCart.cart.remove(id, sku);\n var cartUserMeta = window._MetricalAbandonCart.cart.usermetaValues();\n window._MetricalAbandonCart.updateUserMeta(Object.assign({}, userMeta, cartUserMeta));\n window._MetricalAbandonCart.recordInteraction(\"Remove From Cart\");\n }\n }\n };\n HelperFunctions.LoadScriptAsyncAndCallFunction(\"https://content\" + (!_dsgTag.isProduction ? \"-stage\" : \"\") + website, inputDataObject.name, function () {\n if (window._MetricalAbandonCart) {\n var properties = {\n abandoncartid: metricalID,\n usermeta: {}\n };\n window._MetricalAbandonCart.init(properties);\n var metricalEvent = newVersion ? window._MetricalAbandonCart.EventBus : window._MetricalOfferFlow.pubsub;\n window._MetricalAbandonCart.observe(\"postInit\", function () {\n if (_dsgTag.pageType !== PageTypes.Cart) {\n inputDataObject.AddEventHandler('NewPageView', FireMetricalPixel);\n }\n else {\n inputDataObject.AddEventHandler('CartDataUpdated', FireMetricalPixel);\n }\n inputDataObject.AddEventHandler(\"AddToCart\", FireMetricalAddToCartPixel);\n inputDataObject.AddEventHandler(\"SKUResolve\", FireMetricalSKUResolve);\n inputDataObject.AddEventHandler(\"CartRemoveProduct\", FireMetricalCartRemove);\n });\n if (typeof window.s !== \"undefined\") {\n metricalEvent.subscribe(newVersion ? window._MetricalAbandonCart.EventBus.constants.topics.OFFERFLOW_OFFER_PRESENTED : \"offer-presented\", function (record) {\n console.log(\"offer-presented published\");\n console.log(record);\n var eventID = 190;\n var e = \"event\" + eventID.toString();\n s.events = s.apl(s.events, e, \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, e, \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n if (record.offer_presented.id) {\n s.eVar107 = record.offer_presented.id;\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar107\", \",\", 2);\n }\n s.eVar108 = record.offer_flow_guid;\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar108\", \",\", 2);\n if (record.testgroup) {\n s.eVar109 = record.testgroup;\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar109\", \",\", 2);\n }\n s.triggerEvent(\"MetricalOfferPresented\");\n s.linkTrackEvents = \"None\";\n s.linkTrackVars = s.baseLinkTrackVars;\n });\n metricalEvent.subscribe(newVersion ? window._MetricalAbandonCart.EventBus.constants.topics.OFFERFLOW_OFFER_NOT_PRESENTED : \"offer-not-presented\", function (record) {\n console.log(\"offer-not-presented published\");\n console.log(record);\n var eventID = 199;\n var e = \"event\" + eventID.toString();\n s.events = s.apl(s.events, e, \",\", 2);\n s.linkTrackEvents = s.apl(s.linkTrackEvents, e, \",\", 2);\n s.linkTrackVars = s.apl(s.linkTrackVars, \"events\", \",\", 2);\n if (record.offer_presented.id) {\n s.eVar107 = record.offer_presented.id;\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar107\", \",\", 2);\n }\n s.eVar108 = record.offer_flow_guid;\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar108\", \",\", 2);\n if (record.testgroup) {\n s.eVar109 = record.testgroup;\n s.linkTrackVars = s.apl(s.linkTrackVars, \"eVar109\", \",\", 2);\n }\n s.triggerEvent(\"MetricalOfferNotPresented\");\n s.linkTrackEvents = \"None\";\n s.linkTrackVars = s.baseLinkTrackVars;\n });\n }\n }\n else {\n HelperFunctions.DebugLog(\"Metrical failed to initialize\", 2);\n }\n });\n }\n}\n;\n//# sourceMappingURL=Metrical.js.map","import { Websites } from \"../consts/websites.const\";\nimport { PageTypes } from \"../consts/pageTypes.const\";\nimport { InitTimings } from \"../enums/enums.enum\";\nimport { _dsgTag } from \"../namespaces/_dsgTag.namespace\";\nimport { HelperFunctions } from \"../namespaces/helperFunctions.namespace\";\nimport { DataLayer } from \"../namespaces/dataLayer.namespace\";\nimport { TagCondition } from \"../classes/tagCondition.class\";\nimport { FunctionRepository } from \"../namespaces/functionRepository.namespace\";\nvar baseConditions = [{ t: \"site\", c: \"=\", v: [\"DSG\", \"GGXY\", \"PBL\", \"GONE\"] }, { t: \"domain\", c: \"*!=\", v: \"Protips\" }, { t: \"page\", c: \"^!=\", v: \"Chat\" }, { t: \"aos\", c: \"=\", v: \"false\" }, { t: \"iframe\", c: \"=\", v: \"false\" }];\nvar conditions = [];\nfor (var i = 0; i < baseConditions.length; i++) {\n conditions.push(new TagCondition(baseConditions[i].t, baseConditions[i].c, baseConditions[i].v));\n}\nexport var Monetate = { name: \"Monetate\", timing: InitTimings.Page3rdPartySignal, conditions: conditions, initFunction: init };\nfunction init(inputDataObject) {\n var monetateID = \"\";\n var monetateInitialized = false;\n switch (_dsgTag.currentWebsite) {\n case Websites.DicksSportingGoods:\n {\n monetateID = \"a-728f5db3/p/dickssportinggoods.com\";\n break;\n }\n case Websites.GolfGalaxy:\n {\n monetateID = \"a-728f5db3/p/golfgalaxy.com\";\n break;\n }\n case Websites.GoingGoingGone:\n {\n monetateID = \"a-728f5db3/p/goinggoinggone.com\";\n break;\n }\n case Websites.PublicLands:\n {\n monetateID = \"a-728f5db3/p/publiclands.com\";\n break;\n }\n }\n var pdpCustomAttributes = [];\n var requestedTeams = [];\n var athleteIDAlreadySent = false;\n var TriggerMonetate = function (pageType, monetateData, eventData) {\n window.monetateQ = window.monetateQ || [];\n if (_dsgTag.CustomerIDs.AthleteID) {\n window.monetateQ.push([\"setCustomVariables\", [{ name: \"AthleteID\", value: _dsgTag.CustomerIDs.AthleteID }]]);\n athleteIDAlreadySent = true;\n }\n if (pageType !== \"store\") {\n window.monetateQ.push([\"setCustomVariables\", [{ name: \"storeid\", value: DataLayer.GetValue(\"SavedStoreNumber\", eventData) }]]);\n }\n window.monetateQ.push([\"setPageType\", pageType]);\n for (var i = 0; i < monetateData.length; i++) {\n window.monetateQ.push(monetateData[i]);\n }\n window.monetateQ.push([\"trackData\"]);\n if (!monetateInitialized) {\n HelperFunctions.LoadScriptAsyncAndCallFunction(\"https://se.monetate.net/js/2/\" + monetateID + \"/custom.js\", inputDataObject.name, function () { monetateInitialized = true; });\n }\n };\n var monetatePageType = \"\";\n var monetatePageData = [];\n var FireMonetatePageView = function (eventObject) {\n var d = eventObject.eventData;\n if (d && d.pageTypeOverride) {\n return;\n }\n switch (_dsgTag.pageType) {\n case PageTypes.Home:\n {\n monetatePageType = \"home\";\n break;\n }\n case PageTypes.Category:\n {\n monetatePageType = \"category\";\n monetatePageData.push([\"setCustomVariables\", [{ name: \"categoryID\", value: DataLayer.GetValue(\"CategoryID\", d) }]]);\n monetatePageData.push([\"addCategories\", [DataLayer.GetValue(\"CategoryID\", d), DataLayer.GetValue(\"CategoryName\", d)]]);\n break;\n }\n case PageTypes.Family:\n {\n monetatePageType = \"plp\";\n monetatePageData.push([\"setCustomVariables\", [{ name: \"categoryID\", value: DataLayer.GetValue(\"FamilyID\", d) }]]);\n monetatePageData.push([\"addCategories\", [DataLayer.GetValue(\"FamilyID\", d), DataLayer.GetValue(\"FamilyName\", d)]]);\n break;\n }\n case PageTypes.Search:\n {\n var results = DataLayer.GetValue(\"InternalSearchResultsCount\", d);\n var term = DataLayer.GetValue(\"InternalSearchTerm\", d);\n monetatePageType = parseInt(results) ? \"search\" : \"nosearch\";\n monetatePageData.push([\"addSearch\", { \"searchTerm\": term, \"searchType\": \"site\" }]);\n if (monetatePageType === \"nosearch\") {\n monetatePageData.push([\"setCustomVariables\", [{ name: \"searchTerm\", value: term }]]);\n }\n break;\n }\n case PageTypes.ProductDetails:\n {\n var sku = \"\";\n try {\n if (DataLayer.GetValue(\"ProductSKU\", d)) {\n sku = DataLayer.GetValue(\"ProductSKU\", d);\n }\n else {\n var skuList = DataLayer.GetValue(\"ProductSKUList\", d);\n sku = skuList[(Math.floor(Math.random() * skuList.length))];\n }\n }\n catch (ex) { }\n if (sku) {\n monetatePageType = \"product\";\n monetatePageData.push([\"addProductDetails\", [{\n \"productId\": DataLayer.GetValue(\"ProductID\", d),\n \"sku\": sku\n }]]);\n var GetAttribute = function (attribute) {\n var attributes = d.ProductDetails[0].ProductDescriptiveAttributes;\n if (attributes) {\n for (var j = 0; j < attributes.length; j++) {\n if (attributes[j].name.toLowerCase() === attribute.toLowerCase()) {\n return attributes[j].value;\n }\n }\n }\n };\n var desiredAttributes = [{ ourName: \"\", monetateName: \"\" }, { ourName: \"Brand\", monetateName: \"brand\" }, { ourName: \"Gender by Age\", monetateName: \"gender\" }, { ourName: \"Product Type\", monetateName: \"producttype\" }, { ourName: \"Activity\", monetateName: \"activity\" }, { ourName: \"PRIMARY_CATEGORY_DSG\", monetateName: \"categoryidlevel0\" }];\n var customAttributes = [];\n for (var currentAttribute in desiredAttributes) {\n var value = GetAttribute(desiredAttributes[currentAttribute].ourName);\n if (value) {\n customAttributes.push({ name: desiredAttributes[currentAttribute].monetateName, value: value });\n }\n }\n pdpCustomAttributes = customAttributes;\n monetatePageData.push([\"setCustomVariables\", customAttributes]);\n }\n else {\n monetatePageType = \"oosproduct\";\n monetatePageData.push([\"addProductDetails\", [{\n \"productId\": DataLayer.GetValue(\"ProductID\", d)\n }]]);\n monetatePageData.push([\"setCustomVariables\", [{ name: \"producttype\", value: DataLayer.GetValue(\"ProductType\", d) }]]);\n }\n break;\n }\n case PageTypes.Cart:\n {\n var emptycartTimeout = setTimeout(function () {\n TriggerMonetate(\"emptycart\", [], d);\n }, 5000);\n inputDataObject.AddEventHandler(\"CartDataUpdated\", function (eventInstance) {\n clearInterval(emptycartTimeout);\n monetatePageType = \"cart\";\n var cartData = [];\n var monetateData = [];\n var products = DataLayer.GetValue(\"ProductListArray\", eventInstance.eventData);\n if (products) {\n for (var i = 0; i < products.length; i++) {\n cartData.push({\n \"productId\": products[i].ProductID,\n \"quantity\": products[i].ProductQty,\n \"unitPrice\": products[i].CurrentPricePerUnit,\n \"sku\": products[i].ProductSKU,\n \"currency\": \"USD\"\n });\n }\n }\n else {\n monetatePageType = \"emptycart\";\n }\n monetateData.push([\"addCartRows\", cartData]);\n TriggerMonetate(monetatePageType, monetateData, eventInstance.eventData);\n });\n break;\n }\n case PageTypes.OrderConfirmation:\n {\n monetatePageType = \"purchase\";\n var orderID = DataLayer.GetValue(\"OrderID\", d);\n var orderData = [];\n var products = DataLayer.GetValue(\"ProductListArray\", d);\n if (products) {\n for (var i = 0; i < products.length; i++) {\n orderData.push({\n \"purchaseId\": orderID,\n \"productId\": products[i].ProductID,\n \"quantity\": products[i].ProductQty,\n \"unitPrice\": (products[i].CurrentPricePerUnit - products[i].DistributedOrderDiscountPerUnit).toFixed(2),\n \"sku\": products[i].ProductSKU,\n \"currency\": \"USD\"\n });\n }\n }\n monetatePageData.push([\"addPurchaseRows\", orderData]);\n FunctionRepository.Track3rdPartyOrder(orderID, inputDataObject.name);\n break;\n }\n case PageTypes.BlogArticle:\n {\n monetatePageType = \"article\";\n break;\n }\n case PageTypes.Static:\n {\n monetatePageType = \"static\";\n break;\n }\n case PageTypes.BrandShop:\n {\n monetatePageType = \"brand\";\n var brand = DataLayer.GetValue(\"BrandShopName\", d).toLowerCase();\n var brandURLs = \"taylormade-golf-clubs-and-equipment|callaway-golf-brand-shop|maxfli-elevated-brand-shop|easton-ghost-bats|titleist-tsr-woods|shop-mens-swim|shop-the-north-face|sports/baseball/baseball-pro-gloves|vans|howler-brothers|hestra-gloves|snow-peak-gear|zpacks-gear|askov-finlayson|hyperlite-mountain-gear|simms-fishing|sorel|free-people-clothing|altra|cannondale|shop-all-cannondale-bikes|hoka-one-one|birkenstock|parks-project|beyond-yoga\".toLowerCase().split(\"|\");\n var staticURL = /\\/s\\/(.*)$/i.exec(window.location.pathname.toLowerCase())[1];\n if (staticURL && brandURLs.indexOf(staticURL) > -1) {\n var brand = DataLayer.GetValue(\"BrandShopName\", d).toLowerCase();\n var brandLookupTable = { \"free-people-clothing\": \"FP Movement by Free People\", \"dsg-brand-clothing-gear\": \"DSG\", \"taylormade-golf-clubs-and-equipment\": \"Taylormade\", \"callaway-golf-brand-shop\": \"Callaway\", \"maxfli-elevated-brand-shop\": \"Maxfli\", \"easton-ghost-bats\": \"Easton Sports\", \"titleist-tsr-woods\": \"Titleist\", \"baseball-pro-gloves\": \"Pro Series Gloves\", \"perfect-game\": \"perfectgame\", \"shop-solo-stove\": \"solo\" };\n for (var key in brandLookupTable) {\n if (staticURL.toLowerCase().indexOf(key.toLowerCase()) >= 0) {\n brand = brandLookupTable[key];\n break;\n }\n }\n var titleScrape = document.querySelector(\".cmp-title__text\");\n brand = brand || titleScrape.innerText.toLowerCase();\n }\n if (brand) {\n monetatePageData.push([\"setCustomVariables\", [{ name: \"brand\", value: brand }]]);\n monetatePageType = \"brand\";\n }\n break;\n }\n case PageTypes.StoreLocatorLocalStore:\n {\n monetatePageType = \"store\";\n monetatePageData.push([\"setCustomVariables\", [{ name: \"storeid\", value: DataLayer.GetValue(\"StoreLocatorStoreNumber\", d) }]]);\n break;\n }\n case PageTypes.GuestOrderTracking:\n {\n monetatePageType = \"ordertracking\";\n break;\n }\n case PageTypes.ProtipsBlog:\n {\n monetatePageType = \"protips\";\n break;\n }\n }\n if (requestedTeams.length > 0) {\n monetatePageData.push([\"setCustomVariables\", [{ name: \"teammaster\", value: requestedTeams[0] }]]);\n }\n if (monetatePageType) {\n TriggerMonetate(monetatePageType, monetatePageData, d);\n }\n };\n var FireMonetateProductQuickView = function (eventObject) {\n var d = eventObject.eventData;\n try {\n d = d.data || d;\n if (!DataLayer.GetValue(\"IsQuickView\", d)) {\n return;\n }\n var skuList = DataLayer.GetValue(\"ProductSKUList\", d);\n var sku = skuList[(Math.floor(Math.random() * skuList.length))];\n TriggerMonetate(\"quickview\", [[\"addProductDetails\", [{\n \"productId\": d.ProductID,\n \"sku\": sku\n }]]], d);\n }\n catch (ex) { }\n };\n var FireMonetateAlternativeInStock = function (eventObject) {\n var d = eventObject.eventData;\n var productID = \"\";\n var sku = \"\";\n var attributeValues = [];\n var attributeKeyLookup = { \"Size\": \"Size\",\n \"Shoe Size\": \"eComShoeSize\",\n \"Shoe Width\": \"eComShoeWidth\",\n \"Inseam\": \"Inseam\",\n \"Length\": \"PantLength\"\n };\n for (var key in d) {\n if (d[key].ecode) {\n productID = d[key].ecode;\n }\n else if (d[key].name && d[key].value && attributeKeyLookup[d[key].name]) {\n attributeValues.push({ name: attributeKeyLookup[d[key].name], value: d[key].value });\n }\n }\n var monetateData = [];\n if (productID)\n monetateData.push([\"addProductDetails\", [{\n \"productId\": productID\n }]]);\n if (attributeValues) {\n monetateData.push([\"setCustomVariables\", attributeValues]);\n }\n TriggerMonetate(\"skuoos2\", monetateData, d);\n };\n var FireMonetateSkuResolve = function (eventObject) {\n var d = eventObject.eventData;\n var sku = d.sku.id || d.sku.partNumber;\n var monetateData = [];\n monetateData.push([\"addProductDetails\", [{\n \"productId\": DataLayer.GetValue(\"ProductID\", d),\n \"sku\": sku\n }]]);\n var curentWebsite = _dsgTag.currentWebsite;\n var isOOS = (curentWebsite === Websites.DicksSportingGoods && !d.AvailableToShip && !d.AvailableForPickup);\n monetateData.push([\"setCustomVariables\", pdpCustomAttributes]);\n if (isOOS) {\n TriggerMonetate(\"skuoos\", monetateData, d);\n }\n else {\n TriggerMonetate(\"product\", monetateData, d);\n }\n TriggerMonetate(\"product\", monetateData, d);\n };\n var FireMonetateNotifyMe = function (eventObject) {\n var d = eventObject.eventData;\n var monetateData = [];\n if (typeof d.sku.defAttributes !== \"undefined\" && typeof d.sku.defAttributes.length !== \"undefined\") {\n for (var i = 0; i < d.sku.defAttributes.length; i++) {\n if (d.sku.defAttributes[i].name.toLowerCase().indexOf(\"size\") >= 0) {\n monetateData.push([\"setCustomVariables\", [{ name: \"size\", value: d.sku.defAttributes[i].value }]]);\n break;\n }\n }\n }\n if (typeof d.bopisNotification !== \"undefined\" && d.store) {\n monetateData.push([\"setCustomVariables\", [{ name: \"storeid\", value: d.store }]]);\n }\n TriggerMonetate(\"backinstock\", monetateData, d);\n };\n var FireMonetateAddToCart = function (eventObject) {\n var d = eventObject.eventData;\n if (typeof d.ProductsAddedToCart !== \"undefined\") {\n var pageType = \"addtocart\";\n var cartData = [];\n var productData = [];\n if (typeof d.ProductsAddedToCart !== \"undefined\") {\n for (var i = 0; i < d.ProductsAddedToCart.length; i++) {\n cartData.push({\n \"productId\": d.ProductsAddedToCart[i].ProductID,\n \"quantity\": d.ProductsAddedToCart[i].ProductQty,\n \"unitPrice\": d.ProductsAddedToCart[i].CurrentPricePerUnit,\n \"sku\": d.ProductsAddedToCart[i].ProductSKU,\n \"currency\": \"USD\"\n });\n productData = [{ \"productId\": d.ProductsAddedToCart[i].ProductID, \"sku\": d.ProductsAddedToCart[i].ProductSKU }];\n if (d.ProductsAddedToCart[i].CartAdditionSource.toLowerCase() == \"quickview\") {\n pageType = \"quickview\";\n }\n }\n }\n TriggerMonetate(pageType, [[\"addCartRows\", cartData], [\"setCustomVariables\", pdpCustomAttributes], [\"addProductDetails\", productData]], d);\n }\n };\n var FireMonetateCustomerIDAPICall = function (eventObject) {\n var d = eventObject.eventData;\n if (d.type && d.type === \"AthleteID\" && !athleteIDAlreadySent) {\n window.monetateQ = window.monetateQ || [];\n window.monetateQ.push([\"setCustomVariables\", [{ name: \"AthleteID\", value: d.newID }]]);\n window.monetateQ.push([\"trackData\"]);\n }\n };\n var FireMonetateCartATR = function (eventObject) {\n var d = eventObject.eventData;\n if (d.ThresholdValue) {\n var monetateData = [];\n monetateData.push([\"minofferprice\", d.ThresholdValue]);\n TriggerMonetate(\"product\", monetateData, d);\n }\n };\n var FireMonetateTeamMaster = function (eventObject) {\n var d = eventObject.eventData;\n if (d && d.responseTokens) {\n for (var i = 0; i < d.responseTokens.length; i++) {\n if (_dsgTag.pageType === PageTypes.Home) {\n if (d.responseTokens[i][\"activity.name\"].toLowerCase().indexOf(\"mastertm\") >= 0) {\n var experienceName = d.responseTokens[i][\"experience.name\"];\n experienceName = experienceName.replace(/\\d+$/g, \"\");\n if (requestedTeams.length == 0) {\n requestedTeams.push(experienceName);\n if (monetatePageType) {\n monetatePageData.push([\"setCustomVariables\", [{ name: \"teammaster\", value: requestedTeams[0] }]]);\n TriggerMonetate(monetatePageType, monetatePageData, d);\n }\n }\n }\n }\n }\n }\n };\n if (monetateID) {\n window.monetateT = new Date().getTime();\n inputDataObject.AddEventHandler(\"NewPageView\", FireMonetatePageView);\n inputDataObject.AddEventHandler(\"ProductQuickView\", FireMonetateProductQuickView);\n inputDataObject.AddEventHandler(\"SKUResolve\", FireMonetateSkuResolve);\n inputDataObject.AddEventHandler(\"AddToCart\", FireMonetateAddToCart);\n inputDataObject.AddEventHandler(\"CustomerIDApiUsed\", FireMonetateCustomerIDAPICall);\n inputDataObject.AddEventHandler(\"AdobeTargetRequestSucceeded\", FireMonetateTeamMaster);\n inputDataObject.AddEventHandler(\"atcAtrViewSuggestedItems \", FireMonetateCartATR);\n inputDataObject.AddEventHandler(\"AlternativeInStockProduct\", FireMonetateAlternativeInStock);\n inputDataObject.AddEventHandler(\"NotifyMeStock\", FireMonetateNotifyMe);\n }\n if (HelperFunctions.GetQueryStringValue(\"monetate\") === \"true\" || _dsgTag.currentWebsite === Websites.GoingGoingGone || _dsgTag.currentWebsite === Websites.PublicLands || _dsgTag.currentWebsite === Websites.GolfGalaxy) {\n FunctionRepository.HandleCertonaResponse = function (certonaData) { HelperFunctions.DebugLog(\"Ignoring Certona response\"); };\n FunctionRepository.AddCertonaResponseHandler = FunctionRepository.AddMonetateResponseHandler;\n _dsgTag.monetateResponseHandlers = _dsgTag.certonaResponseHandlers;\n }\n}\n;\n_dsgTag.monetateResponseHandlers = [];\n_dsgTag.monetateData = [];\n//# sourceMappingURL=Monetate.js.map","export function InitMovableInk(m, o, v, a, b, l, e) {\n if (typeof m['MovableInkTrack'] !== 'undefined') {\n return;\n }\n m['MovableInkTrack'] = b;\n l = o.createElement(v);\n e = o.getElementsByTagName(v)[0];\n l.type = 'text/javascript';\n l.async = true;\n l.src = '//' + a + '/p/js/1.js';\n m[b] = m[b] || function () {\n (m[b].q = m[b].q || []).push(arguments);\n };\n e.parentNode.insertBefore(l, e);\n}\n//# sourceMappingURL=movableink.js.map","import { PageTypes } from \"../consts/pageTypes.const\";\nimport { InitTimings } from \"../enums/enums.enum\";\nimport { _dsgTag } from \"../namespaces/_dsgTag.namespace\";\nimport { DataLayer } from \"../namespaces/dataLayer.namespace\";\nimport { TagCondition } from \"../classes/tagCondition.class\";\nimport { InitMovableInk } from \"../vendorScripts/movableink\";\nvar baseConditions = [{ t: \"site\", c: \"=\", v: [\"DSG\", \"GGXY\", \"PBL\", \"GONE\"] }, { t: \"page\", c: \"^!=\", v: \"Chat\" }, { t: \"aos\", c: \"=\", v: \"false\" }, { t: \"iframe\", c: \"=\", v: \"false\" }];\nvar conditions = [];\nfor (var i = 0; i < baseConditions.length; i++) {\n conditions.push(new TagCondition(baseConditions[i].t, baseConditions[i].c, baseConditions[i].v));\n}\nexport var MovableInk = { name: \"MovableInk\", timing: InitTimings.Page3rdPartySignal, conditions: conditions, initFunction: init };\nfunction init(inputDataObject) {\n var miID = \"mi.\" + _dsgTag.currentWebsite.Domain;\n if (miID) {\n function VerifyOrderConfirmationAndFirePixel(eventInstance) {\n if (_dsgTag.pageType === PageTypes.OrderConfirmation) {\n FireMovableInkOrderConfirmation(eventInstance);\n }\n }\n function FireMovableInkOrderConfirmation(eventInstance) {\n DataLayer.PassValuesToFunction([\"ProductListArray\", \"OrderID\", \"OrderTotal\", \"OrderTax\", \"OrderShippingRevenue\"], function (products, orderID, total, tax, shipping) {\n var revenue = \"0\";\n for (var i = 0; i < products.length; i++) {\n var currentProduct = products[i];\n if (typeof window.mitr !== \"undefined\" && typeof currentProduct !== \"undefined\" && typeof currentProduct.ProductSKU !== \"undefined\" && typeof currentProduct.ProductName !== \"undefined\" && typeof currentProduct.CurrentPricePerUnit !== \"undefined\" && typeof currentProduct.DistributedOrderDiscountPerUnit !== \"undefined\" && typeof currentProduct.ProductQty !== \"undefined\") {\n var currentPrice = currentProduct.CurrentPricePerUnit;\n var discount = currentProduct.DistributedOrderDiscountPerUnit;\n if (typeof currentPrice == \"string\") {\n currentPrice = currentPrice.replace(\",\", \"\");\n }\n if (typeof discount == \"string\") {\n discount = discount.replace(\",\", \"\");\n }\n var pricePerUnit = (currentPrice - discount).toFixed(2);\n window.mitr('addProduct', {\n sku: currentProduct.ProductID,\n name: currentProduct.ProductName,\n price: pricePerUnit,\n quantity: currentProduct.ProductQty,\n other: ''\n });\n }\n }\n revenue = (total - tax - shipping).toFixed(2);\n if (typeof window.mitr !== \"undefined\" && orderID) {\n window.mitr('send', 'conversion', {\n revenue: revenue,\n identifier: orderID\n });\n }\n }, eventInstance.eventData);\n }\n InitMovableInk(window, document, 'script', miID, 'mitr');\n inputDataObject.AddEventHandler(\"NewPageView\", VerifyOrderConfirmationAndFirePixel);\n }\n}\n;\n//# sourceMappingURL=MovableInk.js.map","export function InitNextDoor(win, doc, sdk_url, nextDoorID) {\n if (win.ndp)\n return;\n var tr = win.ndp = function () {\n tr.handleRequest ? tr.handleRequest.apply(tr, arguments) : tr.queue.push(arguments);\n };\n tr.queue = [];\n var s = 'script';\n var new_script_section = doc.createElement(s);\n new_script_section.async = !0;\n new_script_section.src = sdk_url;\n var insert_pos = doc.getElementsByTagName(s)[0];\n insert_pos.parentNode.insertBefore(new_script_section, insert_pos);\n var dataObject = _dsgTag.CustomerIDs.HashedEmail ? { user_email_hash: _dsgTag.CustomerIDs.HashedEmail.toLowerCase() } : {};\n ndp('init', nextDoorID, dataObject);\n}\n;\n//# sourceMappingURL=nextdoor.js.map","import { Websites } from \"../consts/websites.const\";\nimport { PageTypes } from \"../consts/pageTypes.const\";\nimport { InitTimings } from \"../enums/enums.enum\";\nimport { _dsgTag } from \"../namespaces/_dsgTag.namespace\";\nimport { DataLayer } from \"../namespaces/dataLayer.namespace\";\nimport { TagCondition } from \"../classes/tagCondition.class\";\nimport { FunctionRepository } from \"../namespaces/functionRepository.namespace\";\nimport { InitNextDoor } from \"../vendorScripts/nextdoor\";\nvar baseConditions = [{ t: \"site\", c: \"=\", v: [\"DSG\", \"GGXY\"] }, { t: \"page\", c: \"^!=\", v: \"Chat\" }, { t: \"aos\", c: \"=\", v: \"false\" }, { t: \"iframe\", c: \"=\", v: \"false\" }, { t: \"dns\" }];\nvar conditions = [];\nfor (var i = 0; i < baseConditions.length; i++) {\n conditions.push(new TagCondition(baseConditions[i].t, baseConditions[i].c, baseConditions[i].v));\n}\nexport var NextDoor = { name: \"NextDoor\", timing: InitTimings.Page3rdPartySignal, conditions: conditions, initFunction: init };\nfunction init(inputDataObject) {\n var nextDoorID = \"\";\n switch (_dsgTag.currentWebsite) {\n case Websites.DicksSportingGoods:\n {\n nextDoorID = \"172d48c1-5bc9-4736-8b6b-59a8b69bef40\";\n break;\n }\n case Websites.GolfGalaxy:\n {\n nextDoorID = \"ec76ed3f-2483-4e86-8ce0-79e0a0d60108\";\n break;\n }\n }\n if (nextDoorID) {\n function FireNextDoorPageView(eventInstance) {\n window.ndp('track', 'PAGE_VIEW');\n }\n function FireNextDoorProductView(eventInstance) {\n window.ndp('track', 'CUSTOM_CONVERSION_1');\n }\n function FireNextDoorAddToCart(eventInstance) {\n if (eventInstance.eventData.ProductsAddedToCart) {\n window.ndp('track', 'CUSTOM_CONVERSION_2');\n }\n }\n function FireNextDoorOrderConfirmation(eventInstance) {\n DataLayer.PassValuesToFunction([\"OrderID\", \"OrderTotal\", \"OrderTax\", \"OrderShippingRevenue\", \"ProductListArray\"], function (orderID, orderTotal, taxTotal, shippingTotal, productList) {\n var revenue = \"0.00\";\n if (orderTotal && taxTotal && shippingTotal) {\n revenue = (orderTotal - taxTotal - shippingTotal).toFixed(2);\n }\n var contentsList = [];\n if (productList) {\n var currentItem = {};\n for (var i = 0; i < productList.length; i++) {\n currentItem = {};\n currentItem.id = productList[i].ProductSKU;\n currentItem.quantity = productList[i].ProductQty;\n currentItem.item_price = (productList[i].CurrentPricePerUnit - productList[i].DistributedOrderDiscountPerUnit).toFixed(2);\n ;\n contentsList.push(currentItem);\n }\n }\n window.ndp('track', 'PURCHASE', {}, { order_id: orderID, order_value: revenue });\n FunctionRepository.Track3rdPartyOrder(orderID, inputDataObject.name);\n }, eventInstance.eventData);\n }\n InitNextDoor(window, document, 'https://ads.nextdoor.com/public/pixel/ndp.js', nextDoorID);\n inputDataObject.AddEventHandler(\"NewPageView\", function (eventInstance) {\n FireNextDoorPageView(eventInstance);\n if (_dsgTag.pageType === PageTypes.ProductDetails) {\n FireNextDoorProductView(eventInstance);\n }\n else if (_dsgTag.pageType === PageTypes.OrderConfirmation) {\n FireNextDoorOrderConfirmation(eventInstance);\n }\n });\n inputDataObject.AddEventHandler(\"AddToCart\", function (eventInstance) {\n FireNextDoorAddToCart(eventInstance);\n });\n }\n}\n;\n//# sourceMappingURL=NextDoor.js.map","export function InitPinterest(pinterestID) {\n !function (e) {\n if (!window.pintrk) {\n window.pintrk = function () {\n window.pintrk.queue.push(Array.prototype.slice.call(arguments));\n };\n var n = window.pintrk;\n n.queue = [], n.version = \"3.0\";\n var t = document.createElement(\"script\");\n t.async = !0, t.src = e;\n var r = document.getElementsByTagName(\"script\")[0];\n r.parentNode.insertBefore(t, r);\n }\n }(\"https://s.pinimg.com/ct/core.js\");\n pintrk(\"load\", pinterestID, { em: _dsgTag.CustomerIDs.HashedEmail });\n pintrk(\"page\");\n}\n//# sourceMappingURL=pinterest.js.map","import { Websites } from \"../consts/websites.const\";\nimport { PageTypes } from \"../consts/pageTypes.const\";\nimport { InitTimings } from \"../enums/enums.enum\";\nimport { _dsgTag } from \"../namespaces/_dsgTag.namespace\";\nimport { DataLayer } from \"../namespaces/dataLayer.namespace\";\nimport { TagCondition } from \"../classes/tagCondition.class\";\nimport { InitPinterest } from \"../vendorScripts/pinterest\";\nvar baseConditions = [{ t: \"site\", c: \"=\", v: [\"DSG\", \"GGXY\"] }, { t: \"page\", c: \"^!=\", v: \"Chat\" }, { t: \"aos\", c: \"=\", v: \"false\" }, { t: \"iframe\", c: \"=\", v: \"false\" }, { t: \"dns\" }];\nvar conditions = [];\nfor (var i = 0; i < baseConditions.length; i++) {\n conditions.push(new TagCondition(baseConditions[i].t, baseConditions[i].c, baseConditions[i].v));\n}\nexport var Pinterest = { name: \"Pinterest\", timing: InitTimings.Page3rdPartySignal, conditions: conditions, initFunction: init };\nfunction init(inputDataObject) {\n var pinterestID = \"\";\n var desiredIDName = \"ProductID\";\n switch (_dsgTag.currentWebsite) {\n case Websites.DicksSportingGoods:\n pinterestID = \"2612562523200\";\n break;\n case Websites.GolfGalaxy:\n pinterestID = \"2617409700622\";\n break;\n }\n if (pinterestID) {\n InitPinterest(pinterestID);\n var pdpBrand = \"\";\n var FirePinterestPixel = function (eventObject) {\n var d = eventObject.eventData;\n switch (_dsgTag.pageType) {\n case PageTypes.Category:\n case PageTypes.Family:\n {\n var pageName = document.title.split(\"|\").length > 1 ? document.title.split(\"|\")[0] : document.title;\n pageName = pageName.trim();\n window.pintrk(\"track\", \"viewcategory\", {\n event_id: d.taggingEventID,\n line_items: [{\n Product_name: pageName\n }]\n });\n break;\n }\n case PageTypes.Search:\n {\n DataLayer.PassValuesToFunction([\"InternalSearchTerm\"], function (internalSearchTerm) {\n window.pintrk(\"track\", \"search\", {\n event_id: d.taggingEventID,\n search_query: internalSearchTerm\n });\n }, d);\n break;\n }\n case PageTypes.ProductDetails:\n {\n DataLayer.PassValuesToFunction([\"ProductDetails\"], function (productDetails) {\n try {\n if (productDetails.length > 0) {\n pdpBrand = productDetails[0].ProductBrand;\n var productID = productDetails[0].ProductID;\n var productName = productDetails[0].ProductName;\n window.pintrk(\"track\", \"pagevisit\", {\n event_id: d.taggingEventID,\n line_items: [{\n product_id: productID,\n product_brand: pdpBrand,\n product_name: productID + \" - \" + productName\n }]\n });\n }\n }\n catch (ex) { }\n }, d);\n break;\n }\n case PageTypes.OrderConfirmation:\n {\n DataLayer.PassValuesToFunction([\"ProductListArray\", \"OrderID\", \"OrderTotal\", \"OrderTax\", \"OrderShippingRevenue\", \"OrderLevelPromoCodes\"], function (products, orderID, orderTotal, orderTax, orderShipping, orderLevelPromos) {\n var revenue = (orderTotal - orderTax - orderShipping).toFixed(2);\n var promoCodeApplied = 0;\n var productArray = [];\n var product = {};\n var currentProduct;\n for (var i = 0; i < products.length; i++) {\n currentProduct = products[i];\n product = {};\n product.product_id = currentProduct[desiredIDName];\n product.product_name = currentProduct[desiredIDName] + \" - \" + currentProduct.ProductName;\n product.product_quantity = currentProduct.ProductQty;\n product.product_brand = currentProduct.ProductBrand;\n product.product_price = (currentProduct.CurrentPricePerUnit - currentProduct.DistributedOrderDiscountPerUnit).toFixed(2);\n productArray.push(product);\n }\n if (orderLevelPromos.length > 0 && orderLevelPromos[0]) {\n promoCodeApplied = 1;\n }\n window.pintrk(\"track\", \"checkout\", {\n event_id: orderID,\n value: revenue,\n currency: 'USD',\n order_id: orderID,\n promo_code: promoCodeApplied,\n line_items: productArray\n });\n }, d);\n break;\n }\n }\n };\n var FireAddToCartPixel = function (eventObject) {\n var data = eventObject.eventData;\n if (typeof data.ProductsAddedToCart !== \"undefined\" && data.ProductsAddedToCart.length > 0) {\n var totalValue = \"0\";\n var productsAddedToCart = [];\n var product = {};\n for (var i = 0; i < data.ProductsAddedToCart.length; i++) {\n product = {};\n product.product_id = data.ProductsAddedToCart[i][desiredIDName];\n if (pdpBrand) {\n product.product_brand = pdpBrand;\n }\n product.product_name = data.ProductsAddedToCart[i][desiredIDName] + \" - \" + data.ProductsAddedToCart[i].ProductName;\n product.product_quantity = data.ProductsAddedToCart[i].ProductQty;\n productsAddedToCart.push(product);\n totalValue = (parseFloat(totalValue) + (parseFloat(data.ProductsAddedToCart[i].CurrentPricePerUnit) * parseFloat(data.ProductsAddedToCart[i].ProductQty))).toFixed(2);\n }\n window.pintrk(\"track\", \"addtocart\", {\n event_id: data.taggingEventID,\n value: (totalValue),\n currency: 'USD',\n line_items: productsAddedToCart\n });\n }\n };\n var FireEmailSignUpPixel = function (eventObject) {\n var d = eventObject.eventData;\n window.pintrk(\"track\", \"signup\", {\n event_id: d.taggingEventID,\n lead_type: \"Email\"\n });\n };\n inputDataObject.AddEventHandler(\"EmailSignup\", FireEmailSignUpPixel);\n inputDataObject.AddEventHandler(\"NewPageView\", FirePinterestPixel);\n inputDataObject.AddEventHandler(\"AddToCart\", FireAddToCartPixel);\n }\n}\n;\n//# sourceMappingURL=Pinterest.js.map","import { Websites } from \"../consts/websites.const\";\nimport { PageTypes } from \"../consts/pageTypes.const\";\nimport { InitTimings } from \"../enums/enums.enum\";\nimport { _dsgTag } from \"../namespaces/_dsgTag.namespace\";\nimport { HelperFunctions } from \"../namespaces/helperFunctions.namespace\";\nimport { DataLayer } from \"../namespaces/dataLayer.namespace\";\nimport { TagCondition } from \"../classes/tagCondition.class\";\nvar baseConditions = [{ t: \"site\", c: \"=\", v: \"DSG\" }, { t: \"page\", c: \"^!=\", v: \"Chat\" }, { t: \"aos\", c: \"=\", v: \"false\" }, { t: \"iframe\", c: \"=\", v: \"false\" }, { t: \"dns\" }];\nvar conditions = [];\nfor (var i = 0; i < baseConditions.length; i++) {\n conditions.push(new TagCondition(baseConditions[i].t, baseConditions[i].c, baseConditions[i].v));\n}\nexport var PromoteIQ = { name: \"PromoteIQ\", timing: InitTimings.Page3rdPartySignal, conditions: conditions, initFunction: init };\nfunction init(inputDataObject) {\n var promoteIQID = \"\";\n switch (_dsgTag.currentWebsite) {\n case Websites.DicksSportingGoods:\n promoteIQID = \"16\";\n break;\n }\n if (promoteIQID) {\n var FirePromoteIQConversionPixel = function (eventInstance) {\n HelperFunctions.LoadScriptAsyncAndCallFunction(\"https://cdn.tagdelivery.com/data/client/standard.js\", inputDataObject.name, function () {\n DataLayer.PassValuesToFunction([\"OrderID\", \"OrderTotal\", \"OrderTax\", \"OrderShippingRevenue\", \"ProductListArray\"], function (orderID, orderTotal, taxTotal, shippingTotal, productList) {\n var revenue = \"0.00\";\n if (orderTotal && taxTotal && shippingTotal) {\n revenue = (orderTotal - taxTotal - shippingTotal).toFixed(2);\n }\n var items = [];\n if (productList) {\n var currentItem = {};\n for (var i = 0; i < productList.length; i++) {\n currentItem = {};\n currentItem.pid = promoteIQID;\n currentItem.txnid = orderID;\n currentItem.sku = productList[i].ProductID;\n currentItem.customer = _dsgTag.CustomerIDs.AdobeMCVID;\n currentItem.qty = productList[i].ProductQty;\n currentItem.price = (productList[i].CurrentPricePerUnit - productList[i].DistributedOrderDiscountPerUnit).toFixed(2);\n ;\n currentItem.currency = 'USD';\n currentItem.brand = productList[i].ProductBrand;\n items.push(currentItem);\n }\n }\n var trackObject = {};\n trackObject.user = _dsgTag.CustomerIDs.AthleteID;\n trackObject.pid = promoteIQID;\n trackObject.txnid = orderID;\n trackObject.customer = _dsgTag.CustomerIDs.AdobeMCVID;\n trackObject.revenue = revenue;\n trackObject.shipping = shippingTotal;\n trackObject.tax = taxTotal;\n trackObject.currency = 'USD';\n trackObject.items = items;\n TagDeliveryData.collect(\"conversion:summary\", trackObject);\n }, eventInstance.eventData);\n });\n };\n inputDataObject.AddEventHandler(\"NewPageView\", function (eventInstance) {\n if (_dsgTag.pageType === PageTypes.OrderConfirmation) {\n FirePromoteIQConversionPixel(eventInstance);\n }\n else {\n }\n });\n HelperFunctions.BindDocumentClickEventWithAdditionalSelector(\"a[href*='tagdelivery.com']\", function (elem) {\n try {\n s.saveValueForNextPageView(\"PIQClick\", \"piq\");\n }\n catch (ex) { }\n });\n }\n}\n;\n//# sourceMappingURL=PromoteIQ.js.map","export function InitQuantumMetric(qmID) {\n var qtm = document.createElement('script');\n qtm.type = 'text/javascript';\n qtm.async = 1;\n qtm.src = 'https://cdn.quantummetric.com/qscripts/quantum-' + qmID + '.js';\n var d = document.getElementsByTagName('script')[0];\n !window.QuantumMetricAPI && d.parentNode.insertBefore(qtm, d);\n}\n//# sourceMappingURL=quantummetric.js.map","import { InitTimings } from \"../enums/enums.enum\";\nimport { TagCondition } from \"../classes/tagCondition.class\";\nimport { InitQuantumMetric } from \"../vendorScripts/quantummetric\";\nvar baseConditions = [{ t: \"bypass-restricted\", v: \"true\" }, { t: \"site\", c: \"=\", v: [\"DSG\", \"GGXY\"] }, { t: \"page\", c: \"^!=\", v: \"Chat\" }, { t: \"aos\", c: \"=\", v: \"false\" }, { t: \"iframe\", c: \"=\", v: \"false\" }];\nvar conditions = [];\nfor (var i = 0; i < baseConditions.length; i++) {\n conditions.push(new TagCondition(baseConditions[i].t, baseConditions[i].c, baseConditions[i].v));\n}\nexport var QuantumMetric = { name: \"QuantumMetric\", timing: InitTimings.Immediate, conditions: conditions, initFunction: init };\nfunction init(inputDataObject) {\n var qmID = \"dickssportinggoods\";\n if (qmID) {\n InitQuantumMetric(qmID);\n }\n}\n;\n//# sourceMappingURL=QuantumMetric.js.map","export function InitRiskified(domainValue) {\n var store_domain = (!_dsgTag.isProduction ? \"np5.\" : \"\") + domainValue;\n var session_id = _dsgTag.CustomerIDs.AdobeMCVID;\n var url = ('https:' == document.location.protocol ? 'https://' : 'http://') + \"beacon.riskified.com?shop=\" + store_domain + \"&sid=\" + session_id;\n var s = document.createElement('script');\n s.type = 'text/javascript';\n s.async = true;\n s.src = url;\n var x = document.getElementsByTagName('script')[0];\n x.parentNode.insertBefore(s, x);\n}\n//# sourceMappingURL=riskified.js.map","import { Websites } from \"../consts/websites.const\";\nimport { InitTimings } from \"../enums/enums.enum\";\nimport { _dsgTag } from \"../namespaces/_dsgTag.namespace\";\nimport { DataLayer } from \"../namespaces/dataLayer.namespace\";\nimport { TagCondition } from \"../classes/tagCondition.class\";\nimport { InitRiskified } from \"../vendorScripts/riskified\";\nvar baseConditions = [{ t: \"site\", c: \"=\", v: [\"DSG\", \"GGXY\"] }, { t: \"page\", c: \"^!=\", v: \"Chat\" }, { t: \"aos\", c: \"=\", v: \"false\" }, { t: \"iframe\", c: \"=\", v: \"false\" }];\nvar conditions = [];\nfor (var i = 0; i < baseConditions.length; i++) {\n conditions.push(new TagCondition(baseConditions[i].t, baseConditions[i].c, baseConditions[i].v));\n}\nexport var Riskified = { name: \"Riskified\", timing: InitTimings.Page3rdPartySignal, conditions: conditions, initFunction: init };\nfunction init(inputDataObject) {\n var firstFire = true;\n (function () {\n function riskifiedBeaconLoad() {\n var domainValue = \"\";\n switch (_dsgTag.currentWebsite) {\n case Websites.DicksSportingGoods:\n {\n domainValue = \"dcsg.com\";\n break;\n }\n case Websites.GolfGalaxy:\n {\n domainValue = \"ggxy.com\";\n break;\n }\n }\n if (domainValue) {\n InitRiskified(domainValue);\n }\n inputDataObject.AddEventHandler(\"NewPageView\", function (eventObject) {\n var d = eventObject.eventData;\n if (!firstFire) {\n try {\n RISKX.go(DataLayer.GetValue(\"PageURL\"), d);\n }\n catch (ex) { }\n }\n firstFire = false;\n });\n }\n riskifiedBeaconLoad();\n })();\n}\n;\n//# sourceMappingURL=Riskified.js.map","import { Websites } from \"../consts/websites.const\";\nimport { PageTypes } from \"../consts/pageTypes.const\";\nimport { InitTimings } from \"../enums/enums.enum\";\nimport { _dsgTag } from \"../namespaces/_dsgTag.namespace\";\nimport { HelperFunctions } from \"../namespaces/helperFunctions.namespace\";\nimport { DataLayer } from \"../namespaces/dataLayer.namespace\";\nimport { TagCondition } from \"../classes/tagCondition.class\";\nvar baseConditions = [{ t: \"site\", c: \"=\", v: [\"DSG\", \"GGXY\"] }, { t: \"page\", c: \"=\", v: \"Order Confirmation\" }, { t: \"aos\", c: \"=\", v: \"false\" }, { t: \"iframe\", c: \"=\", v: \"false\" }, { t: \"dns\" }];\nvar conditions = [];\nfor (var i = 0; i < baseConditions.length; i++) {\n conditions.push(new TagCondition(baseConditions[i].t, baseConditions[i].c, baseConditions[i].v));\n}\nexport var Rokt = { name: \"Rokt\", timing: InitTimings.WindowComplete, conditions: conditions, initFunction: init };\nfunction init(inputDataObject) {\n var roktID = \"\";\n switch (_dsgTag.currentWebsite) {\n case Websites.DicksSportingGoods:\n {\n roktID = \"2589334344373137579\";\n break;\n }\n case Websites.GolfGalaxy:\n {\n roktID = \"3228332436141392955\";\n break;\n }\n }\n var InitializeRokt = function () {\n HelperFunctions.LoadScriptAsyncAndCallFunction(\"https://apps.rokt.com/wsdk/integrations/launcher.js\", inputDataObject.name, function () {\n if (window.Rokt) {\n window.Rokt.createLauncher({\n accountId: roktID,\n sandbox: !_dsgTag.isProduction\n }).then(function (...args) {\n var roktLauncher = args[0];\n inputDataObject.AddEventHandler(\"NewPageView\", function (eventInstance) {\n if (_dsgTag.pageType === PageTypes.OrderConfirmation) {\n TrackRoktOrder(eventInstance, roktLauncher);\n }\n });\n });\n }\n });\n };\n var TrackRoktOrder = function (eventInstance, launcher) {\n DataLayer.PassValuesToFunction([\"HashedEmailAddress\", \"OrderID\", \"ProductListArray\", \"OrderTotal\", \"OrderTax\", \"OrderShippingRevenue\", \"BillingZip\", \"OrderPaymentMethods\", \"OrderFirstNameBilling\", \"OrderLastNameBilling\"], function (email, orderID, productList, orderTotal, taxTotal, shippingTotal, zip, payment, firstName, lastName) {\n var revenue = (orderTotal - taxTotal - shippingTotal).toFixed(2);\n var items = [];\n if (productList) {\n var currentItem = {};\n for (var i = 0; i < productList.length; i++) {\n currentItem = {};\n currentItem.productName = productList[i].ProductName;\n currentItem.sku = productList[i].ProductSKU;\n currentItem.price = (productList[i].CurrentPricePerUnit - productList[i].DistributedOrderDiscountPerUnit).toFixed(2);\n currentItem.quantity = productList[i].ProductQty;\n items.push(currentItem);\n }\n }\n launcher.selectPlacements({\n identifier: \"OrderConfirmation\",\n attributes: {\n confirmationref: orderID,\n emailsha256: email,\n amount: revenue,\n currency: \"USD\",\n country: \"US\",\n language: \"EN\",\n conversionType: \"order\",\n cartItems: items,\n zipcode: zip,\n paymenttype: payment.join(\",\"),\n firstname: firstName,\n lastname: lastName\n },\n });\n }, eventInstance.eventData);\n };\n if (roktID) {\n InitializeRokt();\n }\n}\n;\n//# sourceMappingURL=Rokt.js.map","export function InitSnapchat() {\n (function (e, t, n) {\n if (e.snaptr)\n return;\n var a = e.snaptr = function () {\n a.handleRequest ? a.handleRequest.apply(a, arguments) : a.queue.push(arguments);\n };\n a.queue = [];\n var s = 'script';\n var r = t.createElement(s);\n r.async = !0;\n r.src = n;\n var u = t.getElementsByTagName(s)[0];\n u.parentNode.insertBefore(r, u);\n })(window, document, 'https://sc-static.net/scevent.min.js');\n}\n//# sourceMappingURL=snapchat.js.map","import { Websites } from \"../consts/websites.const\";\nimport { PageTypes } from \"../consts/pageTypes.const\";\nimport { InitTimings } from \"../enums/enums.enum\";\nimport { _dsgTag } from \"../namespaces/_dsgTag.namespace\";\nimport { DataLayer } from \"../namespaces/dataLayer.namespace\";\nimport { TagCondition } from \"../classes/tagCondition.class\";\nimport { InitSnapchat } from \"../vendorScripts/snapchat\";\nvar baseConditions = [{ t: \"site\", c: \"=\", v: [\"DSG\", \"GGXY\", \"PBL\"] }, { t: \"aos\", c: \"=\", v: \"false\" }, { t: \"iframe\", c: \"=\", v: \"false\" }, { t: \"dns\" }];\nvar conditions = [];\nfor (var i = 0; i < baseConditions.length; i++) {\n conditions.push(new TagCondition(baseConditions[i].t, baseConditions[i].c, baseConditions[i].v));\n}\nexport var Snapchat = { name: \"Snapchat\", timing: InitTimings.Page3rdPartySignal, conditions: conditions, initFunction: init };\nfunction init(inputDataObject) {\n var ID = \"\";\n switch (_dsgTag.currentWebsite) {\n case Websites.DicksSportingGoods:\n {\n ID = \"26683e68-9921-4109-b8a3-6385a3ccb259\";\n break;\n }\n case Websites.GolfGalaxy:\n {\n ID = \"547907da-9dc9-4f12-a362-f39cd6e944a5\";\n break;\n }\n case Websites.PublicLands:\n {\n ID = \"8086eb0f-4346-4aee-960f-5d28250d48cb\";\n break;\n }\n }\n if (ID) {\n InitSnapchat();\n if (_dsgTag.CustomerIDs.HashedEmail) {\n snaptr('init', ID, {\n 'user_hashed_email': _dsgTag.CustomerIDs.HashedEmail\n });\n }\n else {\n snaptr('init', ID);\n }\n var previousBrand = \"\";\n var FireSnapChatPixel = function (eventObject) {\n var d = eventObject.eventData;\n if (_dsgTag.pageType === PageTypes.ProductDetails || PageTypes[DataLayer.GetValue(\"PageTypeOverride\", d)] === PageTypes.ProductDetails) {\n d = d.data || d;\n if (!DataLayer.GetValue(\"IsQuickView\", d)) {\n return;\n }\n previousBrand = DataLayer.GetValue(\"ProductBrand\", d);\n snaptr('track', 'VIEW_CONTENT', { 'item_ids': [DataLayer.GetValue(\"ProductID\", d)], 'brands': [previousBrand], 'client_dedup_id': d.taggingEventID + \"vc\" });\n }\n else if (_dsgTag.pageType === PageTypes.OrderConfirmation) {\n var productData = DataLayer.GetValue(\"ProductListArray\", d);\n var products = [];\n var brands = [];\n var prices = [];\n var quantities = [];\n for (var i = 0; i < productData.length; i++) {\n products.push(productData[i].ProductID);\n brands.push(productData[i].ProductBrand);\n prices.push((productData[i].CurrentPricePerUnit - productData[i].DistributedOrderDiscountPerUnit).toFixed(2));\n quantities.push(productData[i].ProductQty);\n }\n snaptr('track', 'PURCHASE', {\n 'currency': 'USD',\n 'price': prices,\n 'number_items': quantities,\n 'transaction_id': DataLayer.GetValue(\"OrderID\", d),\n 'item_ids': products,\n 'brands': brands,\n 'client_dedup_id': DataLayer.GetValue(\"OrderID\", d)\n });\n }\n snaptr('track', 'PAGE_VIEW', { 'client_dedup_id': d.taggingEventID });\n };\n inputDataObject.AddEventHandler(\"AddToCart\", function (eventObject) {\n var eventData = eventObject.eventData;\n if (typeof (eventData) != \"undefined\") {\n if (typeof eventData.ProductsAddedToCart !== \"undefined\") {\n var products = [];\n var brands = [];\n for (var i = 0; i < eventData.ProductsAddedToCart.length; i++) {\n products.push(eventData.ProductsAddedToCart[i].ProductID);\n brands.push(DataLayer.GetValue(\"ProductBrand\") || previousBrand);\n }\n snaptr('track', 'ADD_CART', {\n 'item_ids': products,\n 'brands': brands,\n 'client_dedup_id': eventData.taggingEventID\n });\n }\n }\n });\n inputDataObject.AddEventHandler(\"NewPageView\", FireSnapChatPixel);\n }\n}\n;\n//# sourceMappingURL=Snapchat.js.map","import { Websites } from \"../consts/websites.const\";\nimport { PageTypes } from \"../consts/pageTypes.const\";\nimport { InitTimings } from \"../enums/enums.enum\";\nimport { _dsgTag } from \"../namespaces/_dsgTag.namespace\";\nimport { HelperFunctions } from \"../namespaces/helperFunctions.namespace\";\nimport { DataLayer } from \"../namespaces/dataLayer.namespace\";\nimport { TagCondition } from \"../classes/tagCondition.class\";\nvar baseConditions = [{ t: \"site\", c: \"=\", v: [\"DSG\", \"GGXY\", \"PBL\"] }, { t: \"page\", c: \"=\", v: \"Order Confirmation\" }, { t: \"aos\", c: \"=\", v: \"false\" }, { t: \"iframe\", c: \"=\", v: \"false\" }];\nvar conditions = [];\nfor (var i = 0; i < baseConditions.length; i++) {\n conditions.push(new TagCondition(baseConditions[i].t, baseConditions[i].c, baseConditions[i].v));\n}\nexport var Stylitics = { name: \"Stylitics\", timing: InitTimings.Page3rdPartySignal, conditions: conditions, initFunction: init };\nfunction init(inputDataObject) {\n var styliticsID = \"\";\n switch (_dsgTag.currentWebsite) {\n case Websites.DicksSportingGoods:\n {\n styliticsID = \"dickssportinggoods\";\n break;\n }\n case Websites.GolfGalaxy:\n {\n styliticsID = \"golfgalaxy\";\n break;\n }\n case Websites.PublicLands:\n {\n styliticsID = \"publiclands\";\n break;\n }\n }\n if (styliticsID) {\n HelperFunctions.LoadScriptAsyncAndCallFunction(\"https://web-assets.stylitics.com/purchase-tracking/latest/purchase_tracking_iife.js\", inputDataObject.name, function () {\n inputDataObject.AddEventHandler(\"NewPageView\", function (eventObject) {\n var d = eventObject.eventData;\n if (_dsgTag.pageType === PageTypes.OrderConfirmation) {\n DataLayer.PassValuesToFunction([\"OrderID\", \"OrderTotal\", \"OrderTax\", \"OrderShippingRevenue\", \"ProductListArray\"], function (orderID, orderTotal, taxTotal, shippingTotal, productList) {\n var revenue = \"0.00\";\n if (orderTotal && taxTotal && shippingTotal) {\n revenue = (orderTotal - taxTotal - shippingTotal).toFixed(2);\n }\n var dataObject = {};\n if (!_dsgTag.isProduction) {\n dataObject.environment = \"staging\";\n }\n dataObject.client = styliticsID;\n dataObject.orderId = orderID;\n dataObject.orderTotal = (revenue);\n dataObject.items = [];\n if (productList) {\n var currentItem;\n for (var i = 0; i < productList.length; i++) {\n currentItem = {};\n currentItem.id = productList[i].ProductSKU;\n currentItem.price = ((productList[i].CurrentPricePerUnit - productList[i].DistributedOrderDiscountPerUnit).toFixed(2));\n for (var j = 0; j < productList[i].ProductQty; j++) {\n dataObject.items.push(currentItem);\n }\n }\n }\n StyliticsPixel(dataObject);\n }, d);\n }\n });\n });\n }\n}\n;\n//# sourceMappingURL=Stylitics.js.map","export function InitTikTok(pixelID) {\n !function (w, d, t) {\n w.TiktokAnalyticsObject = t;\n var ttq = w[t] = w[t] || [];\n ttq.methods = [\"page\", \"track\", \"identify\", \"instances\", \"debug\", \"on\", \"off\", \"once\", \"ready\", \"alias\", \"group\", \"enableCookie\", \"disableCookie\"],\n ttq.setAndDefer = function (t, e) { t[e] = function () { t.push([e].concat(Array.prototype.slice.call(arguments, 0))); }; };\n for (var i = 0; i < ttq.methods.length; i++)\n ttq.setAndDefer(ttq, ttq.methods[i]);\n ttq.instance = function (t) { for (var e = ttq._i[t] || [], n = 0; n < ttq.methods.length; n++)\n ttq.setAndDefer(e, ttq.methods[n]); return e; }, ttq.load = function (e, n) {\n var i = \"https://analytics.tiktok.com/i18n/pixel/events.js\";\n ttq._i = ttq._i || {}, ttq._i[e] = [], ttq._i[e]._u = i, ttq._t = ttq._t || {}, ttq._t[e] = +new Date, ttq._o = ttq._o || {}, ttq._o[e] = n || {};\n var o = document.createElement(\"script\");\n o.type = \"text/javascript\", o.async = !0, o.src = i + \"?sdkid=\" + e + \"&lib=\" + t;\n var a = document.getElementsByTagName(\"script\")[0];\n a.parentNode.insertBefore(o, a);\n };\n ttq.load(pixelID);\n }(window, document, 'ttq');\n}\n//# sourceMappingURL=tiktok.js.map","import { Websites } from \"../consts/websites.const\";\nimport { PageTypes } from \"../consts/pageTypes.const\";\nimport { InitTimings, LogLevels } from \"../enums/enums.enum\";\nimport { _dsgTag } from \"../namespaces/_dsgTag.namespace\";\nimport { HelperFunctions } from \"../namespaces/helperFunctions.namespace\";\nimport { DataLayer } from \"../namespaces/dataLayer.namespace\";\nimport { TagCondition } from \"../classes/tagCondition.class\";\nimport { InitTikTok } from \"../vendorScripts/tiktok\";\nvar baseConditions = [{ t: \"site\", c: \"=\", v: [\"DSG\", \"GGXY\", \"PBL\"] }, { t: \"page\", c: \"^!=\", v: \"Chat\" }, { t: \"aos\", c: \"=\", v: \"false\" }, { t: \"iframe\", c: \"=\", v: \"false\" }, { t: \"dns\" }];\nvar conditions = [];\nfor (var i = 0; i < baseConditions.length; i++) {\n conditions.push(new TagCondition(baseConditions[i].t, baseConditions[i].c, baseConditions[i].v));\n}\nexport var TikTok = { name: \"TikTok\", timing: InitTimings.Page3rdPartySignal, conditions: conditions, initFunction: init };\nfunction init(inputDataObject) {\n var pixelID = \"\";\n switch (_dsgTag.currentWebsite) {\n case Websites.DicksSportingGoods:\n {\n pixelID = \"C8JLLECO0T91FSTH1G5G\";\n break;\n }\n case Websites.GolfGalaxy:\n {\n pixelID = \"CHHSDN3C77UCQ06LT9C0\";\n break;\n }\n case Websites.PublicLands:\n {\n pixelID = \"CH95GNJC77UEQOU9ECO0\";\n break;\n }\n }\n if (pixelID) {\n InitTikTok(pixelID);\n var previousBrand = \"\";\n var identifySent = false;\n var FireTikTokIdentify = function () {\n if (_dsgTag.CustomerIDs.HashedEmail && !identifySent) {\n ttq.identify({\n \"sha256_email\": _dsgTag.CustomerIDs.HashedEmail\n });\n identifySent = true;\n }\n };\n var FireTikTokPixel = function (eventType, trackObject, eventProperties) {\n FireTikTokIdentify();\n ttq.track(eventType, trackObject, eventProperties);\n };\n var FireTikTokViewContentView = function (eventObject) {\n var d = eventObject.eventData;\n d = d.data || d;\n if (d.pageTypeOverride && !DataLayer.GetValue(\"IsQuickView\", d)) {\n return;\n }\n var eventType = \"ViewContent\";\n var trackObject = {\n content_id: DataLayer.GetValue(\"ProductID\", d),\n content_type: 'product',\n content_name: DataLayer.GetValue(\"ProductName\", d),\n brand: DataLayer.GetValue(\"ProductBrand\", d)\n };\n FireTikTokPixel(eventType, trackObject, { event_id: d.taggingEventID });\n previousBrand = DataLayer.GetValue(\"ProductBrand\", d);\n };\n var FireTikTokAddToCart = function (eventObject) {\n var eventData = eventObject.eventData;\n if (eventData && eventData.ProductsAddedToCart && eventData.ProductsAddedToCart.length > 0) {\n var products = [];\n var revenue = 0;\n try {\n if (eventData && eventData.ProductsAddedToCart && typeof eventData.ProductsAddedToCart === \"object\" && eventData.ProductsAddedToCart.length > 0) {\n for (var i = 0; i < eventData.ProductsAddedToCart.length; i++) {\n if (eventData.ProductsAddedToCart[i] && eventData.ProductsAddedToCart[i].ProductSKU) {\n var product = eventData.ProductsAddedToCart[i];\n var price = (product.CurrentPricePerUnit * product.ProductQty);\n revenue += price;\n products.push({\n content_id: product.ProductID,\n content_type: 'product',\n content_name: product.ProductName,\n quantity: product.ProductQty,\n price: price,\n brand: DataLayer.GetValue(\"ProductBrand\") || previousBrand\n });\n }\n }\n }\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"TikTok AddToCart Pixel - Error while parsing product info\", LogLevels.Error);\n }\n if (products.length > 0) {\n var eventType = \"AddToCart\";\n var trackObject = {};\n trackObject.contents = products;\n trackObject.value = revenue;\n trackObject.currency = \"USD\";\n FireTikTokPixel(eventType, trackObject, { event_id: eventData.taggingEventID });\n }\n }\n };\n var FireTikTokCompletePayment = function (eventObject) {\n var d = eventObject.eventData;\n DataLayer.PassValuesToFunction([\"OrderID\", \"OrderTotal\", \"OrderTax\", \"OrderShippingRevenue\", \"ProductListArray\"], function (orderID, orderTotal, taxTotal, shippingTotal, productList) {\n var revenue = 0;\n var products = [];\n if (orderTotal && taxTotal && shippingTotal) {\n revenue = (orderTotal - taxTotal - shippingTotal);\n }\n if (productList) {\n for (var i = 0; i < productList.length; i++) {\n var product = productList[i];\n products.push({\n content_id: product.ProductID,\n content_type: 'product',\n content_name: product.ProductName,\n quantity: product.ProductQty,\n price: (product.CurrentPricePerUnit - product.DistributedOrderDiscountPerUnit),\n brand: product.ProductBrand\n });\n }\n }\n var trackObject = {};\n var eventType = \"CompletePayment\";\n trackObject.contents = products;\n trackObject.value = revenue;\n trackObject.currency = \"USD\";\n FireTikTokPixel(eventType, trackObject, { event_id: orderID });\n }, d);\n };\n inputDataObject.AddEventHandler(\"NewPageView\", function (eventObject) {\n var d = eventObject.eventData;\n FireTikTokIdentify();\n ttq.page({ event_id: d.taggingEventID });\n if (_dsgTag.pageType === PageTypes.ProductDetails || DataLayer.GetValue(\"IsQuickView\", d)) {\n FireTikTokViewContentView(eventObject);\n }\n else if (_dsgTag.pageType === PageTypes.OrderConfirmation) {\n FireTikTokCompletePayment(eventObject);\n }\n });\n inputDataObject.AddEventHandler(\"AddToCart\", FireTikTokAddToCart);\n }\n}\n;\n//# sourceMappingURL=TikTok.js.map","export function InitTrueFit(trueFitID) {\n (function () {\n var a = {};\n function g(l) {\n a[l] = function (r, e, o) {\n var w = window, d = document, p = [], t, s, x;\n w.tfcapi = t = w.tfcapi || function () {\n t.q = t.q || [];\n t.q.push(arguments);\n };\n o && o.forceMobile === true && p.push('deviceType=mobile');\n o && o.autoCalculate === false && p.push('autoCalculate=false');\n x = d.getElementsByTagName('script')[0];\n s = d.createElement('script');\n s.type = 'text/javascript';\n s.async = true;\n s.src = 'https://' + r + '-cdn' + (e === 'dev' || e === 'staging' ? '.' + e : '') + '.truefitcorp.com/fitrec/' + r + '/js/' + l + '.js?' + p.join('&');\n x.parentNode.insertBefore(s, x);\n };\n }\n g('fitrec');\n g('tracker');\n return a;\n })().tracker(trueFitID, _dsgTag.isProduction ? 'prod' : 'staging');\n}\n//# sourceMappingURL=truefit.js.map","import { Websites } from \"../consts/websites.const\";\nimport { PageTypes } from \"../consts/pageTypes.const\";\nimport { InitTimings } from \"../enums/enums.enum\";\nimport { _dsgTag } from \"../namespaces/_dsgTag.namespace\";\nimport { DataLayer } from \"../namespaces/dataLayer.namespace\";\nimport { TagCondition } from \"../classes/tagCondition.class\";\nimport { InitTrueFit } from \"../vendorScripts/truefit\";\nvar baseConditions = [{ t: \"site\", c: \"=\", v: [\"DSG\", \"GGXY\", \"PBL\"] }, { t: \"page\", c: \"=\", v: \"Order Confirmation\" }, { t: \"aos\", c: \"=\", v: \"false\" }, { t: \"iframe\", c: \"=\", v: \"false\" }];\nvar conditions = [];\nfor (var i = 0; i < baseConditions.length; i++) {\n conditions.push(new TagCondition(baseConditions[i].t, baseConditions[i].c, baseConditions[i].v));\n}\nexport var TrueFit = { name: \"TrueFit\", timing: InitTimings.Page3rdPartySignal, conditions: conditions, initFunction: init };\nfunction init(inputDataObject) {\n var trueFitID = \"\";\n switch (_dsgTag.currentWebsite) {\n case Websites.DicksSportingGoods:\n trueFitID = \"dsg\";\n break;\n case Websites.GolfGalaxy:\n trueFitID = \"ggx\";\n break;\n case Websites.PublicLands:\n trueFitID = \"pbl\";\n break;\n }\n if (trueFitID) {\n var FireTrueFitConversionPixel = function (eventObject) {\n var data = eventObject.eventData;\n DataLayer.PassValuesToFunction([\"OrderID\", \"ProductListArray\"], function (orderID, productList) {\n var items = [];\n if (productList) {\n var currentItem = {};\n for (var i = 0; i < productList.length; i++) {\n currentItem = {};\n currentItem.productId = productList[i].ProductID;\n currentItem.sku = productList[i].ProductSKU;\n currentItem.quantity = parseInt(productList[i].ProductQty);\n currentItem.price = parseFloat((productList[i].CurrentPricePerUnit - productList[i].DistributedOrderDiscountPerUnit).toFixed(2));\n currentItem.currency = 'USD';\n items.push(currentItem);\n }\n }\n var orderInfo = {};\n orderInfo.userId = _dsgTag.CustomerIDs.AthleteID;\n orderInfo.orderId = orderID;\n orderInfo.locale = 'en_US';\n orderInfo.products = items;\n tfcapi('track', 'checkout', orderInfo);\n }, data);\n };\n InitTrueFit();\n inputDataObject.AddEventHandler(\"NewPageView\", function (eventObject) {\n if (_dsgTag.pageType === PageTypes.OrderConfirmation) {\n FireTrueFitConversionPixel(eventObject);\n }\n });\n }\n}\n;\n//# sourceMappingURL=TrueFit.js.map","export function InitTwitter() {\n !function (e, t, n, s, u, a) {\n e.twq || (s = e.twq = function () {\n s.exe ? s.exe.apply(s, arguments) : s.queue.push(arguments);\n }, s.version = '1.1', s.queue = [], u = t.createElement(n), u.async = !0, u.src = 'https://static.ads-twitter.com/uwt.js',\n a = t.getElementsByTagName(n)[0], a.parentNode.insertBefore(u, a));\n }(window, document, 'script');\n}\n//# sourceMappingURL=twitter.js.map","import { Websites } from \"../consts/websites.const\";\nimport { PageTypes } from \"../consts/pageTypes.const\";\nimport { InitTimings } from \"../enums/enums.enum\";\nimport { _dsgTag } from \"../namespaces/_dsgTag.namespace\";\nimport { DataLayer } from \"../namespaces/dataLayer.namespace\";\nimport { TagCondition } from \"../classes/tagCondition.class\";\nimport { InitTwitter } from \"../vendorScripts/twitter\";\nvar baseConditions = [{ t: \"site\", c: \"=\", v: [\"DSG\", \"GGXY\"] }, { t: \"page\", c: \"*!=\", v: \"Protips\" }, { t: \"page\", c: \"^!=\", v: \"Chat\" }, { t: \"aos\", c: \"=\", v: \"false\" }, { t: \"iframe\", c: \"=\", v: \"false\" }, { t: \"dns\" }];\nvar conditions = [];\nfor (var i = 0; i < baseConditions.length; i++) {\n conditions.push(new TagCondition(baseConditions[i].t, baseConditions[i].c, baseConditions[i].v));\n}\nexport var Twitter = { name: \"Twitter\", timing: InitTimings.Page3rdPartySignal, conditions: conditions, initFunction: init };\nfunction init(inputDataObject) {\n var pixelIDs = [];\n switch (_dsgTag.currentWebsite) {\n case Websites.DicksSportingGoods:\n {\n pixelIDs.push({ \"account\": \"nv4gu\", \"pageView\": \"oc7co\", \"pdp\": \"oc7cp\", \"atc\": \"oc7cr\", \"order\": \"nv4gw\" });\n break;\n }\n case Websites.GolfGalaxy:\n {\n pixelIDs.push({ \"account\": \"o5rhl\", \"pageView\": \"oc7cx\", \"pdp\": \"oc7cy\", \"atc\": \"oc7cz\", \"order\": \"oeykv\" });\n break;\n }\n }\n if (pixelIDs.length > 0) {\n InitTwitter();\n var FirePixels = function (eventType, eventData) {\n var init = eventType == 'init';\n eventData = eventData || {};\n for (var i = 0; i < pixelIDs.length; i++) {\n twq(init ? 'config' : 'event', init ? pixelIDs[i]['account'] : \"tw-\" + pixelIDs[i]['account'] + \"-\" + pixelIDs[i][eventType], eventData);\n }\n };\n FirePixels('init');\n var FireTwitterPageView = function () {\n FirePixels('pageView');\n };\n var FireTwitterPDP = function (eventObject) {\n var d = eventObject.eventData;\n var data = {};\n var details = DataLayer.GetValue(\"ProductDetails\");\n if (details[0].ProductSKUDetails.length > 0) {\n data.contents = [{\n \"content_name\": DataLayer.GetValue(\"ProductName\", d),\n \"content_group_id\": DataLayer.GetValue(\"ProductID\", d),\n \"content_id\": details[0].ProductSKUDetails[0].ProductSKU,\n \"content_price\": parseFloat(details[0].ProductSKUDetails[0].SKUCurrentPrice),\n \"num_items\": 1\n }];\n FirePixels('pdp', data);\n }\n };\n var FireTwitterAddToCart = function (eventObject) {\n var d = eventObject.eventData;\n if (d && d.ProductsAddedToCart) {\n var data = {};\n var productInfo = d.ProductsAddedToCart[0];\n data.contents = [{\n \"content_name\": productInfo.ProductName,\n \"content_id\": productInfo.ProductSKU,\n \"num_items\": parseInt(productInfo.ProductQty),\n \"content_price\": parseFloat(productInfo.CurrentPricePerUnit),\n \"content_group_id\": productInfo.ProductID\n }];\n FirePixels('atc', data);\n }\n };\n var FireTwitterOrderConfirmation = function (eventObject) {\n var d = eventObject.eventData;\n DataLayer.PassValuesToFunction([\"OrderID\", \"ProductListArray\", \"OrderTotal\", \"OrderTax\", \"OrderShippingRevenue\"], function (order_id, productList, orderTotal, taxTotal, shippingTotal) {\n var revenue = \"0\";\n if (orderTotal && taxTotal && shippingTotal) {\n revenue = (orderTotal - taxTotal - shippingTotal).toFixed(2);\n }\n var contents = [];\n if (productList) {\n for (var i = 0; i < productList.length; i++) {\n contents.push({\n \"content_name\": productList[i].ProductName,\n \"content_id\": productList[i].ProductSKU,\n \"num_items\": parseInt(productList[i].ProductQty),\n \"content_price\": parseFloat((productList[i].CurrentPricePerUnit - productList[i].DistributedOrderDiscountPerUnit).toFixed(2)),\n \"content_group_id\": productList[i].ProductID\n });\n }\n }\n var data = { \"currency\": \"USD\" };\n if (revenue) {\n data.value = revenue;\n }\n if (order_id) {\n data.conversion_id = order_id;\n }\n if (contents.length > 0) {\n data.contents = contents;\n }\n FirePixels('order', data);\n }, d);\n };\n inputDataObject.AddEventHandler(\"NewPageView\", function (eventObject) {\n FireTwitterPageView();\n switch (_dsgTag.pageType) {\n case PageTypes.ProductDetails: {\n FireTwitterPDP(eventObject);\n break;\n }\n case PageTypes.OrderConfirmation: {\n FireTwitterOrderConfirmation(eventObject);\n break;\n }\n }\n });\n inputDataObject.AddEventHandler(\"AddToCart\", FireTwitterAddToCart);\n }\n}\n;\n//# sourceMappingURL=Twitter.js.map","import { FunctionRepository } from \"./namespaces/functionRepository.namespace\";\nimport { AdobeAnalytics } from './tags/analytics/AnalyticsInit';\nimport { AdobeExperienceManager } from \"./tags/AdobeExperienceManager\";\nimport { Attentive } from \"./tags/Attentive\";\nimport { BazaarVoice } from \"./tags/BazaarVoice\";\nimport { Bing } from \"./tags/Bing\";\nimport { BlueTriangle } from \"./tags/Blue Triangle\";\nimport { Branch } from \"./tags/Branch\";\nimport { Certona } from \"./tags/CertonaHostless\";\nimport { CommissionJunction } from \"./tags/CommissionJunction\";\nimport { CriteoRemarketing } from \"./tags/CriteoRemarketing\";\nimport { Epsilon } from \"./tags/Epsilon\";\nimport { Facebook } from \"./tags/Facebook\";\nimport { Google } from \"./tags/Google GTag\";\nimport { GoogleAds } from \"./tags/GoogleAds\";\nimport { LivePerson } from \"./tags/LivePerson\";\nimport { LiveRamp } from \"./tags/LiveRamp\";\nimport { Medallia } from \"./tags/Medallia\";\nimport { Metrical } from \"./tags/Metrical\";\nimport { Monetate } from \"./tags/Monetate\";\nimport { MovableInk } from \"./tags/MovableInk\";\nimport { NextDoor } from \"./tags/NextDoor\";\nimport { Pinterest } from \"./tags/Pinterest\";\nimport { PromoteIQ } from \"./tags/PromoteIQ\";\nimport { QuantumMetric } from \"./tags/QuantumMetric\";\nimport { Riskified } from \"./tags/Riskified\";\nimport { Rokt } from \"./tags/Rokt\";\nimport { Snapchat } from \"./tags/Snapchat\";\nimport { Stylitics } from \"./tags/Stylitics\";\nimport { TikTok } from \"./tags/TikTok\";\nimport { TrueFit } from \"./tags/TrueFit\";\nimport { Twitter } from \"./tags/Twitter\";\nimport { _dsgTag } from \"./namespaces/_dsgTag.namespace\";\nexport function LoadTags() {\n _dsgTag.TagRules = [];\n _dsgTag.TagRules.push(AdobeAnalytics);\n _dsgTag.TagRules.push(AdobeExperienceManager);\n _dsgTag.TagRules.push(Attentive);\n _dsgTag.TagRules.push(BazaarVoice);\n _dsgTag.TagRules.push(Bing);\n _dsgTag.TagRules.push(BlueTriangle);\n _dsgTag.TagRules.push(Branch);\n _dsgTag.TagRules.push(Certona);\n _dsgTag.TagRules.push(CommissionJunction);\n _dsgTag.TagRules.push(CriteoRemarketing);\n _dsgTag.TagRules.push(Epsilon);\n _dsgTag.TagRules.push(Facebook);\n _dsgTag.TagRules.push(Google);\n _dsgTag.TagRules.push(GoogleAds);\n _dsgTag.TagRules.push(LivePerson);\n _dsgTag.TagRules.push(LiveRamp);\n _dsgTag.TagRules.push(Medallia);\n _dsgTag.TagRules.push(Metrical);\n _dsgTag.TagRules.push(Monetate);\n _dsgTag.TagRules.push(MovableInk);\n _dsgTag.TagRules.push(NextDoor);\n _dsgTag.TagRules.push(Pinterest);\n _dsgTag.TagRules.push(PromoteIQ);\n _dsgTag.TagRules.push(QuantumMetric);\n _dsgTag.TagRules.push(Riskified);\n _dsgTag.TagRules.push(Rokt);\n _dsgTag.TagRules.push(Snapchat);\n _dsgTag.TagRules.push(Stylitics);\n _dsgTag.TagRules.push(TikTok);\n _dsgTag.TagRules.push(TrueFit);\n _dsgTag.TagRules.push(Twitter);\n _dsgTag.registeredTags = {};\n for (var i = 0; i < _dsgTag.TagRules.length; i++) {\n FunctionRepository.RegisterTag(_dsgTag.TagRules[i]);\n }\n}\n//# sourceMappingURL=LoadTags.js.map","export function InitAEP() {\n !function (n, o) {\n o.forEach(function (o) {\n n[o] || ((n.__alloyNS = n.__alloyNS ||\n []).push(o), n[o] = function () {\n var u = arguments;\n return new Promise(function (i, l) { n[o].q.push([i, l, u]); });\n }, n[o].q = []);\n });\n }(window, [\"alloy\"]);\n}\n//# sourceMappingURL=adobeexperiencemanager.js.map","import { LoadTags } from \"./LoadTags\";\nimport { EventInstance } from \"./classes/eventInstance.class\";\nimport { EventHandlers } from \"./namespaces/eventHandlers.namespace\";\nimport { _dsgTag } from \"./namespaces/_dsgTag.namespace\";\nimport { Websites } from \"./consts/websites.const\";\nimport { HelperFunctions } from \"./namespaces/helperFunctions.namespace\";\nimport { PageTypes } from \"./consts/pageTypes.const\";\nimport { LogLevels } from \"./enums/enums.enum\";\nimport { FunctionRepository } from \"./namespaces/functionRepository.namespace\";\nimport { CustomerIDService } from \"./namespaces/customerIDService.namespace\";\nimport { InitAEP } from \"./vendorScripts/adobeexperiencemanager\";\nimport { AEPDataStreamIDs } from \"./consts/aepDataStreams.const\";\nimport { DataLayer } from \"./namespaces/dataLayer.namespace\";\nconst initializeUtag = function (config) {\n window._dsgTag = _dsgTag;\n window.FunctionRepository = FunctionRepository;\n _dsgTag.config = config;\n _dsgTag.tagVersion = __VERSION__;\n HelperFunctions.DebugLog(\"Tagging Initializing - v.\" + _dsgTag.tagVersion);\n try {\n _dsgTag.taggingIsSynchronous = !document.querySelector(\"body\");\n if (!_dsgTag.taggingIsSynchronous && !config.wasPrerendered) {\n console.error(\" *************************************** ERROR *************************************** \");\n console.error(\" ********** utag.js is NOT being loaded synchronously in the element ********** \");\n console.error(\" This will cause serious issues with analytics, optimization flags, and other features \");\n console.error(\" *************************************** ERROR *************************************** \");\n }\n }\n catch (ex) { }\n _dsgTag.AdobeID = \"989E1CFE5329630F0A490D45@AdobeOrg\";\n _dsgTag.taggingInitTimestamp = Date.now();\n _dsgTag.FunctionRepository = FunctionRepository;\n DetermineWebsiteAndExperience();\n DetermineLane();\n InitializeAlloy();\n GetLaneJSON();\n GetVisitAndReferrerData();\n CheckForBlockedTags();\n EventHandlers.InitEventHandlers();\n CustomerIDService.initializeCustomerIDValues();\n LoadTags();\n};\nconst DetermineWebsiteAndExperience = function () {\n var host = window.location.hostname.toLowerCase();\n var path = window.location.pathname.toLowerCase();\n var website = {\n \"Name\": \"Unknown\",\n \"Abbreviation\": \"Unknown\",\n \"Domain\": \"Unknown\",\n \"RegEx\": /^$/,\n \"ProdRegEx\": /^$/,\n \"CustomTrackingServerDomain\": \"dickssportinggoods.com\"\n };\n var experience = \"Unknown\";\n var isProduction = false;\n var linkInternalFilters;\n let key;\n for (key in Websites) {\n if (Websites[key].RegEx.test(host)) {\n website = Websites[key];\n break;\n }\n }\n ;\n if ((HelperFunctions.GetPageTypeByURL(host) === PageTypes.MyAccountSignIn || HelperFunctions.GetPageTypeByURL(host) === PageTypes.MyAccountSignInAuth0) && document.referrer) {\n try {\n let key;\n for (key in Websites) {\n var referrerHost = document.referrer.split(\"/\")[2];\n if (Websites[key].RegEx.test(referrerHost)) {\n _dsgTag.websiteOverride = Websites[key];\n break;\n }\n }\n ;\n }\n catch (ex) { }\n }\n if (host.toLowerCase().indexOf(\"where2getit\") >= 0) {\n if (path.toLowerCase().indexOf(\"dickssportinggoods\") >= 0) {\n website = Websites.DicksSportingGoods;\n }\n else if (path.toLowerCase().indexOf(\"golfgalaxy\") >= 0) {\n website = Websites.GolfGalaxy;\n }\n }\n if (host.toLowerCase().indexOf(\"solepanel-\") >= 0) {\n if (host.toLowerCase().indexOf(\"-dks\") >= 0) {\n website = Websites.DicksSportingGoods;\n }\n else if (host.toLowerCase().indexOf(\"-gg\") >= 0) {\n website = Websites.GolfGalaxy;\n }\n else if (host.toLowerCase().indexOf(\"-pl\") >= 0) {\n website = Websites.PublicLands;\n }\n }\n var prodMatchResults = website.ProdRegEx.exec(host);\n if (prodMatchResults) {\n isProduction = true;\n linkInternalFilters = prodMatchResults[1];\n switch (host.split(\".\")[0]) {\n case \"www\":\n {\n experience = \"Desktop\";\n break;\n }\n case \"t\":\n {\n experience = \"Tablet\";\n break;\n }\n case \"mobile\":\n case \"m\":\n {\n experience = \"Mobile\";\n break;\n }\n case \"m2\":\n {\n experience = \"Mobile App\";\n break;\n }\n case \"maos\":\n case \"m4\":\n {\n experience = \"In Store Mobile\";\n break;\n }\n case \"kiosk\":\n case \"associatekioskweb\":\n case \"aos\":\n {\n experience = \"Kiosk\";\n break;\n }\n default:\n experience = \"Desktop\";\n }\n if (host.toLowerCase().indexOf(\"solepanel\") >= 0) {\n experience = \"CVCC\";\n }\n if (experience === \"Desktop\" && HelperFunctions.GetCookieValue(\"dih\")) {\n if (HelperFunctions.GetCookieValue(\"dih\").toLowerCase() === \"mobile\") {\n experience = \"Mobile\";\n }\n else if (HelperFunctions.GetCookieValue(\"dih\").toLowerCase() === \"tablet\") {\n experience = \"Mobile\";\n }\n }\n }\n else {\n if (host.indexOf(\"localhost\") >= 0 || host.indexOf(\"local.charles\") >= 0 || /^(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(host)) {\n website = Websites.DicksSportingGoods;\n }\n isProduction = false;\n var hostMatches = /.+\\.(.+\\..+)/.exec(host);\n if (hostMatches && hostMatches.length > 1) {\n linkInternalFilters = hostMatches[1];\n if (/(m|dsgr(-(dev0|qa|beta)\\d?)?)(-qa\\d)?\\.uat|m-(dks|gg|qa)|bbhosted|m1?\\./.test(host))\n experience = \"Mobile\";\n else if (/m2\\.uat|m2-(dks|gg|qa)/.test(host))\n experience = \"Mobile App\";\n else if (/m4\\.uat|m4-(dks|gg|qa)/.test(host))\n experience = \"In Store Mobile\";\n else if (/theta|tt\\d|t\\.uat|t-(dks|gg|qa)/.test(host))\n experience = \"Tablet\";\n else if (/maos/.test(host))\n experience = \"In Store Mobile\";\n else if (/aos/.test(host))\n experience = \"Kiosk\";\n else if (/associatekioskwebdev/.test(host))\n experience = \"Kiosk\";\n else if (/solepanel/.test(host))\n experience = \"CVCC\";\n else\n experience = \"Desktop\";\n }\n else {\n linkInternalFilters = host;\n experience = \"Desktop\";\n }\n }\n if (experience === \"Desktop\" && (document.cookie.indexOf(\"DSG_ADID\") >= 0 || window.location.search.toLowerCase().indexOf(\"ad_id=kiosk\") >= 0)) {\n experience = \"Kiosk\";\n }\n var isLaunch = window.location.host && window.location.host.split(\".\")[0].toLowerCase() === \"launch\";\n var isAOS = (experience === \"Kiosk\" || experience === \"In Store Mobile\" || experience === \"CVCC\");\n var isIFrame = (function () { try {\n return window.self !== window.top;\n }\n catch (e) {\n return true;\n } })();\n _dsgTag.currentWebsite = website;\n _dsgTag.experience = experience;\n _dsgTag.isProduction = isProduction;\n _dsgTag.linkInternalFilters = linkInternalFilters;\n _dsgTag.isLaunch = isLaunch;\n _dsgTag.isAOS = isAOS;\n _dsgTag.isIFrame = isIFrame;\n};\nconst DetermineLane = function () {\n HelperFunctions.DeleteCookie(\"TagLane\");\n var customerLane = -1;\n var customerLanes = [];\n var akamaiSwimlaneCookie = \"\";\n if (_dsgTag.currentWebsite === Websites.DicksSportingGoods) {\n akamaiSwimlaneCookie = HelperFunctions.GetCookieValue(\"swimlane_as_exp_dsg\");\n }\n else if (_dsgTag.currentWebsite === Websites.GolfGalaxy) {\n akamaiSwimlaneCookie = HelperFunctions.GetCookieValue(\"swimlane_as_exp_gg\");\n }\n else if (_dsgTag.currentWebsite === Websites.PublicLands) {\n akamaiSwimlaneCookie = HelperFunctions.GetCookieValue(\"swimlane_as_exp_publiclands\");\n }\n else if (_dsgTag.currentWebsite === Websites.GoingGoingGone) {\n akamaiSwimlaneCookie = HelperFunctions.GetCookieValue(\"swimlane_as_exp_goinggoing\");\n }\n else if (_dsgTag.currentWebsite === Websites.Moosejaw) {\n akamaiSwimlaneCookie = HelperFunctions.GetCookieValue(\"swimlane_as_exp_moosejaw\");\n }\n var oldCookies = [\"akaas_AS_Exp_Desktop\", \"akaas_AS_Exp_Desktop_1\", \"akaas_AS_Exp_Mobile\", \"akaas_AS_Exp_Mobile_1\"];\n if (akamaiSwimlaneCookie) {\n var value = parseInt(akamaiSwimlaneCookie);\n if (value) {\n _dsgTag.customerLane = value;\n for (var i = 0; i < oldCookies.length; i++) {\n HelperFunctions.DeleteCookie(oldCookies[i]);\n }\n }\n }\n try {\n var CONST_numberOfAdditionalLanes = 7;\n var additionalLanes = [];\n if (HelperFunctions.GetCookieValue(\"AdditionalLanes\")) {\n additionalLanes = HelperFunctions.GetCookieValue(\"AdditionalLanes\").split(\",\");\n for (var i = 0; i < additionalLanes.length; i++) {\n additionalLanes[i] = parseInt(additionalLanes[i]) || -1;\n }\n }\n while (additionalLanes.length < CONST_numberOfAdditionalLanes) {\n additionalLanes.push(-1);\n }\n _dsgTag.customerLanes = [_dsgTag.customerLane].concat(additionalLanes);\n }\n catch (ex) { }\n try {\n if (HelperFunctions.GetValue(\"SavedLanes\")) {\n var savedLanes = JSON.parse(HelperFunctions.GetValue(\"SavedLanes\"));\n for (var i = 0; i < savedLanes.length; i++) {\n if (_dsgTag.customerLanes[i] && _dsgTag.customerLanes[i] != savedLanes[i]) {\n HelperFunctions.SaveValue(\"LaneChanged\", true);\n break;\n }\n }\n }\n HelperFunctions.SaveValue(\"SavedLanes\", JSON.stringify(_dsgTag.customerLanes));\n HelperFunctions.DeleteValue(\"SavedAkamaiLane\");\n }\n catch (ex) {\n if (_dsgTag.customerLanes) {\n HelperFunctions.SaveValue(\"SavedLanes\", JSON.stringify(_dsgTag.customerLanes));\n }\n }\n try {\n if (parseInt(HelperFunctions.GetQueryStringValue(\"TagForceLane\"))) {\n HelperFunctions.SaveValue(\"TagForceLane\", HelperFunctions.GetQueryStringValue(\"TagForceLane\"));\n }\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Error reading lane query string: \" + ex.message, LogLevels.Error);\n }\n var laneOverride = HelperFunctions.GetValue(\"TagForceLane\");\n if (laneOverride) {\n _dsgTag.customerLane = parseInt(laneOverride);\n for (var i = 0; i < _dsgTag.customerLanes.length; i++) {\n _dsgTag.customerLanes[i] = parseInt(laneOverride);\n }\n }\n};\nconst InitializeAlloy = function () {\n InitAEP();\n var currentEnvironment = _dsgTag.isProduction ? ((HelperFunctions.GetValue(\"cdpStage\")) ? \"stage\" : \"prod\") : \"dev\";\n var currentWebsite = _dsgTag.currentWebsite;\n var ID = function (IDType, site) { return site ? AEPDataStreamIDs[IDType][site][currentEnvironment] : AEPDataStreamIDs[IDType][currentEnvironment]; };\n var ExecutePreTrackCallbacks = function (content) {\n SetGlobalValues(content);\n if (content.data && content.data.__adobe && content.data.__adobe.analytics) {\n s.preTrackCallbackList.push(function () { s.logContentsOfSObject(content.data.__adobe.analytics); });\n }\n s.processPreTrackCallbacks();\n };\n var GetIdentityData = function (asMap) {\n var data = {};\n if (_dsgTag.CustomerIDs.AdobeMCVID) {\n data[\"ECID\"] = asMap ? [{ \"id\": _dsgTag.CustomerIDs.AdobeMCVID, \"authenticatedState\": DataLayer.GetValue(\"SignedInBoolean\") ? \"authenticated\" : \"loggedOut\", \"primary\": !_dsgTag.CustomerIDs.AthleteID }] : _dsgTag.CustomerIDs.AdobeMCVID;\n }\n if (_dsgTag.CustomerIDs.AthleteID) {\n data[\"athleteId\"] = asMap ? [{ \"id\": _dsgTag.CustomerIDs.AthleteID, \"authenticatedState\": DataLayer.GetValue(\"SignedInBoolean\") ? \"authenticated\" : \"loggedOut\", \"primary\": true }] : _dsgTag.CustomerIDs.AthleteID;\n }\n if (_dsgTag.CustomerIDs.HashedEmail) {\n data[\"emailHash\"] = asMap ? [{ \"id\": _dsgTag.CustomerIDs.HashedEmail, \"authenticatedState\": DataLayer.GetValue(\"SignedInBoolean\") ? \"authenticated\" : \"loggedOut\", \"primary\": false }] : _dsgTag.CustomerIDs.HashedEmail;\n }\n return data;\n };\n var SetGlobalValues = function (content) {\n var identityData = GetIdentityData(false);\n if (typeof identityData[\"ECID\"] === \"undefined\") {\n return false;\n }\n content.xdm._dsg = content.xdm._dsg || {};\n content.xdm._dsg.identity = identityData;\n };\n var configuation = {\n \"datastreamId\": ID(\"analyticsDataStreamID\", currentWebsite.Abbreviation),\n \"orgId\": _dsgTag.AdobeID,\n \"debugEnabled\": !_dsgTag.isProduction,\n \"onBeforeEventSend\": ExecutePreTrackCallbacks,\n \"edgeDomain\": \"aem.\" + (typeof currentWebsite.CustomTrackingServerDomain !== \"undefined\" ? currentWebsite.CustomTrackingServerDomain : currentWebsite.Domain),\n \"clickCollectionEnabled\": false\n };\n alloy(\"configure\", configuation);\n HelperFunctions.LoadScriptAsyncAndCallFunction(\"https://tag.\" + _dsgTag.currentWebsite.Domain + \"/scripts/alloy.2.24.0.min.js\", \"WebSDK\");\n};\nconst GetLaneJSON = function () {\n if (_dsgTag.currentWebsite.DontGetLaneJSON !== undefined && !_dsgTag.currentWebsite.DontGetLaneJSON) {\n try {\n var savedLaneObject = JSON.parse(HelperFunctions.GetValue(\"LaneJSON\"));\n var savedLaneDataRules = savedLaneObject.data;\n if (!_dsgTag.savedLaneData || ((savedLaneObject.lastPulled + (1000 * 60 * 5)) < Date.now())) {\n _dsgTag.savedLaneData = _dsgTag.savedLaneData || {};\n if (_dsgTag.taggingIsSynchronous) {\n savedLaneObject.lastPulled = Date.now();\n document.write(\"\");\n _dsgTag.laneJSONPending = setTimeout(function () {\n if (savedLaneDataRules) {\n HelperFunctions.ProcessLanesAndFlags(savedLaneDataRules);\n }\n else {\n HelperFunctions.ProcessLanesAndFlags([]);\n }\n }, 5000);\n }\n else if (savedLaneDataRules) {\n HelperFunctions.ProcessLanesAndFlags(savedLaneDataRules);\n }\n }\n else {\n HelperFunctions.ProcessLanesAndFlags(savedLaneDataRules);\n }\n }\n catch (ex) {\n HelperFunctions.DebugLog(\"Error setting up Lane JSON: \" + ex.message, LogLevels.Error);\n }\n }\n};\nconst GetVisitAndReferrerData = function () {\n try {\n var visitor = {\n visitCount: 1,\n pageCount: 1,\n orderHistory: [],\n lastTouch: Date.now(),\n timeOnPreviousPage: -1\n };\n var visitorData = HelperFunctions.GetValue(\"Visitor\");\n if (visitorData) {\n visitor = JSON.parse(visitorData);\n visitor.pageCount ? visitor.pageCount++ : (visitor.pageCount = 1);\n visitor.timeOnPreviousPage = parseInt(((Date.now() - visitor.lastTouch) / 1000).toString());\n }\n if (Date.now() - visitor.lastTouch >= _dsgTag.consts.NewVisitTimeDifference) {\n visitor.visitCount++;\n visitor.pageCount = 1;\n visitor.timeOnPreviousPage = -1;\n }\n visitor.lastTouch = Date.now();\n var minimumOrderDate = Date.now() - _dsgTag.consts.OrderHistoryRollingWindow;\n for (var i = 0; i < visitor.orderHistory.length; i++) {\n if (visitor.orderHistory[i].date < minimumOrderDate) {\n visitor.orderHistory.splice(i, 1);\n i--;\n }\n }\n _dsgTag.VisitCount = visitor.visitCount;\n _dsgTag.PageCount = visitor.pageCount;\n _dsgTag.OrderHistory = visitor.orderHistory;\n _dsgTag.visitor = visitor;\n HelperFunctions.SaveValue(\"Visitor\", JSON.stringify(visitor), false);\n }\n catch (ex) {\n HelperFunctions.SaveValue(\"Visitor\", JSON.stringify({}), false);\n HelperFunctions.DebugLog(\"Error loading visitor data: \" + ex.message, LogLevels.Error);\n }\n try {\n var previousValue = HelperFunctions.GetValue(\"Referrer\");\n _dsgTag.previousLocation = {};\n if (previousValue) {\n try {\n _dsgTag.previousLocation = JSON.parse(previousValue);\n }\n catch (ex) {\n _dsgTag.previousLocation = JSON.parse(JSON.stringify(window.location));\n _dsgTag.previousLocation.href = previousValue;\n }\n }\n _dsgTag.referrer = \"\";\n if (document.referrer && document.referrer.indexOf(_dsgTag.currentWebsite.Domain) > 0) {\n _dsgTag.referrer = _dsgTag.previousLocation.href;\n }\n else if (document.referrer) {\n _dsgTag.referrer = document.referrer;\n }\n HelperFunctions.SaveValue(\"Referrer\", JSON.stringify(window.location));\n document.addEventListener(\"at-request-succeeded\", function (e) {\n try {\n var data = e.detail;\n if (data.redirect) {\n HelperFunctions.SaveValue(\"TargetRedirect\", _dsgTag.referrer);\n }\n }\n catch (ex) { }\n });\n if (HelperFunctions.GetValue(\"TargetRedirect\")) {\n _dsgTag.previousLocation.targetRedirectReferrer = HelperFunctions.GetValue(\"TargetRedirect\");\n HelperFunctions.DeleteValue(\"TargetRedirect\");\n }\n }\n catch (ex) { }\n};\nconst CheckForBlockedTags = function () {\n _dsgTag.blockedTags = [];\n _dsgTag.DoNotSell = (HelperFunctions.GetCookieValue(\"ccpa\") ? HelperFunctions.GetCookieValue(\"ccpa\").toString().toLowerCase() == \"true\" : false);\n if (HelperFunctions.GetCookieValue(\"BlockedTags\")) {\n _dsgTag.blockedTags = _dsgTag.blockedTags.concat(HelperFunctions.GetCookieValue(\"BlockedTags\").split(\",\"));\n }\n};\nexport const main = function () {\n if (!window) {\n console.log(\"Not initializing tagging; window does not exist\");\n return;\n }\n const eventNames = [\"DocumentReady\", \"WindowLoaded\", \"Load3rdPartyTags\", \"FirstInteractionOccurred\", \"NewPageView\", \"AddOnsShown\", \"AddToCart\", \"AddToFavorites\", \"AdobeTargetRequestSucceeded\", \"AdSpotsReady\", \"AJAXStoreSearch\", \"AthleteConnectionType\", \"AttributeSelected\", \"CancelRequestSubmit\", \"CartAction\", \"CartAddToSaveForLater\", \"CartDataUpdated\", \"CartEditProduct\", \"CartFulfillmentChanged\", \"CartQuantityChanged\", \"CartRemoveProduct\", \"CartSanitizationAction\", \"ChangeMyStoreEvent\", \"ChangePreferredStore\", \"Chat\", \"ChatClicked\", \"CheckoutAction\", \"CheckoutStockReady\", \"CheckStoreAvailabilitySearch\", \"ContentTabView\", \"CopyCode\", \"CreateAccountClick\", \"CreatePasswordClick\", \"CreatePasswordSuccess\", \"CuralateInitialized\", \"CurbsideCheckIn\", \"CustomerInfoReady\", \"EmailResetLinkClick\", \"EmailSignup\", \"ExternalCheckout\", \"FBTShown\", \"FilterClicked\", \"FinderResults\", \"FreeShipThreshold\", \"GetNextPointsHistoryPage\", \"HasCombinedAccounts\", \"ImageViewer\", \"LearnMoreClick\", \"low_stock_event\", \"ManageAccountClick\", \"ManageLoginEmailSave\", \"CustomerIDApiUsed\", \"ModalOpen\", \"NikeConnectComplete\", \"NoAddOnsShown\", \"NotifyMeStock\", \"OrderCancel\", \"PDPPayPalClicked\", \"PDPPeopleView\", \"PDPSignInRequest\", \"PostReview\", \"PromotionEntered\", \"PromotionRemoved\", \"readyToParty\", \"RegistrationOccured\", \"RemoveFromCart\", \"RemoveFromFavorites\", \"ResetPasswordSuccess\", \"ResultsViewUpdate\", \"ReturnItemSelected\", \"RewardDeliverySave\", \"SaveForLaterAddToCart\", \"SaveForLaterRemoveProduct\", \"Scene7Event\", \"ScoreCardApply\", \"ScoreCardEntered\", \"ScoreCardGoldLearnMoreExpand\", \"SearchEventAnalytics\", \"ShareProduct\", \"ShippingMethodUpdated\", \"ShowMoreColors\", \"ShowProductOptions\", \"SignInClick\", \"SignInCreateAccountClick\", \"SiteError\", \"SKUResolve\", \"StartSearch\", \"StickyATCImpression\", \"SubscriptionsSave\", \"SuccessfulSignIn\", \"tabbedComponentClicked\", \"TapAheadClick\", \"TimeSinceInit\", \"TopNavView\", \"TrackOrder\", \"UpdatePasswordClick\", \"UserAuthenticated\", \"ViewMore\", \"ViewReward\", \"WeeklyAdEvent\", \"WindowFlagsEvent\", \"reporting:update\", \"reporting:PagePostRender\"];\n const taggingConfig = {\n \"wasPrerendered\": false,\n \"taggingEvents\": eventNames,\n \"prerenderingEvents\": []\n };\n if (document.prerendering) {\n taggingConfig.wasPrerendered = true;\n var renderComplete = false;\n for (var i = 0; i < taggingConfig.taggingEvents.length; i++) {\n const captureEventData = function (eventObject) {\n try {\n if (!renderComplete) {\n var data = typeof eventObject !== \"undefined\" ? eventObject.detail : null;\n data = data || {};\n var type = eventObject.type == \"reporting:update\" ? data.EventType : (eventObject.type == \"reporting:PagePostRender\" ? \"NewPageView\" : eventObject.type);\n if (type) {\n const event = new EventInstance(type, this, data);\n taggingConfig.prerenderingEvents.push(event);\n }\n }\n }\n catch (ex) {\n console.error(\"Error occurred in PreRender Event Listener for \" + eventObject.type + \": \" + ex.message);\n }\n };\n document.addEventListener(taggingConfig.taggingEvents[i], captureEventData);\n }\n document.addEventListener(\"prerenderingchange\", function () { renderComplete = true; initializeUtag(taggingConfig); }, { once: true });\n }\n else {\n initializeUtag(taggingConfig);\n }\n};\nmain();\n//# sourceMappingURL=TaggingMain.js.map"],"names":[],"sourceRoot":""}