{"version":3,"sources":["webpack:///webpack/bootstrap 29fd9b8032280a1b5996","webpack:///external \"jQuery\"","webpack:///./scripts/main.js","webpack:///C:/xampp/htdocs/Themes/villakabaya/node_modules/jquery-countdown/dist/jquery.countdown.js","webpack:///C:/xampp/htdocs/Themes/villakabaya/node_modules/owl.carousel2/dist/owl.carousel.js","webpack:///C:/xampp/htdocs/Themes/villakabaya/node_modules/paroller.js/dist/jquery.paroller.js","webpack:///./scripts/autoload/_bootstrap.js","webpack:///C:/xampp/htdocs/Themes/villakabaya/node_modules/bootstrap/dist/js/bootstrap.js","webpack:///C:/xampp/htdocs/Themes/villakabaya/node_modules/popper.js/dist/esm/popper.js","webpack:///(webpack)/buildin/global.js","webpack:///./scripts/util/Router.js","webpack:///./scripts/util/camelCase.js","webpack:///./scripts/routes/common.js","webpack:///./scripts/routes/home.js","webpack:///./scripts/routes/about.js","webpack:///./styles/main.scss"],"names":["const","arguments","this","let"],"mappings":";AAAA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;;AAGA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAK;AACL;AACA;;AAEA;AACA;AACA;AACA,mCAA2B,0BAA0B,EAAE;AACvD,yCAAiC,eAAe;AAChD;AACA;AACA;;AAEA;AACA,8DAAsD,+DAA+D;;AAErH;AACA;;AAEA;AACA;;;;;;;AC7DA,wB;;;;;;;;;;;;;;;ACAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACgB;AACU;AACH;AACF;;;AAGY;;;AAGE;AACE;AACJ;AACI;;;;;;;;AAQrCA,GAAK,CAAC,MAAM,GAAG,IAAI,6DAAM,CAAC;;IAEtB,uEAAM;;IAEN,mEAAI;;IAEJ,uEAAO;CACV,CAAC,CAAC;;;AAGH,MAAM,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,YAAM,eAAM,CAAC,UAAU,EAAE,IAAC,CAAC;;;;;;;;AC/BlD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,IAA0C;AAClD,QAAQ,iCAAO,EAAE,sBAAQ,EAAE,oCAAE,OAAO;AAAA;AAAA;AAAA,oGAAC;AACrC,KAAK;AACL;AACA;AACA,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,IAAI,IAAI,EAAE,MAAM,EAAE,QAAQ,IAAI,QAAQ,EAAE,EAAE,EAAE;AACtE,yBAAyB,EAAE,aAAa,IAAI,EAAE,EAAE,QAAQ,IAAI,QAAQ,EAAE,EAAE,EAAE;AAC1E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gEAAgE;AAChE;AACA;AACA;AACA;AACA,wDAAwD,EAAE,KAAK,GAAG;AAClE;AACA,wDAAwD,SAAS;AACjE,0EAA0E,EAAE,MAAM,GAAG;AACrF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yCAAyC;AACzC;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,0CAA0C;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,sCAAsC;AACtC;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB;AACA;AACA,aAAa;AACb;AACA;AACA,SAAS;AACT;AACA,CAAC,E;;;;;;ACrPD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA,YAAY,mBAAmB;AAC/B,YAAY,OAAO;AACnB;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,4BAA4B;;AAE5B;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA,IAAI;AACJ,GAAG;;AAEH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA,gBAAgB;AAChB;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;AACF;AACA;AACA;AACA;AACA,EAAE;AACF;AACA;AACA;AACA;AACA,EAAE;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,EAAE;AACF;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA,EAAE;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA,EAAE;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,EAAE;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,EAAE;AACF;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA,EAAE;AACF;AACA;AACA;AACA;AACA,EAAE;AACF;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;AACF;AACA;AACA;AACA;AACA,EAAE;AACF;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,4CAA4C,OAAO;AACnD;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,EAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,yBAAyB;AACzB,GAAG;AACH;AACA;AACA;AACA;AACA,IAAI;;AAEJ,yBAAyB;AACzB;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,0BAA0B,YAAY,oCAAoC,EAAE;AAC5E;AACA;AACA;AACA,2BAA2B,YAAY,yCAAyC,EAAE;AAClF;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,cAAc,mBAAmB;AACjC;AACA;AACA,uCAAuC,gBAAgB;;AAEvD;AACA;AACA;AACA;;AAEA,4BAA4B,sBAAsB;;AAElD;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC,iBAAiB;AAClD;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,YAAY,UAAU;AACtB,cAAc,OAAO;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,yEAAyE,eAAe;AACxF;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,YAAY,MAAM;AAClB;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA,YAAY,MAAM;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,YAAY,MAAM;AAClB;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA,wDAAwD,cAAc,EAAE;AACxE;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,YAAY,OAAO;AACnB,YAAY,OAAO;AACnB,aAAa,OAAO;AACpB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,IAAI;AACJ;;AAEA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,YAAY,OAAO;AACnB;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,IAAI;AACJ,GAAG;AACH;AACA;AACA,IAAI;AACJ,GAAG;AACH;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;AACA,YAAY,OAAO;AACnB,cAAc,QAAQ;AACtB;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,YAAY,OAAO;AACnB,cAAc,OAAO;AACrB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA,uCAAuC,YAAY,oCAAoC,EAAE;;AAEzF;AACA;AACA;;AAEA;;AAEA;;AAEA,4BAA4B,YAAY,yCAAyC,EAAE;AACnF;;AAEA;AACA;;AAEA;AACA;AACA,YAAY,OAAO;AACnB,cAAc,eAAe;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA,kDAAkD,WAAW;AAC7D;;AAEA;AACA;AACA;AACA,YAAY,OAAO;AACnB;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,YAAY,OAAO;AACnB,YAAY,QAAQ;AACpB,cAAc,OAAO;AACrB;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,YAAY,OAAO;AACnB,cAAc,OAAO;AACrB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,YAAY,QAAQ;AACpB,cAAc;AACd;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,YAAY,QAAQ;AACpB,cAAc;AACd;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,YAAY,OAAO;AACnB,aAAa,sBAAsB;AACnC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,YAAY,OAAO;AACnB,aAAa,sBAAsB;AACnC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,YAAY,OAAO;AACnB,cAAc,eAAe;AAC7B;AACA;AACA;AACA;AACA,0BAA0B;;AAE1B;AACA,8CAA8C,gBAAgB;AAC9D;;AAEA,6CAA6C,wCAAwC;AACrF;;AAEA;AACA;AACA;AACA,YAAY,OAAO;AACnB,cAAc,OAAO;AACrB;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,YAAY,OAAO;AACnB,cAAc,sBAAsB;AACpC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,IAAI;AACJ;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,YAAY,OAAO;AACnB,YAAY,OAAO;AACnB,YAAY,OAAO;AACnB,cAAc,OAAO;AACrB;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,YAAY,OAAO;AACnB,YAAY,OAAO;AACnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,YAAY,OAAO;AACnB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,YAAY,OAAO;AACnB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,YAAY,MAAM;AAClB;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,aAAa,OAAO;AACpB;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,YAAY,0BAA0B;AACtC;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,YAAY,0BAA0B;AACtC,YAAY,OAAO;AACnB;AACA;AACA;;AAEA;AACA;;AAEA,uBAAuB,uCAAuC;;AAE9D;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA,yBAAyB,uCAAuC;AAChE;;AAEA;AACA;AACA;AACA;AACA,YAAY,OAAO;AACnB;AACA;AACA;;AAEA;AACA;AACA;;AAEA,0BAA0B,qDAAqD;;AAE/E;AACA;AACA;;AAEA;;AAEA,2BAA2B,oCAAoC;AAC/D;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,YAAY,OAAO;AACnB,YAAY,OAAO;AACnB,YAAY,OAAO;AACnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,YAAY,YAAY;AACxB,YAAY,OAAO;AACnB,YAAY,SAAS;AACrB,YAAY,QAAQ;AACpB;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA,YAAY,YAAY;AACxB,YAAY,OAAO;AACnB,YAAY,SAAS;AACrB,YAAY,QAAQ;AACpB;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,YAAY,OAAO;AACnB,YAAY,EAAE;AACd,YAAY,OAAO;AACnB,YAAY,OAAO;AACnB,YAAY,QAAQ;AACpB,cAAc,MAAM;AACpB;AACA;AACA;AACA,UAAU;AACV,GAAG;AACH,kDAAkD,WAAW;AAC7D;AACA;AACA;AACA,aAAa,sBAAsB;AACnC;;AAEA;AACA;AACA;AACA;AACA;AACA,IAAI;;AAEJ,kBAAkB,mCAAmC;AACrD;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA,YAAY,OAAO;AACnB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;AACA;AACA,YAAY,eAAe;AAC3B;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA,YAAY,eAAe;AAC3B;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA,YAAY,MAAM;AAClB,cAAc,OAAO;AACrB;AACA;AACA,gBAAgB;;AAEhB;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,YAAY,0DAA0D;AACtE,cAAc,QAAQ;AACtB;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,YAAY,OAAO;AACnB,YAAY,OAAO;AACnB,cAAc,OAAO;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,oBAAoB,oCAAoC;AACxD;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN,KAAK;AACL;;AAEA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;;AAEA,CAAC,kBAAkB,oCAAa;;AAEhC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA,YAAY,IAAI;AAChB;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;;AAEA;AACA;AACA;AACA,YAAY;AACZ;AACA;;AAEA;AACA;AACA;AACA,YAAY;AACZ;AACA;;AAEA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;;AAEA;AACA,kCAAkC;;AAElC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA,CAAC,kBAAkB,oCAAa;;AAEhC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA,YAAY,IAAI;AAChB;AACA;;AAEA;AACA;AACA;AACA,YAAY;AACZ;AACA;;AAEA;AACA;AACA;AACA,YAAY;AACZ;AACA;;AAEA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,qCAAqC,eAAe;;AAEpD;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;;AAEA;AACA,kCAAkC;;AAElC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,YAAY,OAAO;AACnB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,+BAA+B,8BAA8B;;AAE7D;AACA;AACA;AACA,mCAAmC,8BAA8B;AACjE,KAAK;AACL,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA,MAAM;AACN,mCAAmC,8BAA8B;AACjE,KAAK;AACL;AACA;AACA,GAAG;;AAEH;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA,CAAC,kBAAkB,oCAAa;;AAEhC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA,YAAY,IAAI;AAChB;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;;AAEA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;;AAEA;AACA,kCAAkC;;AAElC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA,CAAC,kBAAkB,oCAAa;;AAEhC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA,YAAY,IAAI;AAChB;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;;AAEA;AACA;AACA;AACA,YAAY;AACZ;AACA;;AAEA;AACA;AACA;AACA,YAAY;AACZ;AACA;;AAEA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA,0BAA0B,0DAA0D;AACpF;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,IAAI;AACJ;;AAEA;AACA,kCAAkC;;AAElC;AACA;;AAEA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,YAAY,OAAO;AACnB,YAAY,OAAO;AACnB;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA,MAAM;AACN;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA,IAAI;AACJ;AACA,IAAI;AACJ;AACA,IAAI;AACJ;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,YAAY,OAAO;AACnB,YAAY,OAAO;AACnB;AACA;AACA;AACA;AACA;AACA;AACA,kFAAkF,8BAA8B;AAChH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;AACL,0DAA0D;AAC1D;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,YAAY,MAAM;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA,CAAC,kBAAkB,oCAAa;;AAEhC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA,YAAY,IAAI;AAChB;AACA;AACA;AACA,iCAAiC;AACjC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA,IAAI;AACJ;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,cAAc;AACd;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,WAAW,sBAAsB;AACjC;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,oBAAoB,aAAa;AACjC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA,CAAC,kBAAkB,oCAAa;;AAEhC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA,YAAY,IAAI;AAChB;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;;AAEA;AACA;AACA,YAAY;AACZ;AACA;;AAEA;AACA;AACA,YAAY;AACZ;AACA;;AAEA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA,IAAI;AACJ;;AAEA;AACA;;AAEA;AACA,kCAAkC;AAClC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,YAAY,OAAO;AACnB,YAAY,OAAO;AACnB;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,YAAY,OAAO;AACnB,YAAY,OAAO;AACnB,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA,CAAC,kBAAkB,oCAAa;;AAEhC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;;AAEA;AACA;AACA;AACA,YAAY,IAAI;AAChB;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;;AAEA;AACA;AACA;AACA,YAAY;AACZ;AACA;;AAEA;AACA;AACA;AACA,YAAY;AACZ;AACA;;AAEA;AACA;AACA;AACA,YAAY;AACZ;AACA;;AAEA;AACA;AACA;AACA,YAAY;AACZ;AACA;;AAEA;AACA;AACA,YAAY;AACZ;AACA;;AAEA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;;AAEA;AACA,kCAAkC;;AAElC;AACA;AACA;;AAEA;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;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;;AAEJ;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA,gCAAgC,WAAW;AAC3C;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA,IAAI;AACJ;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,YAAY,MAAM;AAClB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,YAAY,OAAO;AACnB;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,YAAY,OAAO;AACnB;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,YAAY,OAAO;AACnB,YAAY,OAAO;AACnB,YAAY,QAAQ;AACpB;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;;AAEA,CAAC,kBAAkB,oCAAa;;AAEhC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;;AAEA;AACA;AACA;AACA,YAAY,IAAI;AAChB;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;;AAEA;AACA;AACA;AACA,YAAY;AACZ;AACA;;AAEA;AACA;AACA,YAAY;AACZ;AACA;;AAEA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA,OAAO;;AAEP;AACA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;;AAEA;AACA,kCAAkC;;AAElC;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA,CAAC,kBAAkB,oCAAa;;AAEhC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,IAAI;AACJ;AACA;AACA,IAAI;AACJ;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA,CAAC,kBAAkB,oCAAa;;;;;;;;ACxsGhC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,IAA0C;AAClD,QAAQ,iCAAqB,CAAC,sBAAQ,CAAC,oCAAE,OAAO;AAAA;AAAA;AAAA,oGAAC;AACjD,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,6BAA6B,oDAAoD;AACjF,SAAS;AACT;AACA,6BAA6B,oDAAoD;AACjF,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;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,aAAa;AACb;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;;AAEA;AACA;AACA,6BAA6B,+BAA+B;AAC5D,SAAS;AACT;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA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CA,aAAa,SAAS;AACtB,YAAY;AACZ;AACA;;AAEA;AACA;AACA;AACA;AACA,cAAc,IAAI;AAClB,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,cAAc,OAAO;AACrB,cAAc,OAAO;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,cAAc,QAAQ;AACtB,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,cAAc,QAAQ;AACtB,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,WAAW,OAAO;AAClB,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,cAAc,QAAQ;AACtB,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,cAAc,QAAQ;AACtB,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,cAAc,QAAQ;AACtB,cAAc,QAAQ;AACtB,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,cAAc,QAAQ;AACtB,cAAc,OAAO;AACrB,aAAa,OAAO;AACpB;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,WAAW,OAAO;AAClB,WAAW,YAAY;AACvB,WAAW,QAAQ;AACnB,YAAY,OAAO;AACnB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,WAAW,oBAAoB;AAC/B;AACA,WAAW,OAAO;AAClB,YAAY,OAAO;AACnB;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,mBAAmB,kBAAkB;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,CAAC;;;;;;AAMD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,GAAG;AACH;AACA;;AAEA;AACA;;AAEA;AACA,iBAAiB,sBAAsB;AACvC;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,cAAc,OAAO;AACrB,aAAa,OAAO;AACpB;AACA;AACA,oBAAoB;AACpB;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA,WAAW,YAAY;AACvB,YAAY,OAAO;AACnB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,cAAc,QAAQ;AACtB,cAAc,QAAQ;AACtB,aAAa,QAAQ;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,cAAc,QAAQ;AACtB,aAAa,QAAQ;AACrB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,WAAW,YAAY;AACvB,WAAW,YAAY;AACvB,WAAW,OAAO;AAClB,WAAW,YAAY;AACvB,WAAW,QAAQ;AACnB,aAAa,OAAO;AACpB;AACA;AACA;;AAEA;;AAEA,oBAAoB;AACpB;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,KAAK;AACL;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,cAAc,OAAO;AACrB,cAAc,OAAO;AACrB,aAAa,OAAO;AACpB;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,KAAK;AACL;AACA,KAAK;AACL,GAAG;AACH;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,WAAW,OAAO;AAClB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,WAAW,QAAQ;AACnB,aAAa,OAAO;AACpB;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,cAAc,QAAQ;AACtB,aAAa,OAAO;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,cAAc,OAAO;AACrB,aAAa,OAAO;AACpB;AACA;AACA,cAAc;AACd;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA,WAAW,OAAO;AAClB,WAAW,YAAY;AACvB,WAAW,OAAO;AAClB,WAAW,OAAO;AAClB,aAAa,OAAO;AACpB;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,cAAc,MAAM;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,cAAc,MAAM;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,WAAW,WAAW;AACtB,WAAW,MAAM;AACjB,WAAW,OAAO;AAClB,aAAa;AACb;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,iDAAiD;AACjD;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAG;;AAEH;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,cAAc;AACd,mBAAmB;AACnB,kBAAkB;AAClB;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA,cAAc,OAAO;AACrB,aAAa,OAAO;AACpB;AACA;AACA;AACA;;AAEA,iBAAiB,qBAAqB;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,cAAc,QAAQ;AACtB,aAAa;AACb;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,4CAA4C,gBAAgB;;AAE5D;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sEAAsE,gBAAgB;;AAEtF;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,WAAW,EAAE;AACb,YAAY;AACZ;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,cAAc,QAAQ;AACtB,cAAc,OAAO;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA;AACA,cAAc,QAAQ;AACtB,cAAc,OAAO;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA;AACA,cAAc,OAAO;AACrB,cAAc,OAAO;AACrB,cAAc,OAAO;AACrB,cAAc,OAAO;AACrB,aAAa,OAAO;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,YAAY;AACvB,WAAW,YAAY;AACvB,WAAW,OAAO;AAClB;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,qBAAqB,yDAAyD;;AAE9E;AACA;;AAEA;AACA;AACA;AACA,cAAc,OAAO;AACrB,cAAc,QAAQ;AACtB,aAAa,OAAO;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,cAAc,OAAO;AACrB,cAAc,OAAO;AACrB,aAAa,OAAO;AACpB;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,+BAA+B;AAC/B,2BAA2B;AAC3B,gCAAgC;;AAEhC;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,WAAW,MAAM;AACjB,WAAW,OAAO;AAClB,WAAW,OAAO;AAClB,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,cAAc,OAAO;AACrB,cAAc,OAAO;AACrB,aAAa,OAAO;AACpB;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,gDAAgD;;AAEhD;AACA;;AAEA;AACA;AACA;AACA;AACA,cAAc,OAAO;AACrB,aAAa,OAAO;AACpB;AACA;AACA;AACA;AACA,GAAG;AACH;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,UAAU;AACV,UAAU;AACV;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc,OAAO;AACrB,cAAc,QAAQ;AACtB,aAAa,MAAM;AACnB;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,cAAc,OAAO;AACrB,cAAc,OAAO;AACrB,aAAa,OAAO;AACpB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,uCAAuC;;AAEvC;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA;AACA,cAAc,OAAO;AACrB,cAAc,OAAO;AACrB,aAAa,OAAO;AACpB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc,OAAO;AACrB,cAAc,OAAO;AACrB,cAAc,OAAO;AACrB,cAAc,OAAO;AACrB,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,cAAc;AACd;AACA,cAAc,OAAO;AACrB,cAAc,OAAO;AACrB,cAAc,OAAO;AACrB,cAAc,OAAO;AACrB,aAAa,MAAM;AACnB;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA,OAAO;AACP;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL,GAAG;AACH;AACA;;AAEA;AACA;AACA;AACA,cAAc,OAAO;AACrB,cAAc,OAAO;AACrB,cAAc,cAAc;AAC5B;AACA,aAAa,OAAO;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,cAAc,OAAO;AACrB,cAAc,OAAO;AACrB,aAAa,OAAO;AACpB;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,gDAAgD;AAChD;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B;AAC9B,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B;AAC9B;AACA;;AAEA;AACA;AACA,wBAAwB;AACxB,GAAG;;AAEH;;AAEA;AACA;;AAEA;AACA;AACA;AACA,cAAc,OAAO;AACrB,cAAc,OAAO;AACrB,aAAa,OAAO;AACpB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,8BAA8B;AAC9B,4BAA4B;AAC5B;;AAEA,qCAAqC;AACrC;;AAEA;AACA;;AAEA;AACA;AACA;AACA,cAAc,OAAO;AACrB,cAAc,OAAO;AACrB,aAAa,OAAO;AACpB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,cAAc,OAAO;AACrB,cAAc,OAAO;AACrB,aAAa,OAAO;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc,WAAW;AACzB,cAAc,OAAO;AACrB,aAAa,WAAW;AACxB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,OAAO;AACtB;AACA,eAAe,QAAQ;AACvB;AACA,eAAe,WAAW;AAC1B;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,OAAO;AACtB;AACA,eAAe,QAAQ;AACvB;AACA,eAAe,WAAW;AAC1B;AACA,eAAe,cAAc;AAC7B;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,OAAO;AACtB;AACA,eAAe,QAAQ;AACvB;AACA,eAAe,WAAW;AAC1B;AACA;AACA,cAAc,MAAM;AACpB;AACA;AACA;AACA;AACA;AACA,cAAc,OAAO;AACrB;AACA;AACA;AACA;AACA;AACA;AACA,cAAc,mBAAmB;AACjC;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,OAAO;AACtB;AACA,eAAe,QAAQ;AACvB;AACA,eAAe,WAAW;AAC1B;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,OAAO;AACtB;AACA,eAAe,QAAQ;AACvB;AACA,eAAe,WAAW;AAC1B;AACA,eAAe,mBAAmB;AAClC;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,OAAO;AACtB;AACA,eAAe,QAAQ;AACvB;AACA,eAAe,WAAW;AAC1B;AACA;AACA,cAAc,aAAa;AAC3B;AACA;AACA;AACA;AACA;AACA;AACA,cAAc,OAAO;AACrB;AACA;AACA;AACA;AACA,cAAc,mBAAmB;AACjC;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,OAAO;AACtB;AACA,eAAe,QAAQ;AACvB;AACA,eAAe,WAAW;AAC1B;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,OAAO;AACtB;AACA,eAAe,QAAQ;AACvB;AACA,eAAe,WAAW;AAC1B;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,OAAO;AACtB;AACA,eAAe,QAAQ;AACvB;AACA,eAAe,WAAW;AAC1B;AACA;AACA,cAAc,QAAQ;AACtB;AACA;AACA;AACA;AACA;AACA,cAAc,OAAO;AACrB;AACA;AACA;AACA;AACA;AACA,cAAc,OAAO;AACrB;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,OAAO;AACtB;AACA,eAAe,QAAQ;AACvB;AACA,eAAe,WAAW;AAC1B;AACA,eAAe,SAAS;AACxB;AACA;AACA;AACA,cAAc,QAAQ;AACtB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,cAAc,OAAO;AACrB,cAAc,OAAO;AACrB,cAAc,OAAO;AACrB,cAAc,QAAQ;AACtB,cAAc,QAAQ;AACtB,cAAc,YAAY;AAC1B,cAAc,OAAO;AACrB,cAAc,OAAO;AACrB,cAAc,OAAO;AACrB,cAAc,OAAO;AACrB,cAAc,OAAO;AACrB,cAAc,OAAO;AACrB,cAAc,OAAO;AACrB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB;AACzB;AACA,IAAI;AACJ;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,kBAAkB;AAC9B;AACA;;AAEA;AACA;AACA,YAAY,QAAQ;AACpB;AACA;;AAEA;AACA;AACA,YAAY,QAAQ;AACpB;AACA;;AAEA;AACA;AACA;AACA,YAAY,QAAQ;AACpB;AACA;;AAEA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA,kCAAkC;;AAElC;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA,kCAAkC;;AAElC;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;;AAEA;AACA;AACA,WAAW,WAAW;AACtB;;AAEA;AACA;AACA,WAAW,WAAW;AACtB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,4BAA4B;AACzC,aAAa,YAAY;AACzB,aAAa,OAAO;AACpB,cAAc,OAAO;AACrB;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA,cAAc;AACd,8BAA8B;;AAE9B;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,2BAA2B;AAC3B,iDAAiD,uCAAuC,kDAAkD;AAC1I,KAAK;;AAEL;AACA;AACA;AACA;AACA,OAAO;AACP,KAAK;AACL;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc;AACd;AACA;AACA;AACA;;AAEA,GAAG;AACH;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc,SAAS;AACvB;AACA,cAAc,OAAO;AACrB;AACA,cAAc,OAAO;AACrB;AACA;;;AAGA;AACA;AACA;;AAEe,qEAAM,EAAC;AACtB;;;;;;;;ACphFA;;AAEA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA,CAAC;AACD;AACA;AACA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","file":"scripts/main.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/villakabaya/dist/\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 1);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap 29fd9b8032280a1b5996","module.exports = jQuery;\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"jQuery\"\n// module id = 0\n// module chunks = 0 1","// import external dependencies\nimport 'jquery';\nimport 'jquery-countdown';\nimport 'owl.carousel2';\nimport 'paroller.js';\n\n// Import everything from autoload\nimport './autoload/_bootstrap.js'\n\n// import local dependencies\nimport Router from './util/Router';\nimport common from './routes/common';\nimport home from './routes/home';\nimport aboutUs from './routes/about';\n\n// base package\n/*import fontawesome from \"@fortawesome/fontawesome\";\nimport faFacebook from \"@fortawesome/fontawesome-free-brands/faFacebook\";\nimport faTwitter from \"@fortawesome/fontawesome-free-brands/faTwitter\";*/\n\n/** Populate Router instance with DOM routes */\nconst routes = new Router({\n // All pages\n common,\n // Home page\n home,\n // About Us page, note the change from about-us to aboutUs.\n aboutUs,\n});\n\n// Load Events\njQuery(document).ready(() => routes.loadEvents());\n\n\n\n// WEBPACK FOOTER //\n// ./scripts/main.js","/*!\n * The Final Countdown for jQuery v2.2.0 (http://hilios.github.io/jQuery.countdown/)\n * Copyright (c) 2016 Edson Hilios\n * \n * Permission is hereby granted, free of charge, to any person obtaining a copy of\n * this software and associated documentation files (the \"Software\"), to deal in\n * the Software without restriction, including without limitation the rights to\n * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of\n * the Software, and to permit persons to whom the Software is furnished to do so,\n * subject to the following conditions:\n * \n * The above copyright notice and this permission notice shall be included in all\n * copies or substantial portions of the Software.\n * \n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS\n * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR\n * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER\n * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\n * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n */\n(function(factory) {\n \"use strict\";\n if (typeof define === \"function\" && define.amd) {\n define([ \"jquery\" ], factory);\n } else {\n factory(jQuery);\n }\n})(function($) {\n \"use strict\";\n var instances = [], matchers = [], defaultOptions = {\n precision: 100,\n elapse: false,\n defer: false\n };\n matchers.push(/^[0-9]*$/.source);\n matchers.push(/([0-9]{1,2}\\/){2}[0-9]{4}( [0-9]{1,2}(:[0-9]{2}){2})?/.source);\n matchers.push(/[0-9]{4}([\\/\\-][0-9]{1,2}){2}( [0-9]{1,2}(:[0-9]{2}){2})?/.source);\n matchers = new RegExp(matchers.join(\"|\"));\n function parseDateString(dateString) {\n if (dateString instanceof Date) {\n return dateString;\n }\n if (String(dateString).match(matchers)) {\n if (String(dateString).match(/^[0-9]*$/)) {\n dateString = Number(dateString);\n }\n if (String(dateString).match(/\\-/)) {\n dateString = String(dateString).replace(/\\-/g, \"/\");\n }\n return new Date(dateString);\n } else {\n throw new Error(\"Couldn't cast `\" + dateString + \"` to a date object.\");\n }\n }\n var DIRECTIVE_KEY_MAP = {\n Y: \"years\",\n m: \"months\",\n n: \"daysToMonth\",\n d: \"daysToWeek\",\n w: \"weeks\",\n W: \"weeksToMonth\",\n H: \"hours\",\n M: \"minutes\",\n S: \"seconds\",\n D: \"totalDays\",\n I: \"totalHours\",\n N: \"totalMinutes\",\n T: \"totalSeconds\"\n };\n function escapedRegExp(str) {\n var sanitize = str.toString().replace(/([.?*+^$[\\]\\\\(){}|-])/g, \"\\\\$1\");\n return new RegExp(sanitize);\n }\n function strftime(offsetObject) {\n return function(format) {\n var directives = format.match(/%(-|!)?[A-Z]{1}(:[^;]+;)?/gi);\n if (directives) {\n for (var i = 0, len = directives.length; i < len; ++i) {\n var directive = directives[i].match(/%(-|!)?([a-zA-Z]{1})(:[^;]+;)?/), regexp = escapedRegExp(directive[0]), modifier = directive[1] || \"\", plural = directive[3] || \"\", value = null;\n directive = directive[2];\n if (DIRECTIVE_KEY_MAP.hasOwnProperty(directive)) {\n value = DIRECTIVE_KEY_MAP[directive];\n value = Number(offsetObject[value]);\n }\n if (value !== null) {\n if (modifier === \"!\") {\n value = pluralize(plural, value);\n }\n if (modifier === \"\") {\n if (value < 10) {\n value = \"0\" + value.toString();\n }\n }\n format = format.replace(regexp, value.toString());\n }\n }\n }\n format = format.replace(/%%/, \"%\");\n return format;\n };\n }\n function pluralize(format, count) {\n var plural = \"s\", singular = \"\";\n if (format) {\n format = format.replace(/(:|;|\\s)/gi, \"\").split(/\\,/);\n if (format.length === 1) {\n plural = format[0];\n } else {\n singular = format[0];\n plural = format[1];\n }\n }\n if (Math.abs(count) > 1) {\n return plural;\n } else {\n return singular;\n }\n }\n var Countdown = function(el, finalDate, options) {\n this.el = el;\n this.$el = $(el);\n this.interval = null;\n this.offset = {};\n this.options = $.extend({}, defaultOptions);\n this.instanceNumber = instances.length;\n instances.push(this);\n this.$el.data(\"countdown-instance\", this.instanceNumber);\n if (options) {\n if (typeof options === \"function\") {\n this.$el.on(\"update.countdown\", options);\n this.$el.on(\"stoped.countdown\", options);\n this.$el.on(\"finish.countdown\", options);\n } else {\n this.options = $.extend({}, defaultOptions, options);\n }\n }\n this.setFinalDate(finalDate);\n if (this.options.defer === false) {\n this.start();\n }\n };\n $.extend(Countdown.prototype, {\n start: function() {\n if (this.interval !== null) {\n clearInterval(this.interval);\n }\n var self = this;\n this.update();\n this.interval = setInterval(function() {\n self.update.call(self);\n }, this.options.precision);\n },\n stop: function() {\n clearInterval(this.interval);\n this.interval = null;\n this.dispatchEvent(\"stoped\");\n },\n toggle: function() {\n if (this.interval) {\n this.stop();\n } else {\n this.start();\n }\n },\n pause: function() {\n this.stop();\n },\n resume: function() {\n this.start();\n },\n remove: function() {\n this.stop.call(this);\n instances[this.instanceNumber] = null;\n delete this.$el.data().countdownInstance;\n },\n setFinalDate: function(value) {\n this.finalDate = parseDateString(value);\n },\n update: function() {\n if (this.$el.closest(\"html\").length === 0) {\n this.remove();\n return;\n }\n var hasEventsAttached = $._data(this.el, \"events\") !== undefined, now = new Date(), newTotalSecsLeft;\n newTotalSecsLeft = this.finalDate.getTime() - now.getTime();\n newTotalSecsLeft = Math.ceil(newTotalSecsLeft / 1e3);\n newTotalSecsLeft = !this.options.elapse && newTotalSecsLeft < 0 ? 0 : Math.abs(newTotalSecsLeft);\n if (this.totalSecsLeft === newTotalSecsLeft || !hasEventsAttached) {\n return;\n } else {\n this.totalSecsLeft = newTotalSecsLeft;\n }\n this.elapsed = now >= this.finalDate;\n this.offset = {\n seconds: this.totalSecsLeft % 60,\n minutes: Math.floor(this.totalSecsLeft / 60) % 60,\n hours: Math.floor(this.totalSecsLeft / 60 / 60) % 24,\n days: Math.floor(this.totalSecsLeft / 60 / 60 / 24) % 7,\n daysToWeek: Math.floor(this.totalSecsLeft / 60 / 60 / 24) % 7,\n daysToMonth: Math.floor(this.totalSecsLeft / 60 / 60 / 24 % 30.4368),\n weeks: Math.floor(this.totalSecsLeft / 60 / 60 / 24 / 7),\n weeksToMonth: Math.floor(this.totalSecsLeft / 60 / 60 / 24 / 7) % 4,\n months: Math.floor(this.totalSecsLeft / 60 / 60 / 24 / 30.4368),\n years: Math.abs(this.finalDate.getFullYear() - now.getFullYear()),\n totalDays: Math.floor(this.totalSecsLeft / 60 / 60 / 24),\n totalHours: Math.floor(this.totalSecsLeft / 60 / 60),\n totalMinutes: Math.floor(this.totalSecsLeft / 60),\n totalSeconds: this.totalSecsLeft\n };\n if (!this.options.elapse && this.totalSecsLeft === 0) {\n this.stop();\n this.dispatchEvent(\"finish\");\n } else {\n this.dispatchEvent(\"update\");\n }\n },\n dispatchEvent: function(eventName) {\n var event = $.Event(eventName + \".countdown\");\n event.finalDate = this.finalDate;\n event.elapsed = this.elapsed;\n event.offset = $.extend({}, this.offset);\n event.strftime = strftime(this.offset);\n this.$el.trigger(event);\n }\n });\n $.fn.countdown = function() {\n var argumentsArray = Array.prototype.slice.call(arguments, 0);\n return this.each(function() {\n var instanceNumber = $(this).data(\"countdown-instance\");\n if (instanceNumber !== undefined) {\n var instance = instances[instanceNumber], method = argumentsArray[0];\n if (Countdown.prototype.hasOwnProperty(method)) {\n instance[method].apply(instance, argumentsArray.slice(1));\n } else if (String(method).match(/^[$A-Z_][0-9A-Z_$]*$/i) === null) {\n instance.setFinalDate.call(instance, method);\n instance.start();\n } else {\n $.error(\"Method %s does not exist on jQuery.countdown\".replace(/\\%s/gi, method));\n }\n } else {\n new Countdown(this, argumentsArray[0], argumentsArray[1]);\n }\n });\n };\n});\n\n\n//////////////////\n// WEBPACK FOOTER\n// C:/xampp/htdocs/Themes/villakabaya/node_modules/jquery-countdown/dist/jquery.countdown.js\n// module id = 3\n// module chunks = 0","/**\n * Owl Carousel v2.2.1\n * Copyright 2013-2017 Saurabh Sharma\n * Licensed under ()\n */\n/**\n * Owl carousel\n * @version 2.1.6\n * @author Bartosz Wojciechowski\n * @author Saurabh Sharma\n * @license The MIT License (MIT)\n * @todo Lazy Load Icon\n * @todo prevent animationend bubling\n * @todo itemsScaleUp\n * @todo Test Zepto\n * @todo stagePadding calculate wrong active classes\n */\n;(function($, window, document, undefined) {\n\n\t/**\n\t * Creates a carousel.\n\t * @class The Owl Carousel.\n\t * @public\n\t * @param {HTMLElement|jQuery} element - The element to create the carousel for.\n\t * @param {Object} [options] - The options\n\t */\n\tfunction Owl(element, options) {\n\n\t\t/**\n\t\t * Current settings for the carousel.\n\t\t * @public\n\t\t */\n\t\tthis.settings = null;\n\n\t\t/**\n\t\t * Current options set by the caller including defaults.\n\t\t * @public\n\t\t */\n\t\tthis.options = $.extend({}, Owl.Defaults, options);\n\n\t\t/**\n\t\t * Plugin element.\n\t\t * @public\n\t\t */\n\t\tthis.$element = $(element);\n\n\t\t/**\n\t\t * Proxied event handlers.\n\t\t * @protected\n\t\t */\n\t\tthis._handlers = {};\n\n\t\t/**\n\t\t * References to the running plugins of this carousel.\n\t\t * @protected\n\t\t */\n\t\tthis._plugins = {};\n\n\t\t/**\n\t\t * Currently suppressed events to prevent them from beeing retriggered.\n\t\t * @protected\n\t\t */\n\t\tthis._supress = {};\n\n\t\t/**\n\t\t * Absolute current position.\n\t\t * @protected\n\t\t */\n\t\tthis._current = null;\n\n\t\t/**\n\t\t * Animation speed in milliseconds.\n\t\t * @protected\n\t\t */\n\t\tthis._speed = null;\n\n\t\t/**\n\t\t * Coordinates of all items in pixel.\n\t\t * @todo The name of this member is missleading.\n\t\t * @protected\n\t\t */\n\t\tthis._coordinates = [];\n\n\t\t/**\n\t\t * Current breakpoint.\n\t\t * @todo Real media queries would be nice.\n\t\t * @protected\n\t\t */\n\t\tthis._breakpoint = null;\n\n\t\t/**\n\t\t * Current width of the plugin element.\n\t\t */\n\t\tthis._width = null;\n\n\t\t/**\n\t\t * All real items.\n\t\t * @protected\n\t\t */\n\t\tthis._items = [];\n\n\t\t/**\n\t\t * All cloned items.\n\t\t * @protected\n\t\t */\n\t\tthis._clones = [];\n\n\t\t/**\n\t\t * Merge values of all items.\n\t\t * @todo Maybe this could be part of a plugin.\n\t\t * @protected\n\t\t */\n\t\tthis._mergers = [];\n\n\t\t/**\n\t\t * Widths of all items.\n\t\t */\n\t\tthis._widths = [];\n\n\t\t/**\n\t\t * Invalidated parts within the update process.\n\t\t * @protected\n\t\t */\n\t\tthis._invalidated = {};\n\n\t\t/**\n\t\t * Ordered list of workers for the update process.\n\t\t * @protected\n\t\t */\n\t\tthis._pipe = [];\n\n\t\t/**\n\t\t * Current state information for the drag operation.\n\t\t * @todo #261\n\t\t * @protected\n\t\t */\n\t\tthis._drag = {\n\t\t\ttime: null,\n\t\t\ttarget: null,\n\t\t\tpointer: null,\n\t\t\tstage: {\n\t\t\t\tstart: null,\n\t\t\t\tcurrent: null\n\t\t\t},\n\t\t\tdirection: null\n\t\t};\n\n\t\t/**\n\t\t * Current state information and their tags.\n\t\t * @type {Object}\n\t\t * @protected\n\t\t */\n\t\tthis._states = {\n\t\t\tcurrent: {},\n\t\t\ttags: {\n\t\t\t\t'initializing': [ 'busy' ],\n\t\t\t\t'animating': [ 'busy' ],\n\t\t\t\t'dragging': [ 'interacting' ]\n\t\t\t}\n\t\t};\n\n\t\t$.each([ 'onResize', 'onThrottledResize' ], $.proxy(function(i, handler) {\n\t\t\tthis._handlers[handler] = $.proxy(this[handler], this);\n\t\t}, this));\n\n\t\t$.each(Owl.Plugins, $.proxy(function(key, plugin) {\n\t\t\tthis._plugins[key.charAt(0).toLowerCase() + key.slice(1)]\n\t\t\t\t= new plugin(this);\n\t\t}, this));\n\n\t\t$.each(Owl.Workers, $.proxy(function(priority, worker) {\n\t\t\tthis._pipe.push({\n\t\t\t\t'filter': worker.filter,\n\t\t\t\t'run': $.proxy(worker.run, this)\n\t\t\t});\n\t\t}, this));\n\n\t\tthis.setup();\n\t\tthis.initialize();\n\t}\n\n\t/**\n\t * Default options for the carousel.\n\t * @public\n\t */\n\tOwl.Defaults = {\n\t\titems: 3,\n\t\tloop: false,\n\t\tcenter: false,\n\t\trewind: false,\n\n\t\tmouseDrag: true,\n\t\ttouchDrag: true,\n\t\tpullDrag: true,\n\t\tfreeDrag: false,\n\n\t\tmargin: 0,\n\t\tstagePadding: 0,\n\n\t\tmerge: false,\n\t\tmergeFit: true,\n\t\tautoWidth: false,\n\n\t\tstartPosition: 0,\n\t\trtl: false,\n\n\t\tsmartSpeed: 250,\n\t\tfluidSpeed: false,\n\t\tdragEndSpeed: false,\n\n\t\tresponsive: {},\n\t\tresponsiveRefreshRate: 200,\n\t\tresponsiveBaseElement: window,\n\n\t\tfallbackEasing: 'swing',\n\n\t\tinfo: false,\n\n\t\tnestedItemSelector: false,\n\t\titemElement: 'div',\n\t\tstageElement: 'div',\n\n\t\trefreshClass: 'owl-refresh',\n\t\tloadedClass: 'owl-loaded',\n\t\tloadingClass: 'owl-loading',\n\t\trtlClass: 'owl-rtl',\n\t\tresponsiveClass: 'owl-responsive',\n\t\tdragClass: 'owl-drag',\n\t\titemClass: 'owl-item',\n\t\tstageClass: 'owl-stage',\n\t\tstageOuterClass: 'owl-stage-outer',\n\t\tgrabClass: 'owl-grab'\n\t};\n\n\t/**\n\t * Enumeration for width.\n\t * @public\n\t * @readonly\n\t * @enum {String}\n\t */\n\tOwl.Width = {\n\t\tDefault: 'default',\n\t\tInner: 'inner',\n\t\tOuter: 'outer'\n\t};\n\n\t/**\n\t * Enumeration for types.\n\t * @public\n\t * @readonly\n\t * @enum {String}\n\t */\n\tOwl.Type = {\n\t\tEvent: 'event',\n\t\tState: 'state'\n\t};\n\n\t/**\n\t * Contains all registered plugins.\n\t * @public\n\t */\n\tOwl.Plugins = {};\n\n\t/**\n\t * List of workers involved in the update process.\n\t */\n\tOwl.Workers = [ {\n\t\tfilter: [ 'width', 'settings' ],\n\t\trun: function() {\n\t\t\tthis._width = this.$element.width();\n\t\t}\n\t}, {\n\t\tfilter: [ 'width', 'items', 'settings' ],\n\t\trun: function(cache) {\n\t\t\tcache.current = this._items && this._items[this.relative(this._current)];\n\t\t}\n\t}, {\n\t\tfilter: [ 'items', 'settings' ],\n\t\trun: function() {\n\t\t\tthis.$stage.children('.cloned').remove();\n\t\t}\n\t}, {\n\t\tfilter: [ 'width', 'items', 'settings' ],\n\t\trun: function(cache) {\n\t\t\tvar margin = this.settings.margin || '',\n\t\t\t\tgrid = !this.settings.autoWidth,\n\t\t\t\trtl = this.settings.rtl,\n\t\t\t\tcss = {\n\t\t\t\t\t'width': 'auto',\n\t\t\t\t\t'margin-left': rtl ? margin : '',\n\t\t\t\t\t'margin-right': rtl ? '' : margin\n\t\t\t\t};\n\n\t\t\t!grid && this.$stage.children().css(css);\n\n\t\t\tcache.css = css;\n\t\t}\n\t}, {\n\t\tfilter: [ 'width', 'items', 'settings' ],\n\t\trun: function(cache) {\n\t\t\tvar width = (this.width() / this.settings.items).toFixed(3) - this.settings.margin,\n\t\t\t\tmerge = null,\n\t\t\t\titerator = this._items.length,\n\t\t\t\tgrid = !this.settings.autoWidth,\n\t\t\t\twidths = [];\n\n\t\t\tcache.items = {\n\t\t\t\tmerge: false,\n\t\t\t\twidth: width\n\t\t\t};\n\n\t\t\twhile (iterator--) {\n\t\t\t\tmerge = this._mergers[iterator];\n\t\t\t\tmerge = this.settings.mergeFit && Math.min(merge, this.settings.items) || merge;\n\n\t\t\t\tcache.items.merge = merge > 1 || cache.items.merge;\n\n\t\t\t\twidths[iterator] = !grid ? this._items[iterator].width() : width * merge;\n\t\t\t}\n\n\t\t\tthis._widths = widths;\n\t\t}\n\t}, {\n\t\tfilter: [ 'items', 'settings' ],\n\t\trun: function() {\n\t\t\tvar clones = [],\n\t\t\t\titems = this._items,\n\t\t\t\tsettings = this.settings,\n\t\t\t\t// TODO: Should be computed from number of min width items in stage\n\t\t\t\tview = Math.max(settings.items * 2, 4),\n\t\t\t\tsize = Math.ceil(items.length / 2) * 2,\n\t\t\t\trepeat = settings.loop && items.length ? settings.rewind ? view : Math.max(view, size) : 0,\n\t\t\t\tappend = '',\n\t\t\t\tprepend = '';\n\n\t\t\trepeat /= 2;\n\n\t\t\twhile (repeat--) {\n\t\t\t\t// Switch to only using appended clones\n\t\t\t\tclones.push(this.normalize(clones.length / 2, true));\n\t\t\t\t$(items[clones[clones.length - 1]][0]).clone(true).addClass('cloned').appendTo(this.$stage);\n\t\t\t\tclones.push(this.normalize(items.length - 1 - (clones.length - 1) / 2, true));\n\t\t\t\t$(items[clones[clones.length - 1]][0]).clone(true).addClass('cloned').prependTo(this.$stage);\n\t\t\t}\n\n\t\t\tthis._clones = clones;\n\n\t\t}\n\t}, {\n\t\tfilter: [ 'width', 'items', 'settings' ],\n\t\trun: function() {\n\t\t\tvar rtl = this.settings.rtl ? 1 : -1,\n\t\t\t\tsize = this._clones.length + this._items.length,\n\t\t\t\titerator = -1,\n\t\t\t\tprevious = 0,\n\t\t\t\tcurrent = 0,\n\t\t\t\tcoordinates = [];\n\n\t\t\twhile (++iterator < size) {\n\t\t\t\tprevious = coordinates[iterator - 1] || 0;\n\t\t\t\tcurrent = this._widths[this.relative(iterator)] + this.settings.margin;\n\t\t\t\tcoordinates.push(previous + current * rtl);\n\t\t\t}\n\n\t\t\tthis._coordinates = coordinates;\n\t\t}\n\t}, {\n\t\tfilter: [ 'width', 'items', 'settings' ],\n\t\trun: function() {\n\t\t\tvar padding = this.settings.stagePadding,\n\t\t\t\tcoordinates = this._coordinates,\n\t\t\t\tcss = {\n\t\t\t\t\t'width': Math.ceil(Math.abs(coordinates[coordinates.length - 1])) + padding * 2,\n\t\t\t\t\t'padding-left': padding || '',\n\t\t\t\t\t'padding-right': padding || ''\n\t\t\t\t};\n\n\t\t\tthis.$stage.css(css);\n\t\t}\n\t}, {\n\t\tfilter: [ 'width', 'items', 'settings' ],\n\t\trun: function(cache) {\n\t\t\tvar iterator = this._coordinates.length,\n\t\t\t\tgrid = !this.settings.autoWidth,\n\t\t\t\titems = this.$stage.children();\n\n\t\t\tif (grid && cache.items.merge) {\n\t\t\t\twhile (iterator--) {\n\t\t\t\t\tcache.css.width = this._widths[this.relative(iterator)];\n\t\t\t\t\titems.eq(iterator).css(cache.css);\n\t\t\t\t}\n\t\t\t} else if (grid) {\n\t\t\t\tcache.css.width = cache.items.width;\n\t\t\t\titems.css(cache.css);\n\t\t\t}\n\t\t}\n\t}, {\n\t\tfilter: [ 'items' ],\n\t\trun: function() {\n\t\t\tthis._coordinates.length < 1 && this.$stage.removeAttr('style');\n\t\t}\n\t}, {\n\t\tfilter: [ 'width', 'items', 'settings' ],\n\t\trun: function(cache) {\n\t\t\tcache.current = cache.current ? this.$stage.children().index(cache.current) : 0;\n\t\t\tcache.current = Math.max(this.minimum(), Math.min(this.maximum(), cache.current));\n\t\t\tthis.reset(cache.current);\n\t\t}\n\t}, {\n\t\tfilter: [ 'position' ],\n\t\trun: function() {\n\t\t\tthis.animate(this.coordinates(this._current));\n\t\t}\n\t}, {\n\t\tfilter: [ 'width', 'position', 'items', 'settings' ],\n\t\trun: function() {\n\t\t\tvar rtl = this.settings.rtl ? 1 : -1,\n\t\t\t\tpadding = this.settings.stagePadding * 2,\n\t\t\t\tbegin = this.coordinates(this.current()) + padding,\n\t\t\t\tend = begin + this.width() * rtl,\n\t\t\t\tinner, outer, matches = [], i, n;\n\n\t\t\tfor (i = 0, n = this._coordinates.length; i < n; i++) {\n\t\t\t\tinner = this._coordinates[i - 1] || 0;\n\t\t\t\touter = Math.abs(this._coordinates[i]) + padding * rtl;\n\n\t\t\t\tif ((this.op(inner, '<=', begin) && (this.op(inner, '>', end)))\n\t\t\t\t\t|| (this.op(outer, '<', begin) && this.op(outer, '>', end))) {\n\t\t\t\t\tmatches.push(i);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tthis.$stage.children('.active').removeClass('active');\n\t\t\tthis.$stage.children(':eq(' + matches.join('), :eq(') + ')').addClass('active');\n\n\t\t\tif (this.settings.center) {\n\t\t\t\tthis.$stage.children('.center').removeClass('center');\n\t\t\t\tthis.$stage.children().eq(this.current()).addClass('center');\n\t\t\t}\n\t\t}\n\t} ];\n\n\t/**\n\t * Initializes the carousel.\n\t * @protected\n\t */\n\tOwl.prototype.initialize = function() {\n\t\tthis.enter('initializing');\n\t\tthis.trigger('initialize');\n\n\t\tthis.$element.toggleClass(this.settings.rtlClass, this.settings.rtl);\n\n\t\tif (this.settings.autoWidth && !this.is('pre-loading')) {\n\t\t\tvar imgs, nestedSelector, width;\n\t\t\timgs = this.$element.find('img');\n\t\t\tnestedSelector = this.settings.nestedItemSelector ? '.' + this.settings.nestedItemSelector : undefined;\n\t\t\twidth = this.$element.children(nestedSelector).width();\n\n\t\t\tif (imgs.length && width <= 0) {\n\t\t\t\tthis.preloadAutoWidthImages(imgs);\n\t\t\t}\n\t\t}\n\n\t\tthis.$element.addClass(this.options.loadingClass);\n\n\t\t// create stage\n\t\tthis.$stage = $('<' + this.settings.stageElement + ' class=\"' + this.settings.stageClass + '\"/>')\n\t\t\t.wrap('
');\n\n\t\t// append stage\n\t\tthis.$element.append(this.$stage.parent());\n\n\t\t// append content\n\t\tthis.replace(this.$element.children().not(this.$stage.parent()));\n\n\t\t// check visibility\n\t\tif (this.$element.is(':visible')) {\n\t\t\t// update view\n\t\t\tthis.refresh();\n\t\t} else {\n\t\t\t// invalidate width\n\t\t\tthis.invalidate('width');\n\t\t}\n\n\t\tthis.$element\n\t\t\t.removeClass(this.options.loadingClass)\n\t\t\t.addClass(this.options.loadedClass);\n\n\t\t// register event handlers\n\t\tthis.registerEventHandlers();\n\n\t\tthis.leave('initializing');\n\t\tthis.trigger('initialized');\n\t};\n\n\t/**\n\t * Setups the current settings.\n\t * @todo Remove responsive classes. Why should adaptive designs be brought into IE8?\n\t * @todo Support for media queries by using `matchMedia` would be nice.\n\t * @public\n\t */\n\tOwl.prototype.setup = function() {\n\t\tvar viewport = this.viewport(),\n\t\t\toverwrites = this.options.responsive,\n\t\t\tmatch = -1,\n\t\t\tsettings = null;\n\n\t\tif (!overwrites) {\n\t\t\tsettings = $.extend({}, this.options);\n\t\t} else {\n\t\t\t$.each(overwrites, function(breakpoint) {\n\t\t\t\tif (breakpoint <= viewport && breakpoint > match) {\n\t\t\t\t\tmatch = Number(breakpoint);\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tsettings = $.extend({}, this.options, overwrites[match]);\n\t\t\tif (typeof settings.stagePadding === 'function') {\n\t\t\t\tsettings.stagePadding = settings.stagePadding();\n\t\t\t}\n\t\t\tdelete settings.responsive;\n\n\t\t\t// responsive class\n\t\t\tif (settings.responsiveClass) {\n\t\t\t\tthis.$element.attr('class',\n\t\t\t\t\tthis.$element.attr('class').replace(new RegExp('(' + this.options.responsiveClass + '-)\\\\S+\\\\s', 'g'), '$1' + match)\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\n\t\tthis.trigger('change', { property: { name: 'settings', value: settings } });\n\t\tthis._breakpoint = match;\n\t\tthis.settings = settings;\n\t\tthis.invalidate('settings');\n\t\tthis.trigger('changed', { property: { name: 'settings', value: this.settings } });\n\t};\n\n\t/**\n\t * Updates option logic if necessery.\n\t * @protected\n\t */\n\tOwl.prototype.optionsLogic = function() {\n\t\tif (this.settings.autoWidth) {\n\t\t\tthis.settings.stagePadding = false;\n\t\t\tthis.settings.merge = false;\n\t\t}\n\t};\n\n\t/**\n\t * Prepares an item before add.\n\t * @todo Rename event parameter `content` to `item`.\n\t * @protected\n\t * @returns {jQuery|HTMLElement} - The item container.\n\t */\n\tOwl.prototype.prepare = function(item) {\n\t\tvar event = this.trigger('prepare', { content: item });\n\n\t\tif (!event.data) {\n\t\t\tevent.data = $('<' + this.settings.itemElement + '/>')\n\t\t\t\t.addClass(this.options.itemClass).append(item)\n\t\t}\n\n\t\tthis.trigger('prepared', { content: event.data });\n\n\t\treturn event.data;\n\t};\n\n\t/**\n\t * Updates the view.\n\t * @public\n\t */\n\tOwl.prototype.update = function() {\n\t\tvar i = 0,\n\t\t\tn = this._pipe.length,\n\t\t\tfilter = $.proxy(function(p) { return this[p] }, this._invalidated),\n\t\t\tcache = {};\n\n\t\twhile (i < n) {\n\t\t\tif (this._invalidated.all || $.grep(this._pipe[i].filter, filter).length > 0) {\n\t\t\t\tthis._pipe[i].run(cache);\n\t\t\t}\n\t\t\ti++;\n\t\t}\n\n\t\tthis._invalidated = {};\n\n\t\t!this.is('valid') && this.enter('valid');\n\t};\n\n\t/**\n\t * Gets the width of the view.\n\t * @public\n\t * @param {Owl.Width} [dimension=Owl.Width.Default] - The dimension to return.\n\t * @returns {Number} - The width of the view in pixel.\n\t */\n\tOwl.prototype.width = function(dimension) {\n\t\tdimension = dimension || Owl.Width.Default;\n\t\tswitch (dimension) {\n\t\t\tcase Owl.Width.Inner:\n\t\t\tcase Owl.Width.Outer:\n\t\t\t\treturn this._width;\n\t\t\tdefault:\n\t\t\t\treturn this._width - this.settings.stagePadding * 2 + this.settings.margin;\n\t\t}\n\t};\n\n\t/**\n\t * Refreshes the carousel primarily for adaptive purposes.\n\t * @public\n\t */\n\tOwl.prototype.refresh = function() {\n\t\tthis.enter('refreshing');\n\t\tthis.trigger('refresh');\n\n\t\tthis.setup();\n\n\t\tthis.optionsLogic();\n\n\t\tthis.$element.addClass(this.options.refreshClass);\n\n\t\tthis.update();\n\n\t\tthis.$element.removeClass(this.options.refreshClass);\n\n\t\tthis.leave('refreshing');\n\t\tthis.trigger('refreshed');\n\t};\n\n\t/**\n\t * Checks window `resize` event.\n\t * @protected\n\t */\n\tOwl.prototype.onThrottledResize = function() {\n\t\twindow.clearTimeout(this.resizeTimer);\n\t\tthis.resizeTimer = window.setTimeout(this._handlers.onResize, this.settings.responsiveRefreshRate);\n\t};\n\n\t/**\n\t * Checks window `resize` event.\n\t * @protected\n\t */\n\tOwl.prototype.onResize = function() {\n\t\tif (!this._items.length) {\n\t\t\treturn false;\n\t\t}\n\n\t\tif (this._width === this.$element.width()) {\n\t\t\treturn false;\n\t\t}\n\n\t\tif (!this.$element.is(':visible')) {\n\t\t\treturn false;\n\t\t}\n\n\t\tthis.enter('resizing');\n\n\t\tif (this.trigger('resize').isDefaultPrevented()) {\n\t\t\tthis.leave('resizing');\n\t\t\treturn false;\n\t\t}\n\n\t\tthis.invalidate('width');\n\n\t\tthis.refresh();\n\n\t\tthis.leave('resizing');\n\t\tthis.trigger('resized');\n\t};\n\n\t/**\n\t * Registers event handlers.\n\t * @todo Check `msPointerEnabled`\n\t * @todo #261\n\t * @protected\n\t */\n\tOwl.prototype.registerEventHandlers = function() {\n\t\tif ($.support.transition) {\n\t\t\tthis.$stage.on($.support.transition.end + '.owl.core', $.proxy(this.onTransitionEnd, this));\n\t\t}\n\n\t\tif (this.settings.responsive !== false) {\n\t\t\tthis.on(window, 'resize', this._handlers.onThrottledResize);\n\t\t}\n\n\t\tif (this.settings.mouseDrag) {\n\t\t\tthis.$element.addClass(this.options.dragClass);\n\t\t\tthis.$stage.on('mousedown.owl.core', $.proxy(this.onDragStart, this));\n\t\t\tthis.$stage.on('dragstart.owl.core selectstart.owl.core', function() { return false });\n\t\t}\n\n\t\tif (this.settings.touchDrag){\n\t\t\tthis.$stage.on('touchstart.owl.core', $.proxy(this.onDragStart, this));\n\t\t\tthis.$stage.on('touchcancel.owl.core', $.proxy(this.onDragEnd, this));\n\t\t}\n\t};\n\n\t/**\n\t * Handles `touchstart` and `mousedown` events.\n\t * @todo Horizontal swipe threshold as option\n\t * @todo #261\n\t * @protected\n\t * @param {Event} event - The event arguments.\n\t */\n\tOwl.prototype.onDragStart = function(event) {\n\t\tvar stage = null;\n\n\t\tif (event.which === 3) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ($.support.transform) {\n\t\t\tstage = this.$stage.css('transform').replace(/.*\\(|\\)| /g, '').split(',');\n\t\t\tstage = {\n\t\t\t\tx: stage[stage.length === 16 ? 12 : 4],\n\t\t\t\ty: stage[stage.length === 16 ? 13 : 5]\n\t\t\t};\n\t\t} else {\n\t\t\tstage = this.$stage.position();\n\t\t\tstage = {\n\t\t\t\tx: this.settings.rtl ?\n\t\t\t\t\tstage.left + this.$stage.width() - this.width() + this.settings.margin :\n\t\t\t\t\tstage.left,\n\t\t\t\ty: stage.top\n\t\t\t};\n\t\t}\n\n\t\tif (this.is('animating')) {\n\t\t\t$.support.transform ? this.animate(stage.x) : this.$stage.stop()\n\t\t\tthis.invalidate('position');\n\t\t}\n\n\t\tthis.$element.toggleClass(this.options.grabClass, event.type === 'mousedown');\n\n\t\tthis.speed(0);\n\n\t\tthis._drag.time = new Date().getTime();\n\t\tthis._drag.target = $(event.target);\n\t\tthis._drag.stage.start = stage;\n\t\tthis._drag.stage.current = stage;\n\t\tthis._drag.pointer = this.pointer(event);\n\n\t\t$(document).on('mouseup.owl.core touchend.owl.core', $.proxy(this.onDragEnd, this));\n\n\t\t$(document).one('mousemove.owl.core touchmove.owl.core', $.proxy(function(event) {\n\t\t\tvar delta = this.difference(this._drag.pointer, this.pointer(event));\n\n\t\t\t$(document).on('mousemove.owl.core touchmove.owl.core', $.proxy(this.onDragMove, this));\n\n\t\t\tif (Math.abs(delta.x) < Math.abs(delta.y) && this.is('valid')) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tevent.preventDefault();\n\n\t\t\tthis.enter('dragging');\n\t\t\tthis.trigger('drag');\n\t\t}, this));\n\t};\n\n\t/**\n\t * Handles the `touchmove` and `mousemove` events.\n\t * @todo #261\n\t * @protected\n\t * @param {Event} event - The event arguments.\n\t */\n\tOwl.prototype.onDragMove = function(event) {\n\t\tvar minimum = null,\n\t\t\tmaximum = null,\n\t\t\tpull = null,\n\t\t\tdelta = this.difference(this._drag.pointer, this.pointer(event)),\n\t\t\tstage = this.difference(this._drag.stage.start, delta);\n\n\t\tif (!this.is('dragging')) {\n\t\t\treturn;\n\t\t}\n\n\t\tevent.preventDefault();\n\n\t\tif (this.settings.loop) {\n\t\t\tminimum = this.coordinates(this.minimum());\n\t\t\tmaximum = this.coordinates(this.maximum() + 1) - minimum;\n\t\t\tstage.x = (((stage.x - minimum) % maximum + maximum) % maximum) + minimum;\n\t\t} else {\n\t\t\tminimum = this.settings.rtl ? this.coordinates(this.maximum()) : this.coordinates(this.minimum());\n\t\t\tmaximum = this.settings.rtl ? this.coordinates(this.minimum()) : this.coordinates(this.maximum());\n\t\t\tpull = this.settings.pullDrag ? -1 * delta.x / 5 : 0;\n\t\t\tstage.x = Math.max(Math.min(stage.x, minimum + pull), maximum + pull);\n\t\t}\n\n\t\tthis._drag.stage.current = stage;\n\n\t\tthis.animate(stage.x);\n\t};\n\n\t/**\n\t * Handles the `touchend` and `mouseup` events.\n\t * @todo #261\n\t * @todo Threshold for click event\n\t * @protected\n\t * @param {Event} event - The event arguments.\n\t */\n\tOwl.prototype.onDragEnd = function(event) {\n\t\tvar delta = this.difference(this._drag.pointer, this.pointer(event)),\n\t\t\tstage = this._drag.stage.current,\n\t\t\tdirection = delta.x > 0 ^ this.settings.rtl ? 'left' : 'right';\n\n\t\t$(document).off('.owl.core');\n\n\t\tthis.$element.removeClass(this.options.grabClass);\n\n\t\tif (delta.x !== 0 && this.is('dragging') || !this.is('valid')) {\n\t\t\tthis.speed(this.settings.dragEndSpeed || this.settings.smartSpeed);\n\t\t\tthis.current(this.closest(stage.x, delta.x !== 0 ? direction : this._drag.direction));\n\t\t\tthis.invalidate('position');\n\t\t\tthis.update();\n\n\t\t\tthis._drag.direction = direction;\n\n\t\t\tif (Math.abs(delta.x) > 3 || new Date().getTime() - this._drag.time > 300) {\n\t\t\t\tthis._drag.target.one('click.owl.core', function() { return false; });\n\t\t\t}\n\t\t}\n\n\t\tif (!this.is('dragging')) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.leave('dragging');\n\t\tthis.trigger('dragged');\n\t};\n\n\t/**\n\t * Gets absolute position of the closest item for a coordinate.\n\t * @todo Setting `freeDrag` makes `closest` not reusable. See #165.\n\t * @protected\n\t * @param {Number} coordinate - The coordinate in pixel.\n\t * @param {String} direction - The direction to check for the closest item. Ether `left` or `right`.\n\t * @return {Number} - The absolute position of the closest item.\n\t */\n\tOwl.prototype.closest = function(coordinate, direction) {\n\t\tvar position = -1,\n\t\t\tpull = 30,\n\t\t\twidth = this.width(),\n\t\t\tcoordinates = this.coordinates();\n\n\t\tif (!this.settings.freeDrag) {\n\t\t\t// check closest item\n\t\t\t$.each(coordinates, $.proxy(function(index, value) {\n\t\t\t\t// on a left pull, check on current index\n\t\t\t\tif (direction === 'left' && coordinate > value - pull && coordinate < value + pull) {\n\t\t\t\t\tposition = index;\n\t\t\t\t// on a right pull, check on previous index\n\t\t\t\t// to do so, subtract width from value and set position = index + 1\n\t\t\t\t} else if (direction === 'right' && coordinate > value - width - pull && coordinate < value - width + pull) {\n\t\t\t\t\tposition = index + 1;\n\t\t\t\t} else if (this.op(coordinate, '<', value)\n\t\t\t\t\t&& this.op(coordinate, '>', coordinates[index + 1] || value - width)) {\n\t\t\t\t\tposition = direction === 'left' ? index + 1 : index;\n\t\t\t\t}\n\t\t\t\treturn position === -1;\n\t\t\t}, this));\n\t\t}\n\n\t\tif (!this.settings.loop) {\n\t\t\t// non loop boundries\n\t\t\tif (this.op(coordinate, '>', coordinates[this.minimum()])) {\n\t\t\t\tposition = coordinate = this.minimum();\n\t\t\t} else if (this.op(coordinate, '<', coordinates[this.maximum()])) {\n\t\t\t\tposition = coordinate = this.maximum();\n\t\t\t}\n\t\t}\n\n\t\treturn position;\n\t};\n\n\t/**\n\t * Animates the stage.\n\t * @todo #270\n\t * @public\n\t * @param {Number} coordinate - The coordinate in pixels.\n\t */\n\tOwl.prototype.animate = function(coordinate) {\n\t\tvar animate = this.speed() > 0;\n\n\t\tthis.is('animating') && this.onTransitionEnd();\n\n\t\tif (animate) {\n\t\t\tthis.enter('animating');\n\t\t\tthis.trigger('translate');\n\t\t}\n\n\t\tif ($.support.transform3d && $.support.transition) {\n\t\t\tthis.$stage.css({\n\t\t\t\ttransform: 'translate3d(' + coordinate + 'px,0px,0px)',\n\t\t\t\ttransition: (this.speed() / 1000) + 's'\n\t\t\t});\n\t\t} else if (animate) {\n\t\t\tthis.$stage.animate({\n\t\t\t\tleft: coordinate + 'px'\n\t\t\t}, this.speed(), this.settings.fallbackEasing, $.proxy(this.onTransitionEnd, this));\n\t\t} else {\n\t\t\tthis.$stage.css({\n\t\t\t\tleft: coordinate + 'px'\n\t\t\t});\n\t\t}\n\t};\n\n\t/**\n\t * Checks whether the carousel is in a specific state or not.\n\t * @param {String} state - The state to check.\n\t * @returns {Boolean} - The flag which indicates if the carousel is busy.\n\t */\n\tOwl.prototype.is = function(state) {\n\t\treturn this._states.current[state] && this._states.current[state] > 0;\n\t};\n\n\t/**\n\t * Sets the absolute position of the current item.\n\t * @public\n\t * @param {Number} [position] - The new absolute position or nothing to leave it unchanged.\n\t * @returns {Number} - The absolute position of the current item.\n\t */\n\tOwl.prototype.current = function(position) {\n\t\tif (position === undefined) {\n\t\t\treturn this._current;\n\t\t}\n\n\t\tif (this._items.length === 0) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tposition = this.normalize(position);\n\n\t\tif (this._current !== position) {\n\t\t\tvar event = this.trigger('change', { property: { name: 'position', value: position } });\n\n\t\t\tif (event.data !== undefined) {\n\t\t\t\tposition = this.normalize(event.data);\n\t\t\t}\n\n\t\t\tthis._current = position;\n\n\t\t\tthis.invalidate('position');\n\n\t\t\tthis.trigger('changed', { property: { name: 'position', value: this._current } });\n\t\t}\n\n\t\treturn this._current;\n\t};\n\n\t/**\n\t * Invalidates the given part of the update routine.\n\t * @param {String} [part] - The part to invalidate.\n\t * @returns {Array.