{"version":3,"sources":["webpack:///webpack/bootstrap dc61182f712cbd52fe9a","webpack:///external \"jQuery\"","webpack:///./scripts/components/featured/lib/pageHeroBanner.js","webpack:///./scripts/components/featured/lib/textImage.js","webpack:///D:/www/mollers/wp-content/themes/mollers/node_modules/fullpage.js/vendors/scrolloverflow.js","webpack:///./scripts/vendors/fullpage.parallax.min.js","webpack:///D:/www/mollers/wp-content/themes/mollers/node_modules/fullpage.js/vendors/easings.js","webpack:///./scripts/components/featured/omega/index.js","webpack:///./scripts/components/modal.js","webpack:///./scripts/components/featured/lib/helper.js","webpack:///D:/www/mollers/wp-content/themes/mollers/node_modules/jquery-watch/jquery-watch.js","webpack:///D:/www/mollers/wp-content/themes/mollers/node_modules/fullpage.js/dist/fullpage.extensions.min.js"],"names":["const","let"],"mappings":"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CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE;QAChH,uDAAM,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;OACnE,MAAM;QACL,UAAU,CAAC,YAAM;UACf,uDAAM,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;SACnE,EAAE,IAAI,CAAC,CAAC;OACV;;KAEF;GACF;CACF;;;;;;;;;ACpBD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB,wCAAwC;;AAEjE;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,eAAe,OAAO;AACtB;AACA;AACA;;AAEA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;;AAEA,kDAAkD,6BAA6B;;AAE/E;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;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,SAAS;AACT;AACA;AACA,KAAK;;AAEL,2BAA2B;AAC3B;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,+BAA+B;AAC/B;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;;AAEL,0BAA0B;AAC1B;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA,iBAAiB;AACjB;AACA,iBAAiB;AACjB;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;;AAEA,gCAAgC,UAAU;AAC1C,+BAA+B,UAAU;;AAEzC;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,CAAC;AACD;AACA;AACA;AACA,6CAA6C;;AAE7C;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,kCAAkC,oDAAoD;;AAEtF;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA,KAAK;;AAEL;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,KAAK;;AAEL;AACA;AACA;AACA;;AAEA,4CAA4C;AAC5C;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,2CAA2C;AAC3C,aAAa;AACb,2CAA2C;AAC3C,aAAa;AACb,2CAA2C;AAC3C;AACA;;AAEA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;;AAEA;AACA,SAAS;AACT;AACA;AACA,aAAa;AACb;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA,KAAK;;AAEL;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,kCAAkC;;AAElC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,6LAA6L;AAC7L,4LAA4L;AAC5L;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,KAAK;;AAEL;AACA;;AAEA;;AAEA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;AACA;AACA;;AAEA;;AAEA;AACA;AACA,SAAS;AACT;AACA;;AAEA;AACA;AACA,SAAS;AACT;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA,KAAK;;AAEL;AACA;AACA,KAAK;;AAEL;AACA;AACA,KAAK;;AAEL;AACA,2CAA2C;;AAE3C;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA,KAAK;;AAEL;AACA;AACA;AACA;;AAEA;AACA,KAAK;;AAEL;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA,eAAe,OAAO;AACtB;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;;AAEA;AACA,KAAK;;AAEL;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,KAAK;;AAEL;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;;;AAGA;AACA,iDAAiD,KAAK;AACtD;AACA;AACA;;;AAGA;;AAEA,KAAK;;AAEL;AACA;;;AAGA;AACA,iDAAiD,KAAK;AACtD;AACA;AACA;;;AAGA;;AAEA,KAAK;;AAEL;AACA;;AAEA;;AAEA;;AAEA;;AAEA,SAAS;AACT;AACA;AACA;AACA;AACA;;AAEA;AACA;;;AAGA;AACA,6CAA6C,KAAK;AAClD;AACA;AACA;;;AAGA;;AAEA,KAAK;;AAEL;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA,gBAAgB;AAChB,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA,wCAAwC,KAAK;AAC7C;AACA;;AAEA;AACA;AACA;AACA,qDAAqD,KAAK;AAC1D;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,iBAAiB;AACjB,aAAa;;AAEb;AACA;AACA;AACA,iBAAiB;AACjB,aAAa;;AAEb;AACA;AACA;AACA,iBAAiB;AACjB,aAAa;;AAEb;AACA;AACA;AACA,iBAAiB;AACjB,aAAa;AACb;;;AAGA;AACA;AACA;AACA,aAAa;AACb,SAAS;;AAET;AACA;AACA;AACA,aAAa;;AAEb;AACA,SAAS;AACT,KAAK;;AAEL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;;AAET;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA,SAAS;AACT;AACA,SAAS;AACT;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,aAAa;AACb;AACA;;AAEA;AACA;AACA,aAAa;AACb;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,SAAS;AACT;AACA;;AAEA;AACA;AACA,SAAS;AACT;AACA;;AAEA;;AAEA;AACA,KAAK;;AAEL;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;;AAEA,uBAAuB,OAAO;AAC9B;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,SAAS;;AAET;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;AACA;AACA,oBAAoB;AACpB;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,SAAS;AACT;AACA;;AAEA;AACA;AACA,SAAS;AACT;AACA;;AAEA,eAAe,OAAO;AACtB;AACA;AACA;AACA;AACA;;AAEA;;AAEA,eAAe,OAAO;AACtB;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,aAAa;AACb;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,aAAa;AACb;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA;;AAEA;AACA;AACA,SAAS;AACT;AACA;;AAEA;AACA;AACA,SAAS;AACT;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,KAAK;;AAEL;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,KAAK;;AAEL;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,SAAS;AACT,KAAK;;AAEL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;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;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;;AAEA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,qDAAqD;AACrD,iEAAiE,2BAA2B,sBAAsB,kBAAkB,2BAA2B,uCAAuC;AACtM;;AAEA;;AAEA;AACA;AACA,yCAAyC,WAAW,SAAS,UAAU;AACvE;AACA;AACA;AACA,KAAK;AACL;AACA,yCAAyC,UAAU,WAAW,QAAQ;AACtE;AACA;AACA;AACA;;AAEA,iCAAiC;;AAEjC;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;;AAEL;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,KAAK;;AAEL;AACA;AACA,KAAK;;AAEL;AACA;;AAEA;AACA;AACA,SAAS;AACT;AACA,SAAS;AACT;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA,SAAS;AACT;AACA;;AAEA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;;AAEA,0CAA0C;;AAE1C;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;;AAEA;;AAEA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;;AAEA;;AAEA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,KAAK;;AAEL;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA,aAAa;AACb;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA,SAAS;AACT;AACA;;AAEA;AACA;AACA,SAAS;AACT;AACA;;AAEA;AACA;;AAEA;AACA,KAAK;;AAEL;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA,SAAS;AACT;AACA;;AAEA;;AAEA;AACA;AACA,CAAC,WAAW,IAAyC;AACrD,IAAI,mCAAQ,aAAa,gBAAgB,EAAE;AAAA,oGAAE;;AAE7C;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA;;AAEA,CAAC;;;AAGD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;;AAEjB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,sBAAsB,OAAO;AAC7B;AACA;AACA;AACA;;AAEA;AACA,uCAAuC,qBAAqB;;AAE5D;AACA;AACA,qEAAqE;AACrE;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,uCAAuC,eAAe;AACtD;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,yBAAyB;AACzB,qBAAqB;AACrB;AACA;AACA,iBAAiB;AACjB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;;AAEb;AACA;AACA;;AAEA;;AAEA;AACA,8DAA8D;;AAE9D;AACA;;AAEA;AACA,aAAa;;AAEb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB,aAAa;;AAEb;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;;AAEb;AACA;AACA;AACA,aAAa;;AAEb;AACA;AACA;AACA,aAAa;;AAEb;AACA;AACA;AACA,wBAAwB,OAAO;AAC/B,wBAAwB,OAAO;AAC/B;AACA;AACA;;AAEA;AACA,wCAAwC,8BAA8B;;AAEtE;AACA;AACA;AACA;AACA,yBAAyB;AACzB;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,iBAAiB;AACjB,aAAa;;AAEb;AACA;AACA;AACA;AACA,wBAAwB,OAAO;AAC/B,wBAAwB,OAAO;AAC/B,wBAAwB;AACxB;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA,aAAa;;AAEb;AACA;AACA;AACA;AACA;AACA,wBAAwB,OAAO;AAC/B,wBAAwB;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;;AAEb;AACA;AACA;AACA;AACA;AACA,wBAAwB,OAAO;AAC/B,wBAAwB;AACxB;AACA;AACA;AACA,aAAa;;AAEb;AACA;AACA;AACA,wBAAwB,OAAO;AAC/B;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,aAAa;;AAEb;AACA;AACA;AACA;AACA,wBAAwB,OAAO;AAC/B,wBAAwB,OAAO;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,qBAAqB;AACrB,iBAAiB;;AAEjB;AACA,6DAA6D,8BAA8B;;AAE3F;AACA,4EAA4E,8BAA8B;AAC1G;AACA,aAAa;;AAEb;AACA;AACA;AACA;AACA,wBAAwB,cAAc;AACtC;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL,CAAC,oB;;;;;;;ACphFD;;;;;;;AAOA,MAAM,CAAC,oBAAoB,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC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AC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CA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A;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA,sBAAsB,QAAQ;AAC9B,2BAA2B,4BAA4B;AACvD,8BAA8B,KAAK,WAAW;AAC9C;AACA;AACA,KAAK;AACL;AACA,sBAAsB,QAAQ;AAC9B,2BAA2B,4BAA4B;AACvD,8BAA8B,KAAK,WAAW;AAC9C;AACA;AACA,KAAK;AACL;AACA,sBAAsB,QAAQ;AAC9B,2BAA2B,8BAA8B;AACzD,8BAA8B,KAAK,WAAW;AAC9C;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,SAAS;AACT;AACA,SAAS;AACT;AACA,SAAS;AACT;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;ACxKA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,mBAAO,CAAC,EAAoC,CAAC,CAAC;AAC9C,mBAAO,CAAC,EAA2C,CAAC,CAAC;AACrD,IAAI,QAAQ,GAAG,mBAAO,CAAC,CAA0C,CAAC,CAAC;AACnE,mBAAO,CAAC,EAA6B,CAAC,CAAC;;;AAGgB;AACV;AACN;AACD;;AAEtCC,GAAG,CAAC,SAAS,C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","file":"scripts/omega.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/wp-content/themes/mollers//dist/\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 177);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap dc61182f712cbd52fe9a","module.exports = jQuery;\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"jQuery\"\n// module id = 0\n// module chunks = 0 1 2 3 4","import { helper } from \"./helper\";\r\n\r\nexport const pageHeroBanner = {\r\n init(origin, destination, direction, type) {\r\n\r\n if (type == 'onLeave') {\r\n\r\n if (direction == 'down') {\r\n // Background image\r\n ($(origin.item).hasClass('js-backdrop') && $(origin.item).next('.section').hasClass('js-page-hero-banner')) && helper.setBackdropBg(origin.item);\r\n\r\n // Background video\r\n setTimeout(() => {\r\n pageHeroBanner.setVideoBg(origin, destination);\r\n }, 1000);\r\n }\r\n\r\n if (direction == 'up') {\r\n // Background image\r\n ($(destination.item).hasClass('js-page-hero-banner') && $(destination.item).prev('.section').hasClass('js-backdrop')) && helper.setBackdropBg($(destination.item).prev('.section'));\r\n\r\n // Background video\r\n pageHeroBanner.setVideoBg(origin, destination);\r\n }\r\n }\r\n\r\n if (type == 'afterLoad') {\r\n\r\n if (origin.isFirst) {\r\n helper.setBackdropBg($(origin.item));\r\n\r\n if ($(origin.item).hasClass('js-page-hero-banner') && $(origin.item).hasClass('js-has-video')) {\r\n helper.videoController('play', $('.js-fp-backdrop .js-page-hero-banner'));\r\n } else {\r\n helper.videoController('stop', $('.js-fp-backdrop .js-page-hero-banner'));\r\n }\r\n }\r\n\r\n if ($('.section.active').next().hasClass('js-backdrop')) {\r\n helper.setBackdropBg($(destination.item).next('.section'));\r\n }\r\n\r\n }\r\n },\r\n setVideoBg(origin, destination) {\r\n if ($(destination.item).hasClass('js-page-hero-banner') && $(destination.item).hasClass('js-has-video')) {\r\n helper.videoController('play', $('.js-fp-backdrop .js-page-hero-banner'));\r\n } else {\r\n helper.videoController('stop', $('.js-fp-backdrop .js-page-hero-banner'));\r\n }\r\n }\r\n}\r\n\n\n\n// WEBPACK FOOTER //\n// ./scripts/components/featured/lib/pageHeroBanner.js","import { helper } from \"./helper\";\r\n\r\nexport const textImage = {\r\n init(destination) {\r\n textImage.setVideoBg(destination);\r\n },\r\n setVideoBg(destination) {\r\n\r\n if ($(destination.item).hasClass('js-text-image')) {\r\n\r\n if ($(destination.item).hasClass($(destination.item).data('id')) && $(destination.item).hasClass('js-has-video')) {\r\n helper.videoController('play', $(destination.item).find('video'));\r\n } else {\r\n setTimeout(() => {\r\n helper.videoController('stop', $(destination.item).find('video'));\r\n }, 1000);\r\n }\r\n\r\n }\r\n }\r\n}\r\n\n\n\n// WEBPACK FOOTER //\n// ./scripts/components/featured/lib/textImage.js","/**\n* Customized version of iScroll.js 0.1.3\n* It fixes bugs affecting its integration with fullpage.js\n* @license\n*/\n/*! iScroll v5.2.0 ~ (c) 2008-2016 Matteo Spinelli ~ http://cubiq.org/license */\n(function (window, document, Math) {\nvar rAF = window.requestAnimationFrame ||\n window.webkitRequestAnimationFrame ||\n window.mozRequestAnimationFrame ||\n window.oRequestAnimationFrame ||\n window.msRequestAnimationFrame ||\n function (callback) { window.setTimeout(callback, 1000 / 60); };\n\nvar utils = (function () {\n var me = {};\n\n var _elementStyle = document.createElement('div').style;\n var _vendor = (function () {\n var vendors = ['t', 'webkitT', 'MozT', 'msT', 'OT'],\n transform,\n i = 0,\n l = vendors.length;\n\n for ( ; i < l; i++ ) {\n transform = vendors[i] + 'ransform';\n if ( transform in _elementStyle ) return vendors[i].substr(0, vendors[i].length-1);\n }\n\n return false;\n })();\n\n function _prefixStyle (style) {\n if ( _vendor === false ) return false;\n if ( _vendor === '' ) return style;\n return _vendor + style.charAt(0).toUpperCase() + style.substr(1);\n }\n\n me.getTime = Date.now || function getTime () { return new Date().getTime(); };\n\n me.extend = function (target, obj) {\n for ( var i in obj ) {\n target[i] = obj[i];\n }\n };\n\n me.addEvent = function (el, type, fn, capture) {\n el.addEventListener(type, fn, !!capture);\n };\n\n me.removeEvent = function (el, type, fn, capture) {\n el.removeEventListener(type, fn, !!capture);\n };\n\n me.prefixPointerEvent = function (pointerEvent) {\n return window.MSPointerEvent ?\n 'MSPointer' + pointerEvent.charAt(7).toUpperCase() + pointerEvent.substr(8):\n pointerEvent;\n };\n\n me.momentum = function (current, start, time, lowerMargin, wrapperSize, deceleration) {\n var distance = current - start,\n speed = Math.abs(distance) / time,\n destination,\n duration;\n\n deceleration = deceleration === undefined ? 0.0006 : deceleration;\n\n destination = current + ( speed * speed ) / ( 2 * deceleration ) * ( distance < 0 ? -1 : 1 );\n duration = speed / deceleration;\n\n if ( destination < lowerMargin ) {\n destination = wrapperSize ? lowerMargin - ( wrapperSize / 2.5 * ( speed / 8 ) ) : lowerMargin;\n distance = Math.abs(destination - current);\n duration = distance / speed;\n } else if ( destination > 0 ) {\n destination = wrapperSize ? wrapperSize / 2.5 * ( speed / 8 ) : 0;\n distance = Math.abs(current) + destination;\n duration = distance / speed;\n }\n\n return {\n destination: Math.round(destination),\n duration: duration\n };\n };\n\n var _transform = _prefixStyle('transform');\n\n me.extend(me, {\n hasTransform: _transform !== false,\n hasPerspective: _prefixStyle('perspective') in _elementStyle,\n hasTouch: 'ontouchstart' in window,\n hasPointer: !!(window.PointerEvent || window.MSPointerEvent), // IE10 is prefixed\n hasTransition: _prefixStyle('transition') in _elementStyle\n });\n\n /*\n This should find all Android browsers lower than build 535.19 (both stock browser and webview)\n - galaxy S2 is ok\n - 2.3.6 : `AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1`\n - 4.0.4 : `AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30`\n - galaxy S3 is badAndroid (stock brower, webview)\n `AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30`\n - galaxy S4 is badAndroid (stock brower, webview)\n `AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30`\n - galaxy S5 is OK\n `AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Mobile Safari/537.36 (Chrome/)`\n - galaxy S6 is OK\n `AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Mobile Safari/537.36 (Chrome/)`\n */\n me.isBadAndroid = (function() {\n var appVersion = window.navigator.appVersion;\n // Android browser is not a chrome browser.\n if (/Android/.test(appVersion) && !(/Chrome\\/\\d/.test(appVersion))) {\n var safariVersion = appVersion.match(/Safari\\/(\\d+.\\d)/);\n if(safariVersion && typeof safariVersion === \"object\" && safariVersion.length >= 2) {\n return parseFloat(safariVersion[1]) < 535.19;\n } else {\n return true;\n }\n } else {\n return false;\n }\n })();\n\n me.extend(me.style = {}, {\n transform: _transform,\n transitionTimingFunction: _prefixStyle('transitionTimingFunction'),\n transitionDuration: _prefixStyle('transitionDuration'),\n transitionDelay: _prefixStyle('transitionDelay'),\n transformOrigin: _prefixStyle('transformOrigin')\n });\n\n me.hasClass = function (e, c) {\n var re = new RegExp(\"(^|\\\\s)\" + c + \"(\\\\s|$)\");\n return re.test(e.className);\n };\n\n me.addClass = function (e, c) {\n if ( me.hasClass(e, c) ) {\n return;\n }\n\n var newclass = e.className.split(' ');\n newclass.push(c);\n e.className = newclass.join(' ');\n };\n\n me.removeClass = function (e, c) {\n if ( !me.hasClass(e, c) ) {\n return;\n }\n\n var re = new RegExp(\"(^|\\\\s)\" + c + \"(\\\\s|$)\", 'g');\n e.className = e.className.replace(re, ' ');\n };\n\n me.offset = function (el) {\n var left = -el.offsetLeft,\n top = -el.offsetTop;\n\n // jshint -W084\n while (el = el.offsetParent) {\n left -= el.offsetLeft;\n top -= el.offsetTop;\n }\n // jshint +W084\n\n return {\n left: left,\n top: top\n };\n };\n\n me.preventDefaultException = function (el, exceptions) {\n for ( var i in exceptions ) {\n if ( exceptions[i].test(el[i]) ) {\n return true;\n }\n }\n\n return false;\n };\n\n me.extend(me.eventType = {}, {\n touchstart: 1,\n touchmove: 1,\n touchend: 1,\n\n mousedown: 2,\n mousemove: 2,\n mouseup: 2,\n\n pointerdown: 3,\n pointermove: 3,\n pointerup: 3,\n\n MSPointerDown: 3,\n MSPointerMove: 3,\n MSPointerUp: 3\n });\n\n me.extend(me.ease = {}, {\n quadratic: {\n style: 'cubic-bezier(0.25, 0.46, 0.45, 0.94)',\n fn: function (k) {\n return k * ( 2 - k );\n }\n },\n circular: {\n style: 'cubic-bezier(0.1, 0.57, 0.1, 1)', // Not properly \"circular\" but this looks better, it should be (0.075, 0.82, 0.165, 1)\n fn: function (k) {\n return Math.sqrt( 1 - ( --k * k ) );\n }\n },\n back: {\n style: 'cubic-bezier(0.175, 0.885, 0.32, 1.275)',\n fn: function (k) {\n var b = 4;\n return ( k = k - 1 ) * k * ( ( b + 1 ) * k + b ) + 1;\n }\n },\n bounce: {\n style: '',\n fn: function (k) {\n if ( ( k /= 1 ) < ( 1 / 2.75 ) ) {\n return 7.5625 * k * k;\n } else if ( k < ( 2 / 2.75 ) ) {\n return 7.5625 * ( k -= ( 1.5 / 2.75 ) ) * k + 0.75;\n } else if ( k < ( 2.5 / 2.75 ) ) {\n return 7.5625 * ( k -= ( 2.25 / 2.75 ) ) * k + 0.9375;\n } else {\n return 7.5625 * ( k -= ( 2.625 / 2.75 ) ) * k + 0.984375;\n }\n }\n },\n elastic: {\n style: '',\n fn: function (k) {\n var f = 0.22,\n e = 0.4;\n\n if ( k === 0 ) { return 0; }\n if ( k == 1 ) { return 1; }\n\n return ( e * Math.pow( 2, - 10 * k ) * Math.sin( ( k - f / 4 ) * ( 2 * Math.PI ) / f ) + 1 );\n }\n }\n });\n\n me.tap = function (e, eventName) {\n var ev = document.createEvent('Event');\n ev.initEvent(eventName, true, true);\n ev.pageX = e.pageX;\n ev.pageY = e.pageY;\n e.target.dispatchEvent(ev);\n };\n\n me.click = function (e) {\n var target = e.target,\n ev;\n\n if ( !(/(SELECT|INPUT|TEXTAREA)/i).test(target.tagName) ) {\n // https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/initMouseEvent\n // initMouseEvent is deprecated.\n ev = document.createEvent(window.MouseEvent ? 'MouseEvents' : 'Event');\n ev.initEvent('click', true, true);\n ev.view = e.view || window;\n ev.detail = 1;\n ev.screenX = target.screenX || 0;\n ev.screenY = target.screenY || 0;\n ev.clientX = target.clientX || 0;\n ev.clientY = target.clientY || 0;\n ev.ctrlKey = !!e.ctrlKey;\n ev.altKey = !!e.altKey;\n ev.shiftKey = !!e.shiftKey;\n ev.metaKey = !!e.metaKey;\n ev.button = 0;\n ev.relatedTarget = null;\n ev._constructed = true;\n target.dispatchEvent(ev);\n }\n };\n\n return me;\n})();\nfunction IScroll (el, options) {\n this.wrapper = typeof el == 'string' ? document.querySelector(el) : el;\n this.scroller = this.wrapper.children[0];\n this.scrollerStyle = this.scroller.style; // cache style for better performance\n\n this.options = {\n\n resizeScrollbars: true,\n\n mouseWheelSpeed: 20,\n\n snapThreshold: 0.334,\n\n// INSERT POINT: OPTIONS\n disablePointer : !utils.hasPointer,\n disableTouch : utils.hasPointer || !utils.hasTouch,\n disableMouse : utils.hasPointer || utils.hasTouch,\n startX: 0,\n startY: 0,\n scrollY: true,\n directionLockThreshold: 5,\n momentum: true,\n\n bounce: true,\n bounceTime: 600,\n bounceEasing: '',\n\n preventDefault: true,\n preventDefaultException: { tagName: /^(INPUT|TEXTAREA|BUTTON|SELECT|LABEL)$/ },\n\n HWCompositing: true,\n useTransition: true,\n useTransform: true,\n bindToWrapper: typeof window.onmousedown === \"undefined\"\n };\n\n for ( var i in options ) {\n this.options[i] = options[i];\n }\n\n // Normalize options\n this.translateZ = this.options.HWCompositing && utils.hasPerspective ? ' translateZ(0)' : '';\n\n this.options.useTransition = utils.hasTransition && this.options.useTransition;\n this.options.useTransform = utils.hasTransform && this.options.useTransform;\n\n this.options.eventPassthrough = this.options.eventPassthrough === true ? 'vertical' : this.options.eventPassthrough;\n this.options.preventDefault = !this.options.eventPassthrough && this.options.preventDefault;\n\n // If you want eventPassthrough I have to lock one of the axes\n this.options.scrollY = this.options.eventPassthrough == 'vertical' ? false : this.options.scrollY;\n this.options.scrollX = this.options.eventPassthrough == 'horizontal' ? false : this.options.scrollX;\n\n // With eventPassthrough we also need lockDirection mechanism\n this.options.freeScroll = this.options.freeScroll && !this.options.eventPassthrough;\n this.options.directionLockThreshold = this.options.eventPassthrough ? 0 : this.options.directionLockThreshold;\n\n this.options.bounceEasing = typeof this.options.bounceEasing == 'string' ? utils.ease[this.options.bounceEasing] || utils.ease.circular : this.options.bounceEasing;\n\n this.options.resizePolling = this.options.resizePolling === undefined ? 60 : this.options.resizePolling;\n\n if ( this.options.tap === true ) {\n this.options.tap = 'tap';\n }\n\n // https://github.com/cubiq/iscroll/issues/1029\n if (!this.options.useTransition && !this.options.useTransform) {\n if(!(/relative|absolute/i).test(this.scrollerStyle.position)) {\n this.scrollerStyle.position = \"relative\";\n }\n }\n\n if ( this.options.shrinkScrollbars == 'scale' ) {\n this.options.useTransition = false;\n }\n\n this.options.invertWheelDirection = this.options.invertWheelDirection ? -1 : 1;\n\n// INSERT POINT: NORMALIZATION\n\n // Some defaults\n this.x = 0;\n this.y = 0;\n this.directionX = 0;\n this.directionY = 0;\n this._events = {};\n\n// INSERT POINT: DEFAULTS\n\n this._init();\n this.refresh();\n\n this.scrollTo(this.options.startX, this.options.startY);\n this.enable();\n}\n\nIScroll.prototype = {\n version: '5.2.0',\n\n _init: function () {\n this._initEvents();\n\n if ( this.options.scrollbars || this.options.indicators ) {\n this._initIndicators();\n }\n\n if ( this.options.mouseWheel ) {\n this._initWheel();\n }\n\n if ( this.options.snap ) {\n this._initSnap();\n }\n\n if ( this.options.keyBindings ) {\n this._initKeys();\n }\n\n// INSERT POINT: _init\n\n },\n\n destroy: function () {\n this._initEvents(true);\n clearTimeout(this.resizeTimeout);\n this.resizeTimeout = null;\n this._execEvent('destroy');\n },\n\n _transitionEnd: function (e) {\n if ( e.target != this.scroller || !this.isInTransition ) {\n return;\n }\n\n this._transitionTime();\n if ( !this.resetPosition(this.options.bounceTime) ) {\n this.isInTransition = false;\n this._execEvent('scrollEnd');\n }\n },\n\n _start: function (e) {\n // React to left mouse button only\n if ( utils.eventType[e.type] != 1 ) {\n // for button property\n // http://unixpapa.com/js/mouse.html\n var button;\n if (!e.which) {\n /* IE case */\n button = (e.button < 2) ? 0 :\n ((e.button == 4) ? 1 : 2);\n } else {\n /* All others */\n button = e.button;\n }\n if ( button !== 0 ) {\n return;\n }\n }\n\n if ( !this.enabled || (this.initiated && utils.eventType[e.type] !== this.initiated) ) {\n return;\n }\n\n if ( this.options.preventDefault && !utils.isBadAndroid && !utils.preventDefaultException(e.target, this.options.preventDefaultException) ) {\n e.preventDefault();\n }\n\n var point = e.touches ? e.touches[0] : e,\n pos;\n\n this.initiated = utils.eventType[e.type];\n this.moved = false;\n this.distX = 0;\n this.distY = 0;\n this.directionX = 0;\n this.directionY = 0;\n this.directionLocked = 0;\n\n this.startTime = utils.getTime();\n\n if ( this.options.useTransition && this.isInTransition ) {\n this._transitionTime();\n this.isInTransition = false;\n pos = this.getComputedPosition();\n this._translate(Math.round(pos.x), Math.round(pos.y));\n this._execEvent('scrollEnd');\n } else if ( !this.options.useTransition && this.isAnimating ) {\n this.isAnimating = false;\n this._execEvent('scrollEnd');\n }\n\n this.startX = this.x;\n this.startY = this.y;\n this.absStartX = this.x;\n this.absStartY = this.y;\n this.pointX = point.pageX;\n this.pointY = point.pageY;\n\n this._execEvent('beforeScrollStart');\n },\n\n _move: function (e) {\n if ( !this.enabled || utils.eventType[e.type] !== this.initiated ) {\n return;\n }\n\n if ( this.options.preventDefault ) { // increases performance on Android? TODO: check!\n e.preventDefault();\n }\n\n var point = e.touches ? e.touches[0] : e,\n deltaX = point.pageX - this.pointX,\n deltaY = point.pageY - this.pointY,\n timestamp = utils.getTime(),\n newX, newY,\n absDistX, absDistY;\n\n this.pointX = point.pageX;\n this.pointY = point.pageY;\n\n this.distX += deltaX;\n this.distY += deltaY;\n absDistX = Math.abs(this.distX);\n absDistY = Math.abs(this.distY);\n\n // We need to move at least 10 pixels for the scrolling to initiate\n if ( timestamp - this.endTime > 300 && (absDistX < 10 && absDistY < 10) ) {\n return;\n }\n\n // If you are scrolling in one direction lock the other\n if ( !this.directionLocked && !this.options.freeScroll ) {\n if ( absDistX > absDistY + this.options.directionLockThreshold ) {\n this.directionLocked = 'h'; // lock horizontally\n } else if ( absDistY >= absDistX + this.options.directionLockThreshold ) {\n this.directionLocked = 'v'; // lock vertically\n } else {\n this.directionLocked = 'n'; // no lock\n }\n }\n\n if ( this.directionLocked == 'h' ) {\n if ( this.options.eventPassthrough == 'vertical' ) {\n e.preventDefault();\n } else if ( this.options.eventPassthrough == 'horizontal' ) {\n this.initiated = false;\n return;\n }\n\n deltaY = 0;\n } else if ( this.directionLocked == 'v' ) {\n if ( this.options.eventPassthrough == 'horizontal' ) {\n e.preventDefault();\n } else if ( this.options.eventPassthrough == 'vertical' ) {\n this.initiated = false;\n return;\n }\n\n deltaX = 0;\n }\n\n deltaX = this.hasHorizontalScroll ? deltaX : 0;\n deltaY = this.hasVerticalScroll ? deltaY : 0;\n\n newX = this.x + deltaX;\n newY = this.y + deltaY;\n\n // Slow down if outside of the boundaries\n if ( newX > 0 || newX < this.maxScrollX ) {\n newX = this.options.bounce ? this.x + deltaX / 3 : newX > 0 ? 0 : this.maxScrollX;\n }\n if ( newY > 0 || newY < this.maxScrollY ) {\n newY = this.options.bounce ? this.y + deltaY / 3 : newY > 0 ? 0 : this.maxScrollY;\n }\n\n this.directionX = deltaX > 0 ? -1 : deltaX < 0 ? 1 : 0;\n this.directionY = deltaY > 0 ? -1 : deltaY < 0 ? 1 : 0;\n\n if ( !this.moved ) {\n this._execEvent('scrollStart');\n }\n\n this.moved = true;\n\n this._translate(newX, newY);\n\n/* REPLACE START: _move */\n\n if ( timestamp - this.startTime > 300 ) {\n this.startTime = timestamp;\n this.startX = this.x;\n this.startY = this.y;\n }\n\n/* REPLACE END: _move */\n\n },\n\n _end: function (e) {\n if ( !this.enabled || utils.eventType[e.type] !== this.initiated ) {\n return;\n }\n\n if ( this.options.preventDefault && !utils.preventDefaultException(e.target, this.options.preventDefaultException) ) {\n e.preventDefault();\n }\n\n var point = e.changedTouches ? e.changedTouches[0] : e,\n momentumX,\n momentumY,\n duration = utils.getTime() - this.startTime,\n newX = Math.round(this.x),\n newY = Math.round(this.y),\n distanceX = Math.abs(newX - this.startX),\n distanceY = Math.abs(newY - this.startY),\n time = 0,\n easing = '';\n\n this.isInTransition = 0;\n this.initiated = 0;\n this.endTime = utils.getTime();\n\n // reset if we are outside of the boundaries\n if ( this.resetPosition(this.options.bounceTime) ) {\n return;\n }\n\n this.scrollTo(newX, newY); // ensures that the last position is rounded\n\n // we scrolled less than 10 pixels\n if ( !this.moved ) {\n if ( this.options.tap ) {\n utils.tap(e, this.options.tap);\n }\n\n if ( this.options.click ) {\n utils.click(e);\n }\n\n this._execEvent('scrollCancel');\n return;\n }\n\n if ( this._events.flick && duration < 200 && distanceX < 100 && distanceY < 100 ) {\n this._execEvent('flick');\n return;\n }\n\n // start momentum animation if needed\n if ( this.options.momentum && duration < 300 ) {\n momentumX = this.hasHorizontalScroll ? utils.momentum(this.x, this.startX, duration, this.maxScrollX, this.options.bounce ? this.wrapperWidth : 0, this.options.deceleration) : { destination: newX, duration: 0 };\n momentumY = this.hasVerticalScroll ? utils.momentum(this.y, this.startY, duration, this.maxScrollY, this.options.bounce ? this.wrapperHeight : 0, this.options.deceleration) : { destination: newY, duration: 0 };\n newX = momentumX.destination;\n newY = momentumY.destination;\n time = Math.max(momentumX.duration, momentumY.duration);\n this.isInTransition = 1;\n }\n\n\n if ( this.options.snap ) {\n var snap = this._nearestSnap(newX, newY);\n this.currentPage = snap;\n time = this.options.snapSpeed || Math.max(\n Math.max(\n Math.min(Math.abs(newX - snap.x), 1000),\n Math.min(Math.abs(newY - snap.y), 1000)\n ), 300);\n newX = snap.x;\n newY = snap.y;\n\n this.directionX = 0;\n this.directionY = 0;\n easing = this.options.bounceEasing;\n }\n\n// INSERT POINT: _end\n\n if ( newX != this.x || newY != this.y ) {\n // change easing function when scroller goes out of the boundaries\n if ( newX > 0 || newX < this.maxScrollX || newY > 0 || newY < this.maxScrollY ) {\n easing = utils.ease.quadratic;\n }\n\n this.scrollTo(newX, newY, time, easing);\n return;\n }\n\n this._execEvent('scrollEnd');\n },\n\n _resize: function () {\n var that = this;\n\n clearTimeout(this.resizeTimeout);\n\n this.resizeTimeout = setTimeout(function () {\n that.refresh();\n }, this.options.resizePolling);\n },\n\n resetPosition: function (time) {\n var x = this.x,\n y = this.y;\n\n time = time || 0;\n\n if ( !this.hasHorizontalScroll || this.x > 0 ) {\n x = 0;\n } else if ( this.x < this.maxScrollX ) {\n x = this.maxScrollX;\n }\n\n if ( !this.hasVerticalScroll || this.y > 0 ) {\n y = 0;\n } else if ( this.y < this.maxScrollY ) {\n y = this.maxScrollY;\n }\n\n if ( x == this.x && y == this.y ) {\n return false;\n }\n\n this.scrollTo(x, y, time, this.options.bounceEasing);\n\n return true;\n },\n\n disable: function () {\n this.enabled = false;\n },\n\n enable: function () {\n this.enabled = true;\n },\n\n refresh: function () {\n var rf = this.wrapper.offsetHeight; // Force reflow\n\n this.wrapperWidth = this.wrapper.clientWidth;\n this.wrapperHeight = this.wrapper.clientHeight;\n\n/* REPLACE START: refresh */\n\n this.scrollerWidth = this.scroller.offsetWidth;\n this.scrollerHeight = this.scroller.offsetHeight;\n\n this.maxScrollX = this.wrapperWidth - this.scrollerWidth;\n this.maxScrollY = this.wrapperHeight - this.scrollerHeight;\n\n/* REPLACE END: refresh */\n\n this.hasHorizontalScroll = this.options.scrollX && this.maxScrollX < 0;\n this.hasVerticalScroll = this.options.scrollY && this.maxScrollY < 0;\n\n if ( !this.hasHorizontalScroll ) {\n this.maxScrollX = 0;\n this.scrollerWidth = this.wrapperWidth;\n }\n\n if ( !this.hasVerticalScroll ) {\n this.maxScrollY = 0;\n this.scrollerHeight = this.wrapperHeight;\n }\n\n this.endTime = 0;\n this.directionX = 0;\n this.directionY = 0;\n\n this.wrapperOffset = utils.offset(this.wrapper);\n\n this._execEvent('refresh');\n\n this.resetPosition();\n\n// INSERT POINT: _refresh\n\n },\n\n on: function (type, fn) {\n if ( !this._events[type] ) {\n this._events[type] = [];\n }\n\n this._events[type].push(fn);\n },\n\n off: function (type, fn) {\n if ( !this._events[type] ) {\n return;\n }\n\n var index = this._events[type].indexOf(fn);\n\n if ( index > -1 ) {\n this._events[type].splice(index, 1);\n }\n },\n\n _execEvent: function (type) {\n if ( !this._events[type] ) {\n return;\n }\n\n var i = 0,\n l = this._events[type].length;\n\n if ( !l ) {\n return;\n }\n\n for ( ; i < l; i++ ) {\n this._events[type][i].apply(this, [].slice.call(arguments, 1));\n }\n },\n\n scrollBy: function (x, y, time, easing) {\n x = this.x + x;\n y = this.y + y;\n time = time || 0;\n\n this.scrollTo(x, y, time, easing);\n },\n\n scrollTo: function (x, y, time, easing) {\n easing = easing || utils.ease.circular;\n\n this.isInTransition = this.options.useTransition && time > 0;\n var transitionType = this.options.useTransition && easing.style;\n if ( !time || transitionType ) {\n if(transitionType) {\n this._transitionTimingFunction(easing.style);\n this._transitionTime(time);\n }\n this._translate(x, y);\n } else {\n this._animate(x, y, time, easing.fn);\n }\n },\n\n scrollToElement: function (el, time, offsetX, offsetY, easing) {\n el = el.nodeType ? el : this.scroller.querySelector(el);\n\n if ( !el ) {\n return;\n }\n\n var pos = utils.offset(el);\n\n pos.left -= this.wrapperOffset.left;\n pos.top -= this.wrapperOffset.top;\n\n // if offsetX/Y are true we center the element to the screen\n if ( offsetX === true ) {\n offsetX = Math.round(el.offsetWidth / 2 - this.wrapper.offsetWidth / 2);\n }\n if ( offsetY === true ) {\n offsetY = Math.round(el.offsetHeight / 2 - this.wrapper.offsetHeight / 2);\n }\n\n pos.left -= offsetX || 0;\n pos.top -= offsetY || 0;\n\n pos.left = pos.left > 0 ? 0 : pos.left < this.maxScrollX ? this.maxScrollX : pos.left;\n pos.top = pos.top > 0 ? 0 : pos.top < this.maxScrollY ? this.maxScrollY : pos.top;\n\n time = time === undefined || time === null || time === 'auto' ? Math.max(Math.abs(this.x-pos.left), Math.abs(this.y-pos.top)) : time;\n\n this.scrollTo(pos.left, pos.top, time, easing);\n },\n\n _transitionTime: function (time) {\n if (!this.options.useTransition) {\n return;\n }\n time = time || 0;\n var durationProp = utils.style.transitionDuration;\n if(!durationProp) {\n return;\n }\n\n this.scrollerStyle[durationProp] = time + 'ms';\n\n if ( !time && utils.isBadAndroid ) {\n this.scrollerStyle[durationProp] = '0.0001ms';\n // remove 0.0001ms\n var self = this;\n rAF(function() {\n if(self.scrollerStyle[durationProp] === '0.0001ms') {\n self.scrollerStyle[durationProp] = '0s';\n }\n });\n }\n\n\n if ( this.indicators ) {\n for ( var i = this.indicators.length; i--; ) {\n this.indicators[i].transitionTime(time);\n }\n }\n\n\n// INSERT POINT: _transitionTime\n\n },\n\n _transitionTimingFunction: function (easing) {\n this.scrollerStyle[utils.style.transitionTimingFunction] = easing;\n\n\n if ( this.indicators ) {\n for ( var i = this.indicators.length; i--; ) {\n this.indicators[i].transitionTimingFunction(easing);\n }\n }\n\n\n// INSERT POINT: _transitionTimingFunction\n\n },\n\n _translate: function (x, y) {\n if ( this.options.useTransform ) {\n\n/* REPLACE START: _translate */\n\n this.scrollerStyle[utils.style.transform] = 'translate(' + x + 'px,' + y + 'px)' + this.translateZ;\n\n/* REPLACE END: _translate */\n\n } else {\n x = Math.round(x);\n y = Math.round(y);\n this.scrollerStyle.left = x + 'px';\n this.scrollerStyle.top = y + 'px';\n }\n\n this.x = x;\n this.y = y;\n\n\n if ( this.indicators ) {\n for ( var i = this.indicators.length; i--; ) {\n this.indicators[i].updatePosition();\n }\n }\n\n\n// INSERT POINT: _translate\n\n },\n\n _initEvents: function (remove) {\n var eventType = remove ? utils.removeEvent : utils.addEvent,\n target = this.options.bindToWrapper ? this.wrapper : window;\n\n eventType(window, 'orientationchange', this);\n eventType(window, 'resize', this);\n\n if ( this.options.click ) {\n eventType(this.wrapper, 'click', this, true);\n }\n\n if ( !this.options.disableMouse ) {\n eventType(this.wrapper, 'mousedown', this);\n eventType(target, 'mousemove', this);\n eventType(target, 'mousecancel', this);\n eventType(target, 'mouseup', this);\n }\n\n if ( utils.hasPointer && !this.options.disablePointer ) {\n eventType(this.wrapper, utils.prefixPointerEvent('pointerdown'), this);\n eventType(target, utils.prefixPointerEvent('pointermove'), this);\n eventType(target, utils.prefixPointerEvent('pointercancel'), this);\n eventType(target, utils.prefixPointerEvent('pointerup'), this);\n }\n\n if ( utils.hasTouch && !this.options.disableTouch ) {\n eventType(this.wrapper, 'touchstart', this);\n eventType(target, 'touchmove', this);\n eventType(target, 'touchcancel', this);\n eventType(target, 'touchend', this);\n }\n\n eventType(this.scroller, 'transitionend', this);\n eventType(this.scroller, 'webkitTransitionEnd', this);\n eventType(this.scroller, 'oTransitionEnd', this);\n eventType(this.scroller, 'MSTransitionEnd', this);\n },\n\n getComputedPosition: function () {\n var matrix = window.getComputedStyle(this.scroller, null),\n x, y;\n\n if ( this.options.useTransform ) {\n matrix = matrix[utils.style.transform].split(')')[0].split(', ');\n x = +(matrix[12] || matrix[4]);\n y = +(matrix[13] || matrix[5]);\n } else {\n x = +matrix.left.replace(/[^-\\d.]/g, '');\n y = +matrix.top.replace(/[^-\\d.]/g, '');\n }\n\n return { x: x, y: y };\n },\n _initIndicators: function () {\n var interactive = this.options.interactiveScrollbars,\n customStyle = typeof this.options.scrollbars != 'string',\n indicators = [],\n indicator;\n\n var that = this;\n\n this.indicators = [];\n\n if ( this.options.scrollbars ) {\n // Vertical scrollbar\n if ( this.options.scrollY ) {\n indicator = {\n el: createDefaultScrollbar('v', interactive, this.options.scrollbars),\n interactive: interactive,\n defaultScrollbars: true,\n customStyle: customStyle,\n resize: this.options.resizeScrollbars,\n shrink: this.options.shrinkScrollbars,\n fade: this.options.fadeScrollbars,\n listenX: false\n };\n\n this.wrapper.appendChild(indicator.el);\n indicators.push(indicator);\n }\n\n // Horizontal scrollbar\n if ( this.options.scrollX ) {\n indicator = {\n el: createDefaultScrollbar('h', interactive, this.options.scrollbars),\n interactive: interactive,\n defaultScrollbars: true,\n customStyle: customStyle,\n resize: this.options.resizeScrollbars,\n shrink: this.options.shrinkScrollbars,\n fade: this.options.fadeScrollbars,\n listenY: false\n };\n\n this.wrapper.appendChild(indicator.el);\n indicators.push(indicator);\n }\n }\n\n if ( this.options.indicators ) {\n // TODO: check concat compatibility\n indicators = indicators.concat(this.options.indicators);\n }\n\n for ( var i = indicators.length; i--; ) {\n this.indicators.push( new Indicator(this, indicators[i]) );\n }\n\n // TODO: check if we can use array.map (wide compatibility and performance issues)\n function _indicatorsMap (fn) {\n if (that.indicators) {\n for ( var i = that.indicators.length; i--; ) {\n fn.call(that.indicators[i]);\n }\n }\n }\n\n if ( this.options.fadeScrollbars ) {\n this.on('scrollEnd', function () {\n _indicatorsMap(function () {\n this.fade();\n });\n });\n\n this.on('scrollCancel', function () {\n _indicatorsMap(function () {\n this.fade();\n });\n });\n\n this.on('scrollStart', function () {\n _indicatorsMap(function () {\n this.fade(1);\n });\n });\n\n this.on('beforeScrollStart', function () {\n _indicatorsMap(function () {\n this.fade(1, true);\n });\n });\n }\n\n\n this.on('refresh', function () {\n _indicatorsMap(function () {\n this.refresh();\n });\n });\n\n this.on('destroy', function () {\n _indicatorsMap(function () {\n this.destroy();\n });\n\n delete this.indicators;\n });\n },\n\n _initWheel: function () {\n utils.addEvent(this.wrapper, 'wheel', this);\n utils.addEvent(this.wrapper, 'mousewheel', this);\n utils.addEvent(this.wrapper, 'DOMMouseScroll', this);\n\n this.on('destroy', function () {\n clearTimeout(this.wheelTimeout);\n this.wheelTimeout = null;\n utils.removeEvent(this.wrapper, 'wheel', this);\n utils.removeEvent(this.wrapper, 'mousewheel', this);\n utils.removeEvent(this.wrapper, 'DOMMouseScroll', this);\n });\n },\n\n _wheel: function (e) {\n if ( !this.enabled ) {\n return;\n }\n\n // in IE we can not preventDefault() or otherwise it won't scroll to the prev/next section.\n // I commented on it here back then: https://github.com/cubiq/iscroll/issues/980\n // isIE taken from: https://stackoverflow.com/a/49986758/1081396\n var isIE = window.navigator.userAgent.match(/(MSIE|Trident)/);\n if(!isIE){\n e.preventDefault();\n }\n\n var wheelDeltaX, wheelDeltaY,\n newX, newY,\n that = this;\n\n if ( this.wheelTimeout === undefined ) {\n that._execEvent('scrollStart');\n }\n\n // Execute the scrollEnd event after 400ms the wheel stopped scrolling\n clearTimeout(this.wheelTimeout);\n this.wheelTimeout = setTimeout(function () {\n if(!that.options.snap) {\n that._execEvent('scrollEnd');\n }\n that.wheelTimeout = undefined;\n }, 400);\n\n if ( 'deltaX' in e ) {\n if (e.deltaMode === 1) {\n wheelDeltaX = -e.deltaX * this.options.mouseWheelSpeed;\n wheelDeltaY = -e.deltaY * this.options.mouseWheelSpeed;\n } else {\n wheelDeltaX = -e.deltaX;\n wheelDeltaY = -e.deltaY;\n }\n } else if ( 'wheelDeltaX' in e ) {\n wheelDeltaX = e.wheelDeltaX / 120 * this.options.mouseWheelSpeed;\n wheelDeltaY = e.wheelDeltaY / 120 * this.options.mouseWheelSpeed;\n } else if ( 'wheelDelta' in e ) {\n wheelDeltaX = wheelDeltaY = e.wheelDelta / 120 * this.options.mouseWheelSpeed;\n } else if ( 'detail' in e ) {\n wheelDeltaX = wheelDeltaY = -e.detail / 3 * this.options.mouseWheelSpeed;\n } else {\n return;\n }\n\n wheelDeltaX *= this.options.invertWheelDirection;\n wheelDeltaY *= this.options.invertWheelDirection;\n\n if ( !this.hasVerticalScroll ) {\n wheelDeltaX = wheelDeltaY;\n wheelDeltaY = 0;\n }\n\n if ( this.options.snap ) {\n newX = this.currentPage.pageX;\n newY = this.currentPage.pageY;\n\n if ( wheelDeltaX > 0 ) {\n newX--;\n } else if ( wheelDeltaX < 0 ) {\n newX++;\n }\n\n if ( wheelDeltaY > 0 ) {\n newY--;\n } else if ( wheelDeltaY < 0 ) {\n newY++;\n }\n\n this.goToPage(newX, newY);\n\n return;\n }\n\n newX = this.x + Math.round(this.hasHorizontalScroll ? wheelDeltaX : 0);\n newY = this.y + Math.round(this.hasVerticalScroll ? wheelDeltaY : 0);\n\n this.directionX = wheelDeltaX > 0 ? -1 : wheelDeltaX < 0 ? 1 : 0;\n this.directionY = wheelDeltaY > 0 ? -1 : wheelDeltaY < 0 ? 1 : 0;\n\n if ( newX > 0 ) {\n newX = 0;\n } else if ( newX < this.maxScrollX ) {\n newX = this.maxScrollX;\n }\n\n if ( newY > 0 ) {\n newY = 0;\n } else if ( newY < this.maxScrollY ) {\n newY = this.maxScrollY;\n }\n\n this.scrollTo(newX, newY, 0);\n\n// INSERT POINT: _wheel\n },\n\n _initSnap: function () {\n this.currentPage = {};\n\n if ( typeof this.options.snap == 'string' ) {\n this.options.snap = this.scroller.querySelectorAll(this.options.snap);\n }\n\n this.on('refresh', function () {\n var i = 0, l,\n m = 0, n,\n cx, cy,\n x = 0, y,\n stepX = this.options.snapStepX || this.wrapperWidth,\n stepY = this.options.snapStepY || this.wrapperHeight,\n el;\n\n this.pages = [];\n\n if ( !this.wrapperWidth || !this.wrapperHeight || !this.scrollerWidth || !this.scrollerHeight ) {\n return;\n }\n\n if ( this.options.snap === true ) {\n cx = Math.round( stepX / 2 );\n cy = Math.round( stepY / 2 );\n\n while ( x > -this.scrollerWidth ) {\n this.pages[i] = [];\n l = 0;\n y = 0;\n\n while ( y > -this.scrollerHeight ) {\n this.pages[i][l] = {\n x: Math.max(x, this.maxScrollX),\n y: Math.max(y, this.maxScrollY),\n width: stepX,\n height: stepY,\n cx: x - cx,\n cy: y - cy\n };\n\n y -= stepY;\n l++;\n }\n\n x -= stepX;\n i++;\n }\n } else {\n el = this.options.snap;\n l = el.length;\n n = -1;\n\n for ( ; i < l; i++ ) {\n if ( i === 0 || el[i].offsetLeft <= el[i-1].offsetLeft ) {\n m = 0;\n n++;\n }\n\n if ( !this.pages[m] ) {\n this.pages[m] = [];\n }\n\n x = Math.max(-el[i].offsetLeft, this.maxScrollX);\n y = Math.max(-el[i].offsetTop, this.maxScrollY);\n cx = x - Math.round(el[i].offsetWidth / 2);\n cy = y - Math.round(el[i].offsetHeight / 2);\n\n this.pages[m][n] = {\n x: x,\n y: y,\n width: el[i].offsetWidth,\n height: el[i].offsetHeight,\n cx: cx,\n cy: cy\n };\n\n if ( x > this.maxScrollX ) {\n m++;\n }\n }\n }\n\n this.goToPage(this.currentPage.pageX || 0, this.currentPage.pageY || 0, 0);\n\n // Update snap threshold if needed\n if ( this.options.snapThreshold % 1 === 0 ) {\n this.snapThresholdX = this.options.snapThreshold;\n this.snapThresholdY = this.options.snapThreshold;\n } else {\n this.snapThresholdX = Math.round(this.pages[this.currentPage.pageX][this.currentPage.pageY].width * this.options.snapThreshold);\n this.snapThresholdY = Math.round(this.pages[this.currentPage.pageX][this.currentPage.pageY].height * this.options.snapThreshold);\n }\n });\n\n this.on('flick', function () {\n var time = this.options.snapSpeed || Math.max(\n Math.max(\n Math.min(Math.abs(this.x - this.startX), 1000),\n Math.min(Math.abs(this.y - this.startY), 1000)\n ), 300);\n\n this.goToPage(\n this.currentPage.pageX + this.directionX,\n this.currentPage.pageY + this.directionY,\n time\n );\n });\n },\n\n _nearestSnap: function (x, y) {\n if ( !this.pages.length ) {\n return { x: 0, y: 0, pageX: 0, pageY: 0 };\n }\n\n var i = 0,\n l = this.pages.length,\n m = 0;\n\n // Check if we exceeded the snap threshold\n if ( Math.abs(x - this.absStartX) < this.snapThresholdX &&\n Math.abs(y - this.absStartY) < this.snapThresholdY ) {\n return this.currentPage;\n }\n\n if ( x > 0 ) {\n x = 0;\n } else if ( x < this.maxScrollX ) {\n x = this.maxScrollX;\n }\n\n if ( y > 0 ) {\n y = 0;\n } else if ( y < this.maxScrollY ) {\n y = this.maxScrollY;\n }\n\n for ( ; i < l; i++ ) {\n if ( x >= this.pages[i][0].cx ) {\n x = this.pages[i][0].x;\n break;\n }\n }\n\n l = this.pages[i].length;\n\n for ( ; m < l; m++ ) {\n if ( y >= this.pages[0][m].cy ) {\n y = this.pages[0][m].y;\n break;\n }\n }\n\n if ( i == this.currentPage.pageX ) {\n i += this.directionX;\n\n if ( i < 0 ) {\n i = 0;\n } else if ( i >= this.pages.length ) {\n i = this.pages.length - 1;\n }\n\n x = this.pages[i][0].x;\n }\n\n if ( m == this.currentPage.pageY ) {\n m += this.directionY;\n\n if ( m < 0 ) {\n m = 0;\n } else if ( m >= this.pages[0].length ) {\n m = this.pages[0].length - 1;\n }\n\n y = this.pages[0][m].y;\n }\n\n return {\n x: x,\n y: y,\n pageX: i,\n pageY: m\n };\n },\n\n goToPage: function (x, y, time, easing) {\n easing = easing || this.options.bounceEasing;\n\n if ( x >= this.pages.length ) {\n x = this.pages.length - 1;\n } else if ( x < 0 ) {\n x = 0;\n }\n\n if ( y >= this.pages[x].length ) {\n y = this.pages[x].length - 1;\n } else if ( y < 0 ) {\n y = 0;\n }\n\n var posX = this.pages[x][y].x,\n posY = this.pages[x][y].y;\n\n time = time === undefined ? this.options.snapSpeed || Math.max(\n Math.max(\n Math.min(Math.abs(posX - this.x), 1000),\n Math.min(Math.abs(posY - this.y), 1000)\n ), 300) : time;\n\n this.currentPage = {\n x: posX,\n y: posY,\n pageX: x,\n pageY: y\n };\n\n this.scrollTo(posX, posY, time, easing);\n },\n\n next: function (time, easing) {\n var x = this.currentPage.pageX,\n y = this.currentPage.pageY;\n\n x++;\n\n if ( x >= this.pages.length && this.hasVerticalScroll ) {\n x = 0;\n y++;\n }\n\n this.goToPage(x, y, time, easing);\n },\n\n prev: function (time, easing) {\n var x = this.currentPage.pageX,\n y = this.currentPage.pageY;\n\n x--;\n\n if ( x < 0 && this.hasVerticalScroll ) {\n x = 0;\n y--;\n }\n\n this.goToPage(x, y, time, easing);\n },\n\n _initKeys: function (e) {\n // default key bindings\n var keys = {\n pageUp: 33,\n pageDown: 34,\n end: 35,\n home: 36,\n left: 37,\n up: 38,\n right: 39,\n down: 40\n };\n var i;\n\n // if you give me characters I give you keycode\n if ( typeof this.options.keyBindings == 'object' ) {\n for ( i in this.options.keyBindings ) {\n if ( typeof this.options.keyBindings[i] == 'string' ) {\n this.options.keyBindings[i] = this.options.keyBindings[i].toUpperCase().charCodeAt(0);\n }\n }\n } else {\n this.options.keyBindings = {};\n }\n\n for ( i in keys ) {\n this.options.keyBindings[i] = this.options.keyBindings[i] || keys[i];\n }\n\n utils.addEvent(window, 'keydown', this);\n\n this.on('destroy', function () {\n utils.removeEvent(window, 'keydown', this);\n });\n },\n\n _key: function (e) {\n if ( !this.enabled ) {\n return;\n }\n\n var snap = this.options.snap, // we are using this alot, better to cache it\n newX = snap ? this.currentPage.pageX : this.x,\n newY = snap ? this.currentPage.pageY : this.y,\n now = utils.getTime(),\n prevTime = this.keyTime || 0,\n acceleration = 0.250,\n pos;\n\n if ( this.options.useTransition && this.isInTransition ) {\n pos = this.getComputedPosition();\n\n this._translate(Math.round(pos.x), Math.round(pos.y));\n this.isInTransition = false;\n }\n\n this.keyAcceleration = now - prevTime < 200 ? Math.min(this.keyAcceleration + acceleration, 50) : 0;\n\n switch ( e.keyCode ) {\n case this.options.keyBindings.pageUp:\n if ( this.hasHorizontalScroll && !this.hasVerticalScroll ) {\n newX += snap ? 1 : this.wrapperWidth;\n } else {\n newY += snap ? 1 : this.wrapperHeight;\n }\n break;\n case this.options.keyBindings.pageDown:\n if ( this.hasHorizontalScroll && !this.hasVerticalScroll ) {\n newX -= snap ? 1 : this.wrapperWidth;\n } else {\n newY -= snap ? 1 : this.wrapperHeight;\n }\n break;\n case this.options.keyBindings.end:\n newX = snap ? this.pages.length-1 : this.maxScrollX;\n newY = snap ? this.pages[0].length-1 : this.maxScrollY;\n break;\n case this.options.keyBindings.home:\n newX = 0;\n newY = 0;\n break;\n case this.options.keyBindings.left:\n newX += snap ? -1 : 5 + this.keyAcceleration>>0;\n break;\n case this.options.keyBindings.up:\n newY += snap ? 1 : 5 + this.keyAcceleration>>0;\n break;\n case this.options.keyBindings.right:\n newX -= snap ? -1 : 5 + this.keyAcceleration>>0;\n break;\n case this.options.keyBindings.down:\n newY -= snap ? 1 : 5 + this.keyAcceleration>>0;\n break;\n default:\n return;\n }\n\n if ( snap ) {\n this.goToPage(newX, newY);\n return;\n }\n\n if ( newX > 0 ) {\n newX = 0;\n this.keyAcceleration = 0;\n } else if ( newX < this.maxScrollX ) {\n newX = this.maxScrollX;\n this.keyAcceleration = 0;\n }\n\n if ( newY > 0 ) {\n newY = 0;\n this.keyAcceleration = 0;\n } else if ( newY < this.maxScrollY ) {\n newY = this.maxScrollY;\n this.keyAcceleration = 0;\n }\n\n this.scrollTo(newX, newY, 0);\n\n this.keyTime = now;\n },\n\n _animate: function (destX, destY, duration, easingFn) {\n var that = this,\n startX = this.x,\n startY = this.y,\n startTime = utils.getTime(),\n destTime = startTime + duration;\n\n function step () {\n var now = utils.getTime(),\n newX, newY,\n easing;\n\n if ( now >= destTime ) {\n that.isAnimating = false;\n that._translate(destX, destY);\n\n if ( !that.resetPosition(that.options.bounceTime) ) {\n that._execEvent('scrollEnd');\n }\n\n return;\n }\n\n now = ( now - startTime ) / duration;\n easing = easingFn(now);\n newX = ( destX - startX ) * easing + startX;\n newY = ( destY - startY ) * easing + startY;\n that._translate(newX, newY);\n\n if ( that.isAnimating ) {\n rAF(step);\n }\n }\n\n this.isAnimating = true;\n step();\n },\n handleEvent: function (e) {\n switch ( e.type ) {\n case 'touchstart':\n case 'pointerdown':\n case 'MSPointerDown':\n case 'mousedown':\n this._start(e);\n break;\n case 'touchmove':\n case 'pointermove':\n case 'MSPointerMove':\n case 'mousemove':\n this._move(e);\n break;\n case 'touchend':\n case 'pointerup':\n case 'MSPointerUp':\n case 'mouseup':\n case 'touchcancel':\n case 'pointercancel':\n case 'MSPointerCancel':\n case 'mousecancel':\n this._end(e);\n break;\n case 'orientationchange':\n case 'resize':\n this._resize();\n break;\n case 'transitionend':\n case 'webkitTransitionEnd':\n case 'oTransitionEnd':\n case 'MSTransitionEnd':\n this._transitionEnd(e);\n break;\n case 'wheel':\n case 'DOMMouseScroll':\n case 'mousewheel':\n this._wheel(e);\n break;\n case 'keydown':\n this._key(e);\n break;\n case 'click':\n if ( this.enabled && !e._constructed ) {\n e.preventDefault();\n e.stopPropagation();\n }\n break;\n }\n }\n};\nfunction createDefaultScrollbar (direction, interactive, type) {\n var scrollbar = document.createElement('div'),\n indicator = document.createElement('div');\n\n if ( type === true ) {\n scrollbar.style.cssText = 'position:absolute;z-index:9999';\n indicator.style.cssText = '-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;position:absolute;background:rgba(0,0,0,0.5);border:1px solid rgba(255,255,255,0.9);border-radius:3px';\n }\n\n indicator.className = 'iScrollIndicator';\n\n if ( direction == 'h' ) {\n if ( type === true ) {\n scrollbar.style.cssText += ';height:7px;left:2px;right:2px;bottom:0';\n indicator.style.height = '100%';\n }\n scrollbar.className = 'iScrollHorizontalScrollbar';\n } else {\n if ( type === true ) {\n scrollbar.style.cssText += ';width:7px;bottom:2px;top:2px;right:1px';\n indicator.style.width = '100%';\n }\n scrollbar.className = 'iScrollVerticalScrollbar';\n }\n\n scrollbar.style.cssText += ';overflow:hidden';\n\n if ( !interactive ) {\n scrollbar.style.pointerEvents = 'none';\n }\n\n scrollbar.appendChild(indicator);\n\n return scrollbar;\n}\n\nfunction Indicator (scroller, options) {\n this.wrapper = typeof options.el == 'string' ? document.querySelector(options.el) : options.el;\n this.wrapperStyle = this.wrapper.style;\n this.indicator = this.wrapper.children[0];\n this.indicatorStyle = this.indicator.style;\n this.scroller = scroller;\n\n this.options = {\n listenX: true,\n listenY: true,\n interactive: false,\n resize: true,\n defaultScrollbars: false,\n shrink: false,\n fade: false,\n speedRatioX: 0,\n speedRatioY: 0\n };\n\n for ( var i in options ) {\n this.options[i] = options[i];\n }\n\n this.sizeRatioX = 1;\n this.sizeRatioY = 1;\n this.maxPosX = 0;\n this.maxPosY = 0;\n\n if ( this.options.interactive ) {\n if ( !this.options.disableTouch ) {\n utils.addEvent(this.indicator, 'touchstart', this);\n utils.addEvent(window, 'touchend', this);\n }\n if ( !this.options.disablePointer ) {\n utils.addEvent(this.indicator, utils.prefixPointerEvent('pointerdown'), this);\n utils.addEvent(window, utils.prefixPointerEvent('pointerup'), this);\n }\n if ( !this.options.disableMouse ) {\n utils.addEvent(this.indicator, 'mousedown', this);\n utils.addEvent(window, 'mouseup', this);\n }\n }\n\n if ( this.options.fade ) {\n this.wrapperStyle[utils.style.transform] = this.scroller.translateZ;\n var durationProp = utils.style.transitionDuration;\n if(!durationProp) {\n return;\n }\n this.wrapperStyle[durationProp] = utils.isBadAndroid ? '0.0001ms' : '0ms';\n // remove 0.0001ms\n var self = this;\n if(utils.isBadAndroid) {\n rAF(function() {\n if(self.wrapperStyle[durationProp] === '0.0001ms') {\n self.wrapperStyle[durationProp] = '0s';\n }\n });\n }\n this.wrapperStyle.opacity = '0';\n }\n}\n\nIndicator.prototype = {\n handleEvent: function (e) {\n switch ( e.type ) {\n case 'touchstart':\n case 'pointerdown':\n case 'MSPointerDown':\n case 'mousedown':\n this._start(e);\n break;\n case 'touchmove':\n case 'pointermove':\n case 'MSPointerMove':\n case 'mousemove':\n this._move(e);\n break;\n case 'touchend':\n case 'pointerup':\n case 'MSPointerUp':\n case 'mouseup':\n case 'touchcancel':\n case 'pointercancel':\n case 'MSPointerCancel':\n case 'mousecancel':\n this._end(e);\n break;\n }\n },\n\n destroy: function () {\n if ( this.options.fadeScrollbars ) {\n clearTimeout(this.fadeTimeout);\n this.fadeTimeout = null;\n }\n if ( this.options.interactive ) {\n utils.removeEvent(this.indicator, 'touchstart', this);\n utils.removeEvent(this.indicator, utils.prefixPointerEvent('pointerdown'), this);\n utils.removeEvent(this.indicator, 'mousedown', this);\n\n utils.removeEvent(window, 'touchmove', this);\n utils.removeEvent(window, utils.prefixPointerEvent('pointermove'), this);\n utils.removeEvent(window, 'mousemove', this);\n\n utils.removeEvent(window, 'touchend', this);\n utils.removeEvent(window, utils.prefixPointerEvent('pointerup'), this);\n utils.removeEvent(window, 'mouseup', this);\n }\n\n if ( this.options.defaultScrollbars ) {\n this.wrapper.parentNode.removeChild(this.wrapper);\n }\n },\n\n _start: function (e) {\n var point = e.touches ? e.touches[0] : e;\n\n e.preventDefault();\n e.stopPropagation();\n\n this.transitionTime();\n\n this.initiated = true;\n this.moved = false;\n this.lastPointX = point.pageX;\n this.lastPointY = point.pageY;\n\n this.startTime = utils.getTime();\n\n if ( !this.options.disableTouch ) {\n utils.addEvent(window, 'touchmove', this);\n }\n if ( !this.options.disablePointer ) {\n utils.addEvent(window, utils.prefixPointerEvent('pointermove'), this);\n }\n if ( !this.options.disableMouse ) {\n utils.addEvent(window, 'mousemove', this);\n }\n\n this.scroller._execEvent('beforeScrollStart');\n },\n\n _move: function (e) {\n var point = e.touches ? e.touches[0] : e,\n deltaX, deltaY,\n newX, newY,\n timestamp = utils.getTime();\n\n if ( !this.moved ) {\n this.scroller._execEvent('scrollStart');\n }\n\n this.moved = true;\n\n deltaX = point.pageX - this.lastPointX;\n this.lastPointX = point.pageX;\n\n deltaY = point.pageY - this.lastPointY;\n this.lastPointY = point.pageY;\n\n newX = this.x + deltaX;\n newY = this.y + deltaY;\n\n this._pos(newX, newY);\n\n// INSERT POINT: indicator._move\n\n e.preventDefault();\n e.stopPropagation();\n },\n\n _end: function (e) {\n if ( !this.initiated ) {\n return;\n }\n\n this.initiated = false;\n\n e.preventDefault();\n e.stopPropagation();\n\n utils.removeEvent(window, 'touchmove', this);\n utils.removeEvent(window, utils.prefixPointerEvent('pointermove'), this);\n utils.removeEvent(window, 'mousemove', this);\n\n if ( this.scroller.options.snap ) {\n var snap = this.scroller._nearestSnap(this.scroller.x, this.scroller.y);\n\n var time = this.options.snapSpeed || Math.max(\n Math.max(\n Math.min(Math.abs(this.scroller.x - snap.x), 1000),\n Math.min(Math.abs(this.scroller.y - snap.y), 1000)\n ), 300);\n\n if ( this.scroller.x != snap.x || this.scroller.y != snap.y ) {\n this.scroller.directionX = 0;\n this.scroller.directionY = 0;\n this.scroller.currentPage = snap;\n this.scroller.scrollTo(snap.x, snap.y, time, this.scroller.options.bounceEasing);\n }\n }\n\n if ( this.moved ) {\n this.scroller._execEvent('scrollEnd');\n }\n },\n\n transitionTime: function (time) {\n time = time || 0;\n var durationProp = utils.style.transitionDuration;\n if(!durationProp) {\n return;\n }\n\n this.indicatorStyle[durationProp] = time + 'ms';\n\n if ( !time && utils.isBadAndroid ) {\n this.indicatorStyle[durationProp] = '0.0001ms';\n // remove 0.0001ms\n var self = this;\n rAF(function() {\n if(self.indicatorStyle[durationProp] === '0.0001ms') {\n self.indicatorStyle[durationProp] = '0s';\n }\n });\n }\n },\n\n transitionTimingFunction: function (easing) {\n this.indicatorStyle[utils.style.transitionTimingFunction] = easing;\n },\n\n refresh: function () {\n this.transitionTime();\n\n if ( this.options.listenX && !this.options.listenY ) {\n this.indicatorStyle.display = this.scroller.hasHorizontalScroll ? 'block' : 'none';\n } else if ( this.options.listenY && !this.options.listenX ) {\n this.indicatorStyle.display = this.scroller.hasVerticalScroll ? 'block' : 'none';\n } else {\n this.indicatorStyle.display = this.scroller.hasHorizontalScroll || this.scroller.hasVerticalScroll ? 'block' : 'none';\n }\n\n if ( this.scroller.hasHorizontalScroll && this.scroller.hasVerticalScroll ) {\n utils.addClass(this.wrapper, 'iScrollBothScrollbars');\n utils.removeClass(this.wrapper, 'iScrollLoneScrollbar');\n\n if ( this.options.defaultScrollbars && this.options.customStyle ) {\n if ( this.options.listenX ) {\n this.wrapper.style.right = '8px';\n } else {\n this.wrapper.style.bottom = '8px';\n }\n }\n } else {\n utils.removeClass(this.wrapper, 'iScrollBothScrollbars');\n utils.addClass(this.wrapper, 'iScrollLoneScrollbar');\n\n if ( this.options.defaultScrollbars && this.options.customStyle ) {\n if ( this.options.listenX ) {\n this.wrapper.style.right = '2px';\n } else {\n this.wrapper.style.bottom = '2px';\n }\n }\n }\n\n var r = this.wrapper.offsetHeight; // force refresh\n\n if ( this.options.listenX ) {\n this.wrapperWidth = this.wrapper.clientWidth;\n if ( this.options.resize ) {\n this.indicatorWidth = Math.max(Math.round(this.wrapperWidth * this.wrapperWidth / (this.scroller.scrollerWidth || this.wrapperWidth || 1)), 8);\n this.indicatorStyle.width = this.indicatorWidth + 'px';\n } else {\n this.indicatorWidth = this.indicator.clientWidth;\n }\n\n this.maxPosX = this.wrapperWidth - this.indicatorWidth;\n\n if ( this.options.shrink == 'clip' ) {\n this.minBoundaryX = -this.indicatorWidth + 8;\n this.maxBoundaryX = this.wrapperWidth - 8;\n } else {\n this.minBoundaryX = 0;\n this.maxBoundaryX = this.maxPosX;\n }\n\n this.sizeRatioX = this.options.speedRatioX || (this.scroller.maxScrollX && (this.maxPosX / this.scroller.maxScrollX));\n }\n\n if ( this.options.listenY ) {\n this.wrapperHeight = this.wrapper.clientHeight;\n if ( this.options.resize ) {\n this.indicatorHeight = Math.max(Math.round(this.wrapperHeight * this.wrapperHeight / (this.scroller.scrollerHeight || this.wrapperHeight || 1)), 8);\n this.indicatorStyle.height = this.indicatorHeight + 'px';\n } else {\n this.indicatorHeight = this.indicator.clientHeight;\n }\n\n this.maxPosY = this.wrapperHeight - this.indicatorHeight;\n\n if ( this.options.shrink == 'clip' ) {\n this.minBoundaryY = -this.indicatorHeight + 8;\n this.maxBoundaryY = this.wrapperHeight - 8;\n } else {\n this.minBoundaryY = 0;\n this.maxBoundaryY = this.maxPosY;\n }\n\n this.maxPosY = this.wrapperHeight - this.indicatorHeight;\n this.sizeRatioY = this.options.speedRatioY || (this.scroller.maxScrollY && (this.maxPosY / this.scroller.maxScrollY));\n }\n\n this.updatePosition();\n },\n\n updatePosition: function () {\n var x = this.options.listenX && Math.round(this.sizeRatioX * this.scroller.x) || 0,\n y = this.options.listenY && Math.round(this.sizeRatioY * this.scroller.y) || 0;\n\n if ( !this.options.ignoreBoundaries ) {\n if ( x < this.minBoundaryX ) {\n if ( this.options.shrink == 'scale' ) {\n this.width = Math.max(this.indicatorWidth + x, 8);\n this.indicatorStyle.width = this.width + 'px';\n }\n x = this.minBoundaryX;\n } else if ( x > this.maxBoundaryX ) {\n if ( this.options.shrink == 'scale' ) {\n this.width = Math.max(this.indicatorWidth - (x - this.maxPosX), 8);\n this.indicatorStyle.width = this.width + 'px';\n x = this.maxPosX + this.indicatorWidth - this.width;\n } else {\n x = this.maxBoundaryX;\n }\n } else if ( this.options.shrink == 'scale' && this.width != this.indicatorWidth ) {\n this.width = this.indicatorWidth;\n this.indicatorStyle.width = this.width + 'px';\n }\n\n if ( y < this.minBoundaryY ) {\n if ( this.options.shrink == 'scale' ) {\n this.height = Math.max(this.indicatorHeight + y * 3, 8);\n this.indicatorStyle.height = this.height + 'px';\n }\n y = this.minBoundaryY;\n } else if ( y > this.maxBoundaryY ) {\n if ( this.options.shrink == 'scale' ) {\n this.height = Math.max(this.indicatorHeight - (y - this.maxPosY) * 3, 8);\n this.indicatorStyle.height = this.height + 'px';\n y = this.maxPosY + this.indicatorHeight - this.height;\n } else {\n y = this.maxBoundaryY;\n }\n } else if ( this.options.shrink == 'scale' && this.height != this.indicatorHeight ) {\n this.height = this.indicatorHeight;\n this.indicatorStyle.height = this.height + 'px';\n }\n }\n\n this.x = x;\n this.y = y;\n\n if ( this.scroller.options.useTransform ) {\n this.indicatorStyle[utils.style.transform] = 'translate(' + x + 'px,' + y + 'px)' + this.scroller.translateZ;\n } else {\n this.indicatorStyle.left = x + 'px';\n this.indicatorStyle.top = y + 'px';\n }\n },\n\n _pos: function (x, y) {\n if ( x < 0 ) {\n x = 0;\n } else if ( x > this.maxPosX ) {\n x = this.maxPosX;\n }\n\n if ( y < 0 ) {\n y = 0;\n } else if ( y > this.maxPosY ) {\n y = this.maxPosY;\n }\n\n x = this.options.listenX ? Math.round(x / this.sizeRatioX) : this.scroller.x;\n y = this.options.listenY ? Math.round(y / this.sizeRatioY) : this.scroller.y;\n\n this.scroller.scrollTo(x, y);\n },\n\n fade: function (val, hold) {\n if ( hold && !this.visible ) {\n return;\n }\n\n clearTimeout(this.fadeTimeout);\n this.fadeTimeout = null;\n\n var time = val ? 250 : 500,\n delay = val ? 0 : 300;\n\n val = val ? '1' : '0';\n\n this.wrapperStyle[utils.style.transitionDuration] = time + 'ms';\n\n this.fadeTimeout = setTimeout((function (val) {\n this.wrapperStyle.opacity = val;\n this.visible = +val;\n }).bind(this, val), delay);\n }\n};\n\nIScroll.utils = utils;\n\nif ( typeof module != 'undefined' && module.exports ) {\n module.exports = IScroll;\n} else if ( typeof define == 'function' && define.amd ) {\n define( function () { return IScroll; } );\n\n //making sure scrollOverflow works when using Require.js\n //in the browser\n if(typeof window !== 'undefined'){\n window.IScroll = IScroll;\n }\n} else {\n window.IScroll = IScroll;\n}\n\n})(window, document, Math);\n\n\n/*!\n* Scrolloverflow 2.0.4 module for fullPage.js >= 3\n* https://github.com/alvarotrigo/fullPage.js\n* @license MIT licensed\n*\n* Copyright (C) 2015 alvarotrigo.com - A project by Alvaro Trigo\n*/\n(function (window, document) {\n window.fp_scrolloverflow = (function() {\n\n // check if IScroll is available in global scope\n if (!window.IScroll) {\n // otherwise create local one from module.exports\n window.IScroll = module.exports;\n }\n\n // keeping central set of classnames and selectors\n var SCROLLABLE = 'fp-scrollable';\n var SCROLLABLE_SEL = '.' + SCROLLABLE;\n\n var ACTIVE = 'active';\n var ACTIVE_SEL = '.' + ACTIVE;\n\n var SECTION = 'fp-section';\n var SECTION_SEL = '.' + SECTION;\n var SECTION_ACTIVE_SEL = SECTION_SEL + ACTIVE_SEL;\n\n var SLIDE = 'fp-slide';\n var SLIDE_SEL = '.' + SLIDE;\n var SLIDE_ACTIVE_SEL = SLIDE_SEL + ACTIVE_SEL;\n\n var SLIDES_WRAPPER = 'fp-slides';\n var SLIDES_WRAPPER_SEL = '.' + SLIDES_WRAPPER;\n\n var TABLE_CELL = 'fp-tableCell';\n var TABLE_CELL_SEL = '.' + TABLE_CELL;\n\n var RESPONSIVE = 'fp-responsive';\n var AUTO_HEIGHT_RESPONSIVE= 'fp-auto-height-responsive';\n\n /*\n * Turns iScroll `mousewheel` option off dynamically\n * https://github.com/cubiq/iscroll/issues/1036\n */\n IScroll.prototype.wheelOn = function () {\n this.wrapper.addEventListener('wheel', this);\n this.wrapper.addEventListener('mousewheel', this);\n this.wrapper.addEventListener('DOMMouseScroll', this);\n };\n\n /*\n * Turns iScroll `mousewheel` option on dynamically\n * https://github.com/cubiq/iscroll/issues/1036\n */\n IScroll.prototype.wheelOff = function () {\n this.wrapper.removeEventListener('wheel', this);\n this.wrapper.removeEventListener('mousewheel', this);\n this.wrapper.removeEventListener('DOMMouseScroll', this);\n };\n\n /**\n * Returns an integer representing the padding dimensions in px.\n */\n function getPaddings(element){\n var section = fp_utils.closest(element, SECTION_SEL);\n if(section != null){\n return parseInt(getComputedStyle(section)['padding-bottom']) + parseInt(getComputedStyle(section)['padding-top']);\n }\n return 0;\n }\n\n function scrollBarHandler(){\n var self = this;\n self.options = null;\n\n self.init = function(options, iscrollOptions){\n self.options = options;\n self.iscrollOptions = iscrollOptions;\n\n if(document.readyState === 'complete'){\n createScrollBarForAll();\n fullpage_api.shared.afterRenderActions();\n }\n //after DOM and images are loaded\n window.addEventListener('load', function(){\n createScrollBarForAll();\n fullpage_api.shared.afterRenderActions();\n });\n\n return self;\n };\n\n /**\n * Creates the scrollbar for the sections and slides in the site\n */\n function createScrollBarForAll(){\n if(fp_utils.hasClass(document.body, RESPONSIVE)){\n removeResponsiveScrollOverflows();\n }\n else{\n forEachSectionAndSlide(createScrollBar);\n }\n }\n\n /**\n * Checks if the element needs scrollbar and if the user wants to apply it.\n * If so it creates it.\n *\n * @param {Object} element jQuery object of the section or slide\n */\n function createScrollBar(element){\n //User doesn't want scrollbar here? Sayonara baby!\n if(fp_utils.hasClass(element, 'fp-noscroll')) return;\n\n //necessary to make `scrollHeight` work under Opera 12\n fp_utils.css(element, {'overflow': 'hidden'});\n\n var scrollOverflowHandler = self.options.scrollOverflowHandler;\n var wrap = scrollOverflowHandler.wrapContent();\n var section = fp_utils.closest(element, SECTION_SEL); //in case element is a slide\n var scrollable = scrollOverflowHandler.scrollable(element);\n var contentHeight;\n var paddings = getPaddings(section);\n\n //if there was scroll, the contentHeight will be the one in the scrollable section\n if(scrollable != null){\n contentHeight = scrollOverflowHandler.scrollHeight(element);\n }\n else{\n contentHeight = element.scrollHeight;\n if(self.options.verticalCentered){\n contentHeight = $(TABLE_CELL_SEL, element)[0].scrollHeight;\n }\n }\n\n var scrollHeight = fp_utils.getWindowHeight();\n var contentHeightWidthPaddings = contentHeight + paddings;\n var scrollHeightWidthoutPaddings = scrollHeight - paddings;\n \n //needs scroll?\n if ( contentHeightWidthPaddings > scrollHeight) {\n //did we already have an scrollbar ? Updating it\n if(scrollable != null){\n scrollOverflowHandler.update(element, scrollHeightWidthoutPaddings);\n }\n //creating the scrolling\n else{\n if(self.options.verticalCentered){\n fp_utils.wrapInner($(TABLE_CELL_SEL, element)[0], wrap.scroller);\n fp_utils.wrapInner($(TABLE_CELL_SEL, element)[0], wrap.scrollable);\n }else{\n fp_utils.wrapInner(element, wrap.scroller);\n fp_utils.wrapInner(element, wrap.scrollable);\n }\n scrollOverflowHandler.create(element, scrollHeightWidthoutPaddings, self.iscrollOptions);\n }\n }\n\n //removing the scrolling when it is not necessary anymore\n else{\n scrollOverflowHandler.remove(element);\n }\n\n //undo\n fp_utils.css(element, {'overflow': ''});\n }\n\n /**\n * Applies a callback function to each section in the site\n * or the slides within them\n */\n function forEachSectionAndSlide(callback){\n $(SECTION_SEL).forEach(function(section){\n var slides = $(SLIDE_SEL, section);\n\n if(slides.length){\n slides.forEach(function(slide){\n callback(slide);\n });\n }else{\n callback(section);\n }\n });\n }\n\n /**\n * Removes scrollOverflow for sections using the class `fp-auto-height-responsive`\n */\n function removeResponsiveScrollOverflows(){\n var scrollOverflowHandler = self.options.scrollOverflowHandler;\n forEachSectionAndSlide(function(element){\n if(fp_utils.hasClass( fp_utils.closest(element, SECTION_SEL), AUTO_HEIGHT_RESPONSIVE)){\n scrollOverflowHandler.remove(element);\n }\n });\n }\n\n //public functions\n self.createScrollBarForAll = createScrollBarForAll;\n self.createScrollBar = createScrollBar;\n }\n\n /**\n * An object to handle overflow scrolling.\n * This uses jquery.slimScroll to accomplish overflow scrolling.\n * It is possible to pass in an alternate scrollOverflowHandler\n * to the fullpage.js option that implements the same functions\n * as this handler.\n *\n * @type {Object}\n */\n var $ = null;\n var g_fullpageOptions = null;\n var iscrollHandler = {\n refreshId: null,\n iScrollInstances: [],\n lastScrollY: null,\n\n // Default options for iScroll.js used when using scrollOverflow\n iscrollOptions: {\n scrollbars: true,\n mouseWheel: true,\n hideScrollbars: false,\n fadeScrollbars: false,\n disableMouse: true,\n interactiveScrollbars: true\n },\n\n init: function(options){\n $ = fp_utils.$;\n g_fullpageOptions = options;\n\n var isTouch = (('ontouchstart' in window) || (navigator.msMaxTouchPoints > 0) || (navigator.maxTouchPoints));\n\n //fixing bug in iScroll with links: https://github.com/cubiq/iscroll/issues/783\n iscrollHandler.iscrollOptions.click = isTouch; // see #2035\n\n //extending iScroll options with the user custom ones\n iscrollHandler.iscrollOptions = fp_utils.deepExtend(iscrollHandler.iscrollOptions, options.scrollOverflowOptions);\n\n return new scrollBarHandler().init(options, iscrollHandler.iscrollOptions);\n },\n\n // Enables or disables the mouse wheel for the active section or all slides in it\n toggleWheel: function(value){\n var scrollable = $(SCROLLABLE_SEL, $(SECTION_ACTIVE_SEL)[0]);\n scrollable.forEach(function(item){\n var iScrollInstance = item.fp_iscrollInstance;\n if(iScrollInstance != null){\n if(value){\n iScrollInstance.wheelOn();\n }\n else{\n iScrollInstance.wheelOff();\n }\n }\n });\n },\n\n /**\n * Turns off iScroll for the destination section.\n * When scrolling very fast on some trackpads (and Apple laptops) the inertial scrolling would\n * scroll the destination section/slide before the sections animations ends.\n */\n onLeave: function(){\n iscrollHandler.toggleWheel(false);\n },\n\n // Turns off iScroll for the leaving section\n beforeLeave: function(){\n iscrollHandler.onLeave()\n },\n\n // Turns on iScroll on section load\n afterLoad: function(){\n iscrollHandler.toggleWheel(true);\n },\n\n /**\n * Called when overflow scrolling is needed for a section.\n *\n * @param {Object} element jQuery object containing current section\n * @param {Number} scrollHeight Current window height in pixels\n */\n create: function(element, scrollHeight, iscrollOptions) {\n var scrollable = $(SCROLLABLE_SEL, element);\n\n scrollable.forEach(function(item) {\n fp_utils.css(item, {'height': scrollHeight + 'px'});\n\n var iScrollInstance = item.fp_iscrollInstance;\n if (iScrollInstance != null) {\n iscrollHandler.iScrollInstances.forEach(function(instance){\n instance.destroy();\n });\n }\n\n iScrollInstance = new IScroll(item, iscrollOptions);\n iscrollHandler.iScrollInstances.push(iScrollInstance);\n\n if(!fp_utils.hasClass(fp_utils.closest(element, SECTION_SEL), ACTIVE)){\n //off by default until the section gets active\n iScrollInstance.wheelOff();\n }\n\n item.fp_iscrollInstance = iScrollInstance;\n });\n },\n\n /**\n * Return a boolean depending on whether the scrollable element is a\n * the end or at the start of the scrolling depending on the given type.\n *\n * @param {String} type Either 'top' or 'bottom'\n * @param {Object} scrollable jQuery object for the scrollable element\n * @return {Boolean}\n */\n isScrolled: function(type, scrollable) {\n var scroller = scrollable.fp_iscrollInstance;\n\n //no scroller?\n if (!scroller) {\n return true;\n }\n\n // two times reporting the same Y position ? \n // that means we are on the top or on the bottom of the scroller\n if (type === 'top'){\n return scroller.y >= 0 && !fp_utils.getScrollTop(scrollable);\n } else if (type === 'bottom') {\n return (0 - scroller.y) + fp_utils.getScrollTop(scrollable) + scrollable.offsetHeight >= scrollable.scrollHeight;\n }\n },\n\n /**\n * Returns the scrollable element for the given section.\n * If there are landscape slides, will only return a scrollable element\n * if it is in the active slide.\n *\n * @param {Object} activeSection jQuery object containing current section\n * @return {Boolean}\n */\n scrollable: function(activeSection){\n // if there are landscape slides, we check if the scrolling bar is in the current one or not\n if ($(SLIDES_WRAPPER_SEL, activeSection).length) {\n return $(SCROLLABLE_SEL, $(SLIDE_ACTIVE_SEL, activeSection)[0] )[0];\n }\n return $(SCROLLABLE_SEL, activeSection)[0];\n },\n\n /**\n * Returns the scroll height of the wrapped content.\n * If this is larger than the window height minus section padding,\n * overflow scrolling is needed.\n *\n * @param {Object} element jQuery object containing current section\n * @return {Number}\n */\n scrollHeight: function(element) {\n return $('.fp-scroller', $(SCROLLABLE_SEL, element)[0] )[0].scrollHeight;\n },\n\n /**\n * Called when overflow scrolling is no longer needed for a section.\n *\n * @param {Object} element jQuery object containing current section\n */\n remove: function(element) {\n if(element == null) return;\n\n var scrollable = $(SCROLLABLE_SEL, element)[0];\n if (scrollable != null) {\n var iScrollInstance = scrollable.fp_iscrollInstance;\n if(iScrollInstance != null){\n iScrollInstance.destroy();\n }\n\n scrollable.fp_iscrollInstance = null;\n\n //unwrapping...\n fp_utils.unwrap($('.fp-scroller', element)[0]);\n fp_utils.unwrap($(SCROLLABLE_SEL, element)[0]);\n }\n },\n\n /**\n * Called when overflow scrolling has already been setup but the\n * window height has potentially changed.\n *\n * @param {Object} element jQuery object containing current section\n * @param {Number} scrollHeight Current window height in pixels\n */\n update: function(element, scrollHeight) {\n //using a timeout in order to execute the refresh function only once when `update` is called multiple times in a\n //short period of time.\n //it also comes on handy because iScroll requires the use of timeout when using `refresh`.\n clearTimeout(iscrollHandler.refreshId);\n iscrollHandler.refreshId = setTimeout(function(){\n iscrollHandler.iScrollInstances.forEach(function(instance){\n instance.refresh();\n\n //ugly hack that we are forced to use due to the timeout delay\n //otherwise done on the fullpage.js reBuild function\n fullpage_api.silentMoveTo(fp_utils.index($(SECTION_ACTIVE_SEL)[0]) + 1);\n });\n }, 150);\n\n //updating the wrappers height\n fp_utils.css($(SCROLLABLE_SEL, element)[0], {'height': scrollHeight + 'px'});\n\n if(g_fullpageOptions.verticalCentered){\n fp_utils.css($(SCROLLABLE_SEL, element)[0].parentNode, {'height': scrollHeight + 'px'});\n }\n },\n\n /**\n * Called to get any additional elements needed to wrap the section\n * content in order to facilitate overflow scrolling.\n *\n * @return {String|Object} Can be a string containing HTML,\n * a DOM element, or jQuery object.\n */\n wrapContent: function() {\n var scrollable = document.createElement('div');\n scrollable.className = SCROLLABLE;\n\n var scroller = document.createElement('div');\n scroller.className = 'fp-scroller';\n\n return {\n scrollable: scrollable,\n scroller: scroller\n };\n }\n };\n\n return {\n iscrollHandler: iscrollHandler\n };\n })();\n})(window, document);\n\n\n//////////////////\n// WEBPACK FOOTER\n// D:/www/mollers/wp-content/themes/mollers/node_modules/fullpage.js/vendors/scrolloverflow.js\n// module id = 13\n// module chunks = 1 2 3","/*!\r\n * fullpage.js Parallax Effect Extension 0.1.9 for fullPage.js v3\r\n * https://github.com/alvarotrigo/fullPage.js\r\n *\r\n * @license This code has been bought from www.alvarotrigo.com/fullPage/extensions/ and it is not free to use or distribute.\r\n * Copyright (C) 2016 alvarotrigo.com - A project by Alvaro Trigo\r\n */\r\nwindow.fp_parallaxExtension=function(){var f,d,n,c,o,p,s,l,e,t,i=this,a=window.fp_utils,r=window.fullpage_api,u=a,v=a.$,m=r.getFullpageData(),g=m.options,x=m.internals,h=\".fullpage-wrapper\",E=\"active\",b=\".\"+E,S=\".fp-section\",y=S+b,w=\"fp-slide\",L=\".\"+w,A=L+b,M=\"fp-notransition\",N=\".fp-bg\",R=\"reveal\",T=\"cover\",I=\"fp-parallax-stylesheet\",C=\"fp-parallax-transitions\",z=\"#\"+C,O=\"fp-parallax-transition-class\",B=\"#\"+O,H=0,F=!1,k=!1,q=!0,W=!0,_=!1,V=!1,G=!1,X=!1,Y=!1,D=!0===g.parallax||\"slides\"===g.parallax,P=!0===g.parallax||\"sections\"===g.parallax,U=u.closest,$=u.addClass,j=u.removeClass,J=u.hasClass,K=u.css,Q=u.nextAll,Z=u.prevAll;function ee(e){return{cover:{offsetNormal:e?0:d},reveal:{offsetNormal:e?-d:0}}}function te(e){return{cover:{offsetNormal:e?0:n},reveal:{offsetNormal:e?-n:0}}}function ne(e){return e*c/100}function oe(e){return e*o/100}function ie(){return window.innerWidth||document.documentElement.clientWidth||document.getElementsByTagName(\"body\")[0].clientWidth}function ae(){s&&Ae(v(y).length?v(y)[0]:v(S)[0],0)}function re(){if(P){var e=v(y).length?v(y)[0]:v(S)[0],t=f===R,n=t?Q(e):Z(e),o=t?Z(e):Q(e);n.forEach(function(e){Ae(e,ee(t)[f].offsetNormal,\"silent\")}),o.forEach(function(e){Ae(e,0,\"silent\")})}D&&v(S).forEach(function(e){v(L,e).length&&le(v(A,e).length?v(A,e)[0]:v(L,e)[0])})}function le(e){var t=f===R,n=t?Q(e):Z(e),o=t?Z(e):Q(e);n.forEach(function(e){Me(e,te(t)[f].offsetNormal,\"silent\")}),o.forEach(function(e){Me(e,0,\"silent\")})}function se(e){var t=e.detail;o=ie(),t&&!g.scrollBar?(he(),Ee()):be()}function fe(e){i.destroy(),_=!1}function de(){v(\".fp-scrollable\").forEach(function(e){var t=v(N,e)[0];(v(\".fp-scrollable\",e).length||J(e,\"fp-scrollable\"))&&null!=t&&u.prependTo(e.parentNode,t)})}function ce(e){e.detail?be():X=!0}function pe(e){e.detail,v(N).forEach(function(e){e.setAttribute(\"data-final-x\",0),e.setAttribute(\"data-final-y\",0)}),p=v(S),re()}function ue(e){e.detail.leavingSection,e.detail.destination,k=Y=!0}function ve(e){var t=e.detail.leavingSection,n=e.detail.destination;Ae(t,ee(F)[f].offsetNormal,\"silent\");var o=v(L,t);o.length&&o.forEach(function(e){e!==n&&Ae(e,0,\"silent\")}),i.afterSlideLoads(v(L,t)[0]),Y=!1}function me(e){var t=e.detail;V=!0,le(\"left\"===t.xMovement?v(L,v(y)[0])[0]:u.last(v(L,v(y)[0]))),setTimeout(function(){i.applyHorizontal(t)})}function ge(e){var t=e.detail;G=!0,re(),setTimeout(function(){i.apply(t)})}function xe(){_&&(g.scrollBar||!g.autoScrolling||x.usingExtension(\"dragAndMove\"))&&function(){var e=x.usingExtension(\"dragAndMove\")?Math.abs(window.fp_dragAndMoveExtension.getCurrentScroll()):u.getScrollTop(),t=ei+1&&(n=i+1)}var l=(c-(p[n].offsetTop-e))*d/c;f!==R&&(n-=1);var s=f!==R?l:-d+l;-1';\r\n fullPageNav.append(navHTML);\r\n }\r\n\r\n let omegaFullpage = new fullpage('#omega', {\r\n // Key\r\n licenseKey: 'E02B3FBDB98847A6A2FE0582C69F6DC7',\r\n\r\n // Parallax\r\n parallax: true,\r\n parallaxKey: 'bW9sbGVycy5jb21fRUFXY0dGeVlXeHNZWGc9NU1B',\r\n parallaxOptions: { type: 'cover', percentage: 50, property: 'background' },\r\n\r\n // Easing\r\n css3: true,\r\n easingcss3: 'cubic-bezier(0.645, 0.045, 0.1, 1)',\r\n\r\n // Scrolling\r\n scrollingSpeed: 1000,\r\n fitToSectionDelay: 1000,\r\n autoScrolling: true,\r\n scrollOverflow: true,\r\n scrollOverflowReset: true,\r\n keyboardScrolling: false,\r\n scrollOverflowOptions: {\r\n scrollbars: false,\r\n },\r\n\r\n // Dots\r\n // navigation: true,\r\n // navigationPosition: 'right',\r\n // anchors: navList,\r\n // slidesNavigation: true,\r\n // menu: '#parallax-nav',\r\n anchors: (document.getElementById('omega').classList.contains('is-mobile')) ? [] : navList,\r\n slideNavigation: (document.getElementById('omega').classList.contains('is-mobile')) ? false : true,\r\n menu: '#parallax-nav',\r\n\r\n // events\r\n onLeave(origin, destination, direction) {\r\n\r\n pageHeroBanner.init(origin, destination, direction, 'onLeave');\r\n textImage.init(destination);\r\n\r\n // Special case js\r\n $('.js-btn-scroll, #fp-nav>ul').addClass('navFade'); // <- adds fade effect on navs\r\n\r\n // <- Match up with the plugins scrollingSpeed\r\n setTimeout(() => {\r\n $(origin.item).find('.animated').removeClass('js-animate-completed');\r\n $(destination.item).find('.animated').addClass('js-animate-completed');\r\n }, 300);\r\n\r\n helper.scrollIconCtrl(origin, destination, direction);\r\n\r\n },\r\n\r\n afterLoad(origin, destination, direction) {\r\n\r\n pageHeroBanner.init(origin, destination, direction, 'afterLoad');\r\n\r\n // <- Match up with the plugins scrollingSpeed\r\n setTimeout(() => {\r\n $('.js-btn-scroll, #fp-nav>ul').removeClass('navFade'); // <- adds fade effect on navs\r\n $(destination.item).hasClass('fp-completely') ? $(destination.item).find('.animated').addClass('js-animate-completed') : '';\r\n }, 1000);\r\n\r\n var nav = document.getElementById('js-head');\r\n var body = document.getElementsByTagName('body')[0];\r\n\r\n body.classList.add('is-fullpage');\r\n\r\n // if(destination.item.classList.contains('js-append-footer')) {\r\n // helper.observer(destination.index);\r\n\r\n // $(window).on('mousewheel DOMMouseScroll', function(event){\r\n // if(destination.item.classList.contains('js-append-footer')) {\r\n // helper.observer(destination.index);\r\n // let deltaY = event.originalEvent.wheelDelta;\r\n // let detailY = event.originalEvent.detail;\r\n // if(deltaY === 120) {\r\n // if($('.js-append-footer .fp-scroller').css('transform') == 'matrix(1, 0, 0, 1, 0, 0)') {\r\n // fullpage_api.moveTo(destination.index);\r\n // }\r\n // }\r\n // }\r\n // });\r\n // }\r\n if (destination.item.classList.contains('js-append-footer')) {\r\n helper.observer(destination.index);\r\n let counter = 0;\r\n $(window).on('mousewheel DOMMouseScroll', function (event) {\r\n if (destination.item.classList.contains('js-append-footer')) {\r\n helper.observer(destination.index);\r\n let deltaY = event.originalEvent.wheelDelta;\r\n let detailY = event.originalEvent.detail;\r\n if (deltaY === 120) {\r\n if ($('.js-append-footer .fp-scroller').css('transform') == 'matrix(1, 0, 0, 1, 0, 0)') {\r\n // fullpage_api.moveTo(destination.index);\r\n counter++;\r\n if (counter > 1 && counter < 2) {\r\n window.requestAnimationFrame(function () { fullpage_api.moveSectionUp() });\r\n }\r\n // fullpage_api.moveSectionUp();\r\n fullpage_api.setAllowScrolling(true);\r\n }\r\n }\r\n }\r\n });\r\n } else {\r\n fullpage_api.setAllowScrolling(true);\r\n }\r\n\r\n if (direction == 'down') {\r\n nav.classList.add('slideUp');\r\n nav.classList.remove('slideDown');\r\n } else {\r\n nav.classList.add('slideDown');\r\n nav.classList.remove('slideUp');\r\n }\r\n },\r\n });\r\n\r\n // $(window).innerWidth() <= 979.98 ? fullpage_api.setAutoScrolling(false) : fullpage_api.setAutoScrolling(true);\r\n\r\n fullpage_api.setAutoScrolling(true);\r\n fullpage_api.setFitToSection(false);\r\n fullpage_api.setAllowScrolling(true);\r\n fullpage_api.parallax.init();\r\n },\r\n mobile() {\r\n new fullpage('#omega', {\r\n // Key\r\n licenseKey: 'E02B3FBDB98847A6A2FE0582C69F6DC7',\r\n parallax: true,\r\n parallaxKey: 'bW9sbGVycy5jb21fRUFXY0dGeVlXeHNZWGc9NU1B',\r\n autoScrolling: false,\r\n css3: true,\r\n parallaxOptions: { type: 'cover', percentage: 62 },\r\n });\r\n\r\n //changing the value for the property `type`\r\n // fullpage_api.parallax.setOption('type', 'cover');\r\n //changing the value for the property `percentage`\r\n // fullpage_api.parallax.setOption({\r\n // type: 'cover',\r\n // percentage: '30',\r\n // });\r\n fullpage_api.parallax.init();\r\n },\r\n bannerBgMobile() {\r\n if ($(window).innerWidth() <= 979.98) {\r\n\r\n $('.js-full-banner').css({\r\n 'background-image': `url(${$('.js-full-banner').data('bg')})`\r\n });\r\n\r\n } else {\r\n $('.js-full-banner').css({\r\n 'background-image': ``\r\n });\r\n }\r\n },\r\n}\r\n\r\n$(function () {\r\n // if ($(window).innerWidth() >= 979.98) {\r\n Omega.init();\r\n // } else {\r\n // Omega.mobile();\r\n // }\r\n\r\n // Data bg set\r\n Omega.bannerBgMobile();\r\n hbModal.init();\r\n\r\n $(window).resize(function () {\r\n Omega.bannerBgMobile();\r\n });\r\n});\r\n\n\n\n// WEBPACK FOOTER //\n// ./scripts/components/featured/omega/index.js","var fullpage = require('fullpage.js/dist/fullpage.extensions.min');\r\nexport let hbModal = {};\r\nlet currentEle;\r\nlet currentEleModal;\r\n\r\nhbModal.init = () => {\r\n hbModal.closeBtnAction('js-modal-close');\r\n hbModal.closeBtnAction('js-modal-close-btn');\r\n hbModal.modalBtn('js-modal-button', 'hbModalBtn', true);\r\n hbModal.modalBtn('js-modal-item', 'forhbModalBtn', false);\r\n}\r\n\r\nhbModal.modalBtn = (e, name, bol) => {\r\n let ele = document.getElementsByClassName(e);\r\n\r\n for(let i = 0; i < ele.length; i++) {\r\n if(!ele[i]) return;\r\n\r\n ele[i].id = name + i;\r\n\r\n if(bol) {\r\n ele[i].addEventListener('click', (e) => {\r\n hbModal.modalBtnAction(e);\r\n hbModal.closeModal('js-modal-body');\r\n fullpage_api.setAllowScrolling(false);\r\n });\r\n }\r\n }\r\n}\r\n\r\nhbModal.modalBtnAction = (e) => {\r\n if (!e) return;\r\n currentEle = e.target.id;\r\n currentEleModal = \"for\" + e.target.id;\r\n\r\n if(!document.getElementById(currentEleModal).classList.contains('is-active')) {\r\n document.getElementById(currentEleModal).classList.add('is-active');\r\n } else {\r\n if(!currentEleModal == \"for\" + e.target.id) {\r\n document.getElementById(currentEleModal).classList.remove('is-active');\r\n }\r\n }\r\n\r\n // hbModal.checker(e.target.className, currentEle);\r\n hbModal.checker(document.getElementById(currentEleModal).className, currentEleModal);\r\n}\r\n\r\n//check btn which is active\r\nhbModal.checker = (e, comparer) => {\r\n let eleBtn = document.getElementsByClassName(e);\r\n if (!eleBtn) return;\r\n\r\n for (let i = 0; i < eleBtn.length; i++) {\r\n if (eleBtn[i].id !== comparer) {\r\n eleBtn[i].classList.remove('is-active');\r\n }\r\n\r\n if (i > 10000) break;\r\n }\r\n}\r\n\r\nhbModal.closeBtnAction = (e) => {\r\n let ele = document.getElementById(e);\r\n if(!ele) return;\r\n\r\n ele.addEventListener('click' , () => {\r\n hbModal.closeModal('js-modal-body');\r\n fullpage_api.reBuild();\r\n fullpage_api.setAllowScrolling(true);\r\n fullpage_api.setAutoScrolling(true);\r\n });\r\n\r\n ele.addEventListener('touchstart' , () => {\r\n hbModal.closeModal('js-modal-body');\r\n fullpage_api.reBuild();\r\n fullpage_api.setAllowScrolling(true);\r\n fullpage_api.setAutoScrolling(true);\r\n });\r\n}\r\n\r\nhbModal.closeModal = (e) => {\r\n let eleParent = document.getElementsByClassName(e);\r\n if(!eleParent) return;\r\n\r\n for(let i = 0; i < eleParent.length; i++) {\r\n if(eleParent[i].classList.contains('is-active')) {\r\n eleParent[i].classList.remove('is-active');\r\n document.body.style.overflowY = \"visible\";\r\n } else {\r\n eleParent[i].classList.add('is-active');\r\n document.body.style.overflowY = \"hidden\";\r\n }\r\n }\r\n}\r\n\r\n// document.addEventListener('DOMContentLoaded', function () {\r\n// hbModal.init();\r\n// });\r\n\n\n\n// WEBPACK FOOTER //\n// ./scripts/components/modal.js","require('jquery-watch');\r\n\r\nexport const helper = {\r\n setBackdropBg(el) {\r\n $('.js-fp-backdrop').css('background-image', `url(${$(el).data('bg')})`);\r\n },\r\n setLongBackdropBg(el) {\r\n $('.js-fp-backdrop .js-long-left-image-video').css('background-image', `url(${$(el).data('bg')})`);\r\n },\r\n videoController(action, videoEl) {\r\n let videoBg = document.getElementById(videoEl.attr('id'));\r\n\r\n if(!videoBg) return;\r\n\r\n switch (action) {\r\n case 'play':\r\n $(videoEl).removeClass('d-none');\r\n videoBg.play();\r\n break;\r\n\r\n case 'stop':\r\n $(videoEl).addClass('d-none');\r\n videoBg.currentTime = 0;\r\n videoBg.pause();\r\n break;\r\n\r\n default:\r\n break;\r\n }\r\n },\r\n appendFooter() {\r\n $('.js-append-footer').append($('footer'));\r\n\r\n // if ($(window).innerWidth() >= 979.89) {\r\n // $('.js-fp-wrapper').find('footer').addClass('section fp-auto-height');\r\n // } else {\r\n // $('.js-fp-wrapper').find('footer').removeClass('section fp-auto-height');\r\n // }\r\n\r\n helper.observer();\r\n },\r\n removeClasser() {\r\n $('.js-remove-class-section > section').removeClass(\"section\");\r\n },\r\n appendBottle() {\r\n if ($(window).innerWidth() <= 1024 || $('#sustainability').hasClass('is-mobile')) {\r\n // if($('#sustainability').hasClass('is-mobile')) {\r\n\r\n // }\r\n\r\n let eleBttle = document.getElementById('js-bottles').cloneNode(true);\r\n if(!eleBttle) return;\r\n\r\n document.getElementsByClassName('js-mobile-append')[0].insertBefore(eleBttle, document.getElementsByClassName('js-mobile-append')[0].childNodes[0]);\r\n }\r\n },\r\n hasScrollable() {\r\n if ($(window).innerWidth() <= 1024 || $('#sustainability').hasClass('is-mobile')) {\r\n // console.log();\r\n if(document.getElementsByClassName('js-append-footer')[0].querySelectorAll('.fp-scrollable').length <= 0) {\r\n document.getElementById('js-static-image').style.display = \"none\";\r\n document.getElementsByClassName('js-append-footer')[0].classList.add('without-scrollable');\r\n }\r\n }\r\n },\r\n observer(e) {\r\n // console.log(e);\r\n let currSlide;\r\n if(typeof e != 'undefined') {\r\n currSlide = e;\r\n }\r\n setTimeout(() => {\r\n $('.js-append-footer .fp-scroller').watch({\r\n // specify CSS styles or attribute names to monitor\r\n properties: \"transform\",\r\n\r\n // callback function when a change is detected\r\n callback: function (data, i) {\r\n let self, styleString;\r\n self = $(this);\r\n styleString = self.attr('style');\r\n\r\n if (styleString.includes('translate(0px, 0px)')) {\r\n // fullpage_api.moveSectionUp();\r\n window.requestAnimationFrame(function () { fullpage_api.moveTo(currSlide) });\r\n }\r\n }\r\n });\r\n }, 500);\r\n },\r\n scrollIconCtrl(origin, destination, direction) {\r\n destination.index <= 1 ? $('.js-btn-scroll').removeClass('fade') : $('.js-btn-scroll').addClass('fade');\r\n }\r\n}\r\n\n\n\n// WEBPACK FOOTER //\n// ./scripts/components/featured/lib/helper.js","/// \r\n/*\r\njquery-watcher \r\nVersion 1.21 - 1/19/2016\r\n© 2014-2016 Rick Strahl, West Wind Technologies \r\nwww.west-wind.com\r\nLicensed under MIT License\r\nhttp://en.wikipedia.org/wiki/MIT_License\r\n*/\r\n(function($, undefined) {\r\n $.fn.watch = function(options) {\r\n /// \r\n /// Allows you to monitor changes in a specific\r\n /// CSS property of an element by polling the value.\r\n /// You can also monitor attributes (using attr_ prefix)\r\n /// or property changes (using prop_ prefix).\r\n /// when the value changes a function is called.\r\n /// The callback is fired in the context\r\n /// of the selected element (ie. this)\r\n ///\r\n /// Uses the MutationObserver API of the DOM and\r\n /// falls back to setInterval to poll for changes\r\n /// for non-compliant browsers (pre IE 11)\r\n /// \r\n /// \r\n /// Option to set - see comments in code below.\r\n /// \r\n /// \r\n var opt = $.extend({\r\n // CSS styles or Attributes to monitor as comma delimited list\r\n // For attributes use a attr_ prefix\r\n // Example: \"top,left,opacity,attr_class\"\r\n properties: null,\r\n\r\n // interval for 'manual polling' (IE 10 and older) \r\n interval: 100,\r\n\r\n // a unique id for this watcher instance\r\n id: \"_watcher_\" + new Date().getTime(),\r\n\r\n // flag to determine whether child elements are watched \r\n watchChildren: false,\r\n\r\n // Callback function if not passed in callback parameter \r\n callback: null\r\n }, options);\r\n\r\n return this.each(function() {\r\n var el = this;\r\n var el$ = $(this);\r\n var fnc = function(mRec, mObs) {\r\n __watcher.call(el, opt.id, mRec, mObs);\r\n };\r\n\r\n var data = {\r\n id: opt.id,\r\n props: opt.properties.split(','),\r\n vals: [opt.properties.split(',').length],\r\n func: opt.callback, // user function\r\n fnc: fnc, // __watcher internal\r\n origProps: opt.properties,\r\n interval: opt.interval,\r\n intervalId: null\r\n };\r\n // store initial props and values\r\n $.each(data.props, function(i) {\r\n var propName = data.props[i];\r\n if (data.props[i].startsWith('attr_'))\r\n data.vals[i] = el$.attr(propName.replace('attr_', ''));\r\n else if (propName.startsWith('prop_'))\r\n data.vals[i] = el$.prop(propName.replace('props_', ''));\r\n else\r\n data.vals[i] = el$.css(propName);\r\n });\r\n\r\n el$.data(opt.id, data);\r\n\r\n hookChange(el$, opt.id, data);\r\n });\r\n\r\n function hookChange(element$, id, data) {\r\n element$.each(function() {\r\n var el$ = $(this);\r\n\r\n if (window.MutationObserver) {\r\n var observer = el$.data('__watcherObserver' + opt.id);\r\n if (observer == null) {\r\n observer = new MutationObserver(data.fnc);\r\n el$.data('__watcherObserver' + opt.id, observer);\r\n }\r\n observer.observe(this, {\r\n attributes: true,\r\n subtree: opt.watchChildren,\r\n childList: opt.watchChildren,\r\n characterData: true\r\n });\r\n } else\r\n data.intervalId = setInterval(data.fnc, opt.interval);\r\n });\r\n }\r\n\r\n function __watcher(id, mRec, mObs) {\r\n var el$ = $(this);\r\n var w = el$.data(id);\r\n if (!w) return;\r\n var el = this;\r\n\r\n if (!w.func)\r\n return;\r\n\r\n var changed = false;\r\n var i = 0;\r\n for (i; i < w.props.length; i++) {\r\n var key = w.props[i];\r\n\r\n var newVal = \"\";\r\n if (key.startsWith('attr_'))\r\n newVal = el$.attr(key.replace('attr_', ''));\r\n else if (key.startsWith('prop_'))\r\n newVal = el$.prop(key.replace('prop_', ''));\r\n else\r\n newVal = el$.css(key);\r\n\r\n if (newVal == undefined)\r\n continue;\r\n\r\n if (w.vals[i] != newVal) {\r\n w.vals[i] = newVal;\r\n changed = true;\r\n break;\r\n }\r\n }\r\n if (changed) {\r\n // unbind to avoid recursive events\r\n el$.unwatch(id);\r\n\r\n // call the user handler\r\n w.func.call(el, w, i, mRec, mObs);\r\n\r\n // rebind the events\r\n hookChange(el$, id, w);\r\n }\r\n }\r\n }\r\n $.fn.unwatch = function(id) {\r\n this.each(function() {\r\n var el = $(this);\r\n var data = el.data(id);\r\n try {\r\n if (window.MutationObserver) {\r\n var observer = el.data(\"__watcherObserver\" + id);\r\n if (observer) {\r\n observer.disconnect();\r\n el.removeData(\"__watcherObserver\" + id);\r\n }\r\n } else\r\n clearInterval(data.intervalId);\r\n }\r\n // ignore if element was already unbound\r\n catch (e) {\r\n }\r\n });\r\n return this;\r\n }\r\n String.prototype.startsWith = function(sub) {\r\n if (sub === null || sub === undefined) return false;\r\n return sub == this.substr(0, sub.length);\r\n }\r\n }\r\n)(jQuery, undefined);\n\n\n//////////////////\n// WEBPACK FOOTER\n// D:/www/mollers/wp-content/themes/mollers/node_modules/jquery-watch/jquery-watch.js\n// module id = 7\n// module chunks = 1 2 3","/*!\n * fullPage 3.0.7 - Extensions 0.1.8\n * https://github.com/alvarotrigo/fullPage.js\n * @license http://alvarotrigo.com/fullPage/extensions/#license\n *\n * Copyright (C) 2018 alvarotrigo.com - A project by Alvaro Trigo\n */\n!function(e,t,n,o,r){\"function\"==typeof define&&define.amd?define(function(){return e.fullpage=o(t,n),e.fullpage}):\"object\"==typeof exports?module.exports=o(t,n):t.fullpage=o(t,n)}(this,window,document,function(on,rn){\"use strict\";var ln=\"fullpage-wrapper\",an=\".\"+ln,sn=\"fp-responsive\",cn=\"fp-notransition\",un=\"fp-destroyed\",fn=\"fp-enabled\",dn=\"fp-viewing\",vn=\"active\",pn=\".\"+vn,hn=\"fp-completely\",gn=\"fp-section\",mn=\".\"+gn,Sn=mn+pn,bn=\"fp-tableCell\",wn=\".\"+bn,yn=\"fp-auto-height\",En=\"fp-normal-scroll\",xn=\"fp-nav\",An=\"#\"+xn,Ln=\"fp-tooltip\",Mn=\"fp-slide\",Tn=\".\"+Mn,On=Tn+pn,kn=\"fp-slides\",Cn=\".\"+kn,Hn=\"fp-slidesContainer\",Rn=\".\"+Hn,zn=\"fp-table\",In=\"fp-slidesNav\",Bn=\".\"+In,Nn=Bn+\" a\",e=\"fp-controlArrow\",jn=\".\"+e,Pn=\"fp-prev\",Wn=jn+\".fp-prev\",Yn=jn+\".fp-next\";function Dn(e,t){on.console&&on.console[e]&&on.console[e](\"fullPage: \"+t)}function Xn(e,t){return(t=1'+Te(r,\"Section\")+\"\";var l=g.navigationTooltips[r];void 0!==l&&\"\"!==l&&(o+='
'+l+\"
\"),o+=\"\"}Xn(\"ul\",n)[0].innerHTML=o,Un(Xn(An),{\"margin-top\":\"-\"+Xn(An)[0].offsetHeight/2+\"px\"}),oo(Xn(\"a\",Xn(\"li\",Xn(An)[0])[qn(Xn(Sn)[0],mn)]),vn)}(),Xn('iframe[src*=\"youtube.com/embed/\"]',w).forEach(function(e){var t,n,o;n=\"enablejsapi=1\",o=(t=e).getAttribute(\"src\"),t.setAttribute(\"src\",o+(/\\?/.test(o)?\"&\":\"?\")+n)}),g.fadingEffect&&S.fadingEffect&&S.fadingEffect.apply(),Ft(\"cards\")&&S.cards.init(),g.scrollOverflow&&(p=g.scrollOverflowHandler.init(g))}(),ae(!0),se(!0),ne(g.autoScrolling,\"internal\"),xt(),Pt(),\"complete\"===rn.readyState&&at(),on.addEventListener(\"load\",at),g.scrollOverflow||Oe(),function(){for(var e=1;e<4;e++)C=setTimeout(Ee,350*e)}(),on.addEventListener(\"scroll\",ke),on.addEventListener(\"hashchange\",st),on.addEventListener(\"blur\",ht),on.addEventListener(\"resize\",yt),rn.addEventListener(\"keydown\",ut),rn.addEventListener(\"keyup\",ft),[\"click\",\"touchstart\"].forEach(function(e){rn.addEventListener(e,be)}),g.normalScrollElements&&([\"mouseenter\",\"touchstart\"].forEach(function(e){we(e,!1)}),[\"mouseleave\",\"touchend\"].forEach(function(e){we(e,!0)})),Ft(\"dragAndMove\")&&S.dragAndMove.turnOffTouch());var Z,G,F,U=!1,Q=0,_=0,K=0,J=0,$=(new Date).getTime(),q=0,ee=0,te=y;return S}function ne(e,t){e||Xt(0),Kt(\"autoScrolling\",e,t);var n=Xn(Sn)[0];if(g.autoScrolling&&!g.scrollBar)Un(r,{overflow:\"hidden\",height:\"100%\"}),oe(Y.recordHistory,\"internal\"),Un(w,{\"-ms-touch-action\":\"none\",\"touch-action\":\"none\"}),null!=n&&Xt(n.offsetTop);else if(Un(r,{overflow:\"visible\",height:\"initial\"}),oe(!!g.autoScrolling&&Y.recordHistory,\"internal\"),Un(w,{\"-ms-touch-action\":\"\",\"touch-action\":\"\"}),Gt(w),null!=n){var o=Ge(n.offsetTop);o.element.scrollTo(0,o.options)}mo(w,\"setAutoScrolling\",e)}function oe(e,t){Kt(\"recordHistory\",e,t)}function re(e,t){\"internal\"!==t&&Ft(\"fadingEffect\")&&S.fadingEffect.update(e),Ft(\"cards\")&&S.cards.update(e),Kt(\"scrollingSpeed\",e,t)}function ie(e,t){Kt(\"fitToSection\",e,t)}function le(e){e?(function(){var e,t=\"\";on.addEventListener?e=\"addEventListener\":(e=\"attachEvent\",t=\"on\");var n=\"onwheel\"in rn.createElement(\"div\")?\"wheel\":void 0!==rn.onmousewheel?\"mousewheel\":\"DOMMouseScroll\",o=!!N&&{passive:!1};\"DOMMouseScroll\"==n?rn[e](t+\"MozMousePixelScroll\",je,o):rn[e](t+n,je,o)}(),w.addEventListener(\"mousedown\",dt),w.addEventListener(\"mouseup\",vt)):(rn.addEventListener?(rn.removeEventListener(\"mousewheel\",je,!1),rn.removeEventListener(\"wheel\",je,!1),rn.removeEventListener(\"MozMousePixelScroll\",je,!1)):rn.detachEvent(\"onmousewheel\",je),w.removeEventListener(\"mousedown\",dt),w.removeEventListener(\"mouseup\",vt))}function ae(t,e){void 0!==e?(e=e.replace(/ /g,\"\").split(\",\")).forEach(function(e){Zt(t,e,\"m\")}):Zt(t,\"all\",\"m\"),mo(w,\"setAllowScrolling\",{value:t,directions:e})}function se(e){e?(le(!0),function(){if(i||u){g.autoScrolling&&(m.removeEventListener(z.touchmove,Re,{passive:!1}),m.addEventListener(z.touchmove,Re,{passive:!1}));var e=g.touchWrapper;e.removeEventListener(z.touchstart,Be),e.removeEventListener(z.touchmove,ze,{passive:!1}),e.addEventListener(z.touchstart,Be),e.addEventListener(z.touchmove,ze,{passive:!1})}}()):(le(!1),function(){if(i||u){g.autoScrolling&&(m.removeEventListener(z.touchmove,ze,{passive:!1}),m.removeEventListener(z.touchmove,Re,{passive:!1}));var e=g.touchWrapper;e.removeEventListener(z.touchstart,Be),e.removeEventListener(z.touchmove,ze,{passive:!1})}}())}function ce(t,e){void 0!==e?(e=e.replace(/ /g,\"\").split(\",\")).forEach(function(e){Zt(t,e,\"k\")}):(Zt(t,\"all\",\"k\"),g.keyboardScrolling=t)}function ue(){var e=Qn(Xn(Sn)[0],mn);e||!g.loopTop&&!g.continuousVertical||(e=$n(Xn(mn))),null!=e&&De(e,null,!0)}function fe(){var e=_n(Xn(Sn)[0],mn);e||!g.loopBottom&&!g.continuousVertical||(e=Xn(mn)[0]),null!=e&&De(e,null,!1)}function de(e,t){re(0,\"internal\"),ve(e,t),re(Y.scrollingSpeed,\"internal\")}function ve(e,t){var n=Rt(e);void 0!==t?zt(e,t):null!=n&&De(n)}function pe(e){Pe(\"right\",e)}function he(e){Pe(\"left\",e)}function ge(e){if(!Zn(w,un)){E=!0,y=Gn(),f=Fn();for(var t=Xn(mn),n=0;n'),wo('
')],uo(Xn(Cn,l)[0],a),\"#fff\"!==g.controlArrowColor&&(Un(Xn(Yn,l),{\"border-color\":\"transparent transparent transparent \"+g.controlArrowColor}),Un(Xn(Wn,l),{\"border-color\":\"transparent \"+g.controlArrowColor+\" transparent transparent\"})),g.loopHorizontal||eo(Xn(Wn,l))),g.slidesNavigation&&function(e,t){io(wo('
    '),e);var n=Xn(Bn,e)[0];oo(n,\"fp-\"+g.slidesNavPosition);for(var o=0;o'+Te(o,\"Slide\")+\"\"),Xn(\"ul\",n)[0]);Un(n,{\"margin-left\":\"-\"+n.innerWidth/2+\"px\"}),oo(Xn(\"a\",Xn(\"li\",n)[0]),vn)}(e,n)),t.forEach(function(e){Un(e,{width:r+\"%\"}),g.verticalCentered&&kt(e)});var c=Xn(On,e)[0];null!=c&&(0!==qn(Xn(Sn),mn)||0===qn(Xn(Sn),mn)&&0!==qn(c))?(Dt(c,\"internal\"),oo(c,\"fp-initial\")):oo(t[0],vn)}function Le(e){return g.offsetSections&&S.offsetSections?Math.round(S.offsetSections.getWindowHeight(e)):Gn()}function Me(e,t){t||null!=Xn(Sn)[0]||oo(e,vn),o=Xn(Sn)[0],Un(e,{height:Le(e)+\"px\"}),g.paddingTop&&Un(e,{\"padding-top\":g.paddingTop}),g.paddingBottom&&Un(e,{\"padding-bottom\":g.paddingBottom}),void 0!==g.sectionsColor[t]&&Un(e,{\"background-color\":g.sectionsColor[t]}),void 0!==g.anchors[t]&&e.setAttribute(\"data-anchor\",g.anchors[t])}function Te(e,t){return g.navigationTooltips[e]||g.anchors[e]||t+\" \"+(e+1)}function Oe(){var e,t,n=Xn(Sn)[0];oo(n,hn),_e(n),Qe(),Je(n),g.scrollOverflow&&g.scrollOverflowHandler.afterLoad(),e=ct(),t=Rt(e.section),e.section&&t&&(void 0===t||qn(t)!==qn(o))||!go(g.afterLoad)||Xe(\"afterLoad\",{activeSection:n,element:n,direction:null,anchorLink:n.getAttribute(\"data-anchor\"),sectionIndex:qn(n,mn)}),go(g.afterRender)&&Xe(\"afterRender\"),mo(w,\"afterRender\")}function ke(){var e;if(mo(w,\"onScroll\"),(!g.autoScrolling||g.scrollBar||Ft(\"dragAndMove\"))&&!_t()){var t=Ft(\"dragAndMove\")?Math.abs(S.dragAndMove.getCurrentScroll()):vo(),n=0,o=t+Gn()/2,r=(Ft(\"dragAndMove\")?S.dragAndMove.getDocumentHeight():m.offsetHeight-Gn())===t,i=Xn(mn);if(r)n=i.length-1;else if(t)for(var l=0;lMath.abs(Q-K)?!a&&Math.abs(_-J)>Fn()/100*g.touchSensitivity&&(J<_?v.m.right&&pe(t):v.m.left&&he(t)):g.autoScrolling&&x&&Math.abs(Q-K)>on.innerHeight/100*g.touchSensitivity&&(K>4,n=(15&r)<<4|(i=c.indexOf(e.charAt(s++)))>>2,o=(3&i)<<6|(l=c.indexOf(e.charAt(s++))),a+=String.fromCharCode(t),64!=i&&(a+=String.fromCharCode(n)),64!=l&&(a+=String.fromCharCode(o));return a=function(e){for(var t,n=\"\",o=0,r=0,i=0;oee&&v.m.down&&fe()),ee=e.pageY)}function mt(e,t,n){var o=co(e,mn),r={slides:e,destiny:t,direction:n,destinyPos:{left:t.offsetLeft},slideIndex:qn(t),section:o,sectionIndex:qn(o,mn),anchorLink:o.getAttribute(\"data-anchor\"),slidesNav:Xn(Bn,o)[0],slideAnchor:jt(t),prevSlide:Xn(On,o)[0],prevSlideIndex:qn(Xn(On,o)[0]),localIsResizing:E};r.xMovement=Ot(r.prevSlideIndex,r.slideIndex),r.direction=r.direction?r.direction:r.xMovement,r.localIsResizing||(x=!1),Ut(\"parallax\",\"applyHorizontal\",r),Ut(\"cards\",\"apply\",r),g.onSlideLeave&&!r.localIsResizing&&\"none\"!==r.xMovement&&go(g.onSlideLeave)&&!1===Xe(\"onSlideLeave\",r)?a=!1:(oo(t,vn),ro(po(t),vn),r.localIsResizing||(qe(r.prevSlide),_e(t)),St(r),Zn(o,vn)&&!r.localIsResizing&&Bt(r.slideIndex,r.slideAnchor,r.anchorLink,r.sectionIndex),S.continuousHorizontal&&S.continuousHorizontal.apply(r),_t()?bt(r):wt(e,r,!0),g.interlockedSlides&&S.interlockedSlides&&(Ft(\"continuousHorizontal\")&&void 0!==n&&n!==r.xMovement||S.interlockedSlides.apply(r)))}function St(e){!g.loopHorizontal&&g.controlArrows&&(bo(Xn(Wn,e.section),0!==e.slideIndex),bo(Xn(Yn,e.section),null!=Jn(e.destiny)))}function bt(e){var t,n;S.continuousHorizontal&&S.continuousHorizontal.afterSlideLoads(e),t=e.slidesNav,n=e.slideIndex,g.slidesNavigation&&null!=t&&(ro(Xn(pn,t),vn),oo(Xn(\"a\",Xn(\"li\",t)[n]),vn)),e.localIsResizing||(Ut(\"parallax\",\"afterSlideLoads\"),Ut(\"scrollOverflowReset\",\"setPrevious\",e.prevSlide),Ut(\"scrollOverflowReset\",\"reset\"),go(g.afterSlideLoad)&&Xe(\"afterSlideLoad\",e),x=!0,Je(e.destiny)),a=!1,Ft(\"interlockedSlides\")&&S.interlockedSlides.apply(e)}function wt(e,t,n){var o=t.destinyPos;if(g.css3){var r=\"translate3d(-\"+Math.round(o.left)+\"px, 0px, 0px)\";S.test.translate3dH[t.sectionIndex]=r,Un(At(Xn(Rn,e)),Vt(r)),M=setTimeout(function(){n&&bt(t)},g.scrollingSpeed)}else S.test.left[t.sectionIndex]=Math.round(o.left),$t(e,Math.round(o.left),g.scrollingSpeed,function(){n&&bt(t)})}function yt(){clearTimeout(h),h=setTimeout(function(){for(var e=0;e<4;e++)A=setTimeout(Et,200*e)},200)}function Et(){if(mo(w,\"onResize\"),xt(),i){var e=rn.activeElement;if(!So(e,\"textarea\")&&!So(e,\"input\")&&!So(e,\"select\")){var t=Gn();Math.abs(t-te)>20*Math.max(te,t)/100&&(ge(!0),te=t)}}else Ee()}function xt(){var e=g.responsive||g.responsiveWidth,t=g.responsiveHeight,n=e&&on.innerWidth